-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Migrate push build pipelines from Drone to GitHub Actions #20647
Comments
Some work has been done on changing the buildboxes to be based on centos7 and to run on a native-ish architecture, which provides the following benefits:
This work has been started in:
and likely other PRs. One issue with building on Centos 7 is it does not support node.js later than v16 and we need to use a later version for more modern Teleport Connect builds. #21724 tracks this. The plan is to build the teleport binaries with a Centos 7 buildbox and take the For the purposes of migrating the build pipelines off drone to GHA, we could leverage the work to use centos7-based buildboxes, but there is still some more work to be done there - at the very least, the arm64 buildbox does not appear to have the arm (32-bit) toolchain available so the build for arm fails with that. As a first step to move off drone, we'll keep the existing buildboxes as used by drone and implemented in the The current dispatchable workflow for linux builds (
This this in mind, the following steps will be taken:
Once that is done, #20729 can progress with the tag build pipelines using the same workflows, just with an additional parameter specifying that artifacts be released as is currently done with the ARM64 and MacOS release builds. This will take care of most of the push build pipelines leaving:
The The
|
@camscale do you think that this is good to close out, or do you want to wait until after Drone no longer drives/calls the actions? |
@camscale @fheinecke I assume this is good to close now? |
Not quite. We have disabled push builds for now because we're not sure how to trigger them well from the OSS repo. I am doing a workflow cleanup and optimisation this week and next and I'll be looking at what options we might have available then. The alternative, depending on how fast I can get the release build process, is to have a release build each merge, pushed to the stage environment. Alternatively we can close this and I can open a new issue for what might do. |
On second thoughts, lets close this. We have migrated everything from drone. The rest is a change in the way we do things. |
Drone pipelines
Drone currently runs the following pipelines on every push to master and
branch/v*
release branches:update-docs-webhook
push-build-linux-amd64
push-build-linux-386
push-build-linux-amd64-fips
push-build-windows-amd64
push-build-darwin-amd64
push-build-native-windows-amd64
push-build-linux-arm
push-build-linux-arm64
build-buildboxes
update-docs-webhook
triggers docs deployment in Vercel,build-buildboxes
builds and pushes buildbox images to ECR, otherpush-*
pipelines build Teleport artifacts on different architectures.Scope
Let's start with
push-*
pipelines and then do buildboxes and docs.Notes
These pipelines live in .drone.yaml, keep in mind the file (at least all
push-*
pipelines) is generated by dronegen:teleport/.drone.yml
Line 38 in 362cb46
Some other implementation notes:
The text was updated successfully, but these errors were encountered: