Commit Graph

40 Commits (53846dccff7eb3fef993398b6d4523b2e953e58d)

Author SHA1 Message Date
Paul Spooren 53846dccff use `base` container for SDKs/IBs
This way not every SDK/IB build installs all dependencies via `apt` but
rather pulls in a container.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-03-18 09:54:04 -10:00
Paul Spooren ba196c53ad rootfs: tag via ARCH as well
This was missing and caused CI jobs in packages.git to run on an old
snapshot.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-03-17 20:31:05 -10:00
Paul Spooren f7a375b9dc switch $TYPE logic to work during tests
THe recent changes were a bit short-sighted, not putting into
consideration all labels and different behaviour during testing. This
final commit should fix building for all versions, be it snapshot, a
release snapshot or a regular point release.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-02-27 23:26:59 -10:00
Paul Spooren 9d87aec468 fixup non snapshot tests
The test should work for versions other than `snapshot`.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-02-27 18:45:18 -10:00
Paul Spooren 93cf40e2d1 use build job names again for TARGET/ARCH
GitLab CI seem to lose some variables when creating downstream jobs,
revert the changes back to use the job name for target/arch and apply
the rule to SDK testing.

Remove leading `deploy` from build jobs so they are better readable in
the GitLab UI. Use the leading build name as TYPE variable, so that SDKs
are not labeled on target base and imagebuilder/rootfs is not labeled
based on arch.

For `generate_targets.sh`, instead of exporting BRANCH as env variable,
use functions.sh to set it automatically. Export the `VERSION` one
globally instead of for each downstream job. This works after removing
the `gitlab-ci.yml` variable which would previously overwrite
(strangely) the downstream job settings.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-02-26 21:47:49 -10:00
Paul Spooren d2efc132bf IB/rootfs fixup missing target variable
and reformat long lines

Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-02-24 19:16:24 -10:00
Paul Spooren db58c36389 extend SDK testing
* Test x86/64 and ath79/generic compilation.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-02-24 19:16:24 -10:00
Paul Spooren fda9fd2cfd fixup push of multiple image names
it is not possible to define multiple images in a single `docker push`
command, therefore run a loop.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-02-23 20:10:50 -10:00
Paul Spooren 0bf9acc0d7 Tag openwrt and openwrtorg images
We now own the `openwrt` username so use that and `openwrtorg`.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-02-21 00:24:47 -10:00
Paul Spooren a4d29eeb6d rootfs: use aarch64_cortex-a53 for armvirt/64
armvirt recently switched to aarch64_cortex-a53, reflect that in the
used and pushed tags.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-12-14 11:44:18 -10:00
Paul Spooren 3462ba9a09 chore: docker "latest" requires new flag
Using the "latest" tag in `Dockerfile.deploy` recently updated to Docker
20.x which changed the default behaviour of `docker push`. It now
requires `--all-tags` to push all tags, unlike before in 19.x.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-12-12 20:38:48 -10:00
Paul Spooren 01f6207518 rootfs: add x86/geode
This was requested for CI testing the i386_pentium-mmx architecture.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-12-11 19:00:53 -10:00
Paul Spooren b8a7d3ed62 rootfs: add x86/generic as target
This allows testing of i386_pentium4 in CIs.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-09-14 22:16:14 -10:00
Paul Spooren e11d7fe91e rootfs: add malta/be as target
This allows testing of mips_24kc in CIs.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-09-14 22:16:14 -10:00
Paul Spooren b24eb19785 add downstream dependencie and quote version
The VERSION variable is still missing in downstream jobs even though the
documentation states it could be added like that. Add the VERSION to the
trigger job and also quote it, to avoid possible YAML parsing issues.

Adding a *depend* to the triggered job makes the CI report the
downstream success state instead of instantly marking the upstream job
as success. Meaning, if a downstream SDK or IB job fails, the upstream
job is marked as failed.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-09-13 10:20:58 -10:00
Paul Spooren c3b582b50e version fixup
BRANCH was missing in the generate_targets.sh script.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-09-10 21:04:49 -10:00
Paul Spooren 962d0fb6c0 replace BRANCH with VERSION
The generate_targets.sh script requires to run on a specific branch to
only generate jobs for existing targets. The BRANCH variable was however
used for VERSION rather than the branch running on.

This changes the behaviour by automatically selecting the correct branch
and only taking the new VERSION env variable into account.

