-
Notifications
You must be signed in to change notification settings - Fork 2
Decoupling GitHub Actions [CPP-825] #827
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
Conversation
# Conflicts: # .github/workflows/main.yml
Half-baked idea but could be really nice addition. In the toolbox CI workflow you can add an action that will comment on each PR that kicks off a job. They should also allow the ability to update the existing comment.
I stumbled upon this github action which seems promising. You would need to pass the PR number along to point to it in the toolbox backend CI: To generate the workflow for a toolbox backend CI job, you might need to do some digging. It looks like it might just require the
|
Another thing you might need to consider, although it may be a low priority, would be the auto-cancellation workflow. Feel free to address this at a later time but I could see possibly having an "always run" cleanup step in the swift-toolbox workflow that will always try to kill a job in the toolbox backend ci if a failure occurs. The difficult thing will be synchronizing the external workflow id to know what job to kill. I'm not sure what the best approach would be. |
72abfcb
to
17647ab
Compare
.github/workflows/main.yml
Outdated
shell: bash | ||
run: echo "VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV | ||
retry_wait_seconds: 300 | ||
command: gh run -R swift-nav/swift-toolbox download ${{ github.run_id }} -n Linux-artifacts |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
huh this is super annoying...
cant fetch the uploaded artifacts from other repo, but works when you re-run it...
might really have to move the entire build into the frontend bench / distribute as well
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
will just move build stage into frontend distribute.yml
@adrian-kong is there any way for the external CI to post a comment back to this PR with a link to the log? |
Frontend and Release Workflow Started here |
I would definitely suggest creating a test release to see if that release process is working as well. Feel free to do this in another PR, if you could have a final job run at the end of the workflow that replaces the comment and says the checks were successful or failed that would be super cool, possibly even a list of which ones passed or failed. Maybe add an emoji or two to quickly convey pass or fail at the beginning like ✅✅ or ❌❌ |
that might be super cool, but maybe hard to identify which PR changes corresponds to which run 🤔,
just to know which run corresponded to which log. |
Frontend and Release Workflow Started here |
signing failure |
We should see if we can replace this comment using that api provided by that github action. If you have a million commits it will post a million comments. |
Co-authored-by: Jason Mobarak <[email protected]>
Frontend and Release Workflow Started here |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Dispatching the github workflow to sign, frontend, zip, release all in one.
This won';t show the logs, would need you to manually go inside https://github.com/swift-nav/toolbox-backend-ci repo to see
Think the stages could be decoupled more ** inside that repo ^^ i.e. splitting out into different callers and let toolbox decide whether it wants to release (?) but for simplicity was done all in one.
https://github.com/swift-nav/toolbox-backend-ci <-- requires bench, and those self hosted machines etc...
^^ needs a test run with those self hosted machines