name: Deploy on: workflow_dispatch: 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