diff --git a/.github/workflows/action.yaml b/.github/workflows/action.yaml new file mode 100644 index 0000000..3cd22ec --- /dev/null +++ b/.github/workflows/action.yaml @@ -0,0 +1,40 @@ +name: Java CI with Maven + +on: + push: + branches: [ master ] + +env: + AWS_REGION: us-east-1 + +jobs: + build: + runs-on: self-hosted + + steps: + - uses: actions/checkout@v3 + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'temurin' + - name: Build with Maven + run: cd docker-java-app && mvn --batch-mode --update-snapshots package + + - name: Set up AWS CLI + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: ${{ env.AWS_REGION }} + - name: Build and package + run: aws s3 cp /home/ubuntu/actions-runner/_work/docker-java/docker-java/docker-java-app/target/lib/junit-platform-commons-1.4.0.jar s3://mybucket2818/app-java.jar + + - name: Download artifact from S3 + run: + aws s3 cp s3://mybucket2818/app-java.jar app.jar + + - name: Deploy artifact to Tomcat + run: | + sudo cp app.jar /home/ubuntu/apache-tomcat-8.5.85/webapps + sudo systemctl restart tomcat