Files
docker-images/.gitea/workflows/build-bee-dashboard.yaml
Walter Oggioni 148e35bbef
All checks were successful
CI / Build & deploy Cloudflare page (push) Successful in 2m43s
optimized bee-dashboard build
2025-12-12 22:27:10 +08:00

59 lines
2.3 KiB
YAML

name: CI
on:
push:
branches: [ master ]
paths:
- 'bee-dashboard/**'
- '.gitea/workflows/build-bee-dashboard.yaml'
jobs:
"Build & deploy Cloudflare page":
runs-on: woryzen
steps:
- name: Checkout sources
uses: actions/checkout@v4
with:
path: docker-images
- name: Checkout bee-dashboard sources
run: /usr/sbin/git clone -b 0.33.3 --depth 1 https://github.com/woggioni/bee-dashboard.git src
- name: Execute build
run: cd src && npm install
- name: Copy _headers file
run: cp docker-images/bee-dashboard/_headers src/build
- name: Create archive
run: tar -czf docker-images/bee-dashboard/bee-dashboard.tar -C src/build .
- name: Publish archive to gitea.woggioni.net
run: curl --user woggioni:${{ secrets.PUBLISHER_TOKEN }} --upload-file docker-images/bee-dashboard/bee-dashboard.tar https://gitea.woggioni.net/api/packages/woggioni/generic/bee-dashboard/0.33.3/bee-dashboard.tar
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3.4.0
with:
driver: docker-container
platforms: |
linux/amd64
linux/arm64
- name: Login to Gitea container registry
uses: docker/login-action@v3
with:
registry: gitea.woggioni.net
username: woggioni
password: ${{ secrets.PUBLISHER_TOKEN }}
- name: Build and push bee-dashboard images
uses: docker/build-push-action@v6
with:
platforms: |
linux/amd64
linux/arm64
context: "docker-images/bee-dashboard"
push: true
pull: true
ssh: default=/home/luser/.ssh/id_ed25519
build-args: "VERSION=0.33.3"
tags: |
"gitea.woggioni.net/woggioni/bee-dashboard:0.33.3"
cache-from: type=registry,ref=gitea.woggioni.net/woggioni/bee-dashboard:buildx
cache-to: type=registry,mode=max,compression=zstd,image-manifest=true,oci-mediatypes=true,ref=gitea.woggioni.net/woggioni/bee-dashboard:buildx
- name: Deploy to Cloudflare
run: npx wrangler pages deploy --project-name bee-dashboard --branch main src/build
env:
CLOUDFLARE_ACCOUNT_ID: ${{ vars.CLOUDFLARE_ACCOUNT_ID }}
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}