]> git.ipfire.org Git - thirdparty/shairport-sync.git/commitdiff
Docker updates. Github action updates. Fix for github actions. 1961/head
authorCharles <charlesthomasomer@gmail.com>
Tue, 28 Jan 2025 18:55:35 +0000 (18:55 +0000)
committerCharles <charlesthomasomer@gmail.com>
Tue, 28 Jan 2025 18:55:35 +0000 (18:55 +0000)
.github/workflows/docker-build-on-push_and_pull_request.yaml
.github/workflows/docker-build-on-tag.yaml
docker/Dockerfile
docker/classic/Dockerfile

index 9e5b4a6ef01c3f9064c1847246cc0ac52fdb79f9..f12fb88ee366ae791338b17d5e0e70046692b3f1 100644 (file)
@@ -8,12 +8,12 @@ name: Build and push docker (push/pull request)
 
 on:
   workflow_dispatch:
-  push:
-    branches:
-      - master
-      - development
-  pull_request:
-    types: [opened, synchronize, reopened, ready_for_review]
+  push:
+    branches:
+      - master
+      - development
+  pull_request:
+    types: [opened, synchronize, reopened, ready_for_review]
 
 env:
   DOCKER_PLATFORMS: linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64
@@ -22,10 +22,10 @@ env:
 jobs:
   test-build-on-pull-request:
     if: github.event_name == 'pull_request'
-    runs-on: ubuntu-24.04-arm
+    runs-on: ubuntu-22.04
     steps:
       - name: Checkout Repo
-        uses: actions/checkout@v3
+        uses: actions/checkout@v4.2.2
         with:
           fetch-depth: 0
           ref: ${{github.event.pull_request.head.ref}}
@@ -38,13 +38,13 @@ jobs:
           echo "SHAIRPORT_SYNC_BRANCH=${SHAIRPORT_SYNC_BRANCH}" >> $GITHUB_ENV
 
       - name: Set up QEMU
-        uses: docker/setup-qemu-action@v2.1.0
+        uses: docker/setup-qemu-action@v3.3.0
 
       - name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2.5.0
+        uses: docker/setup-buildx-action@v3.8.0
 
       - name: Build (classic)
-        uses: docker/build-push-action@v4.0.0
+        uses: docker/build-push-action@v6.13.0
         with:
           context: ./
           file: ./docker/classic/Dockerfile
@@ -53,7 +53,7 @@ jobs:
             SHAIRPORT_SYNC_BRANCH=${{ env.SHAIRPORT_SYNC_BRANCH }}
  
       - name: Build
-        uses: docker/build-push-action@v4.0.0
+        uses: docker/build-push-action@v6.13.0
         with:
           context: ./
           file: ./docker/Dockerfile
@@ -64,10 +64,10 @@ jobs:
 
   build-and-publish:
     if: github.event_name != 'pull_request'
-    runs-on: ubuntu-24.04-arm
+    runs-on: ubuntu-22.04
     steps:
       - name: Checkout
-        uses: actions/checkout@v3.5.2
+        uses: actions/checkout@v4.2.2
         with:
           fetch-depth: 0
 
@@ -86,20 +86,20 @@ jobs:
           echo "IMAGE_TAG_BASE=development" >> $GITHUB_ENV
 
       - name: Set up QEMU
-        uses: docker/setup-qemu-action@v2.1.0
+        uses: docker/setup-qemu-action@v3.3.0
 
       - name: Set up Docker Buildx
-        uses: docker/setup-buildx-action@v2.5.0
+        uses: docker/setup-buildx-action@v3.8.0
 
       - name: Login to Docker Registry
-        uses: docker/login-action@v2.1.0
+        uses: docker/login-action@v3.3.0
         with:
           registry: ${{ secrets.DOCKER_REGISTRY }}
           username: ${{ secrets.DOCKER_REGISTRY_USER }}
           password: ${{ secrets.DOCKER_REGISTRY_TOKEN }}
 
       - name: Build and push (classic)
-        uses: docker/build-push-action@v4.0.0
+        uses: docker/build-push-action@v6.13.0
         with:
           context: ./
           file: ./docker/classic/Dockerfile
@@ -110,7 +110,7 @@ jobs:
             SHAIRPORT_SYNC_BRANCH=${{ env.SHAIRPORT_SYNC_BRANCH }}
  
       - name: Build and push
-        uses: docker/build-push-action@v4.0.0
+        uses: docker/build-push-action@v6.13.0
         with:
           context: ./
           file: ./docker/Dockerfile
