Browse Source

Added nightly docker publish

Tim Jones 1 month ago
parent
commit
8384a89e6c
1 changed files with 50 additions and 0 deletions
  1. 50 0
      .github/workflows/publish-docker-nightly.yaml

+ 50 - 0
.github/workflows/publish-docker-nightly.yaml

@@ -0,0 +1,50 @@
+name: Docker Nightly Publish
+
+on:
+  workflow_dispatch:
+
+permissions:
+  contents: read
+
+jobs:
+  docker:
+    runs-on: ubuntu-latest
+
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v4
+
+      # Enable multi-arch builds
+      - name: Set up QEMU
+        uses: docker/setup-qemu-action@v3
+
+      - name: Set up Docker Buildx
+        uses: docker/setup-buildx-action@v3
+
+      # Login to Docker Hub
+      - name: Login to Docker Hub
+        uses: docker/login-action@v3
+        with:
+          username: ${{ secrets.DOCKERHUB_USERNAME }}
+          password: ${{ secrets.DOCKERHUB_TOKEN }}
+
+      # Extract metadata
+      - name: Extract metadata
+        id: meta
+        run: |
+          echo "SHORT_SHA=${GITHUB_SHA::7}" >> $GITHUB_ENV
+          echo "DATE_TAG=$(date +%Y%m%d)" >> $GITHUB_ENV
+
+      # Build & Push Nightly Image
+      - name: Build and push nightly image
+        uses: docker/build-push-action@v5
+        with:
+          context: .
+          file: ./Dockerfile
+          platforms: linux/amd64,linux/arm64
+          push: true
+          target: final
+          tags: |
+            aptacode/rackpeek:nightly
+            aptacode/rackpeek:nightly-${{ env.SHORT_SHA }}
+            aptacode/rackpeek:nightly-${{ env.DATE_TAG }}