Skip to content

CI: show meaningful error for outdated pmaports

Oliver Smith requested to merge show-outdated-pmaports-error into master

When we bump the version in pmaports.cfg and the min. required pmaports version in the pmbootstrap code, then forks of pmaports.git must be rebased on pmaports.git master. Otherwise "pmbootstrap init" fails, and because we have it set to quiet (so the output does not distract from the interesting output if everything goes fine), there was no meaningful error message yet.

Wrap the "pmbootstrap init" call and display a helpful message that tells the user to rebase.

Failure output

Here's what it looks like when the pmaports.cfg is outdated in a MR:

$ .gitlab-ci/install_pmbootstrap.sh pytest
Installing dependencies: coreutils openssl python3 sudo pytest
Creating pmos user
Downloading pmbootstrap (master): https://gitlab.com/postmarketOS/pmbootstrap/-/archive/master/pmbootstrap-master.tar.bz2
Initializing pmbootstrap
[06:06:48] Work path [/home/pmos/.local/var/pmbootstrap]: Run 'pmbootstrap log' for details.
ERROR: pmbootstrap init failed!

Most likely, this means that pmbootstrap requires a newer
pmaports version. Please rebase on the official pmaports.git
master branch and try again.

Let us know in the chat or issues if you have trouble with that
and we will be happy to help. Sorry for the inconvenience.

(If that does not help, click on 'Browse' in the 'Job artifacts'
next to this log output, and have a look at log.txt.)
Edited by Oliver Smith

Merge request reports