Commit graph

26 commits

Author SHA1 Message Date
Antoine Fontaine
11b60e838b
ci: check for executable files (MR 1257)
fix https://gitlab.com/postmarketOS/pmaports/-/issues/593.
2020-05-23 17:40:00 +02:00
Antoine Fontaine
307f4f19e6
ci: check that kernels have pmb:cross-native enabled (MR 1247)
follow up to
https://gitlab.com/postmarketOS/pmbootstrap/-/issues/1910,
https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1169 and
https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1187.

Fixing the repo is good, but keeping it clean is better. Ensuring it
before merge will avoid yet another fixup commit.
2020-05-21 07:29:16 +03:00
Minecrell
69efae2e0b
CI: test_directory_structure: Allow device/{community,main} (!1121) 2020-04-11 15:47:49 +02:00
Oliver Smith
e87f2ec27b
CI: test_directory_structure.py: fix flake8 (!1069)
It seems that the .gitlab-ci.yml did not trigger properly when the file
was changed last time, and now it does in this MR. Fix the file to make
it pass.
2020-03-21 22:31:57 +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
01e064c733
CI: add tests to ensure directory structure stays clean (!1070)
pmbootstrap now allows APKBUILDs in arbitrarily nested directories
within pmaports. This means that we really need some checks to ensure
APKBUILDs don't end up all over the place.

