118 Commits
Author SHA1 Message Date
Aelin 6c126658c5 Revert "ci: do not fail kconfigcheck if the merge bot is the committer"
This reverts commit 830fd3e7aa.

The merge request constitutes a policy change for kconfigcheck and
therefore requires approval of all 3 kconfigcheck team members to merge.
This was not the case, therefore revert it.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9465>
2026-08-31 11:52:42 +02:00
Pablo Correa Gómez 830fd3e7aa ci: do not fail kconfigcheck if the merge bot is the committer
This is not ideal, but while our kconfig keeps being very dynamic, we
very often bump into the following situation:

Author of kernel MR fixes kconfig -> the MR is fine ->
1 week passes and some other kconfig changes get merged ->
we assign to the bot for merge -> CI fails and we're back at the
beginning

This means the authors have to get back to fixing kconfig out of us
being slow. And if we are slow again, the same cycle can repeat, which
has happened in the past. This is frustrating for everybody. Instead,
if we are ready to merge and the merge bot is the committer, just
skip kconfigcheck failures. It means that some options might have to
wait for the next update to be included, but still forces authors to
fix kconfig on each of their own pushes, which is a possible trade-off
to reduce friction.

This should be save to revert the day kconfigcheck starts changing
only occassionally.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9385>
2026-08-31 09:17:05 +00:00
Pablo Correa Gómez 2b9d12adfa ci: remove the testlib and gitlab-ci boilerplate associated with it
We no longer need it, since things running CI directly in pmaports are
now using the packaged version of testlib and abuild check

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9349>
2026-08-23 12:47:35 +00:00
Stefan Hansson 6788e21f3a CI: Switch out old custom service manager options with new ones
It's probably a good thing that the old options become warnings/errors
with this since we don't want to use them even if pmbootstrap
technically maintains support for at least pmb:systemd for compatibility
reasons.

Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8545>
2026-08-15 19:10:13 +02:00
Aelin 2bf2f3329e treewide: remove pmb:strict from options
pmbootstrap 3.11 is strict-by-default and previous versions had a broken
implementation which broke upon a full bootstrap of e.g. the systemd
repo. I think it's therefore safe to remove this already, even without
bumping pmbootstrap_min_version.

[ci:skip-vercheck]: doesn't affect any artifacts

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9112>
2026-08-14 11:05:44 +02:00
Pablo Correa Gómez 14b13a20d1 ci: fix broken check_changed_versions
The keep_dir option was added but not used, and the "APKBUILD" suffix
was also forgotten in the commit that changed the script last.

Fixes 5d8cf85911

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9373>
2026-08-12 10:41:30 +02:00
Pablo Correa Gómez d035338047 ci: fix remaining ruff issues and run ruff format
We only disable LOG015 rule, as in the simple situation of pmaports,
it doesn't matter too much if in pytest we are using the root logger
or a custom one.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9363>
2026-08-12 05:39:47 +00:00
Pablo Correa Gómez 47748f6158 ci: automatic ruff checks for ruff 0.16.0
run ruff check --fix with ruff 0.16.0, review, and commit

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9363>
2026-08-12 05:39:43 +00:00
Pablo Correa Gómez bec46b5311 ci: simplify logic in check_changed_versions
Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9363>
2026-08-12 05:39:40 +00:00
Pablo Correa Gómez 5d8cf85911 ci: allow to fetch the complete path changed packages
This is useful for pytest-commits use-cases

Fixes #4663

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9363>
2026-08-12 05:39:37 +00:00
Pablo Correa Gómez 8722dd75aa ci: add a tag to allow skipping hw-ci jobs
There is the ocasional or rare case in which this can be useful
independently of [ci:skip-build], like if something is very urgent and
blocked due to something that only affects HW-CI. We already do not
block merging if actual HW fails the tests to avoid reliability
issues, so this is purely for software bugs.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9348>
2026-08-08 20:40:30 +00:00
Stefan Hansson a9897a91e2 CI: Adapt to new pmbootstrap arch checking API
See https://gitlab.postmarketos.org/postmarketOS/pmbootstrap/-/merge_requests/3004

Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9104>
2026-07-21 21:01:58 +02:00
Aelin 34a631a01e ci: Tag x86 and x86_64 jobs with architecture tags
The OSUOSL x86_64 runners have the x86, x86_64 and shared tags. Let's
unify this and use the architecture tags instead of "shared" for these
as well.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8913>
2026-06-26 23:42:11 +00:00
Ferass El Hafidi 16125a7bbf CI: remove armhf
Signed-off-by: Ferass El Hafidi <funderscore@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8884>
2026-06-23 05:03:43 +00:00
Oliver Smith 734884e864 CI: apkbuild-lint: add a skip-apkbuild-lint tag
As we are now moving to a newer, stricter version, we might want to skip
fixing APKBUILDs in some MRs. And this is in general useful to have.

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8735>
2026-06-07 10:09:20 +00:00
Oliver Smith 87502f982e CI: apkbuild-lint: make output more readable
Add empty lines around the apkbuild-lint output, so it is easy to spot.
Also note when it is starting and if it was successful (vs. not having
any output on success).

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8735>
2026-06-07 10:09:20 +00:00
Oliver Smith ac3e4f8a70 CI: apkbuild-lint: fix checking only the 1st file
apkbuild-lint only checks the file from the first parameter:

$ apkbuild-lint main/postmarketos-ui-phosh/APKBUILD
IC[AL65]:main/postmarketos-ui-phosh/APKBUILD:66:2:non-local 'install' variable in function 'openrc'. Add install scripts to global install variable instead.
MC[AL49]:main/postmarketos-ui-phosh/APKBUILD:46:1:invalid option 'pmb:drm'
MC[AL49]:main/postmarketos-ui-phosh/APKBUILD:46:1:invalid option 'pmb:systemd'

$ apkbuild-lint main/hello-world/APKBUILD main/postmarketos-ui-phosh/APKBUILD
(empty output!)

Loop over the APKBUILDs we want to lint so all of them get checked.

Signed-off-by: Oliver Smith <ollieparanoid@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8735>
2026-06-07 10:09:17 +00:00
Aster Boese 67d104aa0b ci: verify-checksums: ignore archived
Because archived is neglected, the sources of packages therein can have
dead links, causing any MR that touches them to fail. Since we don't want
to fix archived packages, just ignore them entirely.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8661>
2026-05-29 17:36:08 +00:00
Aelin ed13c0ed9e ci: Run armhf jobs natively
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8654>
2026-05-27 18:35:22 +00:00
Aelin 531c8cdcaa ci: Run armv7 jobs on native runner
We now have a runner capable of running 32-bit ARM jobs natively, so
switch to it to relieve the QEMU runner and get faster builds.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8539>
2026-05-12 21:03:00 +02:00
Aelin 2b26a11a85 ci: Tag aarch64 builds for aarch64 rather than arm64
Our aarch64 runners are tagged with both the aarch64 and the arm64 tag,
let's use the aarch64 tag to be consistent with the architecture naming
in APK.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8539>
2026-05-12 20:46:34 +02:00
Achill Gilgenast e38532b7f7 ci: relax pkgrel changes for packages that don’t have remote sources
Motivation is to avoid unnecessary overhead for MR authors & no reason to
actually use pkgrel for meta-packages.

So instead, recommend pkgver-bumps & pkgrel=0 for metapackages, but don't
block MRs when they bumped the "wrong" one. Just make everyone's life easier.

