Commit Graph
36 Commits
Author SHA1 Message Date
Newbyte 70be414133 CI: use shellcheck from Alpine again (MR 2691)
Shellcheck is back in Alpine's repos.

This reverts commit 80e35c5eb0.
2021-11-18 18:22:29 +01:00
Oliver Smith 80e35c5eb0 CI: download shellcheck as static binary (MR 2673)
Adjust to shellcheck removal in Alpine. Currently it's still in edge for
x86_64, but installation fails with:

  ERROR: unable to select packages:
    so:libffi.so.7 (no such package):
      required by: shellcheck-0.7.2-r1[so:libffi.so.7]

Use the official static binary release from shellcheck instead of the
Alpine package. Version 0.7.2 is intentionally used instead of latest
8.0.0, since the latter generates a new warning. Let's unbreak CI first
before adjusting to a newer shellcheck version.

Related: https://lists.alpinelinux.org/~alpine/devel/%3C20211021133615.32f08070%40ncopa-desktop.lan%3E
2021-11-10 08:26:42 +01:00
bo41 ef0117cc4e CI: rename ci folder to consistent naming (MR 2514)
part of https://gitlab.com/postmarketOS/postmarketos/-/issues/26
2021-09-14 09:36:39 +02:00
Oliver Smith 1610a605ec CI: shellcheck: remove apk upgrade command (MR 2511)
CI is currently failing at the "apk upgrade" line with the following
error. It must be related to the openssl3 transition that is going on in
Alpine:

485B6261A57F0000:error:0A000086:SSL routines:tls_post_process_server_certificate:certificate verify failed:ssl/statem/statem_clnt.c:1882:
ERROR: musl-1.2.2-r6: Permission denied
485B6261A57F0000:error:0A000086:SSL routines:tls_post_process_server_certificate:certificate verify failed:ssl/statem/statem_clnt.c:1882:
ERROR: busybox-1.34.0-r3: Permission denied
485B6261A57F0000:error:0A000086:SSL routines:tls_post_process_server_certificate:certificate verify failed:ssl/statem/statem_clnt.c:1882:
ERROR: musl-utils-1.2.2-r6: Permission denied

So let's get rid of it. It shouldn't be needed to install shellcheck
anyway.
2021-09-12 18:55:12 +02:00
Oliver Smith 743c3eda7e Revert "CI: skip armhf, x86 build on stable branches (MR 2024)"
This does not work as expected, CI doesn't run for x86 and armhf on
master too. An attempt to fix this was made in MR 2030, but it didn't
work as expected and it's not worth looking into this further right now.

This reverts commit d695455f08.
2021-03-14 21:29:05 +01:00
Oliver Smith d695455f08 CI: skip armhf, x86 build on stable branches (MR 2024)
Don't try to build for arches where we don't have a binary repository on
stable branches.
2021-03-13 02:30:45 +01:00
Oliver Smith 816616c9de CI: rename stages "first, second" to "lint, build" (MR 802)
Make it more descriptive and match Alpine's gitlab-ci.yml.
2020-09-10 22:22:57 -07:00
Oliver SmithandBart Ribbers e5b8b8631f CI: build packages on all arches (MR 802)
Split the aports-build job into arch-specific build-x86_64,
build-aarch64, ... jobs. Extend build_changed_aports.py to accept the
architecture as argument, and to build all packages for that arch where
possible.

Import and use pmbootstrap code for APKBUILD parsing etc, as we do this
already in various testcases running in this repository.

Co-Authored-By: Bart Ribbers <bribbers@disroot.org>
2020-09-10 22:22:57 -07:00
Oliver Smith 204a56c095 CI: add distfile-check (MR 1388)
Verify that each distfile has the same hash in a directory full of APKBUILDs.

I've considered merging the new job with aports-static, but since there
are quite a few setup steps, it would make the .gitlab-ci.yml less
readable.

Related: https://gitlab.com/postmarketOS/ci-common/-/blob/master/distfile-check/README.md
2020-07-08 18:05:32 +02:00
Oliver Smith 76b3512a1c CI: aports-static: remove redundant apk add git (MR 1388)
install_pmbootstrap.sh is already installing git, and that line can be
used to install additional dependencies (as done currently with pytest).
2020-07-08 18:05:32 +02:00
Oliver Smith 24b83e2415 CI: use check_mr_settings.py from ci-common.git (MR 1320) 2020-06-17 16:29:34 +02:00
Raatty 86c6ce9ad0 CI: store built apks as artifacts (MR 1264) 2020-06-10 12:54:51 +02:00
Daniele Debernardi 5ead73e86c CI: use pmbootstrap lint for checking packages (MR 1132) 2020-04-18 11:50:02 +02:00
Oliver Smith 8f79b6f5b2 CI: use install-pmbootstrap.sh from ci-common repo (MR 1147)
This script is used by multiple repositories by now, let's make sure we
only have one place where we need to maintain it. The version in
ci-common is shellchecked and displays less output for 'pmbootstrap
init' again (unless it fails, then it shows the whole log).
2020-04-14 00:43:44 +02:00
Oliver Smith ff3fbfdb4e CI: run flake8 for changes in testcases too (!1069) 2020-03-21 22:35:42 +01:00
Oliver Smith 0e5ba649a5 CI: remove upstream compatibility checks (!1085)
Do not run upstream compatibility checks whenever pushing to master.
This is confusing, because if the upstream compatibility check fails,
then it appears that the last patch was broken in some way although it
isn't related.

