Skip to content

Commit d0a2ac6

Browse files
Fedora 43 added
- ARMv6 base image replaced by tianon - Clean up job added for outdated images
1 parent 78a6dab commit d0a2ac6

File tree

5 files changed

+50
-20
lines changed

5 files changed

+50
-20
lines changed

.github/workflows/package.yml

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ jobs:
2727
{ distribution: fedora, codename: 39, description: Fedora 39, target_platform: "['amd64', 'arm64']" },
2828
{ distribution: fedora, codename: 40, description: Fedora 40, target_platform: "['amd64', 'arm64']" },
2929
{ distribution: fedora, codename: 41, description: Fedora 41, target_platform: "['amd64', 'arm64']" },
30-
{ distribution: fedora, codename: 42, description: Fedora 42, target_platform: "['amd64', 'arm64']" }
30+
{ distribution: fedora, codename: 42, description: Fedora 42, target_platform: "['amd64', 'arm64']" },
31+
{ distribution: fedora, codename: 43, description: Fedora 43, target_platform: "['amd64', 'arm64']" }
3132
]
3233
qt_version: [ 5, 6 ]
3334
# Qt6 on Debian Bullseye (only armv6) is excluded in reusable workflow qt5_6.yml because target_platform is passed as string to reusable workflow
@@ -39,3 +40,34 @@ jobs:
3940
codename: ${{ matrix.os.codename }}
4041
qt_version: ${{ matrix.qt_version }}
4142
target_platform: ${{ matrix.os.target_platform }}
43+
44+
cleanup:
45+
name: 🧹 Cleanup untagged images
46+
needs: ubuntu_debian_fedora
47+
if: ${{ needs.ubuntu_debian_fedora.result == 'success' }}
48+
env:
49+
SECRET_DOCKER_CI: ${{ secrets.DOCKER_CI }}
50+
runs-on: ubuntu-latest
51+
steps:
52+
- name: 🐳 Set up Docker Buildx
53+
uses: docker/setup-buildx-action@v3
54+
55+
- name: 🔑 Login to GitHub Container Registry
56+
if: ${{ env.SECRET_DOCKER_CI != null }}
57+
uses: docker/login-action@v3
58+
with:
59+
registry: ghcr.io
60+
username: ${{ github.actor }}
61+
password: ${{ secrets.DOCKER_CI }}
62+
63+
- name: 🧹 Cleanup
64+
if: ${{ env.SECRET_DOCKER_CI != null }}
65+
uses: dataaxiom/ghcr-cleanup-action@v1
66+
with:
67+
token: ${{ secrets.DOCKER_CI }}
68+
packages: "*"
69+
expand-packages: true
70+
delete-untagged: true
71+
delete-partial-images: true
72+
delete-orphaned-images: true
73+
validate: true

.github/workflows/qt5_6.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,11 +96,10 @@ jobs:
9696
outputs: type=image,name=ghcr.io/${{ env.REPOSITORY }}/${{ inputs.distribution }},push-by-digest=true,name-canonical=true,push=true
9797
build-args: |
9898
DIST=${{ inputs.distribution }}
99-
SUITE=${{ inputs.codename == 'trixie' && matrix.target_platform == 'armv6' && 'bookworm' || inputs.codename }}
99+
SUITE=${{ inputs.codename }}
100100
QT_VERSION=${{ inputs.qt_version }}
101101
REPOSITORY="${{ github.server_url }}/${{ env.REPOSITORY }}"
102102
CMAKE_VERSION=${{ env.CMAKE_VERSION }}
103-
UPGRADE_TO_TRIXIE=${{ inputs.codename == 'trixie' && matrix.target_platform == 'armv6' && 'true' || 'false' }}
104103
105104
- name: ⬇ Export digest
106105
run: |

debian-armv6

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
1-
ARG SUITE="buster"
2-
ARG UPGRADE_TO_TRIXIE="false"
3-
ARG QT_VERSION="5"
1+
ARG SUITE="bullseye"
2+
ARG QT_VERSION="6"
43
ARG REPOSITORY="https://github.com/hyperion-project"
54
ARG CMAKE_VERSION="3.28.3"
65

