new release #22
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Release | |
on: | |
push: | |
tags: | |
- "*" | |
workflow_dispatch: | |
inputs: | |
run_debug: | |
description: "Run Build Debug" | |
type: boolean | |
required: false | |
default: false | |
run_play: | |
description: "Run Build Play" | |
type: boolean | |
required: false | |
default: false | |
run_GitRelease: | |
description: "Run Build Github" | |
type: boolean | |
required: false | |
default: false | |
permissions: | |
actions: none | |
attestations: none | |
checks: none | |
contents: read | |
deployments: none | |
id-token: none | |
issues: none | |
discussions: none | |
packages: none | |
pages: none | |
pull-requests: none | |
repository-projects: none | |
security-events: none | |
statuses: none | |
concurrency: | |
group: 'release' | |
cancel-in-progress: false | |
jobs: | |
publishPlay: | |
environment: | |
name: Release-Play | |
name: Build Arcticons Bundle | |
if: startsWith(github.ref, 'refs/tags/') && (github.event_name != 'workflow_dispatch' || inputs.run_play == true) | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checking out branch | |
uses: actions/checkout@v4 | |
- name: Setup Java | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'zulu' | |
java-version: 21 | |
cache: gradle | |
- name: Write sign info | |
run: "echo \"Workflow manually triggered by ${{ github.actor }}\" \nif [ ! -z \"${{ secrets.KEYSTORE }}\" ]; then\n echo storePassword='${{ secrets.KEYSTORE_PASSWORD }}' >> keystore.properties\n echo keyAlias='${{ secrets.KEY_ALIAS }}' >> keystore.properties\n echo keyPassword='${{ secrets.KEY_PASSWORD }}' >> keystore.properties\n echo storeFile='${{ github.workspace }}/key.jks' >> keystore.properties\n echo ${{ secrets.KEYSTORE }} | base64 --decode > ${{ github.workspace }}/key.jks\n fi\n" | |
- name: Get Gradle | |
run: gradle wrapper | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- name: Build Normal Bundle | |
run: ./gradlew app:bundleNormalPlayRelease | |
- name: Build Black Bundle | |
run: ./gradlew app:bundleBlackPlayRelease | |
- name: Build You Bundle | |
run: ./gradlew app:bundleYouPlayRelease | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
cache: 'pip' | |
- run: | | |
pip install markdown | |
pip install beautifulsoup4 | |
- name: Create Changelog | |
run: | | |
mkdir whatsnew | |
python .github/workflows/mark2text.py | |
- name: Upload artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
path: | | |
app/build/outputs/bundle/normalPlayRelease/*.aab | |
app/build/outputs/bundle/blackPlayRelease/*.aab | |
app/build/outputs/bundle/youPlayRelease/*.aab | |
- name: Upload Normal to Google Play | |
# Step: Upload APK/AAB to Google Play | |
uses: r0adkll/upload-google-play@935ef9c68bb393a8e6116b1575626a7f5be3a7fb | |
with: | |
serviceAccountJsonPlainText: ${{ secrets.GOOGLE_PLAY_SERVICE_ACCOUNT }} | |
packageName: 'com.donnnno.arcticons' # Replace with your app's package name | |
releaseFiles: app/build/outputs/bundle/normalPlayRelease/*.aab # Path to your APK/AAB | |
track: production # Options: production, beta, alpha, internal | |
status: completed # Options: draft, inProgress, halted, completed | |
whatsNewDirectory: whatsnew | |
- name: Upload Black to Google Play | |
uses: r0adkll/upload-google-play@935ef9c68bb393a8e6116b1575626a7f5be3a7fb | |
with: | |
serviceAccountJsonPlainText: ${{ secrets.GOOGLE_PLAY_SERVICE_ACCOUNT }} | |
packageName: 'com.donnnno.arcticons.light' # Replace with your app's package name | |
releaseFiles: app/build/outputs/bundle/blackPlayRelease/*.aab # Path to your APK/AAB | |
track: production # Options: production, beta, alpha, internal | |
status: completed # Options: draft, inProgress, halted, completed | |
whatsNewDirectory: whatsnew | |
- name: Upload You to Google Play | |
uses: r0adkll/upload-google-play@935ef9c68bb393a8e6116b1575626a7f5be3a7fb | |
with: | |
serviceAccountJsonPlainText: ${{ secrets.GOOGLE_PLAY_SERVICE_ACCOUNT }} | |
packageName: 'com.donnnno.arcticons.you.play' # Replace with your app's package name | |
releaseFiles: app/build/outputs/bundle/youPlayRelease/*.aab # Path to your APK/AAB | |
track: production # Options: production, beta, alpha, internal | |
status: completed # Options: draft, inProgress, halted, completed | |
whatsNewDirectory: whatsnew | |
build: | |
name: Build Arcticons APK | |
environment: | |
name: ReleaseGithub | |
if: startsWith(github.ref, 'refs/tags/') && (github.event_name != 'workflow_dispatch' || inputs.run_GitRelease == true) | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
discussions: write | |
steps: | |
- name: Checking out branch | |
uses: actions/checkout@v4 | |
- name: Setup Java | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'zulu' | |
java-version: 21 | |
cache: gradle | |
- name: Write sign info | |
run: "echo \"Workflow manually triggered by ${{ github.actor }}\" \nif [ ! -z \"${{ secrets.KEYSTORE }}\" ]; then\n echo storePassword='${{ secrets.KEYSTORE_PASSWORD }}' >> keystore.properties\n echo keyAlias='${{ secrets.KEY_ALIAS }}' >> keystore.properties\n echo keyPassword='${{ secrets.KEY_PASSWORD }}' >> keystore.properties\n echo storeFile='${{ github.workspace }}/key.jks' >> keystore.properties\n echo ${{ secrets.KEYSTORE }} | base64 --decode > ${{ github.workspace }}/key.jks\n fi\n" | |
- name: Get Gradle | |
run: gradle wrapper | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- name: Build Normal APK | |
run: ./gradlew app:assemblenormalRelease | |
- name: Build Black APK | |
run: ./gradlew app:assembleblackRelease | |
- name: Build You APK | |
run: ./gradlew app:assembleyouRelease | |
- name: Build Day&Night | |
run: ./gradlew app:assembledayNightRelease | |
- name: Get Release Notes | |
id: image | |
run: | | |
name="$GITHUB_REF_NAME Release" | |
image="" | |
changelog=$(< ./generated/changelog.md) | |
changelog="$changelog | |
$image" | |
gh release create $GITHUB_REF_NAME --generate-notes --title "$name" --notes "$changelog" --discussion-category "Announcements" app/build/outputs/apk/normal/release/*.apk app/build/outputs/apk/black/release/*.apk app/build/outputs/apk/dayNight/release/*.apk app/build/outputs/apk/you/release/*.apk | |
env: | |
GH_TOKEN: ${{ github.token }} | |
debug: | |
name: Build Arcticons Debug APK | |
runs-on: ubuntu-latest | |
if: ${{ github.event_name == 'workflow_dispatch' && inputs.run_debug == true }} | |
steps: | |
- name: Checking out branch | |
uses: actions/checkout@v4 | |
- name: Setup Java | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'zulu' | |
java-version: 21 | |
cache: gradle | |
- name: Write sign info | |
run: "echo \"Workflow manually triggered by ${{ github.actor }}\"\nif [ ! -z \"${{ secrets.KEYSTORE }}\" ]; then\n echo storePassword='${{ secrets.KEYSTORE_PASSWORD }}' >> keystore.properties\n echo keyAlias='${{ secrets.KEY_ALIAS }}' >> keystore.properties\n echo keyPassword='${{ secrets.KEY_PASSWORD }}' >> keystore.properties\n echo storeFile='${{ github.workspace }}/key.jks' >> keystore.properties\n echo ${{ secrets.KEYSTORE }} | base64 --decode > ${{ github.workspace }}/key.jks\nfi \n" | |
- name: Get Gradle | |
run: gradle wrapper | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- name: Lint Checks | |
run: | | |
gradle app:lintNormalDebug | |
gradle app:lintBlackDebug | |
gradle app:lintDayNightDebug | |
gradle app:lintYouDebug | |
- name: Build debug APK | |
run: ./gradlew app:assembleDebug | |
- name: Upload artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
path: | | |
app/build/outputs/apk/black/debug/*.apk | |
app/build/outputs/apk/blackPlay/debug/*.apk | |
app/build/outputs/apk/dayNight/debug/*.apk | |
app/build/outputs/apk/normal/debug/*.apk | |
app/build/outputs/apk/normalPlay/debug/*.apk | |
app/build/outputs/apk/you/debug/*.apk | |
app/build/outputs/apk/youPlay/debug/*.apk | |
app/build/reports/* |