From 952779acf1093d67f8593a3702c3d1eb2132c4f9 Mon Sep 17 00:00:00 2001 From: Diamond <33725716+DiamondMiner88@users.noreply.github.com> Date: Tue, 20 Dec 2022 15:40:00 -0800 Subject: [PATCH] feat: release ci --- .github/workflows/release.yml | 73 +++++++++++++++++++++++++ app/build.gradle.kts | 15 +++++ app/src/main/res/values-ru/strings.xml | 76 -------------------------- 3 files changed, 88 insertions(+), 76 deletions(-) create mode 100644 .github/workflows/release.yml delete mode 100644 app/src/main/res/values-ru/strings.xml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..8de1afc --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,73 @@ +name: Publish Release + +on: + push: + branches: + - 'release' + workflow_dispatch: + +jobs: + publish: + runs-on: ubuntu-20.04 + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + ref: release + path: src + + - name: Check target version + id: version + run: | + cd $GITHUB_WORKSPACE/src + version=$(cat app/build.gradle.kts | grep -E 'versionName = "' | cut -d \" -f 2) + version="v$version" + if git show-ref --tags --quiet --verify -- "refs/tags/$version" >/dev/null; then + echo "Git tag $version already exists, failing to publish"; + exit 1 + else + echo "::set-output name=release_tag::$version" + fi + + - name: Setup Android SDK + uses: android-actions/setup-android@v2 + + - name: Setup JDK 11 + uses: actions/setup-java@v2 + with: + java-version: 11 + distribution: zulu + cache: gradle + + - name: Build Manager + env: + SIGNING_KEY_ALIAS: ${{ secrets.keyAlias }} + SIGNING_KEY_PASSWORD: ${{ secrets.keyPassword }} + SIGNING_STORE_PASSWORD: ${{ secrets.keystorePassword }} + run: | + cd $GITHUB_WORKSPACE/src + echo "${{ secrets.keystore }}" | base64 -d > ../../release.keystore + + chmod +x gradlew + ./gradlew :app:packageRelease + + rm ../../release.keystore + + - name: Release + run: | + cd $GITHUB_WORKSPACE/src + git config --local user.email "actions@github.com" + git config --local user.name "GitHub Actions" + + tag="${{ steps.version.outputs.release_tag }}" + git tag "$tag" + git push origin "$tag" + + apk_file="aliucord-manager-$tag.apk" + mv -T ./app/build/outputs/apk/release/app-release.apk "../$apk_file" + + gh release create "$tag" \ + --title "Aliucord Manager $tag" \ + "../$apk_name" + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 861d753..8cf504f 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -33,10 +33,25 @@ android { buildConfigField("boolean", "GIT_LOCAL_CHANGES", "${gitHasLocalChanges()}") } + signingConfigs { + create("release") { + enableV1Signing = true + enableV2Signing = true + enableV3Signing = true + enableV4Signing = true + keyAlias = System.getenv("SIGNING_KEY_ALIAS") + keyPassword = System.getenv("SIGNING_KEY_PASSWORD") + storeFile = System.getenv("SIGNING_STORE_FILE")?.let { File(it) } + storePassword = System.getenv("SIGNING_STORE_PASSWORD") + } + } + buildTypes { release { isMinifyEnabled = true isShrinkResources = true + isCrunchPngs = true + signingConfig = signingConfigs.getByName("release") proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") } } diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml deleted file mode 100644 index 61f6db9..0000000 --- a/app/src/main/res/values-ru/strings.xml +++ /dev/null @@ -1,76 +0,0 @@ - - - Менеджер Алиюкорда - A modification for the Discord Android App - Алиюкорд - GitHub - Support Server - Commits - Team - Website - Installer - Повторить - Применить - Подтвердить - Скрыть - Установить - Переустановить - Обновить - Стереть - Запустить - Удалить - Закрыть - Открыть настройки - Поиск - Loading… - Grant Permissions - In order for Aliucord Manager to work properly, you need to grant file permissions. Since shared data in stored in ~/Aliucord, permissions are required in order for manager to function. - Successfully installed Aliucord - Aborted Aliucord installation - Установка завершилась с ошибкой: %o - Failed to launch Aliucord - Тема - Advanced - Appearance - Developer options - Clear cache - Dex location - Use Injector.dex from storage - Replace app icon - Uses the Aliucord variant as opposed to Discord\'s own icon - Debuggable - Enable debuggable flag - Manager appearance - App Name - Package Name - Версия загрузки - Dynamic color - Системная - Тёмная - Светлая - Плагины - Открыть список изменений для %1$s - Are you sure you want to uninstall this plugin? - Поиск плагинов - No plugins installed! - Changelog Media - §plugin§%1$s§ v%2$s - Назад - Главная - About - Настройки - Contributors - %o contributions - Contributor - §name§%1$s§ §middle§создал§ §commit§%2$s§ - Download APK - Select APK - Download Method - Ошибка загрузки - Текущая версия: - Установленная версия: - Stable - Beta - Alpha - Failed to retrieve version -