diff --git a/.github/workflows/frontend.yml b/.github/workflows/frontend.yml index cdda165..a092e26 100644 --- a/.github/workflows/frontend.yml +++ b/.github/workflows/frontend.yml @@ -26,14 +26,26 @@ jobs: env: CI: false run: cd Frontend && npm run build # This makes sure the build succeeds before running it on the production server + + # Compress the build folder + - name: Archive build folder + run: tar -czf build.tar.gz build/ - - name: Install SSH Keys + - name: Install SSH Key and Configure Access run: | install -m 600 -D /dev/null ~/.ssh/id_rsa echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa ssh-keyscan -H ${{ secrets.SSH_HOST }} > ~/.ssh/known_hosts + + # Transfer the build to the server + - name: Upload build to server + run: | + scp -i ~/.ssh/id_rsa build.tar.gz ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.WORK_DIR }}/Frontend - - name: Connect to server and pull - run: ssh ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} "cd ${{ secrets.WORK_DIR }} && git checkout development && git pull origin development && cd /var/www/SpeedCart/Frontend && ./build.sh" - - name: Cleanup - run: rm -rf ~/.ssh + # Deploy on the server + - name: Deploy build on server + run: | + ssh -i ~/.ssh/id_rsa ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} << 'EOF' + cd ${{ secrets.WORK_DIR }}/Frontend + tar -xzf build.tar.gz + rm -f build.tar.gz \ No newline at end of file