Commit Graph

52 Commits (e76c77d806f4e5e1118cbdaf3a19ae40b3180fb7)

Author SHA1 Message Date
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 a83630cde4 allow defining of key folder variable
This allows to overwrite GNUPGHOME and USIGNHOME for local testing.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-05-21 08:24:50 -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
Baptiste Jonglez 2176ce8311 docker-build: Fix compatibility with older Docker versions 2020-05-20 11:24:08 -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 87db4a5c78 docker-common: add 18.06 usign key
Without the key verification may fail as both usign and pgp is used when
signatures are available.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-12-10 16:51:48 +01:00
Paul Spooren 7805358c4f add "GP key for 18.06 release builds" key
This key is used for the more recnet 18.06 releses and currently
missing.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-12-03 22:17:10 +01:00
Paul Spooren 355d3c8d56 docker-common: verify usign sha256 sums
This was added to packages.git CI before[0].

Use -c instead of --check as alpine does not support to longer version.

[0]: eb5a9990ed

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-12-03 22:17:10 +01: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 200f563a8a set pre-build as first stage again
This was changed without fully thinking on it and should obviously be
corrected.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-11-08 13:27:21 +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
Paul Spooren 806910a4b8 fixup find -printf
-printf is apperently not always available

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-10-11 14:19:14 -10:00
Paul Spooren d5e893c8f0 use find to replace previous glob behaviour
to make shellcheck happy we can no longer use glob, so now the script
use find to get the actual filename.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-10-11 14:00:41 -10:00
Paul Spooren e026c4154b replace true with exit when download fails
previously multiple targets were combined in a single job so failing
targets should not stop others from being deployed. However as there are
now single builds per target this is no longer required.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-10-11 14:00:06 -10:00
Paul Spooren e3770961ad expand gitignore with usign/ & gpg/
these files usually appear after local testing

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-10-11 13:56:14 -10:00
Paul Spooren 30ed87f52e Update CI badge after move to gitlab.com
The former test instance of fe80.eu is no longer used, instead the
gitlab.com server run the scripts.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-10-11 11:13:19 -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
Petr Štetiar 964f42b5c4 fix warnings reported by shellcheck and remove pythonisms
In ./docker-download.sh:
 SC2086: Double quote to prevent globbing and word splitting.
 SC2086: Double quote to prevent globbing and word splitting.
 SC2086: Double quote to prevent globbing and word splitting.

In ./gen-targets.sh:
 SC2188: This redirection doesn't have a command. Move to its command (or use 'true' as no-op).
 SC2027: The surrounding quotes actually unquote this. Remove or escape them.
 SC2086: Double quote to prevent globbing and word splitting.
 SC2188: This redirection doesn't have a command. Move to its command (or use 'true' as no-op).
 SC2027: The surrounding quotes actually unquote this. Remove or escape them.
 SC2086: Double quote to prevent globbing and word splitting.
 SC2027: The surrounding quotes actually unquote this. Remove or escape them.
 SC2086: Double quote to prevent globbing and word splitting.

In ./docker-imagebuilder.sh:
 SC2155: Declare and assign separately to avoid masking return values.
 SC2086: Double quote to prevent globbing and word splitting.
 SC2155: Declare and assign separately to avoid masking return values.
 SC2086: Double quote to prevent globbing and word splitting.
 SC2105: continue is only valid in loops.

In ./docker-rootfs.sh:
 SC2039: In POSIX sh, == in place of = is undefined.
 SC2155: Declare and assign separately to avoid masking return values.
 SC2086: Double quote to prevent globbing and word splitting.
 SC2155: Declare and assign separately to avoid masking return values.
 SC2086: Double quote to prevent globbing and word splitting.
 SC2105: continue is only valid in loops.

In ./docker-sdk.sh line:
 SC2155: Declare and assign separately to avoid masking return values.
 SC2086: Double quote to prevent globbing and word splitting.
 SC2155: Declare and assign separately to avoid masking return values.
 SC2086: Double quote to prevent globbing and word splitting.
 SC2105: continue is only valid in loops.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-10-11 11:00:08 -10:00
Petr Štetiar 43c17ad72b ci: add shellcheck for shell script checking
In order to make the shell scripts more robust.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-10-11 11:00:08 -10:00
Lucas Ramage 567eaa2716 Fix typo in README 2019-10-03 18:53:26 -10:00
Paul Spooren 2db99b240b introduce gen-targets.sh script
This improves readability as it auto generates the target list.
2019-10-02 20:46:24 -10:00
Paul Spooren 7d1ad316b6 Dockerfile: install rsync
Some packages need rsync to be installed on the host.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-09-19 11:12:03 -10:00
Paul Spooren 133f2ad712 split TARGETS in stacks of 10
ImageBuilder/SDKs are build for each target + master & 19.07-snapshot
branch. This is to much for most CI runners, this separates the job and
also allows running it in parrallel if more workers are available.

