From add75498efe6d69e6ed7f901e36bd38af699c2e1 Mon Sep 17 00:00:00 2001 From: Chris Arriola Date: Mon, 25 Jan 2021 13:40:33 -0800 Subject: [PATCH] feat: Adding release and publish workflows --- .github/workflows/release.yml | 51 +++++++++++++++++++++++++++++++++++ .releaserc | 24 +++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 .github/workflows/release.yml create mode 100644 .releaserc 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