Skip to content

Toggles app create github release #12

Toggles app create github release

Toggles app create github release #12

Workflow file for this run

name: Toggles app release
on:
workflow_dispatch:
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Check out code
uses: actions/checkout@v4
with:
fetch-depth: '0'
- name: "setup secrets"
run: |
echo "${{ secrets.KEYSTORE_PROPERTIES }}" > keystore.properties.asc
gpg -d --passphrase "${{ secrets.GPG_ENCRYPTION_KEY }}" --batch keystore.properties.asc > keystore.properties
echo "${{ secrets.TOGGLES_KEYSTORE }}" > toggles_keystore.jks.asc
gpg -d --passphrase "${{ secrets.GPG_ENCRYPTION_KEY }}" --batch toggles_keystore.jks.asc > toggles_keystore.jks
echo "${{ secrets.SERVICE_ACCOUNT }}" > service_account.json.asc
gpg -d --passphrase "${{ secrets.GPG_ENCRYPTION_KEY }}" --batch service_account.json.asc > service_account.json
- name: "Calculate build number"
id: version_information
uses: ./.github/actions/version_information
- name: Check out java
uses: actions/setup-java@v4
with:
distribution: 'adopt'
java-version: 17
- name: Copy CI gradle.properties
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
- name: Build sample application
if: github.repository == 'erikeelde/toggles'
run: ./gradlew :toggles-sample:assembleDebug
- name: Upload Release Asset
uses: actions/github-script@v7
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
const fs = require('fs');
const path = 'toggles-sample/build/outputs/apk/debug/toggles-sample-debug.apk';
const content_type = 'application/vnd.android.package-archive';
const release_id = 'v1.03.00';
const response = await github.repos.uploadReleaseAsset({
owner: context.repo.owner,
repo: context.repo.repo,
release_id: release_id,
name: 'your-asset-name.zip',
data: fs.readFileSync(path),
headers: {
'content-type': content_type,
'content-length': fs.statSync(path).size
}
});
console.log(response);