Discussed at <https://docs.postmarketos.org/policies-and-processes/governance/team-meetings/meeting-notes.html> (2026-03-16)

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8302>
2026-04-10 12:08:26 +00:00
Luca Weiss 1ab8eefdd5 CI: Run dint job on all files on deviceinfo_schema.toml change
Similar to kconfigcheck.toml, let's run the dint job on all deviceinfo
files when the spec itself is changed. This allows to catch possible new
warnings and errors early and fix them.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8139>
2026-03-20 01:57:32 +00:00
Aster Boese 5da1b74db0 ci: replace master strings with main
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8183>
2026-03-15 17:47:40 +00:00
Pablo Correa Gómez ee7c30c4f6 ci: skip "docs" folder as part of get_changed_packages test
Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:36 +00:00
Pablo Correa Gómez ac541f7afb ci: small simplification in generate_build_jobs
We don't need to check against "is_present_in_ci", since we already
did not consider devices that did not have a gitlab_ci_fragment

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7881>
2026-03-12 19:17:12 +00:00
Stefan Hansson 38434fbed9 CI: lib/generate_build_jobs.py: Fix type error
Caught by mypy.

Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7960>
2026-03-12 18:53:15 +00:00
Luca Weiss eecf3e2080 ci: check_devices_in_wiki: Skip packages in 'archived' category
Per definition, those are not available anymore, so stop trying to
validate them.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8035>
2026-02-18 22:04:39 +01:00
Pablo Correa Gómez bad5420f36 ci: fix typo and more printing in generate_build_jobs
There is usually a benefit of having CI jobs print properly what is
going on.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7868>
2026-02-01 21:06:25 +00:00
Pablo Correa Gómez ddb822187a ci: make removed=False the default for get_changed_files
Eventually we probably want this everywhere.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7868>
2026-02-01 21:06:25 +00:00
Pablo Correa Gómez 67045e0cbd ci: use more removed=False for get_changed_files
Most of the things don't really need it.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7868>
2026-02-01 21:06:22 +00:00
Pablo Correa Gómez 41e2d23210 ci: remove add_pmbootstrap_to_import_path
Unused since the previous commit

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7868>
2026-02-01 21:06:18 +00:00
Pablo Correa Gómez 69e772d561 ci: remove unnecessary add_pmbootstrap_to_import_path
Since the previous commit we just set the PYTHONPATH globally, which
is saner than include this everywhere.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7868>
2026-02-01 21:06:18 +00:00
Pablo Correa Gómez c38534993e ci: rename script run by kconfig.sh to be consistent with its name
This makes it easier to navigate the CI code

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7868>
2026-02-01 21:06:14 +00:00
Pablo Correa Gómez 32e058f2ea ci: rename commits ci script to check-changed-versions
So it actually explains what it does. In the process, make the name of
the Python file it executes also consistent.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7868>
2026-02-01 21:06:14 +00:00
Pablo Correa Gómez ba2237700a ci: update reasons for using 'native'
Just requiring pmbootstrap installed is no reason to run 'native', as
other tests show. Now the messages are also consistent.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7868>
2026-02-01 21:06:11 +00:00
Stefan Hansson cc2725aa49 CI: remove pmb:gpu-accel from custom_valid_options
This is not used anywhere in pmaports any more and it has been
deprecated for a while, so let's finally get rid of it.

Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7847>
2026-01-28 13:21:45 +00:00
Clayton Craft f68c270d4d ci/deviceinfo_linting: only line deviceinfo files in the devices repo
If devicepkg-dev changes, we don't want to lint the test deviceinfo
files there...

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7830>
2026-01-27 12:33:06 -08:00
Aelin 933414e7d1 ci: Add pmb:generic-kernel to custom valid options
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7844>
2026-01-26 09:37:54 +00:00
Pablo Correa Gómez af81f21fba ci: simplify local usage of generate_build_jobs
There's no need why we can't have a default value

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7725>
2026-01-24 22:09:38 +00:00
Stefan Hansson e331eb74f8 CI: remove package count check
Closes https://gitlab.postmarketos.org/postmarketOS/pmaports/-/issues/4278

Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7822>
2026-01-23 13:47:00 +00:00
Pablo Correa Gómez 55a97f8085 ci: fix generation of build-jobs.yaml on devices without kernel variants
The check in Python did not work with devices without kernel variants
due to it returning None and that breaking the has_kernel_variants
check. Fix that, and also adding the kernel variant to install
packages, which was missed. In the process, rename kernels to
kernel_variants. All devices have at least one kernel, but not all
have "variants" :)

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7489>
2026-01-15 07:48:41 +00:00
Pablo Correa Gómez 11e8136f44 ci: fetch ci-common files from "main" branch
Relates https://gitlab.postmarketos.org/postmarketOS/postmarketos/-/issues/122

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7726>
2026-01-14 16:48:52 +00:00
Aelin 38acf0cfdd Build loongarch64 in CI and mark it as supported
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7738>
2026-01-13 14:31:30 +00:00
Pablo Correa Gómez cd5aaf8e9f ci: cache get_base_commit function calls
The commit shall not be updated during a CI run, and this calls git
fetch, which is considerably slow at times. This reduces the git fetch
calls down to 1 from 3 in the generate-build-jobs step.

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7649>
2025-12-27 01:19:44 +00:00
Pablo Correa Gómez e41cce98e8 ci: use functools.cache instead of implementing custom cache global
Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7649>
2025-12-27 01:19:44 +00:00
Pablo Correa Gómez 51a7792aac ci: get supported arches from pmbootstrap instead of hard-coding
supported_binary reads the pmaports.cfg file, and if that is changed
in the future, we can be pretty sure we will get what we expect.

Fixes #4195

Signed-off-by: Pablo Correa Gómez <pabloyoyoista@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7648>
2025-12-26 18:29:12 +00:00
Pablo Correa Gómez 93dfbad7ba ci: remove unused imports
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7590>
2025-12-26 13:29:15 +00:00
Luca Weiss cabfabb88c ci: build_changed_aports: Skip packages in 'archived' category
Per definition, those might not be buildable anymore, so stop trying to
validate building them.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7480>
2025-12-04 21:00:29 +09:00
Jens Reidel 6e0d8aa09a ci: Raise pmb timeout to 1 hour
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7391>
2025-11-26 12:05:05 +00:00