Browse Source

Add job to build packages on-demand

Frédéric Guillot 2 years ago
parent
commit
856b96cbf8

+ 2 - 0
.github/workflows/build_binaries.yml

@@ -16,6 +16,8 @@ jobs:
       - name: Checkout
         uses: actions/checkout@v4
       - name: Compile binaries
+        env:
+          CGO_ENABLED: 0
         run: make build
       - name: Upload binaries
         uses: actions/upload-artifact@v4

+ 28 - 1
.github/workflows/debian_packages.yml

@@ -1,6 +1,7 @@
 name: Debian Packages
 permissions: read-all
 on:
+  workflow_dispatch:
   push:
     tags:
       - '[0-9]+.[0-9]+.[0-9]+'
@@ -28,8 +29,34 @@ jobs:
       run: make debian-packages
     - name: List generated files
       run: ls -l *.deb
+  build-packages-manually:
+    if: github.event.workflow_dispatch
+    name: Build Packages Manually
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@v4
+      with:
+          fetch-depth: 0
+    - name: Set up QEMU
+      uses: docker/setup-qemu-action@v3
+    - name: Set up Docker Buildx
+      uses: docker/setup-buildx-action@v3
+      id: buildx
+      with:
+          install: true
+    - name: Available Docker Platforms
+      run: echo ${{ steps.buildx.outputs.platforms }}
+    - name: Build Debian Packages
+      run: make debian-packages
+    - name: Upload package
+      uses: actions/upload-artifact@v4
+      with:
+        name: packages
+        path: "*.deb"
+        if-no-files-found: error
+        retention-days: 3
   publish-packages:
-    if: ${{ ! github.event.pull_request }}
+    if: github.event.push
     name: Publish Packages
     runs-on: ubuntu-latest
     steps:

+ 19 - 1
.github/workflows/rpm_packages.yml

@@ -1,6 +1,7 @@
 name: RPM Packages
 permissions: read-all
 on:
+  workflow_dispatch:
   push:
     tags:
       - '[0-9]+.[0-9]+.[0-9]+'
@@ -19,8 +20,25 @@ jobs:
       run: make rpm
     - name: List generated files
       run: ls -l *.rpm
+  build-package-manually:
+    if: github.event.workflow_dispatch
+    name: Build Packages Manually
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@v4
+      with:
+          fetch-depth: 0
+    - name: Build RPM Package
+      run: make rpm
+    - name: Upload package
+      uses: actions/upload-artifact@v4
+      with:
+        name: packages
+        path: "*.rpm"
+        if-no-files-found: error
+        retention-days: 3
   publish-package:
-    if: ${{ ! github.event.pull_request }}
+    if: github.event.push
     name: Publish Packages
     runs-on: ubuntu-latest
     steps: