101 lines
2.7 KiB
YAML
101 lines
2.7 KiB
YAML
name: Build & Push MinAttest
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- dev
|
|
|
|
env:
|
|
REGISTRY: gitea.theriise.net/steinhelge
|
|
env:
|
|
REGISTRY_HOST: gitea.theriise.net
|
|
REGISTRY_NAMESPACE: steinhelge
|
|
IMAGE_NAME: travelcast-web
|
|
|
|
jobs:
|
|
wake-zorin:
|
|
name: Wake Zorin
|
|
runs-on: waker # t610-waker-runneren med label "waker"
|
|
|
|
steps:
|
|
- name: Wake Zorin via WOL
|
|
run: /home/steinhelge/wake-zorin.sh
|
|
|
|
- name: Vent på at Zorin våkner
|
|
run: sleep 10
|
|
|
|
build-and-push:
|
|
runs-on: self-hosted
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
# Finn ut hvilken tag vi skal bruke
|
|
- name: Set image tag
|
|
run: |
|
|
# Gitea prøver å være kompatibel med GitHub Actions
|
|
# Noen ganger er GITHUB_REF_NAME bare 'main', andre ganger 'refs/heads/main'
|
|
REF="${GITHUB_REF_NAME:-$GITHUB_REF}"
|
|
REF="${REF#refs/heads/}"
|
|
|
|
if [ "$REF" = "main" ]; then
|
|
TAG="latest"
|
|
elif [ "$REF" = "dev" ]; then
|
|
TAG="dev"
|
|
else
|
|
# fallback: bruk branchnavnet som tag, men uten skråstreker
|
|
TAG="$(echo "$REF" | tr '/' '-')"
|
|
fi
|
|
|
|
echo "Bygger med TAG=$TAG"
|
|
echo "TAG=$TAG" >> $GITHUB_ENV
|
|
|
|
- name: Log in to Gitea Container Registry
|
|
run: |
|
|
echo "${{ secrets.REGISTRY_TOKEN }}" | docker login $REGISTRY -u steinhelge --password-stdin
|
|
|
|
# ---------- Frontend ----------
|
|
- name: Build Frontend (${{ env.TAG }})
|
|
run: |
|
|
docker build \
|
|
-t $REGISTRY/minattest-frontend:${TAG} \
|
|
-f frontend/minattest-app/Dockerfile \
|
|
frontend/minattest-app
|
|
|
|
- name: Push Frontend (${{ env.TAG }})
|
|
run: |
|
|
docker push $REGISTRY/minattest-frontend:${TAG}
|
|
|
|
# ---------- Backend API ----------
|
|
- name: Build API (${{ env.TAG }})
|
|
run: |
|
|
docker build \
|
|
-t $REGISTRY/minattest-api:${TAG} \
|
|
-f backend/Dockerfile \
|
|
backend
|
|
|
|
- name: Push API (${{ env.TAG }})
|
|
run: |
|
|
docker push $REGISTRY/minattest-api:${TAG}
|
|
|
|
# ---------- App Host / BFF ----------
|
|
- name: Build App Host (${{ env.TAG }})
|
|
run: |
|
|
docker build \
|
|
-t $REGISTRY/minattest-app-host:${TAG} \
|
|
-f frontend/minattest-app-host/Dockerfile \
|
|
frontend/minattest-app-host
|
|
|
|
- name: Push App Host (${{ env.TAG }})
|
|
run: |
|
|
docker push $REGISTRY/minattest-app-host:${TAG}
|
|
|
|
- name: Deploy (docker compose pull + up)
|
|
run: |
|
|
cd /srv/minattest # ← Endre denne pathen hvis compose ligger et annet sted
|
|
docker compose pull
|
|
docker compose up -d
|
|
|