Compare commits
11 Commits
incorrectA
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
24b86e66b4 | ||
641c444061 | |||
0902c61544 | |||
|
6790152a0b | ||
|
46d1ba418e | ||
436373d0ad | |||
|
5b9b51c02d | ||
b81abe384a | |||
|
851f862dbe | ||
|
8d7e302af8 | ||
236e1cca90 |
170
.drone.yml
170
.drone.yml
@ -1,170 +0,0 @@
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: test
|
||||
|
||||
steps:
|
||||
- name: Lint
|
||||
failure: ignore
|
||||
image: mingc/android-build-box:latest
|
||||
commands:
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Install linters..."
|
||||
- curl -sSLO https://github.com/pinterest/ktlint/releases/download/1.0.0/ktlint && chmod a+x ktlint && mv ktlint /usr/local/bin/
|
||||
- curl -sSLO https://github.com/detekt/detekt/releases/download/v1.23.1/detekt-cli-1.23.1.zip && unzip detekt-cli-1.23.1.zip
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Linting..."
|
||||
- ktlint 'shared/**/*.kt' 'androidApp/**/*.kt' '!shared/build' || true
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Detecting..."
|
||||
- ./detekt-cli-1.23.1/bin/detekt-cli --all-rules --excludes '**/shared/build/**/*.kt' || true
|
||||
- echo "---------------------------------------------------------"
|
||||
command_timeout: 1m
|
||||
- name: BuildAndTest
|
||||
image: mingc/android-build-box:latest
|
||||
commands:
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Configure gradle..."
|
||||
- mkdir -p ~/.gradle && echo "org.gradle.daemon=false\nignoreGitVersion=true\nsystemProp.org.gradle.internal.http.connectionTimeout=180000\nsystemProp.org.gradle.internal.http.socketTimeout=180000" >> ~/.gradle/gradle.properties
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Configure java..."
|
||||
- . ~/.bash_profile
|
||||
- jenv global 17.0
|
||||
- java --version
|
||||
- date
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Building and testing..."
|
||||
- ./gradlew build
|
||||
- echo "---------------------------------------------------------"
|
||||
trigger:
|
||||
event:
|
||||
- push
|
||||
- pull_request
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: Publish
|
||||
|
||||
steps:
|
||||
- name: createTagAndChangelog
|
||||
image: ubuntu:latest
|
||||
commands:
|
||||
- apt-get update && apt-get install -y git
|
||||
- git fetch --tags -p
|
||||
- PREV=$(git describe --tags --abbrev=0)
|
||||
- ./build.sh --publish --from-ci
|
||||
- VER=$(git describe --tags --abbrev=0)
|
||||
- CHANGELOG=$(git log $PREV..HEAD --pretty="- %s")
|
||||
- echo "**$VER**\n\n$CHANGELOG\n\n--------------------------------------------------------------------\n\n$(cat CHANGELOG.md)" > CHANGELOG.md
|
||||
- git add CHANGELOG.md
|
||||
- git commit -m "Changelog for $VER [CI SKIP]"
|
||||
environment:
|
||||
TZ: Europe/Paris
|
||||
|
||||
- name: git-push
|
||||
image: appleboy/drone-git-push
|
||||
settings:
|
||||
branch: master
|
||||
remote:
|
||||
from_secret: remoteUrl
|
||||
followtags: true
|
||||
ssh_key:
|
||||
from_secret: privateKey
|
||||
skip_verify: true
|
||||
|
||||
- name: scpFiles
|
||||
image: appleboy/drone-scp
|
||||
settings:
|
||||
host: amine-bouabdallaoui.fr
|
||||
username: ubuntu
|
||||
key:
|
||||
from_secret: privateKey
|
||||
port: 22
|
||||
target: /home/ubuntu/
|
||||
source: version.txt
|
||||
|
||||
- name: deploy
|
||||
image: appleboy/drone-ssh
|
||||
settings:
|
||||
host: amine-bouabdallaoui.fr
|
||||
user: ubuntu
|
||||
key:
|
||||
from_secret: privateKey
|
||||
command_timeout: 2m
|
||||
script:
|
||||
- cd /home/ubuntu && sudo rm -rf /var/www/amine/version.txt && sudo chown www-data:www-data ./version.txt && sudo mv version.txt /var/www/amine/
|
||||
|
||||
trigger:
|
||||
event:
|
||||
- promote
|
||||
target:
|
||||
- production
|
||||
|
||||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: Release
|
||||
|
||||
steps:
|
||||
- name: build
|
||||
image: mingc/android-build-box:latest
|
||||
commands:
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Fetch tags..."
|
||||
- git fetch --tags
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Configure gradle..."
|
||||
- mkdir -p ~/.gradle && echo "org.gradle.daemon=false\nignoreGitVersion=false\nsystemProp.org.gradle.internal.http.connectionTimeout=180000\nsystemProp.org.gradle.internal.http.socketTimeout=180000" >> ~/.gradle/gradle.properties
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Generate APK"
|
||||
- ./gradlew :androidApp:assembleGithubConfigRelease
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Get Key"
|
||||
- wget https://amine-bouabdallaoui.fr/key
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Zipalign"
|
||||
- $ANDROID_HOME/build-tools/31.0.0/zipalign -f -v 4 androidApp/build/outputs/apk/githubConfig/release/androidApp-githubConfig-release-unsigned.apk androidApp/build/outputs/apk/githubConfig/release/android-prod-released-ziped.apk
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Sign"
|
||||
- $ANDROID_HOME/build-tools/31.0.0/apksigner sign -v --out signed.apk --ks ./key --ks-key-alias $YOUR_KEY_ALIAS --ks-pass pass:$YOUR_KEYSTORE_PASSWORD --v1-signing-enabled true --v2-signing-enabled true androidApp/build/outputs/apk/githubConfig/release/android-prod-released-ziped.apk
|
||||
- echo "---------------------------------------------------------"
|
||||
- echo "Verify"
|
||||
- $ANDROID_HOME/build-tools/31.0.0/apksigner verify signed.apk
|
||||
environment:
|
||||
TZ: Europe/Paris
|
||||
YOUR_KEYSTORE_PASSWORD:
|
||||
from_secret: keyPass
|
||||
YOUR_KEY_ALIAS:
|
||||
from_secret: keyAlias
|
||||
|
||||
- name: gitea_release
|
||||
image: plugins/gitea-release
|
||||
settings:
|
||||
api_key:
|
||||
from_secret: giteaAPI
|
||||
base_url: https://gitea.amine-bouabdallaoui.fr
|
||||
files: signed.apk
|
||||
|
||||
- name: notify
|
||||
image: drillster/drone-email
|
||||
failure: ignore
|
||||
settings:
|
||||
host:
|
||||
from_secret: smtpHOST
|
||||
port:
|
||||
from_secret: smtpPORT
|
||||
username:
|
||||
from_secret: smtpUSERNAME
|
||||
password:
|
||||
from_secret: smtpPASSWORD
|
||||
from:
|
||||
from_secret: smtpFROM
|
||||
subject: Mapping file
|
||||
recipients:
|
||||
from_secret: smtpTO
|
||||
recipients_only: true
|
||||
skip_verify: true
|
||||
attachment: androidApp/build/outputs/mapping/githubConfigRelease/mapping.txt
|
||||
trigger:
|
||||
event:
|
||||
- tag
|
24
.gitea/workflows/common_build.yml
Normal file
24
.gitea/workflows/common_build.yml
Normal file
@ -0,0 +1,24 @@
|
||||
name: Build
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
BuildAndTest:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out repository code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Fetch tags
|
||||
run: git fetch --tags -p
|
||||
- uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
java-version: '17'
|
||||
- name: Setup Android SDK
|
||||
uses: android-actions/setup-android@v3
|
||||
- name: Configure gradle...
|
||||
run: mkdir -p ~/.gradle && echo "org.gradle.daemon=false\nignoreGitVersion=true\nsystemProp.org.gradle.internal.http.connectionTimeout=180000\nsystemProp.org.gradle.internal.http.socketTimeout=180000" >> ~/.gradle/gradle.properties
|
||||
- name: Build and test
|
||||
run: ./gradlew build --stacktrace
|
126
.gitea/workflows/on_merge_on_release.yml
Normal file
126
.gitea/workflows/on_merge_on_release.yml
Normal file
@ -0,0 +1,126 @@
|
||||
name: Create tag
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- release
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
uses: ./.gitea/workflows/common_build.yml
|
||||
createTagAndChangelog:
|
||||
runs-on: ubuntu-latest
|
||||
needs: build
|
||||
steps:
|
||||
- name: Check out repository code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Config git
|
||||
run: |
|
||||
git config --global user.email aminecmi+giteadrone@pm.me
|
||||
git config --global user.name giteadrone
|
||||
- name: Creating the tag and generate changelog
|
||||
run: |
|
||||
git fetch --tags -p
|
||||
PREV=$(git describe --tags --abbrev=0)
|
||||
./build.sh --publish --from-ci
|
||||
VER=$(git describe --tags --abbrev=0)
|
||||
CHANGELOG=$(git log $PREV..HEAD --pretty="- %s")
|
||||
echo "**$VER
|
||||
|
||||
$CHANGELOG
|
||||
|
||||
--------------------------------------------------------------------
|
||||
|
||||
$(cat CHANGELOG.md)" > CHANGELOG.md
|
||||
git add CHANGELOG.md
|
||||
touch ./fastlane/metadata/android/en\-US/changelogs/$VER.txt
|
||||
echo "**$VER**
|
||||
|
||||
$CHANGELOG" > ./fastlane/metadata/android/en\-US/changelogs/$VER.txt
|
||||
git add ./fastlane/metadata/android/en\-US/changelogs/$VER.txt
|
||||
git commit -m "Changelog for $VER"
|
||||
- name: Push changes
|
||||
uses: appleboy/git-push-action@v1.0.0
|
||||
with:
|
||||
author_name: giteadrone
|
||||
author_email: aminecmi+giteadrone@pm.me
|
||||
remote: ${{ secrets.REMOTE_URL }}
|
||||
followtags: true
|
||||
ssh_key: ${{ secrets.PRIVATE_KEY }}
|
||||
tags: true
|
||||
branch: release
|
||||
- name: copy file via ssh password
|
||||
uses: appleboy/scp-action@v0.1.7
|
||||
with:
|
||||
host: amine-bouabdallaoui.fr
|
||||
username: ubuntu
|
||||
key: ${{ secrets.PRIVATE_KEY }}
|
||||
source: "version.txt"
|
||||
target: "/home/ubuntu/"
|
||||
- name: deploy version file
|
||||
uses: appleboy/ssh-action@v1.2.0
|
||||
with:
|
||||
host: amine-bouabdallaoui.fr
|
||||
username: ubuntu
|
||||
key: ${{ secrets.PRIVATE_KEY }}
|
||||
script: cd /home/ubuntu && sudo rm -rf /var/www/amine/version.txt && sudo chown www-data:www-data ./version.txt && sudo mv version.txt /var/www/amine/
|
||||
release:
|
||||
runs-on: ubuntu-latest
|
||||
needs: createTagAndChangelog
|
||||
steps:
|
||||
- name: Check out repository code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Fetch tags
|
||||
id: version
|
||||
run: |
|
||||
git fetch --tags -p
|
||||
PREV=$(git describe --tags --abbrev=0)
|
||||
echo $PREV
|
||||
echo "VERSION=$PREV" >> $GITHUB_OUTPUT
|
||||
- uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
java-version: '17'
|
||||
- name: Setup Android SDK
|
||||
uses: android-actions/setup-android@v3
|
||||
- name: Configure gradle...
|
||||
run: mkdir -p ~/.gradle && echo "org.gradle.daemon=false\nignoreGitVersion=false\nsystemProp.org.gradle.internal.http.connectionTimeout=180000\nsystemProp.org.gradle.internal.http.socketTimeout=180000" >> ~/.gradle/gradle.properties
|
||||
- name: setup go
|
||||
uses: https://github.com/actions/setup-go@v4
|
||||
with:
|
||||
go-version: '>=1.20.1'
|
||||
- name: Generate APK
|
||||
run: ./gradlew :androidApp:assembleGithubConfigRelease
|
||||
- name: Get Key
|
||||
run: wget ${{ secrets.KEY_URL }}
|
||||
- name: Zippalign
|
||||
run: |
|
||||
sdkmanager "build-tools;31.0.0"
|
||||
ls $ANDROID_HOME/build-tools
|
||||
$ANDROID_HOME/build-tools/31.0.0/zipalign -f -v 4 androidApp/build/outputs/apk/githubConfig/release/androidApp-githubConfig-release-unsigned.apk androidApp/build/outputs/apk/githubConfig/release/android-prod-released-ziped.apk
|
||||
- name: Sigh
|
||||
run: $ANDROID_HOME/build-tools/31.0.0/apksigner sign -v --out signed.apk --ks ./key --ks-key-alias ${{ secrets.KEY_ALIAS }} --ks-pass pass:${{ secrets.KEYSTORE_PASSWORD }} --v1-signing-enabled true --v2-signing-enabled true androidApp/build/outputs/apk/githubConfig/release/android-prod-released-ziped.apk
|
||||
- name: Verify
|
||||
run: $ANDROID_HOME/build-tools/31.0.0/apksigner verify signed.apk
|
||||
- name: Release
|
||||
uses: https://gitea.com/actions/gitea-release-action@main
|
||||
with:
|
||||
files: signed.apk
|
||||
token: ${{ secrets.API_KEY }}
|
||||
tag_name: ${{ steps.version.outputs.VERSION }}
|
||||
name: ${{ steps.version.outputs.VERSION }}
|
||||
- name: Send mail
|
||||
uses: https://github.com/dawidd6/action-send-mail@v4
|
||||
with:
|
||||
connection_url: ${{ secrets.MAIL_CONNECTION }}
|
||||
to: ${{ secrets.MAIL_TO }}
|
||||
from: ${{ secrets.MAIL_FROM }}
|
||||
subject: Mapping file
|
||||
priority: high
|
||||
convert_markdown: true
|
||||
body: Nouveau fichier de mapping pour la version ${{ steps.version.outputs.VERSION }}
|
||||
attachments: androidApp/build/outputs/mapping/githubConfigRelease/mapping.txt
|
26
.gitea/workflows/on_pr.yml
Normal file
26
.gitea/workflows/on_pr.yml
Normal file
@ -0,0 +1,26 @@
|
||||
name: Check PR code
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
Lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out repository code
|
||||
uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: 'temurin' # See 'Supported distributions' for available options
|
||||
java-version: '17'
|
||||
- name: Install klint
|
||||
run: curl -sSLO https://github.com/pinterest/ktlint/releases/download/1.0.0/ktlint && chmod a+x ktlint && mv ktlint /usr/local/bin/
|
||||
- name: Install detekt
|
||||
run: curl -sSLO https://github.com/detekt/detekt/releases/download/v1.23.1/detekt-cli-1.23.1.zip && unzip detekt-cli-1.23.1.zip
|
||||
- name: Linting...
|
||||
run: ktlint 'shared/**/*.kt' 'androidApp/**/*.kt' '!shared/build' || true
|
||||
- name: Detecting...
|
||||
run: ./detekt-cli-1.23.1/bin/detekt-cli --all-rules --excludes '**/shared/build/**/*.kt' || true
|
||||
build:
|
||||
uses: ./.gitea/workflows/common_build.yml
|
9
.gitea/workflows/on_push.yml
Normal file
9
.gitea/workflows/on_push.yml
Normal file
@ -0,0 +1,9 @@
|
||||
name: Check master code
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
build:
|
||||
uses: ./.gitea/workflows/common_build.yml
|
18
CHANGELOG.md
18
CHANGELOG.md
@ -1,3 +1,21 @@
|
||||
**v124113311
|
||||
|
||||
- chore: update versions. (#165)
|
||||
- chore: fastlane changelog.
|
||||
- chore: fastlane fixes.
|
||||
- Changelog for v124113301
|
||||
|
||||
--------------------------------------------------------------------
|
||||
|
||||
**v124113301**
|
||||
|
||||
- chore: Gitea Action
|
||||
- Merge pull request 'chore: Gitea Action' (#164) from runner into master
|
||||
- chore: Gitea Action
|
||||
- chore: Readme update.
|
||||
|
||||
--------------------------------------------------------------------
|
||||
|
||||
**v124041081**
|
||||
|
||||
- chore: comment.
|
||||
|
@ -1,4 +1,4 @@
|
||||
# ReaderForSelfoss-multiplatform [![Build Status](https://build.amine-bouabdallaoui.fr/api/badges/Louvorg/ReaderForSelfoss-multiplatform/status.svg)](https://build.amine-bouabdallaoui.fr/Louvorg/ReaderForSelfoss-multiplatform)
|
||||
# ReaderForSelfoss-multiplatform [![Build Status](https://gitea.amine-bouabdallaoui.fr/Louvorg/ReaderForSelfoss-multiplatform/actions/workflows/on_push.yml/badge.svg)](https://gitea.amine-bouabdallaoui.fr/Louvorg/ReaderForSelfoss-multiplatform/actions?workflow=on_push.yml&actor=0&status=0)
|
||||
|
||||
[![Crowdin](https://d322cqt584bo4o.cloudfront.net/readerforselfoss/localized.svg)](https://crowdin.com/project/readerforselfoss)
|
||||
|
||||
@ -10,10 +10,6 @@ If you are a user, you can still create new issues. I'll fix them when I can.
|
||||
|
||||
<a href="https://f-droid.org/packages/bou.amine.apps.readerforselfossv2.android"><img src="https://f-droid.org/badge/get-it-on.png" alt="Get it on F-Droid" height="100"></a>
|
||||
|
||||
## Screen captures
|
||||
|
||||
<img src="res//fr-card.png?raw=true" alt="card view" width="400"/> <img src="res//fr-list.png?raw=true" alt="list view" width="400"/>
|
||||
|
||||
## Like my app ?
|
||||
|
||||
<a href="https://www.buymeacoffee.com/aminecmi" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/lato-orange.png" alt="Buy Me A Coffee" style="height: 51px !important;width: 217px !important;" ></a>
|
||||
|
@ -7,8 +7,8 @@ buildscript {
|
||||
|
||||
plugins {
|
||||
//trick: for the same plugin versions in all sub-modules
|
||||
id("com.android.application").version("8.1.2").apply(false)
|
||||
id("com.android.library").version("8.1.2").apply(false)
|
||||
id("com.android.application").version("8.7.2").apply(false)
|
||||
id("com.android.library").version("8.7.2").apply(false)
|
||||
id("org.jetbrains.kotlin.android").version("1.9.10").apply(false)
|
||||
kotlin("multiplatform").version("1.9.10").apply(false)
|
||||
id("com.mikepenz.aboutlibraries.plugin").version("10.5.1").apply(false)
|
||||
|
0
fastlane/metadata/android/en-US/changelogs/.gitkeep
Normal file
0
fastlane/metadata/android/en-US/changelogs/.gitkeep
Normal file
@ -0,0 +1,6 @@
|
||||
**v124113311**
|
||||
|
||||
- chore: update versions. (#165)
|
||||
- chore: fastlane changelog.
|
||||
- chore: fastlane fixes.
|
||||
- Changelog for v124113301
|
BIN
fastlane/metadata/android/en-US/images/icon.png
Normal file
BIN
fastlane/metadata/android/en-US/images/icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 294 KiB |
@ -1 +1 @@
|
||||
A new RSS reader for <a href="http://selfoss.aditu.de/">selfoss</a>.
|
||||
A new RSS reader for selfoss (http://selfoss.aditu.de/)
|
||||
|
4
gradle/wrapper/gradle-wrapper.properties
vendored
4
gradle/wrapper/gradle-wrapper.properties
vendored
@ -1,6 +1,6 @@
|
||||
#Thu Jul 13 11:41:19 CEST 2023
|
||||
#Mon Nov 25 22:48:24 CET 2024
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
@ -191,7 +191,7 @@ class SelfossModel {
|
||||
}
|
||||
|
||||
override val descriptor: SerialDescriptor
|
||||
get() = PrimitiveSerialDescriptor("b", PrimitiveKind.BOOLEAN)
|
||||
get() = PrimitiveSerialDescriptor("BooleanOrIntForSomeSelfossVersions", PrimitiveKind.BOOLEAN)
|
||||
|
||||
override fun serialize(
|
||||
encoder: Encoder,
|
||||
|
@ -1,5 +0,0 @@
|
||||
sonar.projectKey=RFS2
|
||||
sonar.coverage.jacoco.xmlReportPaths=build/reports/kover/merged/xml/report.xml
|
||||
sonar.sourceEncoding=UTF-8
|
||||
sonar.sources=.
|
||||
sonar.exclusions=shared/src/iosArm64Main/**, shared/src/iosX64Main/**, docs/**
|
Loading…
Reference in New Issue
Block a user