From b50af956003a48986ee121e4bc7bc5221a614858 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B1=E5=AE=87=E8=BB=92Yuh=20Suan=20Chiu?= Date: Sun, 11 Feb 2024 03:20:45 +0800 Subject: [PATCH] Fix github action --- .github/workflows/deploy-docker-gce.yml | 79 +++++++++++++++---------- 1 file changed, 49 insertions(+), 30 deletions(-) diff --git a/.github/workflows/deploy-docker-gce.yml b/.github/workflows/deploy-docker-gce.yml index ed60bf8..f8e2c75 100644 --- a/.github/workflows/deploy-docker-gce.yml +++ b/.github/workflows/deploy-docker-gce.yml @@ -6,41 +6,60 @@ on: - dev # Replace with your branch jobs: - build: + build-and-push: runs-on: ubuntu-latest steps: - - name: Build and push Docker image - uses: actions/checkout@v3 + - uses: actions/checkout@v4 + + - name: Check for changes + id: changes + uses: dorny/paths-filter@v3 + with: + filters: | + src: + - 'src/**' + + - name: Login to DockerHub + uses: docker/login-action@v3 with: - context: . - file: ./Dockerfile - push: true - tags: arcade0425/snap_up_thsr:latest + username: arcade0425 + password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} + if: steps.changes.outputs.matched == 'true' + + - name: Build and push Docker image + run: | + docker build -t arcade0425/snap_up_thsr:latest . + docker push arcade0425/snap_up_thsr:latest + if: steps.changes.outputs.matched == 'true' deploy: - needs: build + needs: build-and-push runs-on: ubuntu-latest steps: - - name: Setup Google Cloud SDK - uses: google-github-actions/setup-gcloud@v1 - with: - project_id: ${{ secrets.GCP_PROJECT_ID }} - service_account_key: ${{ secrets.GCP_SA_KEY }} - export_default_credentials: true - - - name: Deploy to GCE + - uses: 'actions/checkout@v4' run: | - gcloud compute ssh ${{ secrets.GCP_USER }}@${{ secrets.GCP_INSTANCE }} --zone=${{ variables.INSTANCE_REGION }} -- "cd snap_up_thsr && \ - docker pull arcade0425/snap_up_thsr:latest && \ - docker run --network=${{ secrets.LIVE_NETWORK }} \ - -p 8080:8000 \ - -e REDIS_HOST=${{ secrets.REDIS_HOST }} \ - -e DB_HOST=${{ secrets.DB_HOST }} \ - -e DB_USER=${{ secrets.DB_USER }} \ - -e DB_PASSWORD=${{ secrets.DB_PASSWORD }} \ - -e DB_NAME=${{ secrets.DB_NAME }} \ - -e deploy=live \ - -d \ - --restart=always \ - --name snap_up_thsr \ - arcade0425/snap_up_thsr:latest + echo ${{ github.repository.INSTANCE_REGION }} + # - uses: 'actions/checkout@v4' + + # - name: Google Cloud Auth + # uses: google-github-actions/auth@v2 + # with: + # project_id: ${{ secrets.GCP_PROJECT_ID }} + # credentials_json: ${{ secrets.GCP_CREDENTIALS }} + + # - name: Deploy to GCE + # run: | + # gcloud compute ssh ${{ secrets.GCP_USER }}@${{ secrets.GCP_INSTANCE }} --zone=${{ github.repository.INSTANCE_REGION }} -- "cd snap_up_thsr && \ + # docker pull arcade0425/snap_up_thsr:latest && \ + # docker run --network=${{ secrets.LIVE_NETWORK }} \ + # -p 8080:8000 \ + # -e REDIS_HOST=${{ secrets.REDIS_HOST }} \ + # -e DB_HOST=${{ secrets.DB_HOST }} \ + # -e DB_USER=${{ secrets.DB_USER }} \ + # -e DB_PASSWORD=${{ secrets.DB_PASSWORD }} \ + # -e DB_NAME=${{ secrets.DB_NAME }} \ + # -e deploy=live \ + # -d \ + # --restart=always \ + # --name snap_up_thsr \ + # arcade0425/snap_up_thsr:latest