From c3163dba72d090067b70738e9764dcb586be38d8 Mon Sep 17 00:00:00 2001 From: Jason Penilla <11360596+jpenilla@users.noreply.github.com> Date: Mon, 5 Jul 2021 01:16:56 -0700 Subject: [PATCH] Setup Actions for publishing --- .github/workflows/build.yml | 45 +++++++++++++++++++ .github/workflows/gradle.yml | 26 ----------- .../kotlin/cloud.base-conventions.gradle.kts | 6 +++ 3 files changed, 51 insertions(+), 26 deletions(-) create mode 100644 .github/workflows/build.yml delete mode 100644 .github/workflows/gradle.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..b11b5eac --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,45 @@ +name: Build Cloud +on: + push: + branches: "*" + tags-ignore: [ "*" ] + pull_request: + release: + types: [ released ] +jobs: + build: + # Only run on PRs if the source branch is on someone else's repo + if: ${{ github.event_name != 'pull_request' || github.repository != github.event.pull_request.head.repo.full_name }} + runs-on: "ubuntu-latest" + steps: + - uses: actions/checkout@v2 + - uses: actions/cache@v2 + with: + path: | + ~/.gradle/wrapper + ~/.gradle/caches + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} + restore-keys: ${{ runner.os }}-gradle- + - uses: gradle/wrapper-validation-action@v1 + - name: Set up JDK + uses: actions/setup-java@v2 + with: + distribution: 'adopt' + java-version: 16 + - name: Build + run: ./gradlew build + - name: Determine Status + run: | + if [ "$(./gradlew properties | awk '/^version:/ { print $2; }' | grep '\-SNAPSHOT')" ]; then + echo "STATUS=snapshot" >> $GITHUB_ENV + else + echo "STATUS=release" >> $GITHUB_ENV + fi + - name: Publish Release + if: "${{ env.STATUS == 'release' && github.event_name == 'release' }}" + run: ./gradlew publishToSonatype closeAndReleaseSonatypeStagingRepository -PreleasePublishing + env: + ORG_GRADLE_PROJECT_sonatypeUsername: "${{ secrets.SONATYPE_USERNAME }}" + ORG_GRADLE_PROJECT_sonatypePassword: "${{ secrets.SONATYPE_PASSWORD }}" + ORG_GRADLE_PROJECT_signingKey: "${{ secrets.SIGNING_KEY }}" + ORG_GRADLE_PROJECT_signingPassword: "${{ secrets.SIGNING_PASSWORD }}" diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml deleted file mode 100644 index d339cad2..00000000 --- a/.github/workflows/gradle.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: Java CI with Gradle - -on: [ push, pull_request ] - -jobs: - build: - # Only run on PRs if the source branch is on someone else's repo - if: ${{ github.event_name != 'pull_request' || github.repository != github.event.pull_request.head.repo.full_name }} - runs-on: "ubuntu-latest" - steps: - - uses: actions/checkout@v2 - - uses: actions/cache@v2 - with: - path: | - ~/.gradle/wrapper - ~/.gradle/caches - key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }} - restore-keys: ${{ runner.os }}-gradle- - - uses: gradle/wrapper-validation-action@v1 - - name: Set up JDK 16 - uses: actions/setup-java@v2 - with: - distribution: 'adopt' - java-version: 16 - - name: Build with Gradle - run: ./gradlew clean build diff --git a/build-logic/src/main/kotlin/cloud.base-conventions.gradle.kts b/build-logic/src/main/kotlin/cloud.base-conventions.gradle.kts index 9b21a63a..9f0bd24e 100644 --- a/build-logic/src/main/kotlin/cloud.base-conventions.gradle.kts +++ b/build-logic/src/main/kotlin/cloud.base-conventions.gradle.kts @@ -40,6 +40,12 @@ indra { } } +signing { + val signingKey: String? by project + val signingPassword: String? by project + useInMemoryPgpKeys(signingKey, signingPassword) +} + /* Disable checkstyle on tests */ project.gradle.startParameter.excludedTaskNames.add("checkstyleTest")