name: Klc-Learner-Frontend-CD on: push: branches: - beta - testing - client - staging - production jobs: deploy: name: Deploying code in Server runs-on: ubuntu-latest steps: - name: Checkout Code in Runner uses: actions/checkout@v3 - name: Determine Project Folder run: | echo "Detected Branch Name : ${{ gitea.ref_name }}" BRANCH_NAME=${{ gitea.ref_name }} case "$BRANCH_NAME" in beta) echo "PROJECT_FOLDER=null" >> $GITHUB_ENV ;; testing) echo "PROJECT_FOLDER=/home/klc/klc-frontend/Test_Release/KLC-Hr-Dashboard-Frontend" >> $GITHUB_ENV ;; client) echo "PROJECT_FOLDER=null" >> $GITHUB_ENV ;; staging) echo "PROJECT_FOLDER=null" >> $GITHUB_ENV ;; production) echo "PROJECT_FOLDER=null" >> $GITHUB_ENV ;; *) echo "UNKNOWN BRANCH" exit 1 ;; esac echo "BRANCH_NAME=${{ gitea.ref_name }}" >> $GITHUB_ENV - name: Deploy Using SSH uses: appleboy/ssh-action@v1 with: host: ${{ secrets.BETA_SERVER_HOST }} username: ${{ secrets.BETA_SERVER_USERNAME }} password: ${{ secrets.BETA_SERVER_PASSWORD }} port: ${{ secrets.BETA_SERVER_PORT }} envs: BRANCH_NAME,PROJECT_FOLDER script: | set -e if [ "$PROJECT_FOLDER" = "null" ]; then echo "No deployment configured for this branch" exit 0 fi cd $PROJECT_FOLDER git fetch git reset --hard origin/$BRANCH_NAME git stash && git stash clear || true git pull origin $BRANCH_NAME echo "Installing Node Modules..." npm install echo "Building..." npm run build