diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml deleted file mode 100644 index 9bed22bc4..000000000 --- a/.github/workflows/CI.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: Build - -on: - push: - branches: - - master - pull_request: - -jobs: - build: - runs-on: ubuntu-latest - name: Build - - steps: - - uses: actions/checkout@v3 - - - name: Set up JDK 17 - uses: actions/setup-java@v3 - with: - java-version: 17 - distribution: temurin - - - name: Setup Android SDK - uses: android-actions/setup-android@v2 - - - name: Build App - run: ./gradlew --no-daemon assembleDebug diff --git a/.github/workflows/debug.yml b/.github/workflows/debug.yml new file mode 100644 index 000000000..11945785a --- /dev/null +++ b/.github/workflows/debug.yml @@ -0,0 +1,35 @@ +name: Debug + +on: + push: + branches: + - master + + pull_request: + +jobs: + build: + runs-on: ubuntu-24.04 + name: Build + + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: 17 + distribution: temurin + + - name: Setup Android SDK + uses: android-actions/setup-android@v3 + + - name: Build App + run: ./gradlew --no-daemon assembleDebug + + - uses: actions/upload-artifact@v4 + with: + name: pr0gramm-app-debug.apk + path: app/build/outputs/apk/debug/app-debug.apk + if-no-files-found: error + compression-level: 0 \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..8a38896b4 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,57 @@ +name: Release + +on: + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-24.04 + name: Build release + + permissions: + contents: write + + steps: + - uses: actions/checkout@v4 + with: + fetch-tags: true + + - name: Setup git user + run: | + git config user.name "github actions" + git config user.email "gh-actions@pr0gramm com" + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: 17 + distribution: temurin + + - name: Setup Android SDK + uses: android-actions/setup-android@v3 + + - name: Decrypt keystore + env: + PASSPHRASE: ${{ secrets.KEYSTORE_PASSPHRASE }} + run: + gpg --decrypt --batch --yes + --passphrase "$PASSPHRASE" + -o release.keystore release.keystore.gpg + + - name: Build and push app release + run: ./release.sh + env: + CREDENTIALS_UPDATE: ${{ secrets.UPDATE_MANAGER_CREDENTIALS }} + CREDENTIALS_GITHUB: ${{ secrets.GITHUB_TOKEN }} + VERBOSE: "false" + + - name: Delete keystore file + if: always() + run: rm -f release.keystore + + - uses: actions/upload-artifact@v4 + with: + name: pr0gramm-app-debug.apk + path: app/build/outputs/apk/release/app-release.apk + if-no-files-found: error + compression-level: 0 diff --git a/app/src/main/java/com/pr0gramm/app/ui/ChangeLogDialog.kt b/app/src/main/java/com/pr0gramm/app/ui/ChangeLogDialog.kt index 25f5fc2bf..05e2c6db2 100644 --- a/app/src/main/java/com/pr0gramm/app/ui/ChangeLogDialog.kt +++ b/app/src/main/java/com/pr0gramm/app/ui/ChangeLogDialog.kt @@ -74,7 +74,7 @@ class ChangeLogDialog : ViewBindingDialogFragment("ChangeLogDi // add links to github issues android.text.util.Linkify.addLinks(text, githubIssue, null, null) { match, _ -> val issue = match.group().substring(1) - "https://github.com/mopsalarm/Pr0/issues/$issue" + "https://github.com/pr0gramm-com/pr0gramm-app/issues/$issue" } } diff --git a/app/version.gradle b/app/version.gradle index a39cdfa1b..42f308b3d 100644 --- a/app/version.gradle +++ b/app/version.gradle @@ -1 +1 @@ -ext { appVersion = 1990 } +ext { appVersion = 1991 } diff --git a/release.keystore.gpg b/release.keystore.gpg new file mode 100644 index 000000000..50fefcc46 --- /dev/null +++ b/release.keystore.gpg @@ -0,0 +1,105 @@ +-----BEGIN PGP MESSAGE----- + +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 +BJJ/xLjogeXi4Nk28O93hy+wA35EC5gfQA== +=2zru +-----END PGP MESSAGE----- diff --git a/release.sh b/release.sh index 665a21bfa..c261993a5 100755 --- a/release.sh +++ b/release.sh @@ -7,7 +7,9 @@ VERSION_PREV=$(egrep -o '[0-9]+' /dev/null -# link to the release manager -echo "Go to the release manager at https://$CREDENTIALS_UPDATE@app.pr0gramm.com/update-manager/" +if ${VERBOSE:-true} ; then + # link to the release manager + echo "Go to the release manager at https://$CREDENTIALS_UPDATE@app.pr0gramm.com/update-manager/" +fi