Files
hallofbrawl-website/.gitea/workflows/ci.yaml
Remo Liebmann f3bc011f8c
Some checks failed
Build & Deploy / build (push) Failing after 32s
Build & Deploy / deploy (push) Has been skipped
add gitea ci
2026-02-23 00:18:06 +01:00

79 lines
1.8 KiB
YAML

name: Build & Deploy
on:
push:
branches:
- main
- development
env:
DOCKER_TLS_CERTDIR: /certs
REGISTRY: registry.remo-liebmann.de
IMAGE_NAME: hallofbrawl-homepage
jobs:
# =========================
# BUILD
# =========================
build:
runs-on: ubuntu-latest
services:
docker:
image: docker:24.0.5-dind
options: --privileged
container:
image: docker:24.0.5
steps:
- uses: actions/checkout@v4
- name: Set environment based on branch
run: |
if [ "${GITHUB_REF##*/}" = "main" ]; then
echo "IMAGE_TAG=prod" >> $GITHUB_ENV
echo "HUGO_ENV=production" >> $GITHUB_ENV
else
echo "IMAGE_TAG=dev" >> $GITHUB_ENV
echo "HUGO_ENV=development" >> $GITHUB_ENV
fi
- name: Login to registry
run: echo "${{ secrets.CI_REGISTRY_PASSWORD }}" | docker login $REGISTRY -u reguser --password-stdin
- name: Build image
run: |
docker build \
--build-arg HUGO_ENV=$HUGO_ENV \
-t $REGISTRY/$IMAGE_NAME:$IMAGE_TAG \
.
- name: Push image
run: docker push $REGISTRY/$IMAGE_NAME:$IMAGE_TAG
# =========================
# DEPLOY
# =========================
deploy:
runs-on: ubuntu-latest
needs: build
container:
image: alpine/curl
steps:
- name: Set webhook based on branch
run: |
if [ "${GITHUB_REF##*/}" = "main" ]; then
echo "PORTAINER_WEBHOOK=${{ secrets.PORTAINER_WEBHOOK_PROD }}" >> $GITHUB_ENV
else
echo "PORTAINER_WEBHOOK=${{ secrets.PORTAINER_WEBHOOK_DEV }}" >> $GITHUB_ENV
fi
- name: Trigger Portainer
run: curl --insecure -X POST $PORTAINER_WEBHOOK