image: ubuntu:22.04 stages: - deploy deploy_to_vps: stage: deploy before_script: - apt-get update && apt-get install -y openssh-client curl # Install curl jika belum ada script: # Memuat private key yang disimpan di GitLab CI/CD variable - eval "$(ssh-agent -s)" - echo "$FRONT_PRIVATE_KEY" | sed 's/\r//g' | ssh-add - # Menambahkan VPS ke known_hosts secara otomatis untuk menghindari konfirmasi manual - mkdir -p ~/.ssh - ssh-keyscan -H $VPS_HOST >> ~/.ssh/known_hosts - ssh $FRONTEND_USER@$VPS_HOST "export PATH="/home/frontend/.nvm/versions/node/v20.16.0/bin:$PATH" && cd $FRONTEND_DIR && git checkout dev && git pull && npm i && npm run build && pm2 stop 0 && pm2 start 0" only: - dev # Jalankan hanya ketika ada perubahan di branch dev