Files
hospitality/.gitea/workflows/build.yml
T
2025-11-25 20:00:54 +01:00

97 lines
2.9 KiB
YAML

name: Build & Push Hospitality
on:
push:
branches:
- master
- dev
jobs:
build-and-push:
runs-on: self-hosted
env:
REGISTRY: gitea.theriise.net/steinhelge
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 'master', andre ganger 'refs/heads/master'
REF="${GITHUB_REF_NAME:-$GITHUB_REF}"
REF="${REF#refs/heads/}"
if [ "$REF" = "master" ]; 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 hospitality 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: |
if [ "$TAG" = "dev" ]; then
API_URL="https://hospitality-dev-api.theriise.net/api"
else
API_URL="https://hospitality-api.theriise.net/api"
fi
docker build \
--build-arg VITE_API_URL=$API_URL \
-t $REGISTRY/hospitality-frontend:${TAG} \
-f src/hospitality-web/Dockerfile \
src/hospitality-web
- name: Push Frontend (${{ env.TAG }})
run: |
docker push $REGISTRY/hospitality-frontend:${TAG}
# ---------- Backend API ----------
- name: Build API (${{ env.TAG }})
run: |
docker build \
-t $REGISTRY/hospitality-api:${TAG} \
-f src/Hospitality.Backend/Dockerfile \
.
# - name: Build API (${{ env.TAG }})
# run: |
# docker build \
# -t $REGISTRY/hospitality-api:${TAG} \
# -f src/Hospitality.Backend/Dockerfile \
# src/Hospitality.Backend
- name: Push API (${{ env.TAG }})
run: |
docker push $REGISTRY/hospitality-api:${TAG}
- name: Deploy containers
run: |
if [ "$TAG" = "dev" ]; then
echo "Deploying DEV til /srv/hospitality-dev"
cd /srv/hospitality-dev
docker compose -p hospitality-dev pull
docker compose -p hospitality-dev up -d
elif [ "$TAG" = "latest" ]; then
echo "Deploying PROD til /srv/hospitality-prod"
cd /srv/hospitality-prod
docker compose -p hospitality-prod pull
docker compose -p hospitality-prod up -d
else
echo "TAG=$TAG er ikke dev eller latest - skipper auto-deploy."
fi