Skip to content

Update cicd.yml

Update cicd.yml #49

Workflow file for this run

name: Java CICD with Gradle
on:
push:
branches: [ "cicd" ]
jobs:
build:
runs-on: ubuntu-latest
env:
DB_URL: ${{ secrets.DB_URL }}
DB_USERNAME: ${{ secrets.DB_USERNAME }}
DB_PASSWORD: ${{ secrets.DB_PASSWORD }}
GCP_PROJECT_ID: ${{ secrets.GCP_PROJECT_ID }}
GCP_BUCKET_NAME: ${{ secrets.GCP_BUCKET_NAME }}
TOKEN_SECRET_KEY: ${{ secrets.TOKEN_SECRET_KEY }}
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Check environment variables
run: |
echo "DB_URL: $DB_URL"
echo "DB_USERNAME: $DB_USERNAME"
echo "DB_PASSWORD: $DB_PASSWORD"
echo "GCP_PROJECT_ID: $GCP_PROJECT_ID"
echo "GCP_BUCKET_NAME: $GCP_BUCKET_NAME"
echo "TOKEN_SECRET_KEY: $TOKEN_SECRET_KEY"
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Grant execute permission for gradlew
run: chmod +x ./gradlew
- name: Run Spring Boot application
run: ./gradlew bootRun
env:
DB_URL: ${{ secrets.DB_URL }}
DB_USERNAME: ${{ secrets.DB_USERNAME }}
DB_PASSWORD: ${{ secrets.DB_PASSWORD }}
GCP_PROJECT_ID: ${{ secrets.GCP_PROJECT_ID }}
GCP_BUCKET_NAME: ${{ secrets.GCP_BUCKET_NAME }}
TOKEN_SECRET_KEY: ${{ secrets.TOKEN_SECRET_KEY }}
- name: Build with Gradle
run: ./gradlew clean build --exclude-task test
- name: Copy jar file to remote VM
uses: appleboy/scp-action@master
with:
host: ${{ secrets.NB_SERVER_HOST }}
key: ${{ secrets.NB_SERVER_SSH_KEY }}
username: ${{ secrets.NB_SERVER_USER }}
port: ${{ secrets.NB_SERVER_PORT }}
source: "build/libs/*.jar"
target: "/home/nbdream/app"
strip_components: 2
- name: Deploy new version in VM
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.NB_SERVER_HOST }}
key: ${{ secrets.NB_SERVER_SSH_KEY }}
username: ${{ secrets.NB_SERVER_USER }}
script: sudo bash /home/nbdream/app/deploy-nbdream.sh