From f49c685f259566cb02ecb2abf6b1581e0990a991 Mon Sep 17 00:00:00 2001 From: vharseko Date: Tue, 31 Aug 2021 19:54:32 +0300 Subject: [PATCH] Github action deploy (#18) --- .github/workflows/maven.yml | 52 ++++++++++++++++++++++++++++++------- 1 file changed, 43 insertions(+), 9 deletions(-) diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 7d39b7913..8162fe38f 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -1,7 +1,4 @@ -# This workflow will build a Java project with Maven -# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven - -name: Build +name: Build with Maven on: push: @@ -11,7 +8,7 @@ on: jobs: build: - + name: Maven build runs-on: ${{ matrix.os }} strategy: matrix: @@ -27,8 +24,45 @@ jobs: - name: Cache Maven packages uses: actions/cache@v2 with: - path: ~/.m2 - key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} - restore-keys: ${{ runner.os }}-m2 + path: ~/.m2/repository + key: ${{ runner.os }}-m2-repository-${{ hashFiles('**/pom.xml') }} + restore-keys: ${{ runner.os }}-m2-repository - name: Build with Maven - run: mvn --batch-mode --update-snapshots package --file pom.xml \ No newline at end of file + env: + MAVEN_OPTS: -Dhttps.protocols=TLSv1.2 -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.requestSentEnabled=true -Dmaven.wagon.http.retryHandler.count=10 + run: mvn --batch-mode --update-snapshots package --file pom.xml + deploy: + name: Maven deploy + needs: build + if: ${{ github.event_name=='push' && github.ref=='refs/heads/master'}} + runs-on: 'ubuntu-latest' + steps: + - name: Install gpg secret key + env: + GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }} + if: ${{ env.GPG_PRIVATE_KEY!=''}} + run: | + cat <(echo -e "${{ secrets.GPG_PRIVATE_KEY }}") | gpg --batch --import + gpg --list-secret-keys --keyid-format LONG + - uses: actions/checkout@v2 + - name: Set up Java for publishing to Maven Central Repository OSS + uses: actions/setup-java@v2 + with: + java-version: '8' + distribution: 'adopt' + server-id: ossrh + server-username: MAVEN_USERNAME + server-password: MAVEN_PASSWORD + - name: Cache Maven packages + uses: actions/cache@v2 + with: + path: ~/.m2/repository + key: ${{ runner.os }}-m2-repository-${{ hashFiles('**/pom.xml') }} + restore-keys: ${{ runner.os }}-m2-repository + - name: Publish to the Maven Central Repository + env: + MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }} + MAVEN_PASSWORD: ${{ secrets.OSSRH_TOKEN }} + MAVEN_OPTS: -Dhttps.protocols=TLSv1.2 -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.requestSentEnabled=true -Dmaven.wagon.http.retryHandler.count=10 + if: ${{ env.MAVEN_USERNAME!='' && env.MAVEN_PASSWORD!=''}} + run: mvn --batch-mode --update-snapshots -Dgpg.passphrase=${{ secrets.GPG_PASSPHRASE }} deploy --file pom.xml \ No newline at end of file