name: Deploy Vaadin App on: push: branches: - main # Adjust this to your deployment branch jobs: deploy: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up JDK 22 uses: actions/setup-java@v3 with: java-version: '22' distribution: 'temurin' - name: Build JAR run: ./mvnw clean package -DskipTests # Adjust this based on your build tool - name: Set up SSH key uses: webfactory/ssh-agent@v0.5.3 with: ssh-private-key: ${{ secrets.SSH_KEY }} - name: Upload JAR to server run: scp -o StrictHostKeyChecking=no target/munera-1.0-SNAPSHOT.jar ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:/home/${{ secrets.SSH_USER }}/munera - name: Upload Dockerfile to server run: scp -o StrictHostKeyChecking=no Dockerfile ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:/home/${{ secrets.SSH_USER }}/munera - name: Upload docker-compose.yml to server run: scp -o StrictHostKeyChecking=no docker-compose.yml ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:/home/${{ secrets.SSH_USER }}/munera - name: Deploy on server run: ssh -o StrictHostKeyChecking=no ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} << 'EOF' cd /home/${{ secrets.SSH_USER }}/munera docker-compose down docker-compose up --build -d EOF