83 lines
2.4 KiB
YAML
83 lines
2.4 KiB
YAML
name: Deploy
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "v[0-9]+.[0-9]+.[0-9]+"
|
|
|
|
# paths:
|
|
# - ".gitea/workflows/deploy-client.yml"
|
|
# - "client/**"
|
|
|
|
jobs:
|
|
publish-windows:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Keyscan
|
|
run: |
|
|
ssh-keyscan git.koptilnya.xyz >> ~/.ssh/known_hosts
|
|
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
with:
|
|
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
|
ssh-strict: false
|
|
persist-credentials: false
|
|
|
|
- name: Build
|
|
run: |
|
|
docker build \
|
|
-t chad-client-windows-builder \
|
|
-f ./client/Dockerfile.windows \
|
|
./client \
|
|
--build-arg COMMIT_SHA=${{ gitea.sha }} \
|
|
--build-arg API_BASE_URL=${{ vars.API_BASE_URL }} \
|
|
--build-arg TAURI_SIGNING_PRIVATE_KEY=${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
|
|
|
|
docker create --name chad-client-windows-container chad-client-windows-builder
|
|
mkdir -p artifacts
|
|
docker cp chad-client-windows-container:/artifacts artifacts/
|
|
docker rm chad-client-windows-container
|
|
ls -la artifacts
|
|
|
|
- name: Publish
|
|
uses: akkuman/gitea-release-action@v1
|
|
with:
|
|
files: |
|
|
artifacts/**
|
|
draft: true
|
|
|
|
# publish-web:
|
|
# runs-on: ubuntu-latest
|
|
|
|
# steps:
|
|
# - name: Keyscan
|
|
# run: |
|
|
# ssh-keyscan git.koptilnya.xyz >> ~/.ssh/known_hosts
|
|
|
|
# - name: Checkout
|
|
# uses: actions/checkout@v4
|
|
# with:
|
|
# ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
|
# ssh-strict: false
|
|
# persist-credentials: false
|
|
|
|
# - name: Build
|
|
# run: docker build -t chad-client -f ./client/Dockerfile.web ./client --build-arg COMMIT_SHA=${{ gitea.sha }} --build-arg API_BASE_URL=${{ vars.API_BASE_URL }}
|
|
|
|
# - name: Stop old container
|
|
# run: docker rm -f chad-client || true
|
|
|
|
# - name: Run
|
|
# run: |
|
|
# docker run -d \
|
|
# --name chad-client \
|
|
# --network traefik \
|
|
# --label "traefik.enable=true" \
|
|
# --label "traefik.http.routers.chad-client.rule=Host(\`chad.koptilnya.xyz\`)" \
|
|
# --label "traefik.http.routers.chad-client.entrypoints=websecure" \
|
|
# --label "traefik.http.routers.chad-client.tls.certresolver=myresolver" \
|
|
# --label "traefik.http.services.chad-client.loadbalancer.server.port=80" \
|
|
# chad-client:latest
|