mirror of
https://gitlab.com/openstapps/openstapps.git
synced 2026-01-10 11:42:59 +00:00
refactor: enable CI only configuration
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -1,5 +1,2 @@
|
|||||||
app
|
app
|
||||||
playstore_api_key.json
|
|
||||||
playstore.keystore
|
|
||||||
app.conf
|
|
||||||
Gemfile.lock
|
Gemfile.lock
|
||||||
@@ -1,21 +1,27 @@
|
|||||||
# Edit the following entires if necessary
|
# Edit the following entires and save the file without .sample extension
|
||||||
|
|
||||||
APP_NAME="Open StApps" # Full app name
|
APP_NAME="Open StApps" # Full app name
|
||||||
APP_DISPLAY_NAME="StApps" # App name on mobile device homescreen (Not much space)
|
APP_DISPLAY_NAME="StApps" # App name on mobile device homescreen (Not much space)
|
||||||
BACKEND_URL="https://your.backend.server.tld" # Publicly available backend url
|
BACKEND_URL="https://your.backend.server.tld" # Publicly available backend url
|
||||||
BACKEND_VERSION="2.0.0" # Minimum backend version the app will request
|
BACKEND_VERSION="2.0.0" # Minimum backend version the app will request
|
||||||
APP_LINK_HOST="your.deep.link.host.tld" # Your host used for universal (deep) links
|
APP_LINK_HOST="your.deep.link.host.tld" # Your host used for universal (deep) links
|
||||||
APP_URL_SCHEME="de.anyschool.app" # Custom url scheme for native app versions
|
APP_URL_SCHEME="de.anyschool.app" # Custom url scheme for native app versions
|
||||||
|
|
||||||
|
|
||||||
# iOS specific sonfiguration
|
# iOS specific configuration
|
||||||
|
|
||||||
LOCATION_USAGE_DESCRIPTION="Ortungsdienste werden für die Kartenansichten und bessere Suchergebnisse benötigt"
|
LOCATION_USAGE_DESCRIPTION="Ortungsdienste werden für die Kartenansichten und bessere Suchergebnisse benötigt"
|
||||||
CALENDAR_USAGE_DESCRIPTION="Zugriff auf Kalender wird für die Synchronisierung deiner Uni Termine benötigt"
|
CALENDAR_USAGE_DESCRIPTION="Zugriff auf Kalender wird für die Synchronisierung deiner Uni Termine benötigt"
|
||||||
IOS_BUNDLE_IDENTIFIER="com.anyschool.app.ios" # The bundle identifier of your ios app
|
IOS_BUNDLE_IDENTIFIER="com.anyschool.app.ios" # The bundle identifier of your ios app
|
||||||
APPLE_ID="example@domain.tld" # Your Apple Developer email address
|
APPLE_ID="example@domain.tld" # Your Apple Developer email address
|
||||||
ITC_TEAM_ID="123412345" # App Store Connect Team ID
|
ITC_TEAM_ID="123412345" # App Store Connect Team ID
|
||||||
TEAM_ID="ABCDEV1234" # Developer Team ID
|
TEAM_ID="ABCDEV1234" # Developer Team ID
|
||||||
|
APPLE_API_KEY_ID="123ACAB456" # Your API key id
|
||||||
|
APPLE_API_KEY_ISSUER_ID="1234578-1234-1234-1234-12345678901" # Your API key issuer id
|
||||||
|
|
||||||
|
# Provide the following environment variable in a secure fashion.
|
||||||
|
# Don't change the following line!
|
||||||
|
APPLE_API_KEY_CONTENT="${APPLE_API_KEY_CONTENT:-'unset'}" # Base64 encoded contents of Apple API key file (.p8 file)
|
||||||
|
|
||||||
|
|
||||||
# Android specific configuration
|
# Android specific configuration
|
||||||
@@ -24,6 +30,7 @@ ANDROID_PACKAGE_NAME="de.anyschool.app.android" # Your
|
|||||||
|
|
||||||
# Provide the following environment variables in a secure fashion.
|
# Provide the following environment variables in a secure fashion.
|
||||||
# Don't change the following lines!
|
# Don't change the following lines!
|
||||||
ANDROID_KEYSTORE_PASSWORD="${ANDROID_KEYSTORE_PASSWORD:-'unsed'}" # Passwort to your keyfile
|
ANDROID_API_KEY_CONTENT="${ANDROID_API_KEY_CONTENT:-'unset'}" # Base64 encoded contents of your API key file (.json file)
|
||||||
ANDROID_KEYSTORE_KEY_ALIAS="${ANDROID_KEYSTORE_KEY_ALIAS:-'unsed'}" # Name/Alias of the key used for signing within the keyfile
|
ANDROID_KEYSTORE_PASSWORD="${ANDROID_KEYSTORE_PASSWORD:-'unset'}" # Passwort to your keyfile
|
||||||
ANDROID_KEYSTORE_KEY_PASSWORD="${ANDROID_KEYSTORE_KEY_PASSWORD:-'unsed'}" # Passwort to the this very key
|
ANDROID_KEYSTORE_KEY_ALIAS="${ANDROID_KEYSTORE_KEY_ALIAS:-'unset'}" # Name/Alias of the key used for signing within the keyfile
|
||||||
|
ANDROID_KEYSTORE_KEY_PASSWORD="${ANDROID_KEYSTORE_KEY_PASSWORD:-'unset'}" # Passwort to the this very key
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
{
|
|
||||||
"hint": "Replace this with the content of your valid playstore api key json file and remove '.sample' from file name"
|
|
||||||
}
|
|
||||||
@@ -1,2 +1,2 @@
|
|||||||
json_key_file("../../playstore_api_key.json") # Don't Change
|
#json_key_file("../../playstore_api_key.json") # Don't Change
|
||||||
package_name ENV["ANDROID_PACKAGE_NAME"] || "de.anyschool.app.droid" # Don't Change
|
package_name ENV["ANDROID_PACKAGE_NAME"] || "de.anyschool.app.droid" # Don't Change
|
||||||
@@ -14,6 +14,7 @@
|
|||||||
# update_fastlane
|
# update_fastlane
|
||||||
|
|
||||||
require 'json'
|
require 'json'
|
||||||
|
require 'base64'
|
||||||
|
|
||||||
default_platform(:android)
|
default_platform(:android)
|
||||||
|
|
||||||
@@ -22,16 +23,12 @@ playstore_track = "internal"
|
|||||||
package_json = JSON.parse(File.read('../../package.json'))
|
package_json = JSON.parse(File.read('../../package.json'))
|
||||||
|
|
||||||
platform :android do
|
platform :android do
|
||||||
desc "Runs all the tests"
|
|
||||||
lane :test do
|
|
||||||
gradle(task: "test")
|
|
||||||
end
|
|
||||||
|
|
||||||
lane :fetch_version_code do
|
lane :fetch_version_code do
|
||||||
current_version_code = google_play_track_version_codes(
|
current_version_code = google_play_track_version_codes(
|
||||||
package_name: ENV['ANDROID_PACKAGE_NAME'],
|
package_name: ENV['ANDROID_PACKAGE_NAME'],
|
||||||
track: playstore_track,
|
track: playstore_track,
|
||||||
json_key: '../../playstore_api_key.json'
|
json_key_data: ENV['ANDROID_API_KEY_CONTENT']
|
||||||
).max
|
).max
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -40,9 +37,9 @@ platform :android do
|
|||||||
tracks = ['production', 'beta', 'internal']
|
tracks = ['production', 'beta', 'internal']
|
||||||
tracks.each do |t|
|
tracks.each do |t|
|
||||||
version_code_candidates += google_play_track_version_codes(
|
version_code_candidates += google_play_track_version_codes(
|
||||||
package_name: ENV['ANDROID_PACKAGE_NAME'],
|
package_name: ENV['ANDROID_PACKAGE_NAME'],
|
||||||
track: t,
|
track: t,
|
||||||
json_key: '../../playstore_api_key.json'
|
json_key_data: Base64.decode64(ENV['ANDROID_API_KEY_CONTENT'])
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
current_version_code = version_code_candidates.compact.max
|
current_version_code = version_code_candidates.compact.max
|
||||||
@@ -72,14 +69,14 @@ platform :android do
|
|||||||
build
|
build
|
||||||
upload_to_play_store(
|
upload_to_play_store(
|
||||||
track: playstore_track,
|
track: playstore_track,
|
||||||
json_key: '../../playstore_api_key.json',
|
json_key_data: Base64.decode64(ENV['ANDROID_API_KEY_CONTENT']),
|
||||||
skip_upload_metadata: true,
|
skip_upload_metadata: true,
|
||||||
skip_upload_images: true,
|
skip_upload_images: true,
|
||||||
skip_upload_screenshots: true
|
skip_upload_screenshots: true
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
desc "Deploy a new version to the Google Play"
|
desc "Submit a new version to the Google Play"
|
||||||
lane :release do
|
lane :release do
|
||||||
build
|
build
|
||||||
#upload_to_play_store(json_key: '../../playstore_api_key.json', skip_upload_metadata: true, skip_upload_images: true)
|
#upload_to_play_store(json_key: '../../playstore_api_key.json', skip_upload_metadata: true, skip_upload_images: true)
|
||||||
|
|||||||
@@ -17,10 +17,34 @@ require 'json'
|
|||||||
|
|
||||||
default_platform(:ios)
|
default_platform(:ios)
|
||||||
|
|
||||||
|
current_build_number = 1
|
||||||
package_json = JSON.parse(File.read('../../../package.json'))
|
package_json = JSON.parse(File.read('../../../package.json'))
|
||||||
|
|
||||||
|
api_key = app_store_connect_api_key(
|
||||||
|
key_id: ENV['APPLE_API_KEY_ID'],
|
||||||
|
issuer_id: ENV['APPLE_API_KEY_ISSUER_ID'],
|
||||||
|
key_content: ENV['APPLE_API_KEY_CONTENT'],
|
||||||
|
is_key_content_base64: true,
|
||||||
|
duration: 1000,
|
||||||
|
in_house: false
|
||||||
|
)
|
||||||
|
|
||||||
platform :ios do
|
platform :ios do
|
||||||
desc "Push a new release build to the App Store"
|
|
||||||
|
lane :fetch_highest_build_number do
|
||||||
|
build_number_candidates = [1]
|
||||||
|
build_number_candidates += latest_testflight_build_number(
|
||||||
|
version: package_json['version'],
|
||||||
|
initial_build_number: 1,
|
||||||
|
api_key: api_key
|
||||||
|
)
|
||||||
|
build_number_candidates += app_store_build_number(
|
||||||
|
version: package_json['version'],
|
||||||
|
initial_build_number: 1,
|
||||||
|
api_key: api_key
|
||||||
|
)
|
||||||
|
current_build_number = build_number_candidates.compact.max
|
||||||
|
end
|
||||||
|
|
||||||
lane :configure do
|
lane :configure do
|
||||||
set_info_plist_value(
|
set_info_plist_value(
|
||||||
@@ -53,21 +77,31 @@ platform :ios do
|
|||||||
version_number: package_json['version'],
|
version_number: package_json['version'],
|
||||||
xcodeproj: "App.xcodeproj"
|
xcodeproj: "App.xcodeproj"
|
||||||
)
|
)
|
||||||
|
fetch_highest_build_number
|
||||||
|
increment_build_number(
|
||||||
|
build_number: current_build_number + 1,
|
||||||
|
xcodeproj: "App.xcodeproj"
|
||||||
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
lane :build do
|
lane :build do
|
||||||
build_app(workspace: "App.xcworkspace", scheme: "App")
|
build_app(workspace: "App.xcworkspace", scheme: "App")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
desc "Submit a new version to iOS App Store"
|
||||||
lane :release do
|
lane :release do
|
||||||
configure
|
configure
|
||||||
build
|
build
|
||||||
#upload_to_app_store(skip_metadata: true, skip_screenshots: true)
|
#upload_to_app_store(skip_metadata: true, skip_screenshots: true, api_key: api_key)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
desc "Submit a new version to Testflight"
|
||||||
lane :beta do
|
lane :beta do
|
||||||
configure
|
configure
|
||||||
build
|
build
|
||||||
upload_to_testflight(skip_submission: true)
|
upload_to_testflight(
|
||||||
|
skip_submission: true,
|
||||||
|
api_key: api_key
|
||||||
|
)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
Reference in New Issue
Block a user