Summary: Android publishing job fails to attach APKs to the release. An OSS user (rasaha91) came up with a fix. Since passy is on a leave, I've made my own fork to get unblocked. See https://github.com/aigoncharov/github-upload-release-artifacts-action Reviewed By: lblasa Differential Revision: D40378208 fbshipit-source-id: 35e8f41700972751b63014e35696e61cfe986eae
65 lines
2.2 KiB
YAML
65 lines
2.2 KiB
YAML
name: Publish Android
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- v*
|
|
workflow_dispatch:
|
|
inputs:
|
|
tag:
|
|
description: "Tag to upload artifacts to"
|
|
required: false
|
|
|
|
|
|
jobs:
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: set up JDK
|
|
uses: actions/setup-java@v1
|
|
with:
|
|
java-version: 11
|
|
- name: Write GPG Sec Ring
|
|
run: echo '${{ secrets.GPG_KEY_CONTENTS }}' | base64 -d > /tmp/secring.gpg
|
|
- name: Update gradle.properties
|
|
run: echo -e "signing.secretKeyRingFile=/tmp/secring.gpg\nsigning.keyId=${{ secrets.SIGNING_KEY_ID }}\nsigning.password=${{ secrets.SIGNING_PASSWORD }}\nmavenCentralPassword=${{ secrets.SONATYPE_NEXUS_PASSWORD }}\nmavenCentralUsername=${{ secrets.SONATYPE_NEXUS_USERNAME }}\nSONATYPE_HOST=DEFAULT\nRELEASE_SIGNING_ENABLED=true\nSONATYPE_AUTOMATIC_RELEASE=true" >> gradle.properties
|
|
- name: Compute build cache
|
|
run: ./scripts/checksum-android.sh checksum-android.txt
|
|
- uses: actions/cache@v2
|
|
with:
|
|
path: |
|
|
~/.gradle/caches/modules-*
|
|
~/.gradle/caches/jars-*
|
|
~/.gradle/caches/build-cache-*
|
|
key: gradle-${{ hashFiles('checksum-android.txt') }}
|
|
- name: Build artifacts
|
|
run: ./gradlew :sample:assembleDebug :sample:assembleRelease && ./gradlew :android:assembleRelease
|
|
- name: Upload Archives
|
|
run: ./gradlew publish -info
|
|
- name: Clean secrets
|
|
if: always()
|
|
run: rm /tmp/secring.gpg
|
|
- name: Rename apk
|
|
run: mv android/sample/build/outputs/apk/debug/sample-debug.apk SampleApp-android.apk
|
|
- name: Attach sample APK to release
|
|
if: ${{ github.event.inputs.tag != '' }}
|
|
uses: aigoncharov/github-upload-release-artifacts-action@2.2.3
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
created_tag: ${{ github.event.inputs.tag }}
|
|
args: 'SampleApp-android.apk'
|
|
- name: Open issue on failure
|
|
if: failure()
|
|
uses: JasonEtco/create-an-issue@v2.4.0
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
REPOSITORY: ${{ github.repository }}
|
|
RUN_ID: ${{ github.run_id }}
|
|
WORKFLOW_NAME: "Publish Android"
|
|
with:
|
|
filename: .github/action-failure-template.md
|