Add a test case with a whitelist of allowed directories.
Having this list in pmaports allows changing it without a new pmbootstrap
release.
2020-03-18 12:44:35 +00:00
Minecrell
2bfba9106a
CI: update for device/* -> device/testing/* move (!1067) 2020-03-14 09:41:26 +01:00
Minecrell
f7a4fcc3e7
CI: stop verifying kernel subpackage names (!907)
At the moment we check that the kernel variants for a device package
match the suffix of an existing linux-postmarketos-<suffix> package.

However, in most cases the name of the kernel subpackage has nothing
to do with the actual kernel that is used:

  - the kernel subpackages usually have generic names like "mainline" or
    "downstream", which have nothing to do with the actual suffixes like
    "qcom-msm8916", "allwinner" or "novathor"

  - pine64-dontbeevil uses kernel subpackages to switch between
    "longts" and "shortts" device tree variants. Both are actually
    using linux-postmarketos-allwinner.

So far we have been whitelisting names like "longts" or "shortts",
but the check does not seem very useful overall.

Removing it fixes the following CI failure for MSM8916:
  RuntimeError: Invalid kernel subpackage name 'mainline-modem',
  valid: ['downstream', 'rpi', 'rpi2', 'longts', 'shortts', 'stable', 'mainline',
          'allwinner', 'qcom-msm8916', 'qcom-msm8974', 'novathor']
2020-02-16 12:48:00 +01:00
Oliver Smith
6b267e8010
CI: disable test_soname_bump
Temporarily disabled, because the postmarketOS binary repository has
armhf packages for various kde related packages depending on
qt5-qtwebengine-dev, although qt5-qtwebengine-dev isn't available for
armhf anymore. All related pmaports were disabled for armhf, however
currently the binary repository does not delete binary packages yet,
after the corresponding pmaport was deleted/disabled for a given arch.
I'll work on this with high priority, so we can enable the test again.

Related: https://gitlab.com/postmarketOS/build.postmarketos.org/issues/38
2020-01-06 05:03:04 +01:00
Oliver Smith
388e593ab1
Change copyright to 2020 2020-01-06 02:47:56 +01:00
Oliver Smith
6f464f96bf
CI: skip git versions in framework check
The framework check is supposed to make sure, that we always have the
same versions of multiple packages that belong to the same framework.
We must exclude git versions for this check to have it working properly.

The interesting question is of course: why was this working before?

The check is using the url field to figure out which packages belong to
a certain framework, and by chance, all packages that had a git version,
did also use single quotes around the URL:
	url='http://qt-project.org/'
With the old APKINDEX parsing code, this was parsed as:
	url: "'http://qt-project.org/'"
And therefore, this was considered a different URL than the URL with
double quotes (again, by chance!) used by the stable qt versions:
	url: "http://qt-project.org/"
I have improved the APKBUILD parsing code in pmbootstrap today, and now
it is properly parsing both URLs.

Related: https://gitlab.com/postmarketOS/pmbootstrap/merge_requests/1837
2019-11-30 15:18:20 +01:00
Oliver Smith
b407687761
CI: whitelist firmware-asus-me176c-acpi in devpkg (!699)
Without this, the device will simply run the broken ACPI DSDT table, so
we might as well update it. If we had put it into a subpackage, it
would not be possible to use the fixed DSDT without any other firmware
packages.
2019-11-03 15:58:21 +01:00
Oliver Smith
c8143f0212
CI: framework versions test: handle hotfixes (!639)
Cut off the hotfix-version (fourth number) from the version strings
before comparing them, to fix invalid errors like:

[14:57:00] Reference pkgver: 5.16.90 (from 'khotkeys')
[14:57:00] ERROR: plasma-workspace has version 5.16.90.1
2019-09-29 20:39:03 +02:00
Oliver Smith
a3510eca5e
CI: test_upstream_compat: check binutils again
Related: #357
2019-09-16 22:52:19 +02:00
Luca Weiss
82b143f3f0
Fix spelling mistakes (!466)
codespell --skip="./.git,*.patch,*.diff,config-*.*"

[ci:skip-build]
[ci:skip-vercheck]
2019-06-30 01:40:02 +02:00
Martijn Braam
1b5e1e0d0c
tests: Allow longts and shortts as kernel name (!407)
This is required for the pinephone-dontbeevil.
2019-06-20 00:18:46 +02:00
Oliver Smith
cd94b3ef74
CI: test_upstream_compat: disable binutils check
We need to freeze binutils at 2.31 (Alpine has 2.32 already), until
issue #295 is resolved. Let's disable the test, so the testsuite passes
again if everything else is good, and we don't start to ignore whether
it fails or not.
2019-06-11 21:33:32 +02:00
Oliver Smith
dfebf60c9b CI: upstream compatibility: add grub-efi-x86 (!302)
Make sure we keep it in sync with Alpine's version.
2019-04-06 01:29:32 +02:00
Luca Weiss
156aac8199
testcases: support system-wide pmbootstrap install (!208)
Fix this error when installing pmbootstrap with pip and running the
pmaports.git testcases:

ERROR: 'pmbootstrap' is not a symlink to pmbootstrap.py
2019-02-27 09:43:18 +01:00
Oliver Smith
6d3d5723b6
CI: ignore _git packages in Qt version check
Do not fail the CI check with the _git packages that have been added
in the initial unity8 packaging.
2019-02-15 10:56:55 +01:00
Oliver Smith
b95b73e26c
Update copyright to 2019
Happy new year! \o/
2019-01-02 09:29:47 +01:00
Oliver Smith
8d4232d1fd
test_aports_kde: test Qt version too and rename (!119)
Rename test_aports_kde.py to test_aports_framework_versions.py and
generalize all referenes in the code from "KDE frameworks" to
"frameworks". Check that all Qt packages have the same version, support
having the real version in _pkgver and pkgver=9999.

Scan all pmaports, not only the ones in the kde dir. Do not output all
packages of the "other" category anymore, the package count is enough.
2018-12-30 20:53:52 +01:00
Oliver Smith
0ab7ce3676
tests: check for deviceinfo_weston_pixman_type
Make sure this obsolete option won't be used by future devices.
2018-11-29 07:31:06 +01:00
Oliver Smith
ac6c0a2997
test_aports.py: disallow noarch device packages
Check if all device packages have the same arch in their device
APKBUILD as they have in their deviceinfo. And that they have
!archcheck set in the options.
2018-11-27 07:47:11 +01:00
Oliver Smith
e9fd509914
Remove obsolete test case test_aportgen.py
This test case only makes sense in the pmbootstrap repository, and
we have it there already. In pmaports, we don't need to check if the
"aportgen" code is working - and to check the versions of the aports
we already have the test_upstream_compatibility case.
2018-09-22 11:24:13 +02: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