Also add PGP key for 19.07 release builds.

Introduce $CI_COMMIT_REF_SLUG for testing.

Introduce $SKIP_ROOTFS for older builds not supporting docker images.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-09-19 11:11:36 -10:00
Paul Spooren 35daea4a9a Update README with new available branches
Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-18 20:17:39 -10:00
Paul Spooren c8beb1bdf8 add sudo/curl to ImageBuilder/SDK
Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-17 13:09:48 -10:00
Paul Spooren 19285e351d use GNUHOME to use ./gpg
This prevents mixing of keys when running the scripts locally for
testing, the same is done for the using keys.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-16 16:21:01 -10:00
Paul Spooren ee1c7dad1b docker-common: remove login as it's done by CI
This makes more sense as local users wouldn't use this function anyway.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-14 14:58:05 -10:00
Paul Spooren 86a90d8755 fixup: remove further outdated targets
* gemini/raidsonic
* gemini/wiligear
* malta/be64
* malta/le
* malta/le64
* mediatek/32

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-07 18:42:29 -10:00
Paul Spooren c636775737 fixup: support other branches for rootfs
Initially the rootfs would only support snapshot builds as the stable
18.06.x wouldn't support Docker due to procd limitations. This was fixed
and therefore 19.07.x should also be supported.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-08 03:00:38 +02:00
Paul Spooren 816805813f fixup: remove outdated targets
Some targets still exists online, but were lastly updated late may.

* adm5120
* adm8668
* au1000
* mcs814x
* xburst

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-08 03:00:28 +02:00
Paul Spooren 35d0ebb47a fixup: rootfs uses a different Dockerfile
ImagBuilder and SDK use a different Dockerfile than the rootfs, this was
missed while refactoring for GitLab.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-08 02:41:16 +02:00
Paul Spooren ca0a3d6d23 fixup: remove target ppc44x/generic
This target doen't seem to be build anymore:

lede-imagebuilder-ppc44x.Linux-x86_64.tar.xz
lede-ppc44x-canyonlands-squashfs.img
lede-ppc44x-default.manifest
lede-ppc44x-taishan-squashfs.img
lede-ppc44x-uImage
lede-sdk-ppc44x_gcc-5.4.0_musl-1.1.15.Linux-x86_64.tar.xz

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-08 02:26:09 +02:00
Paul Spooren 3e6f6e89c9 CI: add gitlab-ci.yml config file
Eventually this CI could move to GitLab, so start with some testing.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-08 02:15:20 +02:00
Zaoqi 9acb62027d Dockerfile: add "rm -rf /var/lib/apt/lists/*" 2019-08-04 21:09:49 +02:00
Paul Spooren 35cefd1f4f refactor: unify sdk and imagebuilder
both setups are similar enough to be unified.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-03 00:37:32 +02:00
Paul Spooren bc75894ddc fixup: install signify-openbsd
While the pull requests already did so, the regular containers lacked
the signify-openbsd tool.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-01 10:11:22 +02:00
Paul Spooren cdf2ada5e3 refactor to common/download/upload scripts
docker-download.sh - Downloads FILE_DOWNLOAD from FILE_HOST and verifies

docker-upload.sh - Uploads the created docker images to docker.io

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-01 09:11:32 +02:00
Paul Spooren a7fbe478dd CI: add pull request test
this builds rootfs/sdk/imagebuilder containers for every PR.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-08-01 02:07:52 +02:00
Paul Spooren 11a7d8a0b7 Dockerfile: install python3
Python3 is now a requirement for the buildroot and must therefore exist
in the sdk/imagebuilder containers.

Also sorted the package list and added myself as maintainer.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-07-31 20:19:14 +02:00
Paul Spooren 0ae0341d0d fixup: malta-le6 to malta-le64
The malta/le64 target was badly copied.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-07-13 22:32:14 +02:00
Paul Spooren 9915cb29b9 fixup: remove braces on wildcard file names
This was done to make shellcheck happy, however resulted in broken
images.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-07-13 10:59:25 +02:00
Paul Spooren 29e08aee3d Apply shellcheck recommendations
Just for good style.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-07-10 14:14:20 +02:00
Paul Spooren 86cd759cf0 Tag docker images with latest if x86-64/master
This way one can run openwrtorg/rootfs instead of
openwrtorg/rootfs:x86-64. This makes sense as it's the most common use
case.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-07-10 14:01:49 +02:00
Lucas Ramage 8275c01e4d Add badges 2019-07-10 12:13:43 +02:00
Lucas Ramage 0f4daf76fc Add a copy of the license 2019-07-10 12:12:27 +02:00
Paul Spooren 263f067e56 README: fixup absolute path
docker -v does not support relative paths

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-07-09 18:09:31 +02:00