mirror of
https://gitlab.com/famedly/fluffychat.git
synced 2025-02-22 17:20:43 +01:00
chore: Implement playstore CD
This commit is contained in:
parent
b6fa757015
commit
b5beec7e11
1
.gitignore
vendored
1
.gitignore
vendored
@ -48,4 +48,5 @@ lib/generated_plugin_registrant.dart
|
|||||||
/android/key.properties
|
/android/key.properties
|
||||||
**/android/app/.cxx
|
**/android/app/.cxx
|
||||||
android/key.jks
|
android/key.jks
|
||||||
|
android/keys.json
|
||||||
lib/l10n_old
|
lib/l10n_old
|
@ -67,10 +67,6 @@ build_android_apk:
|
|||||||
stage: coverage
|
stage: coverage
|
||||||
before_script: [./scripts/prepare-android-release.sh]
|
before_script: [./scripts/prepare-android-release.sh]
|
||||||
script: [./scripts/build-android-apk.sh]
|
script: [./scripts/build-android-apk.sh]
|
||||||
variables:
|
|
||||||
FDROID_KEY: ${FDROID_KEY}
|
|
||||||
FDROID_KEY_PASS: ${FDROID_KEY_PASS}
|
|
||||||
GOOGLE_SERVICES: ${GOOGLE_SERVICES}
|
|
||||||
artifacts:
|
artifacts:
|
||||||
when: on_success
|
when: on_success
|
||||||
paths:
|
paths:
|
||||||
@ -82,17 +78,13 @@ build_android_apk:
|
|||||||
build_android_appbundle:
|
build_android_appbundle:
|
||||||
stage: coverage
|
stage: coverage
|
||||||
before_script: [./scripts/prepare-android-release.sh]
|
before_script: [./scripts/prepare-android-release.sh]
|
||||||
script: [./scripts/build-android-appbundle.sh]
|
script: [./scripts/release-playstore-beta.sh]
|
||||||
variables:
|
|
||||||
FDROID_KEY: ${FDROID_KEY}
|
|
||||||
FDROID_KEY_PASS: ${FDROID_KEY_PASS}
|
|
||||||
GOOGLE_SERVICES: ${GOOGLE_SERVICES}
|
|
||||||
artifacts:
|
artifacts:
|
||||||
when: on_success
|
when: on_success
|
||||||
paths:
|
paths:
|
||||||
- build/android/app-release.aab
|
- build/android/app-release.aab
|
||||||
only:
|
#only:
|
||||||
- main
|
# - main
|
||||||
|
|
||||||
upload_to_fdroid_repo:
|
upload_to_fdroid_repo:
|
||||||
stage: release
|
stage: release
|
||||||
@ -239,6 +231,11 @@ upload-windows:
|
|||||||
- |
|
- |
|
||||||
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file package.tar.gz ${PACKAGE_REGISTRY_URL}/fluffychat-windows.tar.gz
|
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file package.tar.gz ${PACKAGE_REGISTRY_URL}/fluffychat-windows.tar.gz
|
||||||
|
|
||||||
|
upload-playstore:
|
||||||
|
extends: .release
|
||||||
|
stage: deploy
|
||||||
|
script: [./scripts/release-playstore.sh]
|
||||||
|
|
||||||
release:
|
release:
|
||||||
extends: .release
|
extends: .release
|
||||||
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
||||||
|
3
android/Gemfile
Normal file
3
android/Gemfile
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
source "https://rubygems.org"
|
||||||
|
|
||||||
|
gem "fastlane"
|
2
android/fastlane/Appfile
Normal file
2
android/fastlane/Appfile
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
json_key_file("keys.json") # Path to the json secret file - Follow https://docs.fastlane.tools/actions/supply/#setup to get one
|
||||||
|
package_name("chat.fluffy.fluffychat") # e.g. com.krausefx.app
|
49
android/fastlane/Fastfile
Normal file
49
android/fastlane/Fastfile
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
# This file contains the fastlane.tools configuration
|
||||||
|
# You can find the documentation at https://docs.fastlane.tools
|
||||||
|
#
|
||||||
|
# For a list of all available actions, check out
|
||||||
|
#
|
||||||
|
# https://docs.fastlane.tools/actions
|
||||||
|
#
|
||||||
|
# For a list of all available plugins, check out
|
||||||
|
#
|
||||||
|
# https://docs.fastlane.tools/plugins/available-plugins
|
||||||
|
#
|
||||||
|
|
||||||
|
# Uncomment the line if you want fastlane to automatically update itself
|
||||||
|
update_fastlane
|
||||||
|
|
||||||
|
default_platform(:android)
|
||||||
|
|
||||||
|
platform :android do
|
||||||
|
lane :set_build_code_beta do
|
||||||
|
versions = google_play_track_version_codes(
|
||||||
|
track: "beta",
|
||||||
|
json_key: "./keys.json"
|
||||||
|
)
|
||||||
|
last_version = versions[0].to_i
|
||||||
|
Dir.chdir("../..") do
|
||||||
|
re = /version:\s([0-9]*\.[0-9]*\.[0-9]*)\+[0-9]/i
|
||||||
|
config = File.read("./pubspec.yaml")
|
||||||
|
version_name = config.match(re).captures
|
||||||
|
|
||||||
|
subst = "version: #{version_name[0]}+#{last_version+1}"
|
||||||
|
|
||||||
|
result = config.gsub(re, subst)
|
||||||
|
|
||||||
|
File.open("./pubspec.yaml", 'w') { |file| file.write(result) }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
lane :deploy_beta_test do
|
||||||
|
versions = google_play_track_version_codes(
|
||||||
|
track: "beta",
|
||||||
|
json_key: "./keys.json"
|
||||||
|
)
|
||||||
|
last_version = versions[0].to_i
|
||||||
|
upload_to_play_store(track: 'beta', aab: '../build/app/outputs/bundle/release/app-release.aab', version_code: "#{last_version+1}")
|
||||||
|
end
|
||||||
|
|
||||||
|
lane :deploy_release do
|
||||||
|
upload_to_play_store(track: 'beta', track_promote_to: "production", deactivate_on_promote: false, skip_upload_changelogs: true)
|
||||||
|
end
|
@ -0,0 +1 @@
|
|||||||
|
Check out https://gitlab.com/ChristianPauly/fluffychat-flutter/-/blob/main/CHANGELOG.md for the changelog.
|
32
android/fastlane/metadata/android/en-US/full_description.txt
Normal file
32
android/fastlane/metadata/android/en-US/full_description.txt
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
FluffyChat is an open, nonprofit and cute matrix messenger app for Ubuntu Touch, Android and iOS.
|
||||||
|
|
||||||
|
Open
|
||||||
|
Opensource and open development where everyone can join.
|
||||||
|
|
||||||
|
Nonprofit
|
||||||
|
FluffyChat is donation funded.
|
||||||
|
|
||||||
|
Cute ♥
|
||||||
|
Cute design and many theme settings including a dark mode.
|
||||||
|
|
||||||
|
One-to-one and groupchats
|
||||||
|
Unlimited groups and direct chats.
|
||||||
|
|
||||||
|
Easy
|
||||||
|
FluffyChat is made as simple to use as possible.
|
||||||
|
|
||||||
|
Free
|
||||||
|
Free to use for everyone without ads.
|
||||||
|
|
||||||
|
Decentralized
|
||||||
|
There is no "FluffyChat server" you are forced to use. Use the server you find trustworthy or host your own.
|
||||||
|
|
||||||
|
Compatible
|
||||||
|
Compatible with Riot, Fractal, Nekho and all matrix messengers.
|
||||||
|
|
||||||
|
|
||||||
|
FluffyChat comes with a dream
|
||||||
|
|
||||||
|
Imagine a world where everyone can choose the messenger they like and is still able to chat with all of their friends.
|
||||||
|
A world where there are no companies spying on you when you send selfies to friends and lovers.
|
||||||
|
And a world where apps are made for fluffyness and not for profit. ♥
|
Binary file not shown.
After Width: | Height: | Size: 233 KiB |
BIN
android/fastlane/metadata/android/en-US/images/icon.png
Normal file
BIN
android/fastlane/metadata/android/en-US/images/icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 32 KiB |
Binary file not shown.
After Width: | Height: | Size: 141 KiB |
Binary file not shown.
After Width: | Height: | Size: 196 KiB |
Binary file not shown.
After Width: | Height: | Size: 721 KiB |
@ -0,0 +1 @@
|
|||||||
|
Chat with your friends with FluffyChat.
|
1
android/fastlane/metadata/android/en-US/title.txt
Normal file
1
android/fastlane/metadata/android/en-US/title.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
FluffyChat
|
0
android/fastlane/metadata/android/en-US/video.txt
Normal file
0
android/fastlane/metadata/android/en-US/video.txt
Normal file
@ -4,4 +4,4 @@ cd android && echo "storePassword=${FDROID_KEY_PASS}" >> key.properties && cd ..
|
|||||||
cd android && echo "keyPassword=${FDROID_KEY_PASS}" >> key.properties && cd ..
|
cd android && echo "keyPassword=${FDROID_KEY_PASS}" >> key.properties && cd ..
|
||||||
cd android && echo "keyAlias=key" >> key.properties && cd ..
|
cd android && echo "keyAlias=key" >> key.properties && cd ..
|
||||||
cd android && echo "storeFile=../key.jks" >> key.properties && cd ..
|
cd android && echo "storeFile=../key.jks" >> key.properties && cd ..
|
||||||
cd android/app && echo $GOOGLE_SERVICES >> google-services.json && cd ../..
|
#cd android/app && echo $GOOGLE_SERVICES >> google-services.json && cd ../..
|
||||||
|
@ -2,6 +2,15 @@
|
|||||||
flutter channel stable
|
flutter channel stable
|
||||||
flutter upgrade
|
flutter upgrade
|
||||||
flutter pub get
|
flutter pub get
|
||||||
|
cd android
|
||||||
|
bundle install
|
||||||
|
bundle update fastlane
|
||||||
|
#echo $PLAYSTORE_DEPLOY_KEY >> keys.json
|
||||||
|
bundle exec fastlane set_build_code_beta
|
||||||
|
cd ..
|
||||||
flutter build appbundle --target-platform android-arm,android-arm64,android-x64
|
flutter build appbundle --target-platform android-arm,android-arm64,android-x64
|
||||||
mkdir -p build/android
|
mkdir -p build/android
|
||||||
cp build/app/outputs/bundle/release/app-release.aab build/android/
|
cp build/app/outputs/bundle/release/app-release.aab build/android/
|
||||||
|
cd android
|
||||||
|
bundle exec fastlane deploy_beta_test
|
||||||
|
cd ..
|
7
scripts/release-playstore.sh
Executable file
7
scripts/release-playstore.sh
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
cd android
|
||||||
|
bundle install
|
||||||
|
bundle update fastlane
|
||||||
|
echo $PLAYSTORE_DEPLOY_KEY >> keys.json
|
||||||
|
bundle exec fastlane deploy_release
|
||||||
|
cd ..
|
Loading…
x
Reference in New Issue
Block a user