Files
d3m0k1d.ru/.gitea/workflows/cd-front.yml
d3m0k1d 01eab6213a
Some checks failed
Deploy frontend / deploy-frontend (push) Failing after 35s
Backend ci / build (push) Successful in 4m26s
chore: add workflow dispatch to cd
2026-02-03 16:34:05 +03:00

69 lines
2.1 KiB
YAML

name: Deploy frontend
on:
push:
branches:
- master
workflow_dispatch:
defaults:
run:
working-directory: frontend
jobs:
deploy-frontend:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Import Secrets
id: import-secrets
uses: hashicorp/vault-action@v3.4.0
with:
url: https://vault.d3m0k1d.ru
token: ${{ secrets.VAULT }}
secrets: |
site/data/prod/gitea TOKEN | GITEA_TOKEN ;
site/data/prod/server SSH_KEY | SSH_KEY ;
site/data/prod/server USER | SERVER_USER ;
site/data/prod/server HOST | SERVER_HOST ;
site/data/prod/server PORT | SERVER_PORT
- name: Login to registry
uses: docker/login-action@v3
with:
registry: gitea.d3m0k1d.ru
username: d3m0k1d
password: ${{ steps.import-secrets.outputs.TOKEN }}
- name: Download QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build and push
uses: docker/build-push-action@v5
with:
context: ./frontend
file: ./frontend/Dockerfile
push: true
tags: gitea.d3m0k1d.ru/d3m0k1d/frontend:latest
cache-from: type=gha
cache-to: type=gha,mode=max
- name: Deploy at server
uses: appleboy/ssh-action@v1.2.0
with:
host: ${{ steps.import-secrets.outputs.HOST }}
port: ${{ steps.import-secrets.outputs.PORT }}
username: ${{ steps.import-secrets.outputs.USER }}
key: ${{ steps.import-secrets.outputs.SSH_KEY }}
script: |
docker login -u d3m0k1d -p ${{ steps.import-secrets.outputs.TOKEN }} gitea.d3m0k1d.ru
docker pull gitea.d3m0k1d.ru/d3m0k1d/frontend:latest
docker rm -f d3m0k1d-frontend || true
docker run --name d3m0k1d-frontend -d -p 80:80 --restart unless-stopped gitea.d3m0k1d.ru/d3m0k1d/frontend:latest