Repository navigation
Show when each row first reached every environment besides production (schema 6) - #25
Merged
Merged
Conversation
…hema 6) Rows carry deployed_at: per environment other than production, when its first successful deployment of the row or a newer one finished. The page shows it and every other time in the browser's time zone.
Environments report when their deploy job finished, like rows. The finish-time fallback lives on Deployment, and first_deployed takes deployments per environment.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rows now say when they first reached each environment other than production, such as preview. The report schema goes to 6, and the skill now runs
release-scope>=0.8,<0.9.First deployment per row. For each environment other than production, one more paged request lists its successful deployments:
status=success&order_by=finished_at&finished_after=<oldest commit in the range>(GitLab requires the first two forfinished_after). A deployment ships its own row and every older row in the range, since newer commits on the default branch contain them. A row gets the earliest such time infirst_deployed_at, keyed by environment, and a later rollback does not change it. Deployments of commits outside the range are ignored, so only default-branch and tag deploys count.CONTEXT.mddefines the term. The list is not cached because new deployments keep arriving, and only settled facts go in the cache.Job finish time. A deployment's time is its deploy job's
finished_at; a deployment made through the API has no job and falls back tocreated_at.EnvironmentState.deployed_atuses the same time and is now a datetime instead of the rawcreated_atstring.Cut history. At the page limit (5000 deployments) the service gets a
deployments_truncatedwarning naming the environment. Deployments come oldest first, so the cut drops the newest and only the newest rows can miss their time.Local time on the page. The "Deployed to" column shows each environment with the row's first deployment time and marks the environment that runs the row now. Every time on the page, including the collection time in the header, is shown in the browser's time zone as
YYYY-MM-DD HH:MM; hovering shows the value from the report. The header no longer says UTC.The row matching and the API changes started from failing tests. The page has no tests, so I checked it in a browser against a report from the CLI tests, in the Europe/Moscow time zone: each row showed its preview time shifted by three hours, and the row on preview carried the "now" mark.