Closed
Bug 1255017
Opened 10 years ago
Closed 8 years ago
Use vendored tooltool.py in docker images
Categories
(Taskcluster Graveyard :: Docker Images, defect)
Taskcluster Graveyard
Docker Images
Tracking
(Not tracked)
RESOLVED
WORKSFORME
People
(Reporter: selenamarie, Assigned: gps)
References
Details
(Whiteboard: [good-first-bug])
Attachments
(5 files)
|
58 bytes,
text/x-review-board-request
|
dustin
:
review-
|
Details |
|
58 bytes,
text/x-review-board-request
|
dustin
:
review+
|
Details |
|
58 bytes,
text/x-review-board-request
|
dustin
:
review+
|
Details |
|
58 bytes,
text/x-review-board-request
|
dustin
:
review+
|
Details |
|
1.14 KB,
patch
|
dustin
:
review+
|
Details | Diff | Splinter Review |
In our ongoing effort to secure our docker images, we're going to checksum-verify the download of tooltool.py (it's already https, and from github.. so this is an "abundance of caution" move).
Updated•10 years ago
|
Mentor: dustin
Whiteboard: [good-first-bug]
Comment 1•9 years ago
|
||
I believe with recent patches this will now be embedded in the docker image based on an in-tree copy of tooltool.py
Flags: needinfo?(gps)
| Assignee | ||
Comment 2•9 years ago
|
||
Yes, some of this is being done in bug 1247168. But in my working directory, there are still 6 references to the build-tooltool repo on github.
This bug could track the follow-up work to use vendored tooltool from the remaining images.
Depends on: 1247168
Flags: needinfo?(gps)
| Assignee | ||
Comment 3•9 years ago
|
||
I'll crank this out real quick.
Assignee: nobody → gps
Status: NEW → ASSIGNED
Summary: Verify tooltool.py download in docker images → Use vendored tooltool.py in docker images
| Assignee | ||
Comment 4•9 years ago
|
||
Review series coming up. I'm going to avoid desktop-build in this series because I have another series overhauling that image and I don't want to bit rot.
| Assignee | ||
Comment 5•9 years ago
|
||
Review commit: https://reviewboard.mozilla.org/r/66932/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/66932/
Attachment #8774497 -
Flags: review?(dustin)
Attachment #8774498 -
Flags: review?(dustin)
Attachment #8774499 -
Flags: review?(dustin)
Attachment #8774500 -
Flags: review?(dustin)
| Assignee | ||
Comment 6•9 years ago
|
||
Review commit: https://reviewboard.mozilla.org/r/66934/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/66934/
| Assignee | ||
Comment 7•9 years ago
|
||
Review commit: https://reviewboard.mozilla.org/r/66936/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/66936/
| Assignee | ||
Comment 8•9 years ago
|
||
Review commit: https://reviewboard.mozilla.org/r/66938/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/66938/
Comment 9•9 years ago
|
||
Comment on attachment 8774500 [details]
Bug 1255017 - Use vendored tooltool.py in ubuntu1204-test;
https://reviewboard.mozilla.org/r/66938/#review64212
Attachment #8774500 -
Flags: review?(dustin) → review+
Comment 10•9 years ago
|
||
Comment on attachment 8774499 [details]
Bug 1255017 - Use vendored tooltool.py in desktop-l10n;
https://reviewboard.mozilla.org/r/66936/#review64210
::: testing/docker/desktop-l10n/Dockerfile:9
(Diff revision 1)
> ADD bin /home/worker/bin
> ADD .hgrc /home/worker/.hgrc
> RUN chmod +x /home/worker/bin/*
>
> +# %include testing/docker/decision/tooltool.py
> +ADD topsrcdir/testing/docker/decision/tooltool.py /builds/tooltool.py
I don't actually see this image referenced anywhere in-tree. It was created in bug 1248713. That said, I don't see any harm to this change.
Attachment #8774499 -
Flags: review?(dustin) → review+
Comment 11•9 years ago
|
||
Comment on attachment 8774497 [details]
Bug 1255017 - Use vendored tooltool.py in android-gradle-build;
https://reviewboard.mozilla.org/r/66932/#review64204
::: testing/docker/android-gradle-build/Dockerfile:69
(Diff revision 1)
> && mv /tmp/nexus-${NEXUS_VERSION}/* /opt/sonatype/nexus/ \
> && rm -rf /tmp/nexus-${NEXUS_VERSION} \
> && rm -rf /tmp/nexus-${NEXUS_VERSION}-bundle.tar.gz
>
> -# Install tooltool directly from github.
> -RUN mkdir /build
> +# %include testing/docker/decision/tooltool.py
> +ADD topsrcdir/testing/docker/decision/tooltool.py /build/tooltool.py
Why is it vendored in testing/docker/decision? Why not somewhere more common-sounding, like `python/tooltool.py` or `build/util/tooltool.py`?
::: testing/docker/android-gradle-build/Dockerfile
(Diff revision 1)
> && rm -rf /tmp/nexus-${NEXUS_VERSION}-bundle.tar.gz
>
> -# Install tooltool directly from github.
> -RUN mkdir /build
> +# %include testing/docker/decision/tooltool.py
> +ADD topsrcdir/testing/docker/decision/tooltool.py /build/tooltool.py
> -ADD https://raw.githubusercontent.com/mozilla/build-tooltool/master/tooltool.py /build/tooltool.py
> -RUN chmod +rx /build/tooltool.py
It turns out this path was totally bogus.
$ grep -r /build/tooltool.py testing/mozharness/ | wc -l
0
$ grep -r /builds/tooltool.py testing/mozharness/ | wc -l
46
Nothing uses `/build/tooltool.py`, and everything uses `/builds/tooltool.py`. I know, I know, I hate it too.
Attachment #8774497 -
Flags: review?(dustin) → review-
Comment 12•9 years ago
|
||
Comment on attachment 8774498 [details]
Bug 1255017 - Use vendored tooltool.py in rust-build;
https://reviewboard.mozilla.org/r/66934/#review64206
::: testing/docker/rust-build/Dockerfile:15
(Diff revision 1)
> RUN yum clean all
>
> # Install tooltool directly from github.
> RUN mkdir /builds
> -ADD https://raw.githubusercontent.com/mozilla/build-tooltool/master/tooltool.py /build/tooltool.py
> -RUN chmod +rx /build/tooltool.py
> +# %include testing/docker/decision/tooltool.py
> +ADD topsrcdir/testing/docker/decision/tooltool.py /build/tooltool.py
But it looks like rust (which doesn't build from the gecko tree and does not use mozharness) *does* use `/build` -- at least, the entrypoint on line 33 is `/build/fetch_rust.sh`. So this is fine and doesn't need to be `/builds`.
Attachment #8774498 -
Flags: review?(dustin) → review+
Comment 13•9 years ago
|
||
I just bit-rot the rust-build patch in bug 1289605. Here's a rebase. Also fixes the out-of-date comment.
Updated•9 years ago
|
Attachment #8775236 -
Flags: review+
| Assignee | ||
Comment 14•9 years ago
|
||
https://reviewboard.mozilla.org/r/66932/#review64204
> Why is it vendored in testing/docker/decision? Why not somewhere more common-sounding, like `python/tooltool.py` or `build/util/tooltool.py`?
Because the custom Dockerfile processing for custom image build contexts doesn't work with build.sh. I've addressed this in bug 1290531. I'll rebase this series on top of it.
Updated•9 years ago
|
Mentor: dustin
Comment 15•8 years ago
|
||
Found this in triage today.
gps: is this still required, or even on your radar?
Flags: needinfo?(gps)
| Assignee | ||
Comment 16•8 years ago
|
||
I no longer see any references to out-of-tree tooltool.py in taskcluster/docker. Pretty sure this was gradually cleaned up along with refactoring and deletion of various images occurring across various bugs.
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Flags: needinfo?(gps)
Resolution: --- → WORKSFORME
Updated•7 years ago
|
Product: Taskcluster → Taskcluster Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•