-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Transition the coverage-linux64
pipeline to Buildkite
#41238
Conversation
9f6d76e
to
b4375c8
Compare
coverage-linux64
to Buildkitecoverage-linux64
pipeline to Buildkite
7171760
to
1d8fc2d
Compare
I've temporarily disabled the commit statuses. We can re-enable them right before we merge this PR. In the meantime, go here to view statuses and build logs: https://buildkite.com/julialang/julia-coverage-linux64 |
@vtjnash Any idea why the coverage is lower here compared to the Buildbot approach? This PR calculates coverage at 79% (58650/73776), but Codecov (which was uploaded from Buildbot) calculates coverage at 88% (65731/75061). This PR runs the tests in parallel. Could that be the sole reason for the discrepancy, or is there something else that I'm missing? |
You should be able to go to codecov or coveralls and compare the two commits directly |
Ah, we'll have to add a Codecov token to Buildkite first - I'll need @staticfloat's help with that. |
24b8553
to
6aa65ed
Compare
Hmmm, looks like it's failing: https://buildkite.com/julialang/julia-coverage-linux64/builds/68 |
42ccc26
to
2610b80
Compare
So I have updated this to now correctly build Julia, and I've also updated the buildkite webui settings to not build in reaction to GH events, but to instead build on a nightly schedule. |
The build is proceeding here: https://buildkite.com/julialang/julia-coverage-linux64/builds/85#8b067d64-5d75-4139-b75a-81289b567f47 |
Nice! This sounds good. If I want to e.g. trigger a manual job, based on the latest commit to |
We should set |
Yep; just click the big green "new build" button in the top right of the pipeline UI.
Hmmm, yeah. What's the best way to do that? Define |
Sounds good to me. Except I would define both |
Looks like it worked! |
Now we just need to uncommon the last line ( |
coverage-linux64
pipeline to Buildkitecoverage-linux64
pipeline to Buildkite
coverage-linux64
pipeline to Buildkitecoverage-linux64
pipeline to Buildkite
81f6a44
to
4b4e390
Compare
I rebased onto latest |
I restarted the failing Windows Buildbots, and now all the Buildbots are passing. Also, I ran a new Buildkite It does look like coverage dropped approximately 6%. I'm guessing that is because of the tests being run in parallel. In a future PR, I'll add a step that runs a subset of the tests in serial (specifically, the subset on which coverage dropped) so we can get coverage back up. But I don't think that needs to block this PR. |
From my point of view, this PR is good to go now. |
) * Transition the `coverage-linux64` pipeline to Buildkite * Simplify, run inside of a sandbox * Upload coverage reports to Codecov and Coveralls * Add `COVERALLS_TOKEN` Co-authored-by: Elliot Saba <[email protected]>
* Transition the `coverage-linux64` pipeline to Buildkite * Simplify, run inside of a sandbox * Upload coverage reports to Codecov and Coveralls * Add `COVERALLS_TOKEN` Co-authored-by: Elliot Saba <[email protected]> (cherry picked from commit 9d5f31e)
* Transition the `coverage-linux64` pipeline to Buildkite * Simplify, run inside of a sandbox * Upload coverage reports to Codecov and Coveralls * Add `COVERALLS_TOKEN` Co-authored-by: Elliot Saba <[email protected]> (cherry picked from commit 9d5f31e)
* Transition the `coverage-linux64` pipeline to Buildkite * Simplify, run inside of a sandbox * Upload coverage reports to Codecov and Coveralls * Add `COVERALLS_TOKEN` Co-authored-by: Elliot Saba <[email protected]> (cherry picked from commit 9d5f31e)
* Transition the `coverage-linux64` pipeline to Buildkite * Simplify, run inside of a sandbox * Upload coverage reports to Codecov and Coveralls * Add `COVERALLS_TOKEN` Co-authored-by: Elliot Saba <[email protected]> (cherry picked from commit 9d5f31e)
* Transition the `coverage-linux64` pipeline to Buildkite * Simplify, run inside of a sandbox * Upload coverage reports to Codecov and Coveralls * Add `COVERALLS_TOKEN` Co-authored-by: Elliot Saba <[email protected]> (cherry picked from commit 9d5f31e)
Why is coverage being miscomputed since this PR was merged? https://codecov.io/gh/JuliaLang/julia/compare/6d2c0a7766142cbeb52c21494484038a558d9b33...9d5f31e9231c1d77e24ee820908e32f559e23057 It seems like the wrong flags must be getting passed to the test runners? |
We may be passing the wrong flags. Here are the relevant scripts:
Also, we're running the tests in parallel. Buildbot used to run them in serial for coverage. So that may be missing some stuff. @staticfloat Any ideas? |
Hmmm. Here is one possibility. So, we need to make sure we pass certain command-line flags, right? Including the following:
Now, when we run the tests in parallel, we are using |
For example, I don't think Distributed is correctly forwarding the julia> Base.JLOptions().use_sysimage_native_code
0
julia> Distributed.@distributed vcat for i = 1:20
Base.JLOptions().use_sysimage_native_code
end
20-element Vector{Int8}:
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1 |
I think test/testenv.jl forwards different flags? Also recommended is c.f. https://github.com/JuliaCI/CoverageBase.jl/blob/master/examples/run_coverage_codecov.sh#L16 |
* Transition the `coverage-linux64` pipeline to Buildkite * Simplify, run inside of a sandbox * Upload coverage reports to Codecov and Coveralls * Add `COVERALLS_TOKEN` Co-authored-by: Elliot Saba <[email protected]> (cherry picked from commit 9d5f31e)
No description provided.