7-
FROM balenalib/rpi-raspbian:${SUITE}
6+
FROM tianon/raspbian:${SUITE}-slim
87

98
ARG SUITE
10-
ARG UPGRADE_TO_TRIXIE
119
ARG QT_VERSION
1210
ARG REPOSITORY
1311
ARG CMAKE_VERSION
@@ -20,15 +18,14 @@ ENV TARGETPLATFORM=${TARGETPLATFORM:-linux/arm/v6}
2018
# update
2119
RUN apt-get update
2220

23-
# upgrade from Bookworm to Trixie
24-
RUN if [ "$UPGRADE_TO_TRIXIE" = "true" ]; then \
25-
apt-get dist-upgrade; \
26-
sed -i -e 's/bookworm/trixie/g' /etc/apt/sources.list; \
27-
apt update && apt-get -y full-upgrade && apt -y clean && apt -y autoremove; \
28-
fi
21+
# adding raspberrypi repository
22+
RUN apt-get -y install --no-install-recommends ca-certificates curl gnupg; \
23+
curl -fsSL http://archive.raspberrypi.org/debian/raspberrypi.gpg.key | gpg --dearmor -o /usr/share/keyrings/raspberrypi-archive-keyring.gpg; \
24+
echo "deb [signed-by=/usr/share/keyrings/raspberrypi-archive-keyring.gpg] http://archive.raspberrypi.org/debian/ ${SUITE} main" > /etc/apt/sources.list.d/raspi.list; \
25+
apt-get update
2926

3027
# install qt5 or qt6 (qt6 is not available on debian buster/bullseye)
31-
RUN if [ "$SUITE" = "bookworm" ] && [ "$QT_VERSION" = "6" ]; then \
28+
RUN if [ "$SUITE" = "bookworm" ] || [ "$SUITE" = "trixie" ] && [ "$QT_VERSION" = "6" ]; then \
3229
apt-get -y install qt6-base-dev libqt6sql6-sqlite qt6-serialport-dev qt6-websockets-dev libxkbcommon-dev libvulkan-dev libgl1-mesa-dev; \
3330
else \
3431
apt-get -y install qtbase5-dev libqt5serialport5-dev libqt5websockets5-dev libqt5sql5-sqlite libqt5svg5-dev; \
@@ -41,7 +38,6 @@ RUN apt-get -y install \
4138
debhelper \
4239
libdistro-info-perl \
4340
git \
44-
curl \
4541
python3-dev \
4642
build-essential \
4743
ninja-build \
@@ -58,9 +54,12 @@ RUN apt-get -y install \
5854
libmbedtls-dev \
5955
libftdi1-dev \
6056
libssl-dev \
61-
libraspberrypi-dev \
6257
libglib2.0-dev \
6358
libdrm-dev
59+
60+
RUN if [ "$SUITE" != "trixie" ]; then \
61+
apt-get -y install --no-install-recommends libraspberrypi-dev; \
62+
fi
6463

6564
# Mark /source as safe directory for git (used in CI mounts)
6665
RUN git config --system --add safe.directory /source

fedora

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
ARG DIST="fedora"
22
ARG SUITE="39"
3-
ARG QT_VERSION="5"
3+
ARG QT_VERSION="6"
44
ARG REPOSITORY="https://github.com/hyperion-project"
55
ARG CMAKE_VERSION="3.28.3"
66

ubuntu_debian

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
ARG DIST="debian"
2-
ARG SUITE="buster"
3-
ARG QT_VERSION="5"
2+
ARG SUITE="bullseye"
3+
ARG QT_VERSION="6"
44
ARG REPOSITORY="https://github.com/hyperion-project"
55
ARG CMAKE_VERSION="3.28.3"
66
ARG DEBIAN_FRONTEND=noninteractive

0 commit comments

Comments
 (0)