46 lines
1.3 KiB
YAML
46 lines
1.3 KiB
YAML
name: Build Frontend
|
|
|
|
defaults:
|
|
run:
|
|
shell: sh
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- "frontend/**"
|
|
workflow_dispatch: {}
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: host
|
|
steps:
|
|
- name: Install Git and Docker CLI
|
|
run: apk add --no-cache git docker-cli docker-cli-buildx
|
|
|
|
- name: Log in to Gitea Container Registry
|
|
# This uses the automated token provided natively by Gitea Actions
|
|
run: echo "${{ secrets.babymonitor_cicd }}" | docker login gitea.lan -u ${{ github.actor }} --password-stdin
|
|
|
|
- name: Create Custom Buildx Builder for HTTP
|
|
run: |
|
|
# 1. Write a configuration rule forcing plain HTTP for your local domain
|
|
echo '[registry."gitea.lan"]' > buildkitd.toml
|
|
echo ' http = true' >> buildkitd.toml
|
|
|
|
# 2. Tell buildx to create and use a builder with this rule
|
|
docker buildx create --use --name local-http-builder --config buildkitd.toml
|
|
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
# Tells the action to use the local 'git' binary we just installed
|
|
set-safe-directory: 'true'
|
|
|
|
- name: Build Docker image
|
|
run: |
|
|
docker buildx build \
|
|
--platform linux/arm64 \
|
|
-t gitea.lan/jacobh2/babymonitor:frontend-latest \
|
|
./frontend \
|
|
--push
|