From d635a12184d9bb6eed51c0787070f120dd4ed1b7 Mon Sep 17 00:00:00 2001 From: eksqtr Date: Tue, 27 Aug 2024 18:12:48 +0800 Subject: [PATCH] Fixes on deploy.yml --- .github/workflows/deploy.yml | 81 ++++++++++++++++++------------------ 1 file changed, 40 insertions(+), 41 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index e0ee3e2..f2b1082 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -14,10 +14,28 @@ jobs: deploy: runs-on: ubuntu-latest if: github.event_name == 'push' || (github.event.pull_request.merged == true && github.event.pull_request.base.ref == 'master') + environment: 'production' + env: + APP_URL: ${{ vars.APP_URL }} + APP_TITLE: ${{ vars.APP_TITLE }} + APP_AUTHOR: ${{ vars.APP_AUTHOR }} + APP_DESCRIPTION: ${{ vars.APP_DESCRIPTION }} + APP_METADATA_KEYWORDS: ${{ vars.APP_METADATA_KEYWORDS }} + APP_METADATA_OPENGRAPH_SITENAME: ${{ vars.APP_METADATA_OPENGRAPH_SITENAME }} + steps: - name: Checkout source code uses: actions/checkout@v3 + - name: Print environment variables (Debugging) + run: | + echo "APP_URL: $APP_URL" + echo "APP_TITLE: $APP_TITLE" + echo "APP_AUTHOR: $APP_AUTHOR" + echo "APP_DESCRIPTION: $APP_DESCRIPTION" + echo "APP_METADATA_KEYWORDS: $APP_METADATA_KEYWORDS" + echo "APP_METADATA_OPENGRAPH_SITENAME: $APP_METADATA_OPENGRAPH_SITENAME" + - name: Cache npm and Next.js build cache uses: actions/cache@v4 with: @@ -32,14 +50,14 @@ jobs: run: npm ci - name: Build the project for production environment - env: - APP_URL: ${{ vars.APP_URL }} - APP_TITLE: ${{ vars.APP_TITLE }} - APP_AUTHOR: ${{ vars.APP_AUTHOR }} - APP_DESCRIPTION: ${{ vars.APP_DESCRIPTION }} - APP_METADATA_KEYWORDS: ${{ vars.APP_METADATA_KEYWORDS }} - APP_METADATA_OPENGRAPH_SITENAME: ${{ vars.APP_METADATA_OPENGRAPH_SITENAME }} - run: npm run build + run: | + echo "APP_URL=$APP_URL" > .env + echo "APP_TITLE=$APP_TITLE" >> .env + echo "APP_AUTHOR=$APP_AUTHOR" >> .env + echo "APP_DESCRIPTION=$APP_DESCRIPTION" >> .env + echo "APP_METADATA_KEYWORDS=$APP_METADATA_KEYWORDS" >> .env + echo "APP_METADATA_OPENGRAPH_SITENAME=$APP_METADATA_OPENGRAPH_SITENAME" >> .env + npm run build - name: Configuring Directory Permissions of the server env: @@ -62,7 +80,7 @@ jobs: echo "$SSH_PRIVATE_KEY" > key.pem chmod 600 key.pem - rsync -avz -e "ssh -i key.pem -o StrictHostKeyChecking=no" --delete .next node_modules package.json package-lock.json $VM_USERNAME@$VM_IP:/var/www/website-portfolio/ + rsync -avz -e "ssh -i key.pem -o StrictHostKeyChecking=no" --delete .env .next node_modules package.json package-lock.json $VM_USERNAME@$VM_IP:/var/www/website-portfolio/ rsync -avz -e "ssh -i key.pem -o StrictHostKeyChecking=no" deploy/nginx.conf $VM_USERNAME@$VM_IP:/tmp/nginx.conf @@ -73,38 +91,19 @@ jobs: sudo nginx -s reload EOF - - name: Configure environment variables on the server - env: - SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} - VM_USERNAME: ${{ secrets.VM_USERNAME }} - VM_IP: ${{ secrets.VM_IP }} - APP_URL: ${{ vars.APP_URL }} - APP_TITLE: ${{ vars.APP_TITLE }} - APP_AUTHOR: ${{ vars.APP_AUTHOR }} - APP_DESCRIPTION: ${{ vars.APP_DESCRIPTION }} - APP_METADATA_KEYWORDS: ${{ vars.APP_METADATA_KEYWORDS }} - APP_METADATA_OPENGRAPH_SITENAME: ${{ vars.APP_METADATA_OPENGRAPH_SITENAME }} - run: | - echo "$SSH_PRIVATE_KEY" > key.pem - chmod 600 key.pem - - ssh -i key.pem -o StrictHostKeyChecking=no $VM_USERNAME@$VM_IP << EOF - echo "APP_URL=$APP_URL" > /var/www/website-portfolio/.env - echo "APP_TITLE=$APP_TITLE" >> /var/www/website-portfolio/.env - echo "APP_AUTHOR=$APP_AUTHOR" >> /var/www/website-portfolio/.env - echo "APP_DESCRIPTION=$APP_DESCRIPTION" >> /var/www/website-portfolio/.env - echo "APP_METADATA_KEYWORDS=$APP_METADATA_KEYWORDS" >> /var/www/website-portfolio/.env - echo "APP_METADATA_OPENGRAPH_SITENAME=$APP_METADATA_OPENGRAPH_SITENAME" >> /var/www/website-portfolio/.env - EOF - - - name: Print environment variables (Debugging) - run: | - echo "APP_URL: ${{ vars.APP_URL }}" - echo "APP_TITLE: ${{ vars.APP_TITLE }}" - echo "APP_AUTHOR: ${{ vars.APP_AUTHOR }}" - echo "APP_DESCRIPTION: ${{ vars.APP_DESCRIPTION }}" - echo "APP_METADATA_KEYWORDS: ${{ vars.APP_METADATA_KEYWORDS }}" - echo "APP_METADATA_OPENGRAPH_SITENAME: ${{ vars.APP_METADATA_OPENGRAPH_SITENAME }}" + # - name: Configure environment variables on the server + # run: | + # echo "$SSH_PRIVATE_KEY" > key.pem + # chmod 600 key.pem + + # ssh -i key.pem -o StrictHostKeyChecking=no $VM_USERNAME@$VM_IP << EOF + # echo "APP_URL=$APP_URL" > /var/www/website-portfolio/.env + # echo "APP_TITLE=$APP_TITLE" >> /var/www/website-portfolio/.env + # echo "APP_AUTHOR=$APP_AUTHOR" >> /var/www/website-portfolio/.env + # echo "APP_DESCRIPTION=$APP_DESCRIPTION" >> /var/www/website-portfolio/.env + # echo "APP_METADATA_KEYWORDS=$APP_METADATA_KEYWORDS" >> /var/www/website-portfolio/.env + # echo "APP_METADATA_OPENGRAPH_SITENAME=$APP_METADATA_OPENGRAPH_SITENAME" >> /var/www/website-portfolio/.env + # EOF - name: Configure and Start application env: