puppet / .github /workflows /release.yml
kernel-loophole
Create chrome extension
c9fcff6
name: Release Only
on:
push:
tags:
- '*'
workflow_dispatch:
jobs:
build-android:
runs-on: ubuntu-latest
permissions: write-all
steps:
- uses: actions/checkout@v3
# Set Current Date As Env Variable
- name: Set current date as env variable
working-directory: ./puppet
run: echo "date_today=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
# Set Repository Name As Env Variable
- name: Set repository name as env variable
run: echo "repository_name=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}')" >> $GITHUB_ENV
- name: set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
working-directory: ./puppet
- name: Build with Gradle
run: ./gradlew build
working-directory: ./puppet
- name: Archive lint results
if: always()
uses: actions/upload-artifact@v3
with:
name: lint-report
path: app/build/reports/lint-results-debug.html
- name: Build apk debug project (APK) - ${{ env.main_project_module }} module
env:
UUID: ${{ secrets.UUID}}
SERVER_URL: ${{ secrets.SERVER_URL }}
run: ./gradlew assembleDebug
working-directory: ./puppet
- name: Build apk release project (APK) - ${{ env.main_project_module }} module
env:
UUID: ${{ secrets.RELEASE_UUID}}
SERVER_URL: ${{ secrets.RELEASE_SERVER_URL }}
run: ./gradlew assemble
working-directory: ./puppet
- name: Build app bundle release (AAB) - ${{ env.main_project_module }} module
run: ./gradlew app:bundleRelease
working-directory: ./puppet
- name: Archive extension as a zip file
run: zip -r extension.zip . -i /home/runner/work/puppet/earth/'earth Extension'
- name: Upload extension zip
uses: actions/upload-artifact@v2
with:
name: extension-zip
path: extension.zip
- name: Upload APK Debug - ${{ env.repository_name }}
uses: actions/upload-artifact@v2
with:
name: android-debug
path: puppet/${{ env.main_project_module }}/build/outputs/apk/debug/
- name: Upload APK Release - ${{ env.repository_name }}
uses: actions/upload-artifact@v2
with:
name: android-release
path: puppet/${{ env.main_project_module }}/build/outputs/apk/release/
- name: Upload AAB (App Bundle) Release - ${{ env.repository_name }}
uses: actions/upload-artifact@v2
with:
name: android-bundle
path: puppet/${{ env.main_project_module }}/build/outputs/bundle/release/
- name: Download All Artifacts
uses: actions/download-artifact@v3
with:
path: ./
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false
- name: Upload chrome extension
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: extension.zip
asset_name: extension.zip
asset_content_type: application/zip
- name: Display structure of downloaded files
run: ls -R
- name: Upload Android Debug
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./puppet/app/build/outputs/apk/debug/app-debug.apk # Update this with the correct APK path
asset_name: app-debug-unsigned.apk
asset_content_type: application/vnd.android.package-archive
- name: Upload Android Release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./puppet/app/build/outputs/apk/release/app-release-unsigned.apk # Update this with the correct APK path
asset_name: app-release-unsigned.apk
asset_content_type: application/vnd.android.package-archive