Age | Commit message (Collapse) | Author |
|
Change-Id: Ibb7e338bcd22ae736a22bda617f66f08fcdfd04b
|
|
We now create directories for mount-points in start-container-docker.sh.
Change-Id: I4996616399ed87420dbd64eba36895f632f6af3f
|
|
Move passwd file to home-data/, and update tcwg-build to use it.
Change-Id: Ie409103ae4e47a8f9cf393a4052ddec92509a8af
|
|
Replace "new-user.sh --key KEY" interface with "new-user.sh --home-data DIR"
interface. Use the new interface in both tcwg-host and tcwg-build images.
Change-Id: I58e7e6506daa70bd10b4f29deebcf85ca0c5bc4f
|
|
Change-Id: Idd91d3b71b1980958895bb3e5a0c4a814bb1ed09
|
|
.. in preparation to move it to tcwg-base/
Change-Id: I4263bb1b5cde191b85118b5aff4b1773b7ffc1ab
|
|
... and use it to create users inside containers.
Change-Id: Ic00d13c30ad6e8a4a613040fa76537eec7e1ad97
|
|
ABE no longer requires "root" ssh access, it uses "sudo" now.
Change-Id: I62bd6b3d0bbce37a942d4328a70c0e0293708da0
|
|
... for the sake of jenkins-scripts.git:jenkins-helpers.sh.
Change-Id: I6418837d9101f2f39f4f38e60eefa1e94287bca7
|
|
Change-Id: I9bdda54997cc8a042a7af37a21af2c89ca1d6458
|
|
Turns out "dpkg --add-architecture i386" in amd64's tcwg-base images
was necessary to install wine. Since wine with its i386 dependencies
increase image size by ~600MB, install it only in tcwg-build images for
the purposes of automated release testing.
Hopefully, we will be able to ditch testing of mingw releases.
Change-Id: I0c177409c720cb07070d769d6ed693d1bfdc31df
|
|
Change-Id: Ia4fb466289f0087839f0d39a786be527ab9572e7
|
|
Change-Id: I2156b5bfd8bb9195b6b8aeeb995fbe2952436274
|
|
The configuration needs to be patched at runtime with the right
user/password, provided by Jenkins master.
Change-Id: I3b1d312f65be5c1b30bc9b5d9c42e051a6c19d36
|
|
We need it in pre-commit upstream patch testing jobs to submit patches
to gerrit.
Change-Id: I5f29a179d41c8b92260466bcf6a30afabee42cc7
|
|
Change-Id: I509a1b89d2ac751efd57ecb5b7a48dbe5822d0a3
|
|
... to allow re-building of TCWG image on non-master branches.
See https://review.linaro.org/#/c/20116/ .
Change-Id: I23cdbaf3a6ff8b5ded6892938ab85c46ac7c3b38
|
|
... which turn out to be symlinks themselves for now, but we will now
have a dedicated build.sh script for every image type.
Change-Id: Id64c469d1aaf6e792d8e6e5b80c13af3c25732f6
|
|
Current tcwg-base/*/build.sh files could be used only by hand and,
therefore, are pretty useless. Get rid of them.
Change-Id: Ibd35529f733729345c504704684c7e696a03ff92
|
|
The fact that tcwg-benchmark user is present only in amd64 Trusty tcwg-build
image is historical artifact. When we added the tcwg-benchmark we didn't
want to destabilize other images. The change has been extensively tested
since then, so enabling for all tcwg-build images.
Change-Id: Ic341a98405cc39ea6e6f36a5d24dd96b239eaa33
|
|
In order to avoid accidental modification of auto-generated
tcwg Dockerfiles, add checksum validation to those files.
This patch:
. adds comments to generated Dockerfiles indicating the
source file and the file's md5sum.
. regenerates all *-tcwg-* Dockerfiles (to add those comments)
. adds validation of the md5sum to the build-image.sh
. restricts search for Dockerfile.in to the tcwg-base hierarchy
Change-Id: I691ef4f1d93820bcdd7d50e19c11542a1db52875
|
|
|
|
Installing nfs-kernel-server on trusty non-x86_64 requires --privileged mode,
which "docker build" does not support.
Change-Id: Ib2c6dde0433ac6a477773d5771f77a1ece103110
|
|
|
|
|
|
All other arch/distro configurations do have gnat/gnat-5 package.
Change-Id: I1b3f5be27364b20741b3eec6af7e1802661d066e
|
|
Change-Id: Iccc264951f9c6979be3f23afe5770b9df04454d0
|
|
The harness implementing running QEMU VMs in docker containers is in
toolchain/jenkins-scripts/start-container-qemu.sh.
Rootfs of the container is shared via NFS with the VM. For NFS to work inside
container NFS kernel module needs to be loaded, which is easiest achieved
by installing nfs-kernel-server package on the host.
For KVM to work container needs to be started in --privileged mode
to provide /dev/kvm inside the container.
Change-Id: I7cba73e350dfbee6e4dde0797eb4bed90fe0c664
|
|
Add linux-tools-generic to get "perf" and binutils-aarch64-linux-gnu with
binutils-arm-linux-gnueabihf to enable cross perf-annotate on x86_64 boxes.
The latter is done by passing --objdump <objdump> option to perf.
Change-Id: Ib33aae197bc0b04f1c6de69bb3060a98e8de5854
|
|
This patch enables generation of TCWG dockerfiles from templates.
The templates and generation scripts reside under tcwg-base/ hierarchy.
The handling of actual image directories (e.g., <distro>-<arch>-tcwg-*)
is unchanged. It is responsibility of developer who is committing a change
to dockerfile template to run generate-dockerfiles.sh script to update
and commit changes to the affected image directories.
This patch adds a new script cpp-script.sh, which enables C-style
preprocessing on shell-like files, including Dockerfiles. This is
done using "unifdef".
Additionally, the preprocessor script supports variables via "--var/-v"
option. Providing "-v ARCH=amd64" will have effect of "#define ARCH_amd64 1"
in the file and also substitute "sed -e s/#{ARCH}/amd64/g".
For now only *-tcwg-dev images are converted to test-drive the new approach.
There are no changes in generated Dockerfile beyond those in this commit.
Change-Id: I19bc1e8a3d05bcfed39792f6b7ad329d84c995c1
|
|
TCWG now starts docker container using jenkins-scripts, and volumes
are handled there.
Change-Id: I97916b3f7b2b7c71c365013e93341831c2eb0dea
|
|
virtualenv exists only in xenial and depends on python3-virtualenv.
Use python-virtualenv instead, which exists in both trusty and xenial.
Change-Id: Icbcbdeb7250b2286d72751491ccd145a6fea9f94
Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
|
|
... to make room for build.sh that will re-build all affected images.
Change-Id: I765526adf18007adf738f804137f745eb6d7946e
|
|
Change-Id: I652eb0077a716cf1204aa952f388abbdaad51f58
|
|
Change-Id: Iadc5a62d0809268565e889053a230a63e9439594
|
|
Change-Id: Ia2cf5f8e0b7edebae76540499bf156289cf485f5
|
|
... since tcwg-buildslave's home is now used only in tcwg-build
and tcwg-test images.
Change-Id: I5930b66c0395bb38f6b6ae0bc1df6d0ddc97c141
|
|
... since it is exactly the same.
Change-Id: I65f591fe8e0cce282543c8606a6192de303931f7
|
|
... in hierarchy
tcwg-base/
├── tcwg-build
│ ├── build.sh
│ └── tcwg-test
│ └── build.sh
└── tcwg-dev
└── build.sh
There is no functional change since build.sh files match exactly.
Change-Id: I035f54d8d6250cd7834225ace98859a057f7c32c
|
|
prerequisite for recursive rebuilds of images on changes.
Use the command "tree" to make sense of the new layout:
|-- ./trusty-amd64-tcwg-base
| |-- ./trusty-amd64-tcwg-base/trusty-amd64-tcwg-build
| `-- ./trusty-amd64-tcwg-base/trusty-amd64-tcwg-dev
|-- ./trusty-arm64-tcwg-base
| |-- ./trusty-arm64-tcwg-base/trusty-arm64-tcwg-build
| | `-- ./trusty-arm64-tcwg-base/trusty-arm64-tcwg-build/trusty-arm64-tcwg-test
| `-- ./trusty-arm64-tcwg-base/trusty-arm64-tcwg-dev
|-- ./trusty-armhf-tcwg-base
| `-- ./trusty-armhf-tcwg-base/trusty-armhf-tcwg-build
| `-- ./trusty-armhf-tcwg-base/trusty-armhf-tcwg-build/trusty-armhf-tcwg-test
|-- ./trusty-i386-tcwg-base
| `-- ./trusty-i386-tcwg-base/trusty-i386-tcwg-build
|-- ./xenial-amd64-tcwg-base
| |-- ./xenial-amd64-tcwg-base/xenial-amd64-tcwg-build
| `-- ./xenial-amd64-tcwg-base/xenial-amd64-tcwg-dev
| `-- ./xenial-amd64-tcwg-base/xenial-amd64-tcwg-dev/xenial-amd64-tcwg-x2go
|-- ./xenial-arm64-tcwg-base
| |-- ./xenial-arm64-tcwg-base/xenial-arm64-tcwg-build
| | `-- ./xenial-arm64-tcwg-base/xenial-arm64-tcwg-build/xenial-arm64-tcwg-test
| `-- ./xenial-arm64-tcwg-base/xenial-arm64-tcwg-dev
|-- ./xenial-armhf-tcwg-base
| `-- ./xenial-armhf-tcwg-base/xenial-armhf-tcwg-build
| `-- ./xenial-armhf-tcwg-base/xenial-armhf-tcwg-build/xenial-armhf-tcwg-test
`-- ./xenial-i386-tcwg-base
`-- ./xenial-i386-tcwg-base/xenial-i386-tcwg-build
Notes:
- ci-base- images are not handled here
- relative paths in tcwg builds have been adjusted
- tcwg jobs also build their parents recursively. This hasn't been
touched in this commit, but we'll probably want to optimize the CI
Change-Id: I3281c5c37d695040c4e0d7a1c13790a90f3ef3c2
|
|
And fix alphabetical order for byacc.
Change-Id: I261a400f7776347db2dcf6077810821af868a997
|
|
Update trusty-{amd64,arm64}-tcwg-base to note new dependent images.
Change-Id: I9d6b96e9d6e24980748f548a399e3f470c03ab98
|
|
... to match new naming scheme. Update trusty-*-tcwg-{base,test} after
rename.
Change-Id: I8ee50ef409ca420814d98a7d6962664f800fa0b0
|
|
This script is useful to rebuild all appropriate images when
a base image is updated.
The master script is in xenial-amd64-tcwg-base/ and all other
images symlink from there. To avoid code copy-paste lists
of dependent images are stored in build-depends.list files
in parent image directories.
Working on this change it occured to me that scripting for
rebuilding parent / children images can be simplified by
moving directories of children images into parent images,
i.e.,
./xenial-amd64-tcwg-base/
./xenial-amd64-tcwg-build/
./xenial-amd64-tcwg-test/
./xenial-am64-tcwg-dev/
./xenial-amd64-tcwg-x2go/
Such a reorg would establish a clear parent / child
relationship for images.
Change-Id: I9923db3d6987cbb79006d338a3b49e8508301fad
|
|
It is needed for gcc builds with --enable-checking=valgrind.
Change-Id: I4cd44f009d9fcb7fa8df16ff5f8eb6e2eb6e6507
|
|
... and to include "updates", "backports", and "security" repos.
Change-Id: I2943a3cc2144aacd6f8d20c19ce73cf7c5f524ba
|
|
... since "docker build --pull" will fail if current image is not present
in the registry. Instead explicitly pull parent image with "docker pull",
which makes for a nice simmetry with all other *-tcwg* images which
explicitly re-generate parent images.
Change-Id: I41e14f66d36e9f3a62eaead581fe5468c545814f
|
|
... by downloading layers from registry for images that exist.
Change-Id: I71b9bb626b33808d9158c1ac97b7e825088ff342
|
|
Change-Id: I63b0be916312b0dd1fff866b4453951412ea7ea6
|
|
... except for trusty-arm64-tcwg-base, which doesn't have docker.io.
Change-Id: I9e0206d7a00d4ee6e322078ce96ea405a595780c
|