name: Build and deploy release on: push: branches: [ main ] defaults: run: shell: bash jobs: build: runs-on: ubuntu-latest services: oracle: image: gvenzl/oracle-free:23-slim-faststart env: ORACLE_PASSWORD: oracle ports: - 1521:1521 options: >- --health-cmd healthcheck.sh --health-interval 10s --health-timeout 5s --health-retries 10 steps: - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Install utPLSQL run: sh ${{ github.workspace }}/scripts/1_install_utplsql.sh - name: Install demo project run: sh ${{ github.workspace }}/scripts/2_install_demo_project.sh - name: Set up JDK 11 uses: actions/setup-java@v5 with: java-version: '11' distribution: 'adopt' server-id: ossrh server-username: MAVEN_USERNAME server-password: MAVEN_PASSWORD gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} gpg-passphrase: MAVEN_GPG_PASSPHRASE - name: Cache local Maven repository uses: actions/cache@v4 with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} restore-keys: | ${{ runner.os }}-maven- - name: Maven deploy release run: mvn clean deploy -Prelease env: MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }} MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }} MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }} - name: Publish unit test results uses: EnricoMi/publish-unit-test-result-action@v1.24 if: always() with: files: target/**/TEST**.xml