diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..1ffc62e6 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,51 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +name: Release +on: + push: + branches: [ main ] +jobs: + release: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + token: ${{ secrets.SYNCED_GITHUB_TOKEN_REPO }} + - name: Build APKs + run: | + echo "Generating ApiDemos (Java) APKs" + cd ./ApiDemos/java + ./gradlew assembleV3 assembleGms + cp ./app/build/outputs/apk/gms/debug/app-gms-debug.apk $GITHUB_WORKSPACE/ApiDemos-java-gms-debug.apk + cp ./app/build/outputs/apk/v3/debug/app-v3-debug.apk $GITHUB_WORKSPACE/ApiDemos-java-v3-debug.apk + + echo "Generating Kotlin (Kotlin) APKs" + cd ./ApiDemos/kotlin + ./gradlew assembleV3 assembleGms + cp ./app/build/outputs/apk/gms/debug/app-gms-debug.apk $GITHUB_WORKSPACE/ApiDemos-kotlin-gms-debug.apk + cp ./app/build/outputs/apk/v3/debug/app-v3-debug.apk $GITHUB_WORKSPACE/ApiDemos-kotlin-v3-debug.apk + + - name: Semantic Release + uses: cycjimmy/semantic-release-action@v2 + with: + extra_plugins: | + "@semantic-release/commit-analyzer" + "@semantic-release/release-notes-generator" + "@google/semantic-release-replace-plugin" + "@semantic-release/git + "@semantic-release/github + env: + GH_TOKEN: ${{ secrets.SYNCED_GITHUB_TOKEN_REPO }} diff --git a/.releaserc b/.releaserc new file mode 100644 index 00000000..1944ce5e --- /dev/null +++ b/.releaserc @@ -0,0 +1,24 @@ +branches: + - main +plugins: + - "@semantic-release/commit-analyzer" + - "@semantic-release/release-notes-generator" + - - "@google/semantic-release-replace-plugin" + - replacements: + - files: + - "./ApiDemos/java/app/build.gradle" + - "./ApiDemos/kotlin/app/build.gradle" + from: "versionName = \".*\"" + to: "versionName = \"${nextRelease.version}\"" + - - "@semantic-release/git" + - assets: + - "./ApiDemos/java/app/build.gradle" + - "./ApiDemos/kotlin/app/build.gradle" + - "@semantic-release/github" + - assets: + - "./ApiDemos-java-gms-debug.apk" + - "./ApiDemos-java-v3-debug.apk" + - "./ApiDemos-kotlin-gms-debug.apk" + - "./ApiDemos-kotlin-v3-debug.apk" +options: + debug: true