Repository navigation
Update docker images to share scripts when possible #42201
Copy link
Copy link
Closed
Labels
E-easyCall for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.Call for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.E-help-wantedCall for participation: Help is requested to fix this issue.Call for participation: Help is requested to fix this issue.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
Description
Activity
- addedT-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)E-help-wantedCall for participation: Help is requested to fix this issue.Call for participation: Help is requested to fix this issue.
on May 24, 2017 Thanks for writing this up @malbarbo! If you're interested, want to write out some detailed steps for how to accomplish this? If we've got that listed we could likely list this as E-easy which would probably help get the work items here picked off very quickly!
@alexcrichton I wrote the steps. What do you think? Is it enough?
- addedE-easyCall for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.Call for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.
on May 25, 2017 Looks great! If anyone's got any follow-up questions please feel free to ask here!
@malbarbo I think there were some examples of this in a previous PR of yours as well, mind linking those here?
@alexcrichton I linked the android dockerfile updates.
Reacted by Alex CrichtonLooks like @venkatagiri has taken care of the
crossimage!Reacted by Marco A L Barbosa- added a commit that references this issue
on May 28, 2017 - added a commit that references this issue
on Jul 13, 2017
Metadata
Metadata
Assignees
Labels
E-easyCall for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.Call for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.E-help-wantedCall for participation: Help is requested to fix this issue.Call for participation: Help is requested to fix this issue.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
#41958 added the possibility of sharing scripts used in docker images. This allows, for example, to use the same script to install sccache in all images, consequently updating sccache can be done updating only one file.
We should update all images to share scripts when possible.
To update an image, one can follow these sequence of steps:
RUNlines in the dockerfile of the image with scripts (likesccache.shanddum-init.shinsrc/ci/docker/scripts/, see for example the updates ofarm-androidanddist-android). You can organize the dockerfile in sections to make it easy to follow. sccache should be installed last. This avoids the whole container rebuild when sscache is updated;COPYlines are duplicated in other images (duplicated files can be found using the commandfdupes -r src/ci/). If there are duplicated files, move then tosrc/ci/docker/scripts/and update the docker files;src/ci/docker/run.sh imagewith the modified image still works (docker is required).List of images (unchecked images need to be updated):