Skip to content

Commit 7f4301c

Browse files
committed
⚙️ setup: add GitHub Actions workflow for building production container
1 parent fbb7cfb commit 7f4301c

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed

.github/workflows/container.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: Container
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
jobs:
8+
build-production:
9+
name: Build Production Images
10+
runs-on: ubuntu-latest
11+
permissions:
12+
contents: read
13+
packages: write
14+
security-events: write
15+
16+
steps:
17+
- name: Checkout code
18+
uses: actions/checkout@v4
19+
20+
- name: Build and Push Production Container
21+
uses: wgtechlabs/container-build-flow-action@v1.3.1
22+
with:
23+
# Registry Configuration
24+
registry: both
25+
dockerhub-username: ${{ secrets.DOCKER_HUB_USERNAME }}
26+
dockerhub-token: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
27+
28+
# Branch Configuration
29+
main-branch: main
30+
dev-branch: dev
31+
32+
# Image Configuration
33+
image-name: unthread-webhook-server
34+
dockerfile: ./Dockerfile
35+
context: .
36+
platforms: linux/amd64,linux/arm64
37+
38+
# Build Arguments
39+
build-args: |
40+
NODE_VERSION=22.21-alpine3.23
41+
RAILWAY_SERVICE_ID=${{ secrets.RAILWAY_SERVICE_ID }}
42+
43+
# Labels
44+
labels: |
45+
org.opencontainers.image.title=Unthread Webhook Server
46+
org.opencontainers.image.description=A reliable, production-ready Node.js server for processing Unthread.io webhooks with signature verification and smart platform handling.
47+
org.opencontainers.image.source=${{ github.server_url }}/${{ github.repository }}
48+
org.opencontainers.image.url=${{ github.server_url }}/${{ github.repository }}
49+
org.opencontainers.image.licenses=GPL-3.0
50+
51+
# Features
52+
cache-enabled: true
53+
provenance: true
54+
sbom: true

0 commit comments

Comments
 (0)