зеркало из https://github.com/mozilla/gecko-dev.git
43 строки
1.3 KiB
ReStructuredText
43 строки
1.3 KiB
ReStructuredText
.. taskcluster_dockerimages:
|
|
|
|
=============
|
|
Docker Images
|
|
=============
|
|
|
|
TaskCluster Docker images are defined in the source directory under
|
|
``testing/docker``. Each directory therein contains the name of an
|
|
image used as part of the task graph.
|
|
|
|
Adding Extra Files to Images
|
|
============================
|
|
|
|
Dockerfile syntax has been extended to allow *any* file from the
|
|
source checkout to be added to the image build *context*. (Traditionally
|
|
you can only ``ADD`` files from the same directory as the Dockerfile.)
|
|
|
|
Simply add the following syntax as a comment in a Dockerfile::
|
|
|
|
# %include <path>
|
|
|
|
e.g.
|
|
|
|
# %include mach
|
|
# %include testing/mozharness
|
|
|
|
The argument to ``# %include`` is a relative path from the root level of
|
|
the source directory. It can be a file or a directory. If a file, only that
|
|
file will be added. If a directory, every file under that directory will be
|
|
added (even files that are untracked or ignored by version control).
|
|
|
|
Files added using ``# %include`` syntax are available inside the build
|
|
context under the ``topsrcdir/`` path.
|
|
|
|
Files are added as they exist on disk. e.g. executable flags should be
|
|
preserved. However, the file owner/group is changed to ``root`` and the
|
|
``mtime`` of the file is normalized.
|
|
|
|
Here is an example Dockerfile snippet::
|
|
|
|
# %include mach
|
|
ADD topsrcdir/mach /home/worker/mach
|