You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Turn on Travis/AppVeyor nightlies - update secrets.toml
Turn off Buildbot nightlies - comment out trigger in rust-buildbot
Separate --enable-extended from x.py test builds on all platforms (only Windows remaining)
Pull in Cargo as a submodule instead of from a pre-built location
Run cargo's test suite on select bots.
Turn off Cargo uploads
Original description
Converting our travis/appveyor CI to do full release builds. By doing release builds on every platform on every commit we should stop breaking nightlies so much.
move those packaging steps from rust-packaging into the tree as
part of make dist
remember that the rls is not included when --enable-extended is
not enabled... hm
Again in-tree, create a new build target, x.py dist src/publish-ci-build (or something) to do the final steps of
arranging the bins, signing, building the manifest, and uploading to
static.rust-lang.org (rustbuild: Add manifest generation in-tree #39284)
This is in-tree because it gives us a path for others being able
to produce their own rustup dist servers, and also because it's just
better to have all the code for packaging in the same git commit.
Being in-tree has the complication that we have to run ./configure
even though we don't need to build any Rust...
All the steps need to (eventually) be discrete so that people
who want to build manifests without our CI infrastructure can do so,
but for our purposes we can have one x.py dist publish-ci-build
'publish-download' step:
for any given channel, download the appropriate bins from rust-lang-ci
s3 bucket, put them in the right file system layout
this might want to verify hashes
'publish-hash' step:
'publish-signing' step:
'publish-manifest-build' step:
'publish-upload' step:
Build a docker container that runs a the above as a service
publish to some staging area for testing before we turn it on in prod
batch job every night
cron job in a docker container?
Set up aws machine to run that service
let it run in parallel to existing build service
test with RUSTUP_DIST_SERVER
port cargo build to the rust extended build system
simultaneously turn off cargo's existing publication
Updated description
Active work items:
--enable-extendedfromx.py testbuilds on all platforms (only Windows remaining)Original description
Converting our travis/appveyor CI to do full release builds. By doing release builds on every platform on every commit we should stop breaking nightlies so much.
More steps
--enable-extended/--enable-platformflag (rustbuild: Start building --enable-extended #39245)--enable-extendedto the Trivas/AppVeyor release builders (rustbuild: Start building --enable-extended #39245)--enable-extendedto host dist builds (rustbuild: Start building --enable-extended #39245)At this point we've got rls sufficiently packaged that we can flip the
switch. Next steps are to flip that switch.
We'd want to do all the above before the March 16 branch for 1.17 beta.
At this point we're delivering the RLS via the buildbot release
builders. Next steps are to follow through on the release builder
conversion.
--enable-dist-msiand--enable-dist-pkgflags to configure (rustbuild: Start building --enable-extended #39245)part of
make dist--enable-extendedisnot enabled... hm
x.py dist src/publish-ci-build(or something) to do the final steps ofarranging the bins, signing, building the manifest, and uploading to
static.rust-lang.org (rustbuild: Add manifest generation in-tree #39284)
to produce their own rustup dist servers, and also because it's just
better to have all the code for packaging in the same git commit.
./configureeven though we don't need to build any Rust...
who want to build manifests without our CI infrastructure can do so,
but for our purposes we can have one
x.py dist publish-ci-builds3 bucket, put them in the right file system layout
Other misc
--enable-llvm-assertionsall the time, especially for stable/beta releases (travis: Move glibc backwards in time #39198)