index ea69aa8bbc5c6fb064989fc4fc16f3dc329cd7d5..71c549ad45a9753e80f638a8155e2abf14b7a67f 100644 (file)
@@ -1,19 +1,19 @@
-# Builds & pushes a docker image when a tag is created.
+# Builds & pushes a docker image when a tag is created.
 # Tag pattern: '[tag]' & '[tag]-classic'
 # 'latest' & 'classic' also, when master tagged.
 
 # Only pushes the tag when it matches one of the following patterns:
-# X, X.Y or X.Y.Z
+# X, X.Y or X.Y.Z
 
 name: Build and push docker (tag)
 
 on:
   workflow_dispatch:
-  push:
-    tags:
-      - '[0-9]+'                 # X
-      - '[0-9]+\.[0-9]+'         # X.Y
-      - '[0-9]+\.[0-9]+\.[0-9]+' # X.Y.Z
+  push:
+    tags:
+      - '[0-9]+'                 # X
+      - '[0-9]+\.[0-9]+'         # X.Y
+      - '[0-9]+\.[0-9]+\.[0-9]+' # X.Y.Z
 
 env:
   DOCKER_PLATFORMS: linux/386,linux/amd64,linux/arm/v6,linux/arm64,linux/arm/v7
@@ -21,7 +21,7 @@ env:
 
 jobs:
   main:
-    runs-on: ubuntu-latest
+    runs-on: ubuntu-22.04
     steps:
       - name: Checkout
         uses: actions/checkout@v3.5.2
index aff083bd9234fecb1fb607cf7260956db8f90bb9..d432a792182ae61d5ce4717d40b4a786a260f40b 100644 (file)
@@ -1,7 +1,7 @@
 ARG NQPTP_BRANCH=main
 ARG SHAIRPORT_SYNC_BRANCH=.
 
-FROM alpine:3.17 AS builder
+FROM alpine:3.20 AS builder
 
 RUN apk -U add \
         alsa-lib-dev \
@@ -32,7 +32,7 @@ RUN git clone --depth=1 https://github.com/mikebrady/alac
 WORKDIR /alac
 RUN autoreconf -i
 RUN ./configure
-RUN make
+RUN make -j $(nproc)
 RUN make install
 WORKDIR /
 ##### ALAC END #####
@@ -44,7 +44,7 @@ RUN git clone --depth=1 -b "$NQPTP_BRANCH" https://github.com/mikebrady/nqptp
 WORKDIR /nqptp
 RUN autoreconf -i
 RUN ./configure
-RUN make
+RUN make -j $(nproc)
 WORKDIR /
 ##### NQPTP END #####
 
@@ -90,7 +90,7 @@ COPY --from=shairport-sync /shairport-sync/build/install/etc/dbus-1/system.d/sha
 ##### END BUILD FILES #####
 
 # Shairport Sync Runtime System
-FROM crazymax/alpine-s6:3.17-3.1.1.2
+FROM crazymax/alpine-s6:3.20-3.2.0.2
 
 ENV S6_CMD_WAIT_FOR_SERVICES=1
 ENV S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0
@@ -108,7 +108,7 @@ RUN apk -U add \
         libgcrypt \
         libplist \
         libpulse \
-        libressl3.6-libcrypto \
+        libressl3.8-libcrypto \
         libsndfile \
         libsodium \
         libuuid \
@@ -118,8 +118,10 @@ RUN apk -U add \
         mosquitto \
         popt \
         soxr \
-        curl && \
-    rm -rfv /lib/apk/db/* && \
+        curl \
+        dhclient
+
+RUN rm -rfv /lib/apk/db/* && \
     rm -rfv /etc/avahi/services/*.service && \
     addgroup shairport-sync && \
     adduser -D shairport-sync -G shairport-sync && \
index f9b91d6a44ac044f46796f76a4ef41ddd8edabd4..a37b37859abdd4ae5ef18434810d24ec0ec01f05 100644 (file)
@@ -1,6 +1,6 @@
 ARG SHAIRPORT_SYNC_BRANCH=.
 
-FROM alpine:3.17 AS builder
+FROM alpine:3.20 AS builder
 
 # Classic (aka AirPlay 1) Build
 
@@ -31,7 +31,7 @@ RUN git clone https://github.com/mikebrady/alac
 WORKDIR /alac
 RUN autoreconf -i
 RUN ./configure
-RUN make
+RUN make -j $(nproc)
 RUN make install
 WORKDIR /
 ##### ALAC END #####
@@ -52,7 +52,7 @@ WORKDIR /
 ##### SPS END #####
 
 # Shairport Sync Runtime System
-FROM crazymax/alpine-s6:3.17-3.1.1.2
+FROM crazymax/alpine-s6:3.20-3.2.0.2
 
 ENV S6_CMD_WAIT_FOR_SERVICES=1
 ENV S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0