-
Notifications
You must be signed in to change notification settings - Fork 146
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
[CI] Pull requests migration to buildkite #3573
Conversation
This pull request does not have a backport label. Could you fix it @pazone? 🙏
NOTE: |
❕ Build Aborted
Expand to view the summary
Build stats
Steps errorsExpand to view the steps failures
|
🌐 Coverage report
|
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.
Thank you for this massive work!
Basically LGTM from me, left some minor comments.
Is https://buildkite.com/elastic/elastic-agent/builds/4389 an example run where we can see this work in operation?
@@ -0,0 +1,27 @@ | |||
$ErrorActionPreference = "Stop" | |||
|
|||
Write-Host "-- Fixing CRLF in git checkout --" |
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.
nit: if this is meant to be used for creating a collapsed section in the buildkite output shouldn't it have three dashes ---
as per https://buildkite.com/docs/pipelines/managing-log-output#collapsing-output?
agents: | ||
image: "golang:1.20.10" | ||
depends_on: | ||
- unit-tests-2204 |
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.
Alternatively, all the unit-tests* could live in a different group e.g. called unit-tests
and this and following steps in another group e.g. test-reports
using `depends_on: "unit-tests"
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.
from what i can tell it looks good.
thanks for making upgrade more stable
@@ -386,14 +386,16 @@ func copyDir(l *logger.Logger, from, to string, ignoreErrs bool) error { | |||
} | |||
} | |||
|
|||
// Try to detect if we are running with SSDs. If we are increase the copy concurrency, | |||
// otherwise fall back to the default. | |||
copyConcurrency := 1 |
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.
I changed this a bit, if I merge #3653 before you merge this you'll have a conflict to resolve.
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.
Overall the changes to make this run under buildkite look great. Only issue I see and the reason I am making it a blocker is because the RACE_DETECTOR was not enabled, something that we need to keep enabled when running the unit tests.
This pull request is now in conflicts. Could you fix it? 🙏
|
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.
Thanks for enabling the race detector. Looks good now.
SonarQube Quality Gate 0 Bugs No Coverage information |
* buildkite test on Ubuntu * Fixed step ids * fix image family * Use aws from arm64 * try windows post-checkout hook * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * set GOPATH * set GOPATH * set GOPATH * set GOPATH * set GOPATH * Installed GCC * Installed GCC * Installed GCC * Windows 2016 * Propagate exit code on windows * Added GOTMPDIR * Added GOTMPDIR * Merge coverage reports step * Merge coverage reports step * Merge coverage reports step * changed installation path * changed installation path * changed installation path * changed installation path * changed installation path * changed installation path * test * test * merge.sh * Added coverage.out to simplify artifacts download * Fixed artifacts copy * buildite orka integration * fix os name * Add err message to upgrade test * Fix autocrlf for windows * Craig's patch * Complete test pipeline * Complete test pipeline * Remove macos GHA workflow * Fix Processing test results step * fix k8s jenkins step * Removed m1 stage * Enabled race detector for unit tests * Enables race detector for windows (cherry picked from commit bf78cc1) # Conflicts: # .buildkite/pipeline.yml # .buildkite/scripts/common.sh # .buildkite/scripts/steps/unit-tests.sh # .ci/Jenkinsfile
* buildkite test on Ubuntu * Fixed step ids * fix image family * Use aws from arm64 * try windows post-checkout hook * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * set GOPATH * set GOPATH * set GOPATH * set GOPATH * set GOPATH * Installed GCC * Installed GCC * Installed GCC * Windows 2016 * Propagate exit code on windows * Added GOTMPDIR * Added GOTMPDIR * Merge coverage reports step * Merge coverage reports step * Merge coverage reports step * changed installation path * changed installation path * changed installation path * changed installation path * changed installation path * changed installation path * test * test * merge.sh * Added coverage.out to simplify artifacts download * Fixed artifacts copy * buildite orka integration * fix os name * Add err message to upgrade test * Fix autocrlf for windows * Craig's patch * Complete test pipeline * Complete test pipeline * Remove macos GHA workflow * Fix Processing test results step * fix k8s jenkins step * Removed m1 stage * Enabled race detector for unit tests * Enables race detector for windows (cherry picked from commit bf78cc1) # Conflicts: # .buildkite/pipeline.yml # .buildkite/scripts/steps/unit-tests.sh # .ci/Jenkinsfile
* buildkite test on Ubuntu * Fixed step ids * fix image family * Use aws from arm64 * try windows post-checkout hook * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * set GOPATH * set GOPATH * set GOPATH * set GOPATH * set GOPATH * Installed GCC * Installed GCC * Installed GCC * Windows 2016 * Propagate exit code on windows * Added GOTMPDIR * Added GOTMPDIR * Merge coverage reports step * Merge coverage reports step * Merge coverage reports step * changed installation path * changed installation path * changed installation path * changed installation path * changed installation path * changed installation path * test * test * merge.sh * Added coverage.out to simplify artifacts download * Fixed artifacts copy * buildite orka integration * fix os name * Add err message to upgrade test * Fix autocrlf for windows * Craig's patch * Complete test pipeline * Complete test pipeline * Remove macos GHA workflow * Fix Processing test results step * fix k8s jenkins step * Removed m1 stage * Enabled race detector for unit tests * Enables race detector for windows (cherry picked from commit bf78cc1)
* buildkite test on Ubuntu * Fixed step ids * fix image family * Use aws from arm64 * try windows post-checkout hook * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * Windows pre-command hook and unit tests ps * set GOPATH * set GOPATH * set GOPATH * set GOPATH * set GOPATH * Installed GCC * Installed GCC * Installed GCC * Windows 2016 * Propagate exit code on windows * Added GOTMPDIR * Added GOTMPDIR * Merge coverage reports step * Merge coverage reports step * Merge coverage reports step * changed installation path * changed installation path * changed installation path * changed installation path * changed installation path * changed installation path * test * test * merge.sh * Added coverage.out to simplify artifacts download * Fixed artifacts copy * buildite orka integration * fix os name * Add err message to upgrade test * Fix autocrlf for windows * Craig's patch * Complete test pipeline * Complete test pipeline * Remove macos GHA workflow * Fix Processing test results step * fix k8s jenkins step * Removed m1 stage * Enabled race detector for unit tests * Enables race detector for windows (cherry picked from commit bf78cc1) Co-authored-by: Pavel Zorin <pavel.zorin@elastic.co>
What does this PR do?
Migrates pull request workflow from Jenkins and Github Actions to Buildkite
Migration of Jenkins jobs to new ephemeral VMs:
Now the pipeline runs build and unit tests on all supported OS in buildkike.
Code coverage files are being downloaded by the
merge-coverage
. Due to platform dependent code we merge coverage results from all platforms and publish the merged coverage report to sonarQube.