44 lines
1.2 KiB
YAML
44 lines
1.2 KiB
YAML
name: Deploy Frontend
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- '.gitea/workflows/deploy-frontend.yml'
|
|
- 'frontend/**'
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Keyscan
|
|
run: |
|
|
ssh-keyscan git.koptilnya.xyz >> ~/.ssh/known_hosts
|
|
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Build image
|
|
run: |
|
|
docker build \
|
|
--build-arg API_BASE=${{ vars.API_BASE_URL }} \
|
|
-t tmc-frontend ./frontend
|
|
|
|
- name: Stop old container
|
|
run: docker rm -f tmc-frontend || true
|
|
|
|
- name: Run
|
|
run: |
|
|
docker run -d \
|
|
--name tmc-frontend \
|
|
--network traefik \
|
|
--label "traefik.enable=true" \
|
|
--label "traefik.http.routers.tmc-frontend.rule=Host(\`${{ vars.FRONTEND_HOST }}\`)" \
|
|
--label "traefik.http.routers.tmc-frontend.entrypoints=websecure" \
|
|
--label "traefik.http.routers.tmc-frontend.tls=true" \
|
|
--label "traefik.http.routers.tmc-frontend.tls.certresolver=myresolver" \
|
|
--label "traefik.http.services.tmc-frontend.loadbalancer.server.port=80" \
|
|
tmc-frontend:latest
|