Commit Graph

12 Commits

Author SHA1 Message Date
Diederik de Haas
9bb0488096 Fix shellcheck issue SC2154
SC2154: var is referenced but not assigned.

The 'rootmnt' variable is set in /usr/share/initramfs-tools/init and if
it's not available, that would be bad.
According to SC2154 you can fix that issue by using '${var:?}' so it
would fail if unset or empty.
So apply that and reference that SC item in the comments.

Also remove it from the exclude list in the CI config file.
2022-11-14 22:38:47 +01:00
Diederik de Haas
cf2eb655d9 Simplify and fix 'build yamls' job
To build the yaml files, we only need python3 and make.
All the other/old packages that got installed are needed for building
actual images, so get rid of them.
This should also significantly speed up the job.

While checking the 'artifacts' I noticed that git operations didn't
produce the output as expected, both in top comment as at the end where
build information is written to /etc/raspi-image-id.
That was caused by git not working as it wasn't installed.
2022-11-14 18:00:40 +01:00
Diederik de Haas
58a3ee3f68 ci: Add 'shellcheck' job to 'check input' stage
Check all the scripts, under 'rootfs/etc/initramfs-tools' (for now) with
'shellcheck'.
A couple of checks are excluded of which SC1090 and SC1091 will remain.
But SC2086 and especially SC2154 should be fixed! And when they are
fixed in the current code, those should be enabled again for checking.

Also rename 'check yamls' job to 'yamllint', so that's directly clear
which tool is being used.
2022-11-11 23:51:17 +01:00
Diederik de Haas
76fb71f4b1 ci: Add 'check yamls' job in (new) 'check input' stage
Add a new stage 'check input' to our CI configuration to check whether
our input files contain errors.
The first check is for the YAML files whether they contain errors or
warnings according to 'yamllint'.

Add 'yamllint' config file to not consider too long lines as errors.
And fix the errors/warnings in 'salsa-ci.yml' itself.

Apparently job names can contain space, so rename 'build-yamls' to
'build yamls'.
2022-11-11 19:52:12 +01:00
Diederik de Haas
b5ad7ef916 Upgrade pkgs separately before installing new ones
Upgrade the existing packages before installing new ones.
It's better to have a fully up-to-date system to work on and it could
also fix/prevent an installation issue if a package depends on an
existing, but un-upgraded one. With this change we get
"and 0 not upgraded", which was not always the case before.

Also add a '/' after the 'build' directory to make it clear it is a dir.
2022-11-05 12:48:22 +01:00
Diederik de Haas
f11c05bf28 Use 'eatmydata' to speed up package install
The 'eatmydata' program is "designed to disable fsync and friends" and
can speed up tasks at the risk of potential data loss.
The speed up is welcome and the data loss not important as it would only
make the pipeline fail (most likely), but you can run it again.
2022-11-04 19:10:35 +01:00
Diederik de Haas
87fca3ceed Remove 'only' keyword statements
It's unclear (to me) what they filter out. And why.

https://salsa.debian.org/help/ci/yaml/index#only-except says:
"NOTE: only and except are not being actively developed. rules is
the preferred keyword to control when to add jobs to pipelines."

So if filtering is desired, it should be added using the 'rules' keyword
and the reasoning behind it should be clarified in comments and/or
commit messages.
2022-11-04 16:07:58 +01:00
Diederik de Haas
02567af307 Don't retry on failure
As we're just starting out using CI, it is especially important to be
aware of any failure, so that we can fix it.

Such a workaround can be added later in case it is deemed necessary.
2022-11-04 13:52:34 +01:00
Diederik de Haas
8b06d14925 Rename 'build' job to 'build-yamls'
This is more describtive and also to distinguish from the build stage.
2022-11-04 13:52:34 +01:00
Diederik de Haas
ad77890ede Switch to using images maintained by salsa ci team
Debian's Salsa team has their own registry of images they maintain, so
use them instead of ones maintained by gitlab.
At https://salsa.debian.org/salsa-ci-team/pipeline/container_registry
one can view the various images they maintain.

Switch to using 'unstable' instead of 'sid'. The idea is to later also
add steps based on 'stable' and then 'unstable' matches better.
2022-11-04 13:52:34 +01:00
Diederik de Haas
5e42c6360a Move some lines to other position in the file
It's common to define variables/constants in the top of a file, so do
that here too.

Move 'stage' field directly under step name as it's quite significant
and seen in other salsa-ci.yml as well.

Move 'image' line after 'stage' line as it's quite important as well.
2022-11-04 13:52:33 +01:00
Diederik de Haas
b7df4bf849 Move .gitlab-ci.yml to debian/salsa-ci.yml
This seems to be the standard location for Salsa's CI.
2022-11-04 13:52:33 +01:00