I've moved the upstream compatibility checks to a separate repository
already, and added a badge to the pmaports gitlab project that indicates
whether they are currently succeding or not. The checks run hourly now.

Related: https://gitlab.com/postmarketOS/monitoring
Fixes: #457
2020-03-21 18:21:16 +01:00
Minecrell 2bfba9106a CI: update for device/* -> device/testing/* move (!1067) 2020-03-14 09:41:26 +01:00
Alexey Min 1110dab8d5 CI: allow failure for aport linting check 2020-01-13 17:01:01 +03:00
Bart Ribbers 7c31d47745 CI: skip linting check for temp/ folder (!864)
Since we copy these aports directly from Alpine and try to keep them in
sync, we don't want to differ from upstream because our CI doesn't pass
on linting. If the APKBUILD should be improved, it should be done
upstream which is then synced back to us.
2020-01-09 02:40:38 +03:00
Bart Ribbers 7a359510b1 CI: enable APKBUILD linting (!860) 2020-01-06 07:46:00 +01:00
Bart Ribbers 365255c193 CI: split out kconfig check and only run when kernel package has changed (!738) 2020-01-05 19:52:45 +01:00
Bart Ribbers c4ab1c5c69 CI: fix wiki test (!737)
Run it even if the last commit in the MR does not touch
device/device-*.
2019-11-20 20:58:31 +01:00
Bart Ribbers a92c06bfea CI: fix incorrect py-flake8 package name (!736) 2019-11-13 22:02:28 +01:00
Bart Ribbers 81872a59c1 CI: only use Alpine edge image for the shellcheck task (!733) 2019-11-10 13:41:16 +01:00
Bart Ribbers 1b2b3baad1 CI: update Docker image before we do anything (!731)
This resolves issues like broken Python versions
2019-11-09 17:14:01 +01:00
Bart Ribbers 8b7c90d328 CI: various improvements (!694)
* Only run the wiki test, if anything matching device/device-* was
  modified.
* Split testcase linting (flake8) from shellcheck and only run flake8 if
  .gitlab-ci/* was modified.
* Rename .gitlab-ci/static_code_analysis.sh to .gitlab-ci/shellcheck.sh
  and make it scan all pre/post install/upgrade/deinstall scripts.

[ci:skip-vercheck]: other commits in this merge request have several
                    intended version downgrades, such as 3 -> 1.0.0
2019-11-05 22:22:53 +01:00
Bart Ribbers 310d7314cb CI: remove redundant C linter check (!694) 2019-11-05 22:15:10 +01:00
Bart Ribbers 827967a465 CI: use Alpine for py-sh-static job (!636)
Resolves #366
2019-09-26 21:43:43 +02:00
Oliver Smith 54825690b0 gitlab-ci.yml: use alpine:latest, not :3.8 (!490) 2019-07-13 13:34:38 +02:00
Luca Weiss 90e2cc7eff CI: check coding style of C code (!465) 2019-06-26 22:36:20 +02:00
Oliver Smith 11b1448aa5 CI: add check_changed_aports_versions.py (!382)
Make sure that changed aports always have a higher version than what is
currently in master. This check can be skipped with ci:skip-vercheck (in
square brackets).

Related: #187
2019-05-30 16:11:33 +02:00
Oliver Smith e8a7926eb6 CI: check if maintainers can write to MR branch (!248)
Check if users activated the 'Allow commits from members who can merge
to the target branch' option in their MRs.

Add the "only" parameter to each job in .gitlab.yml, so the pipeline
can properly run in a "merge request specific context" and give us the
environment variable that contains the MR ID.
2019-02-28 17:54:27 +01:00
Luca Weiss 7896439813 testcases: run kconfig check again (!209) 2019-02-27 19:03:41 +01:00
Oliver Smith 36f4e86688 CI package build: don't buffer output and silent "git fetch" 2018-09-26 05:57:29 +00:00
Luca Weiss 25380ced2f Fix detecting changed aports 2018-09-25 05:29:15 +00:00
Oliver Smith 0d5e2fae31 Add test cases and .gitignore
Copy all test cases from the pmbootstrap repository, that are actually
testing the aports. They were all adjusted to work nicely in this
repository, together with a brand new set of gitlab-ci configs.

This also includes the changes from this merge request, that had a
better detection of changed packages:
<https://gitlab.com/postmarketOS/pmbootstrap/merge_requests/1621>
2018-09-04 08:46:17 +02:00