mirror of
https://github.com/home-assistant/android
synced 2024-09-20 00:21:32 +00:00
df621311b1
* Nicer changelog printing * Cache the gradle Cache * Playstore updated nightly not on commit.
106 lines
3.7 KiB
YAML
106 lines
3.7 KiB
YAML
name: Beta Deploy
|
|
|
|
on:
|
|
push:
|
|
branches: [ master ]
|
|
|
|
jobs:
|
|
app_build:
|
|
name: Github, Firebase, and Sentry Release
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Set up JDK 1.8
|
|
uses: actions/setup-java@v1
|
|
with:
|
|
java-version: 1.8
|
|
|
|
- uses: actions/cache@v2
|
|
with:
|
|
path: |
|
|
~/.gradle/caches
|
|
~/.gradle/wrapper
|
|
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-gradle-
|
|
|
|
- uses: ./.github/actions/create-release-number
|
|
name: Create Release Number
|
|
id: rel_number
|
|
with:
|
|
beta: true
|
|
|
|
- uses: ./.github/actions/inflate-secrets
|
|
name: Inflate Secrets
|
|
with:
|
|
keystore: ${{ secrets.ORIGINAL_KEYSTORE_FILE }}
|
|
google-services: ${{ secrets.GOOGLESERVICES }}
|
|
firebase-creds: ${{ secrets.FIREBASECREDS }}
|
|
playstore-creds: ${{ secrets.PLAYSTORECREDS }}
|
|
|
|
- uses: ./.github/actions/create-release-notes
|
|
name: Create Release Notes
|
|
|
|
- name: Build Release
|
|
env:
|
|
KEYSTORE_PASSWORD: ${{ secrets.ORIGINAL_KEYSTORE_FILE_PASSWORD }}
|
|
KEYSTORE_ALIAS: ${{ secrets.ORIGINAL_KEYSTORE_ALIAS }}
|
|
KEYSTORE_ALIAS_PASSWORD: ${{ secrets.ORIGINAL_KEYSTORE_ALIAS_PASSWORD }}
|
|
VERSION: ${{ steps.rel_number.outputs.version }}
|
|
VERSION_CODE: ${{ steps.rel_number.outputs.version-code }}
|
|
run: ./gradlew assembleRelease
|
|
|
|
- name: Create Github Pre-Release
|
|
id: create_release
|
|
uses: actions/create-release@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
tag_name: ${{ steps.rel_number.outputs.version }}
|
|
release_name: ${{ steps.rel_number.outputs.version }}
|
|
body_path: ./app/build/outputs/changelogGithub
|
|
draft: false
|
|
prerelease: true
|
|
|
|
- name: Upload Full APK
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
|
asset_path: ./app/build/outputs/apk/full/release/app-full-release.apk
|
|
asset_name: home-assistant-full-${{steps.rel_number.outputs.version}}.apk
|
|
asset_content_type: application/zip
|
|
|
|
- name: Upload Minimal APK
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
|
asset_path: ./app/build/outputs/apk/minimal/release/app-minimal-release.apk
|
|
asset_name: home-assistant-minimal-${{steps.rel_number.outputs.version}}.apk
|
|
asset_content_type: application/zip
|
|
|
|
- name: Deploy to Firebase
|
|
env:
|
|
KEYSTORE_PASSWORD: ${{ secrets.ORIGINAL_KEYSTORE_FILE_PASSWORD }}
|
|
KEYSTORE_ALIAS: ${{ secrets.ORIGINAL_KEYSTORE_ALIAS }}
|
|
KEYSTORE_ALIAS_PASSWORD: ${{ secrets.ORIGINAL_KEYSTORE_ALIAS_PASSWORD }}
|
|
VERSION: ${{ steps.rel_number.outputs.version }}
|
|
VERSION_CODE: ${{ steps.rel_number.outputs.version-code }}
|
|
run: ./gradlew appDistributionUploadFullRelease
|
|
|
|
- name: Create a Sentry.io release
|
|
uses: tclindner/sentry-releases-action@v1.2.0
|
|
env:
|
|
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
|
|
SENTRY_ORG: ${{ secrets.SENTRY_ORG }}
|
|
SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }}
|
|
with:
|
|
tagName: io.homeassistant.companion.android@${{ steps.rel_number.outputs.version }}
|
|
environment: Beta
|