Repository navigation
Certify a restarting deploy in a canary worker before it rolls out #2981
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 17 commits
Commits
Show all changes
59 commits
Select commit
Hold shift + click to select a range
c3eb2f2
Certify a restarting deploy in a canary worker before it rolls out
dawsontoth 3b6e367
Close the gaps the code review found in the canary rollout
dawsontoth 81ed664
Remove the deploy-validation apparatus the canary retired
dawsontoth f2c35ac
Keep the boot-outcome and canary tests independent of what ran before…
dawsontoth 4ccc06f
Check a peer activation's deploy permission against the project it ac…
dawsontoth b531a29
Admit a held start on its own load, and never on a certification nobo…
dawsontoth 5324205
Stop every held start before refusing a release, and time out the one…
dawsontoth 17eb945
Wait for every start a gate-suite plan releases together before assig…
dawsontoth 2768bb3
Keep the running workers' watchers paused while a canary decides
dawsontoth 58b5880
Let a thread still loading its components ignore a rollout's watcher …
dawsontoth 1d672fd
Release the requesting worker when its certifying deploy fails, too
dawsontoth 7a73d82
Remove the temp file when a certification record cannot be written
dawsontoth 622f958
Attribute a certification record without its ownership sidecar when t…
dawsontoth 4ba8dc6
Report what a component threw when it cannot be renamed, and give the…
dawsontoth 9212955
Start no replacement while another release is armed, before every rep…
dawsontoth 57825b2
Report an activation's failure, not a withdrawal that failed after it
dawsontoth 5a63fae
Format the withdrawal's failure handler
dawsontoth 17d3fc4
Interrupt a release whose canary was stopped for another release's re…
dawsontoth aef5a7e
Report an activation's failure past its commit, not a commit that fai…
dawsontoth 7c5c2ea
Decide a stopped shared canary's other releases by what it reported, …
dawsontoth e8dee8f
Replace a worker again when another release's refusal stopped its rep…
dawsontoth ec00736
Report progress when a rollout replaces a worker again
dawsontoth 21b3909
Let a decision already under way record before a declined rollout closes
dawsontoth 71f850b
Test the shutdown close in a process of its own, and keep a start boo…
dawsontoth b4fd8bf
Log why a silent held start is stopped without deciding anything
dawsontoth f57c741
Stop a silent held start whose only release is already being decided
dawsontoth b737c1b
Merge remote-tracking branch 'origin/main' into deploy-canary-rollout…
dawsontoth 7141199
Keep a refused decision answerable until its requester reads it
dawsontoth 919b0a2
Let a requesting worker the rollout retires finish its deploy
dawsontoth 9b08ae3
Fail the activation job for a peer that left the cluster before its turn
dawsontoth 02ec58b
Refuse a worker whose load crossed a release's commit, before it binds
dawsontoth b003b6b
Make worker 0's replacement the canary
dawsontoth 286a164
Record this round's certification rules in the design notes
dawsontoth d4b1479
Keep each release's unread decision, not one per component
dawsontoth d07e39a
Wait for admission only where main answers the load report
dawsontoth 9fab7d7
Hold a requester's shutdown only while its release is armed
dawsontoth 56c9055
Retire a requesting worker 0 at its turn, and start again a copy the …
dawsontoth 854e07f
Start no copy while a decision about its release is under way
dawsontoth bd75da8
Read an unheld fixture worker's exit delay when its shutdown arrives
dawsontoth 73d8ea2
Start a requester's copy only once it has exited, where they cannot s…
dawsontoth 9fadc69
Wait out any worker still answering a certifying deploy before starti…
dawsontoth 72ff73c
Describe an env declaration's load failure without rewriting what it …
dawsontoth f3705bd
Bound a requester's drain by the canary verdict timeout until its rel…
dawsontoth d7cf9cc
Keep a worker answering a certifying deploy out of the restart's thro…
dawsontoth 126b24d
Register a deploy that joins an open decision, so it neither goes uns…
dawsontoth 9749366
Count a worker's joins of a decision apart
dawsontoth d8ca4f3
Merge branch 'main' of https://github.com/HarperFast/harper into depl…
dawsontoth 4f635e3
Size the main unit cap from this branch's slowest leg, which already …
dawsontoth 73f4c66
Let a deployed tree's declared entry decide before the application lo…
dawsontoth cb8c87d
Fence a release whose certification record cannot be read while main'…
dawsontoth 39b8614
Install from root config over a deployed tree whose record cannot be …
dawsontoth 07bb1b1
Refuse to certify a live release again while its certification record…
dawsontoth eeb6b46
Keep a decided deploy from being cut off, throttle workers only a que…
dawsontoth 86ff43f
Defer a worker whose release was decided while its replacement booted…
dawsontoth 973e7db
Skip shutting down a worker that has already exited, since its exit w…
dawsontoth 475fbe6
Pick worker 0 among HTTP workers, identify a linked tree by its targe…
dawsontoth 53334eb
Refuse to re-arm a release whose decision is still being read, and re…
dawsontoth 02ce6f7
Start a slot again only once a predecessor retired at admission has e…
dawsontoth bcc1bf9
Merge the two JSDoc comments on join into one
dawsontoth File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.