By doing so new Docker container tags include `snapshot` rather than
`master`, however for compatibility with existing setups the `master`
tag is still added.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-09-11 08:06:37 +02:00
Paul Spooren 435653e3d5 remove obsolete TARGET env from rootfs
The TARGET variable is determined via the job name. DRY

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-09-07 08:20:31 +02:00
Paul Spooren 55df8c7cef support ARCH tagging
For the rootfs containers it can be of interest to run a root container
based on used architecture. Say a CI builds a specific architecture and
a container should run the specific packages. Instead of maintaining the
mapping upstream this should happen via container tags.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-09-07 08:20:31 +02:00
Paul Spooren 2c562e71c0 deploy: Retry twice
Currently some deploy job fails because of hub.docker.com issues, just
retry the deploy job in such cases.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-08-05 13:49:45 -10:00
Paul Spooren ab85512508 dynamic downstream job creation based on targets
Instead of having a hard coded list of available targets, this approach
makes use os the dumpinfo.pl script that automatically finds available
targets existing in the OpenWrt buildroot. The advantage is to
automatically adapt to available targets in different branches.

Additionally the tagging of SDK containers is improved. While it is
still possible to use SDK based on target tag, it is now also possible
to chose the target based on architecutre. This way less SDK container
are build as one architecutre covers multiple targets.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-08-03 09:10:16 +02:00
Paul Spooren f56033a6e0 targets: fixup SDK target missing underscore
The underscore is now used to determine the target, it was only updated
for the ImageBuilders but not SDKs. This commit fixed the deploy step
for SDKs.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-07-01 09:56:25 -10:00
Paul Spooren 368c530d00 testing
Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-07-01 09:36:25 -10:00
Petr Štetiar 50129f2522 testing explicit build stage
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-06-30 14:12:03 -10:00
Petr Štetiar cd139b3266 ci: remove unused TARGETS variable
Seems like TARGETS variable is not used anywhere.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-06-30 14:12:03 -10:00
Petr Štetiar 5ea4c28324 ci: targets: remove ixp4xx target
It's not available in snapshot and 19.07 release anymore.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-06-30 14:12:03 -10:00
Petr Štetiar d69bf76835 ci: targets: add bcm targets from master
They were renamed from brcm to bcm, add as well new bcm2711 subtarget.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-06-30 14:12:03 -10:00
Petr Štetiar be87273cd4 ci: targets: build brcm targets only for releases
In master they were renamed from brcm to bcm.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-06-30 14:12:03 -10:00
Petr Štetiar fe1ed2330a ci: targets: build ar71xx only for releases
ar71xx is source-only in master for some time.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-06-30 14:12:03 -10:00
Petr Štetiar 2e7fa1b36d ci: targets: remove ar7/ac49x and ar7/generic
Seems like those targets don't exist anymore.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-06-30 14:12:03 -10:00
Petr Štetiar e76c77d806 ci: refactor IB/SDK targets for DRY
We've already target specified in the CI job name, so just use this
value for TARGET variable instead of duplicating the same value.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-06-30 14:12:03 -10:00
Petr Štetiar 6a0584a6d5 ci: fix imagebuilder test for 19.07 as well
That check is currently failing due to different x86 image generation
code refactoring which changed naming of resulting images so they're now
different in master squashfs-combined Vs combined-squashfs in 19.07.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-05-27 09:47:31 -10:00
Paul Spooren 0b66aeac08 sdk: run syncs and sleeps between IO intense steps
This tries to fix failing CIs when files are not found which should have
been there.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-05-21 08:23:14 -10:00
Petr Štetiar a7c9b69238 ci: fix imagebuilder test for x86/64
That check is currently failing due to x86 image generation code
refactoring which changed naming of resulting images.

 ls: cannot access './bin/targets/x86/64/*combined-squashfs.img.gz': No such file or directory

Fixes #48
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-05-05 20:40:06 -10:00
Paul Spooren f3e9e3230c sdk: run make prereq in tests
Add the tests from packages.git ci[0] to docker test.

[0]: a6d5b5d1c1

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-12-03 22:17:10 +01:00
Paul Spooren 931d156460 readd docker login on deploy
This was removed during debugging and accidently forgotten to readd. It
fails to pass if no Docker credentials are given, which would be always
the case except on openwrtorg/master. In the future a test docker hub
account should be used instead of disabling it.

Fixes: 475f2f1a97

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-11-07 09:37:13 -10:00
Paul Spooren 475f2f1a97 fixup prebuild deploy container
define USIGNHOME and GNUPGHOME to store the keys

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-11-06 18:16:03 -10:00
Paul Spooren a940fa094c make sdk test more verbose
using compile V=s should give some details in case this test fails.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-11-06 12:51:54 -10:00
Paul Spooren 54d80c0363 use deploy container
This sets up gpg/usign once and reuses it for the ~160 sdk/ib containes

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-11-06 12:29:29 -10:00
Petr Štetiar 34adbafaeb ci: refactor into separate YAML files under .gitlab/ci/ dir
It makes the YAML files more comprehensible.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-10-11 11:00:08 -10:00