Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 20 additions & 11 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,10 @@ jobs:
rm -rf dist && make packages > /dev/null
(cd dist && sha256sum -c ../first.sha256)
# The server tool builds a real APT and RPM repository from the packages, signed with a
# throwaway key; Debian and Fedora then install azentrius-repository from it.
- name: Repository end to end (signed APT and RPM repository, installs on Debian and Fedora)
# throwaway key; Debian, Fedora and the RHEL rebuilds Rocky Linux and AlmaLinux (9 and 10)
# then install azentrius-repository from it. Each RPM system first imports the repository's
# real key, as the README's set-up does, so a key its rpm refuses shows here.
- name: Repository end to end (signed APT and RPM repository, installs on Debian, Fedora, Rocky and Alma)
run: |
export GNUPGHOME="$RUNNER_TEMP/gnupg" AZPKG_ROOT="$RUNNER_TEMP/repo" AZPKG_STATE="$RUNNER_TEMP/state"
mkdir -m 700 "$GNUPGHOME"
Expand All @@ -56,12 +58,19 @@ jobs:
grep -q "URIs: https://packages.azentrius.com/apt" /etc/apt/sources.list.d/azentrius.sources
apt-get remove -y -qq azentrius-repository > /dev/null
test ! -e /etc/apt/sources.list.d/azentrius.sources'
docker run --rm -v "$AZPKG_ROOT:/repo:ro" fedora:43 sh -ec '
rpm --import /repo/test.asc
printf "[test]\nname=test\nbaseurl=file:///repo/rpm\ngpgcheck=1\n" > /etc/yum.repos.d/test.repo
dnf install -y -q azentrius-repository
rpm -K /repo/rpm/azentrius-repository-*.rpm | grep -q "digests signatures OK"
test -f /usr/share/swcatalog/xml/azentrius.xml
grep -q "baseurl=https://packages.azentrius.com/rpm" /etc/yum.repos.d/azentrius.repo
dnf remove -y -q azentrius-repository
test ! -e /etc/yum.repos.d/azentrius.repo'
for image in fedora:43 rockylinux/rockylinux:9 rockylinux/rockylinux:10 almalinux:9 almalinux:10; do
echo "::group::$image"
docker run --rm -v "$AZPKG_ROOT:/repo:ro" -v "$PWD/repository/azentrius.asc:/azentrius.asc:ro" "$image" sh -ec '
. /etc/os-release
echo "$PRETTY_NAME, $(rpm --version)"
rpm --import /azentrius.asc
rpm --import /repo/test.asc
printf "[test]\nname=test\nbaseurl=file:///repo/rpm\ngpgcheck=1\n" > /etc/yum.repos.d/test.repo
dnf install -y -q azentrius-repository
rpm -K /repo/rpm/azentrius-repository-*.rpm | grep -q "digests signatures OK"
test -f /usr/share/swcatalog/xml/azentrius.xml
grep -q "baseurl=https://packages.azentrius.com/rpm" /etc/yum.repos.d/azentrius.repo
dnf remove -y -q azentrius-repository
test ! -e /etc/yum.repos.d/azentrius.repo'
echo "::endgroup::"
done
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,8 @@ sudo rpm --import https://packages.azentrius.com/azentrius.asc
sudo dnf install https://packages.azentrius.com/azentrius-repository.rpm
```

RHEL and its derivatives use the same dnf set-up, but only Fedora is tested. openSUSE is not served
RHEL and its derivatives use the same dnf set-up; it is tested on Fedora and on the rebuilds Rocky
Linux and AlmaLinux 9 and 10, not on RHEL itself. openSUSE is not served
(`azentrius-repository` sets up only apt and dnf): there, install the `.rpm` from the add-on's
GitHub release after checking it with the release's `SHA256SUMS` and `gh attestation verify`.

Expand Down Expand Up @@ -113,7 +114,8 @@ make packages # dist/azentrius-repository_X.Y.Z-1_all.deb and -X.Y.Z-1.noa
```

The `test` workflow also builds a signed APT and RPM repository with a throwaway key through the
server tool and installs `azentrius-repository` from it on Debian 13 and Fedora 43.
server tool and installs `azentrius-repository` from it on Debian 13, Fedora 43, Rocky Linux 9 and
10 and AlmaLinux 9 and 10; the RPM systems import the repository's real key first.
`tools/build-packages.sh` is the same file in every Azentrius add-on.

Releases: raise `VERSION`, add a section to `CHANGELOG.md`, merge, then Actions › release › Run
Expand Down
Loading