Merge branch 'refactor-meta-and-scripts'

This commit is contained in:
Davide De Rosa 2019-09-30 14:21:29 +02:00
commit ff03611c2e
13 changed files with 317 additions and 100 deletions

17
.env
View File

@ -1,12 +1,9 @@
LC_ALL="en_US.UTF-8"
LANG="en_US.UTF-8"
STAGE_BUILD_PATH="build/$TARGET"
STAGE_ARTIFACTS_PATH="dist/$TARGET"
STAGE_ARCHIVE_NAME="Passepartout"
BUILD_CHANGELOG_PATH="ci/CHANGELOG.md"
BUILD_DESCRIPTION_PATH="ci/DESCRIPTION.md"
APP_NAME="Passepartout"
GYM_SCHEME="Passepartout-iOS"
MATCH_READONLY="true"
IPA_OUTPUT_PATH="$STAGE_ARTIFACTS_PATH/$STAGE_ARCHIVE_NAME.ipa"
BUILD_PATH="build"
DIST_PATH="dist"
# constant (fastlane)
LC_ALL="en_US.UTF-8"
LANG="en_US.UTF-8"

View File

@ -1,3 +1,3 @@
PILOT_IPA=$IPA_OUTPUT_PATH
PILOT_IPA="$DIST_PATH/$TARGET/$APP_NAME.ipa"
PILOT_DISTRIBUTE_EXTERNAL="true"
DEMO_ACCOUNT_REQUIRED="true"

View File

@ -1,7 +1,3 @@
APPCENTER_APP_NAME="Passepartout"
APPCENTER_DISTRIBUTE_IPA=$IPA_OUTPUT_PATH
#FL_HOCKEY_COMMIT_SHA=$(git rev-parse HEAD)
#FL_HOCKEY_COMMIT_SHA=$CI_COMMIT_SHA
#FL_HOCKEY_BUILD_SERVER_URL="$CI_PROJECT_URL/-/jobs/$CI_JOB_ID"
#FL_HOCKEY_REPOSITORY_URL=$CI_PROJECT_URL
#FL_HOCKEY_STRATEGY="replace"
APPCENTER_APP_NAME=$GYM_SCHEME
APPCENTER_DISTRIBUTE_IPA="$DIST_PATH/$TARGET/$APP_NAME.ipa"
APPCENTER_DISTRIBUTE_DESTINATION_TYPE="group"

View File

@ -3,7 +3,7 @@ FASTLANE_USERNAME=
FASTLANE_PASSWORD=
APPCENTER_OWNER_NAME=
APPCENTER_API_TOKEN=
#APPCENTER_DISTRIBUTE_GROUP=
APPCENTER_DISTRIBUTE_DESTINATIONS=
PILOT_GROUPS=
PILOT_USERNAME=
DELIVER_USERNAME=

2
.gitignore vendored
View File

@ -15,6 +15,6 @@ build/
dist/
ci/CHANGELOG.md
ci/DESCRIPTION.md
ci/beta-feedback.txt
.env.secret*
Preview.html
Gemfile.lock

220
Gemfile.lock Normal file
View File

@ -0,0 +1,220 @@
GEM
remote: https://rubygems.org/
specs:
CFPropertyList (3.0.1)
activesupport (4.2.11.1)
i18n (~> 0.7)
minitest (~> 5.1)
thread_safe (~> 0.3, >= 0.3.4)
tzinfo (~> 1.1)
addressable (2.7.0)
public_suffix (>= 2.0.2, < 5.0)
algoliasearch (1.27.1)
httpclient (~> 2.8, >= 2.8.3)
json (>= 1.5.1)
atomos (0.1.3)
babosa (1.0.3)
claide (1.0.3)
cocoapods (1.8.1)
activesupport (>= 4.0.2, < 5)
claide (>= 1.0.2, < 2.0)
cocoapods-core (= 1.8.1)
cocoapods-deintegrate (>= 1.0.3, < 2.0)
cocoapods-downloader (>= 1.2.2, < 2.0)
cocoapods-plugins (>= 1.0.0, < 2.0)
cocoapods-search (>= 1.0.0, < 2.0)
cocoapods-stats (>= 1.0.0, < 2.0)
cocoapods-trunk (>= 1.4.0, < 2.0)
cocoapods-try (>= 1.1.0, < 2.0)
colored2 (~> 3.1)
escape (~> 0.0.4)
fourflusher (>= 2.3.0, < 3.0)
gh_inspector (~> 1.0)
molinillo (~> 0.6.6)
nap (~> 1.0)
ruby-macho (~> 1.4)
xcodeproj (>= 1.11.1, < 2.0)
cocoapods-core (1.8.1)
activesupport (>= 4.0.2, < 6)
algoliasearch (~> 1.0)
concurrent-ruby (~> 1.1)
fuzzy_match (~> 2.0.4)
nap (~> 1.0)
cocoapods-deintegrate (1.0.4)
cocoapods-downloader (1.2.2)
cocoapods-plugins (1.0.0)
nap
cocoapods-search (1.0.0)
cocoapods-stats (1.1.0)
cocoapods-trunk (1.4.1)
nap (>= 0.8, < 2.0)
netrc (~> 0.11)
cocoapods-try (1.1.0)
colored (1.2)
colored2 (3.1.2)
commander-fastlane (4.4.6)
highline (~> 1.7.2)
concurrent-ruby (1.1.5)
declarative (0.0.10)
declarative-option (0.1.0)
digest-crc (0.4.1)
domain_name (0.5.20190701)
unf (>= 0.0.5, < 1.0.0)
dotenv (2.7.5)
emoji_regex (1.0.1)
escape (0.0.4)
excon (0.67.0)
faraday (0.16.2)
multipart-post (>= 1.2, < 3)
faraday-cookie_jar (0.0.6)
faraday (>= 0.7.4)
http-cookie (~> 1.0.0)
faraday_middleware (0.13.1)
faraday (>= 0.7.4, < 1.0)
fastimage (2.1.7)
fastlane (2.131.0)
CFPropertyList (>= 2.3, < 4.0.0)
addressable (>= 2.3, < 3.0.0)
babosa (>= 1.0.2, < 2.0.0)
bundler (>= 1.12.0, < 3.0.0)
colored
commander-fastlane (>= 4.4.6, < 5.0.0)
dotenv (>= 2.1.1, < 3.0.0)
emoji_regex (>= 0.1, < 2.0)
excon (>= 0.45.0, < 1.0.0)
faraday (~> 0.9)
faraday-cookie_jar (~> 0.0.6)
faraday_middleware (~> 0.9)
fastimage (>= 2.1.0, < 3.0.0)
gh_inspector (>= 1.1.2, < 2.0.0)
google-api-client (>= 0.21.2, < 0.24.0)
google-cloud-storage (>= 1.15.0, < 2.0.0)
highline (>= 1.7.2, < 2.0.0)
json (< 3.0.0)
jwt (~> 2.1.0)
mini_magick (>= 4.9.4, < 5.0.0)
multi_xml (~> 0.5)
multipart-post (~> 2.0.0)
plist (>= 3.1.0, < 4.0.0)
public_suffix (~> 2.0.0)
rubyzip (>= 1.2.2, < 2.0.0)
security (= 0.1.3)
simctl (~> 1.6.3)
slack-notifier (>= 2.0.0, < 3.0.0)
terminal-notifier (>= 2.0.0, < 3.0.0)
terminal-table (>= 1.4.5, < 2.0.0)
tty-screen (>= 0.6.3, < 1.0.0)
tty-spinner (>= 0.8.0, < 1.0.0)
word_wrap (~> 1.0.0)
xcodeproj (>= 1.8.1, < 2.0.0)
xcpretty (~> 0.3.0)
xcpretty-travis-formatter (>= 0.0.3)
fastlane-plugin-appcenter (1.4.0)
fourflusher (2.3.1)
fuzzy_match (2.0.4)
gh_inspector (1.1.3)
google-api-client (0.23.9)
addressable (~> 2.5, >= 2.5.1)
googleauth (>= 0.5, < 0.7.0)
httpclient (>= 2.8.1, < 3.0)
mime-types (~> 3.0)
representable (~> 3.0)
retriable (>= 2.0, < 4.0)
signet (~> 0.9)
google-cloud-core (1.3.1)
google-cloud-env (~> 1.0)
google-cloud-env (1.2.1)
faraday (~> 0.11)
google-cloud-storage (1.16.0)
digest-crc (~> 0.4)
google-api-client (~> 0.23)
google-cloud-core (~> 1.2)
googleauth (>= 0.6.2, < 0.10.0)
googleauth (0.6.7)
faraday (~> 0.12)
jwt (>= 1.4, < 3.0)
memoist (~> 0.16)
multi_json (~> 1.11)
os (>= 0.9, < 2.0)
signet (~> 0.7)
highline (1.7.10)
http-cookie (1.0.3)
domain_name (~> 0.5)
httpclient (2.8.3)
i18n (0.9.5)
concurrent-ruby (~> 1.0)
json (2.2.0)
jwt (2.1.0)
memoist (0.16.0)
mime-types (3.3)
mime-types-data (~> 3.2015)
mime-types-data (3.2019.0904)
mini_magick (4.9.5)
minitest (5.12.2)
molinillo (0.6.6)
multi_json (1.13.1)
multi_xml (0.6.0)
multipart-post (2.0.0)
nanaimo (0.2.6)
nap (1.1.0)
naturally (2.2.0)
netrc (0.11.0)
os (1.0.1)
plist (3.5.0)
public_suffix (2.0.5)
representable (3.0.4)
declarative (< 0.1.0)
declarative-option (< 0.2.0)
uber (< 0.2.0)
retriable (3.1.2)
rouge (2.0.7)
ruby-macho (1.4.0)
rubyzip (1.3.0)
security (0.1.3)
signet (0.11.0)
addressable (~> 2.3)
faraday (~> 0.9)
jwt (>= 1.5, < 3.0)
multi_json (~> 1.10)
simctl (1.6.6)
CFPropertyList
naturally
slack-notifier (2.3.2)
terminal-notifier (2.0.0)
terminal-table (1.8.0)
unicode-display_width (~> 1.1, >= 1.1.1)
thread_safe (0.3.6)
tty-cursor (0.7.0)
tty-screen (0.7.0)
tty-spinner (0.9.1)
tty-cursor (~> 0.7)
tzinfo (1.2.5)
thread_safe (~> 0.1)
uber (0.1.0)
unf (0.1.4)
unf_ext
unf_ext (0.0.7.6)
unicode-display_width (1.6.0)
word_wrap (1.0.0)
xcodeproj (1.12.0)
CFPropertyList (>= 2.3.3, < 4.0)
atomos (~> 0.1.3)
claide (>= 1.0.2, < 2.0)
colored2 (~> 3.1)
nanaimo (~> 0.2.6)
xcpretty (0.3.0)
rouge (~> 2.0.7)
xcpretty-travis-formatter (1.0.0)
xcpretty (~> 0.2, >= 0.0.7)
PLATFORMS
ruby
DEPENDENCIES
cocoapods
dotenv
fastlane
fastlane-plugin-appcenter
BUNDLED WITH
2.0.2

View File

@ -8,8 +8,8 @@ $tunnelkit_name = 'TunnelKit'
$tunnelkit_specs = ['Protocols/OpenVPN', 'Extra/LZO']
def shared_pods
pod_version $tunnelkit_name, $tunnelkit_specs, '~> 2.0.3'
#pod_git $tunnelkit_name, $tunnelkit_specs, 'e0ab2a1'
pod_version $tunnelkit_name, $tunnelkit_specs, '~> 2.0.5'
#pod_git $tunnelkit_name, $tunnelkit_specs, '1830695'
#pod_path $tunnelkit_name, $tunnelkit_specs, '..'
pod 'SSZipArchive'
end

View File

@ -1,24 +1,24 @@
PODS:
- MBProgressHUD (1.1.0)
- OpenSSL-Apple (1.1.0j.2)
- OpenSSL-Apple (1.1.0l.4)
- SSZipArchive (2.2.2)
- SwiftyBeaver (1.7.1)
- TunnelKit/AppExtension (2.0.3):
- SwiftyBeaver (1.8.0)
- TunnelKit/AppExtension (2.0.5):
- SwiftyBeaver
- TunnelKit/Core
- TunnelKit/Core (2.0.3):
- TunnelKit/Core (2.0.5):
- SwiftyBeaver
- TunnelKit/Extra/LZO (2.0.3)
- TunnelKit/Protocols/OpenVPN (2.0.3):
- OpenSSL-Apple (~> 1.1.0j.2)
- TunnelKit/Extra/LZO (2.0.5)
- TunnelKit/Protocols/OpenVPN (2.0.5):
- OpenSSL-Apple (~> 1.1.0j.4)
- TunnelKit/AppExtension
- TunnelKit/Core
DEPENDENCIES:
- MBProgressHUD
- SSZipArchive
- TunnelKit/Extra/LZO (~> 2.0.3)
- TunnelKit/Protocols/OpenVPN (~> 2.0.3)
- TunnelKit/Extra/LZO (~> 2.0.5)
- TunnelKit/Protocols/OpenVPN (~> 2.0.5)
SPEC REPOS:
https://github.com/cocoapods/specs.git:
@ -30,11 +30,11 @@ SPEC REPOS:
SPEC CHECKSUMS:
MBProgressHUD: e7baa36a220447d8aeb12769bf0585582f3866d9
OpenSSL-Apple: e88e1eb314acb4a05e2348069790c4aa49f6d319
OpenSSL-Apple: f3d1668588ea8f06b076dcfa6177cd90452e3800
SSZipArchive: fa16b8cc4cdeceb698e5e5d9f67e9558532fbf23
SwiftyBeaver: da5e573ad583586c18236324c36900990afe1733
TunnelKit: ce2ede930fd464042b4d4efba14ff1fb580d7519
SwiftyBeaver: f5c4c5f3e01b8fcb7dfcf13d23644eb886bf415d
TunnelKit: f33216415cd9d5e37b6acf02edb0c79350598b36
PODFILE CHECKSUM: 4af9b46c049c79e708cd982531a5c6cd0b8d3a25
PODFILE CHECKSUM: 2b800cbfc6e938892ac1e11ad27f4e3473593162
COCOAPODS: 1.7.5
COCOAPODS: 1.8.1

View File

@ -177,7 +177,6 @@ Website: [passepartoutvpn.app][about-website]
[app-net-windscribe]: https://secure.link/kCsD0prd
[dep-cocoapods]: https://guides.cocoapods.org/using/getting-started.html
[dep-jazzy]: https://github.com/realm/jazzy
[dep-brew]: https://brew.sh/
[dep-tunnelkit]: https://github.com/passepartoutvpn/tunnelkit
[dep-tunnelkit-ovpn]: https://github.com/passepartoutvpn/tunnelkit#support-for-ovpn-configuration

@ -1 +1 @@
Subproject commit 20bf1d97028775b7d3eb71730f4c046f9e8d3ba0
Subproject commit e0e96db9a99708c960ad0a412091a83681bc6607

View File

@ -1,5 +0,0 @@
#!/bin/sh
. .env.secret-deploy
SRC=$PROJECT_ROOT/api/v2
DST=$PROJECT_ROOT/passepartout-ios/Passepartout/Resources/Web
rm -rf $DST && cp -pr $SRC $DST

View File

@ -13,57 +13,63 @@
# Uncomment the line if you want fastlane to automatically update itself
# update_fastlane
default_platform(:ios)
build_description_path = "../ci/DESCRIPTION.md" # "../#{ENV["BUILD_DESCRIPTION_PATH"]}"
build_changelog_path = "../ci/CHANGELOG.md" # "../#{ENV["BUILD_CHANGELOG_PATH"]}"
beta_feedback_path = "../ci/beta-feedback.txt"
platform :ios do
desc "Archive a new build"
lane :create_archive do
ensure_git_status_clean
cocoapods
get_build_number
base_build_number = lane_context[SharedValues::BUILD_NUMBER].to_i
increment_build_number(
build_number: base_build_number + number_of_commits
)
match
gym
end
desc "Set build changelog"
lane :set_build_changelog do
lane_context[SharedValues::FL_CHANGELOG] = File.read("../#{ENV["BUILD_CHANGELOG_PATH"]}")
end
desc "Submit a build to App Center"
lane :dev_deploy do
set_build_changelog
appcenter_upload
end
desc "Submit a build to TestFlight"
lane :beta_deploy do
set_build_changelog
pilot(
beta_app_description: File.read("../#{ENV["BUILD_DESCRIPTION_PATH"]}")
)
end
desc "Update App Store metadata"
lane :update_metadata do
deliver(
skip_screenshots: true
)
end
desc "Update App Store screenshots"
lane :update_screenshots do
deliver(
skip_metadata: true
)
end
desc "Update provisioning profiles"
lane :update_provisioning do |options|
match(options)
end
desc "Prepare a new build"
lane :prepare_archive do
ensure_git_status_clean
cocoapods
get_build_number
base_build_number = lane_context[SharedValues::BUILD_NUMBER].to_i
increment_build_number(
build_number: base_build_number + number_of_commits
)
end
desc "Archive a new build"
lane :create_archive do
prepare_archive
match
gym
end
desc "Set build changelog"
lane :set_build_changelog do
lane_context[SharedValues::FL_CHANGELOG] = File.read(build_changelog_path)
end
desc "Submit a build to App Center"
lane :dev_deploy do
set_build_changelog
appcenter_upload
end
desc "Submit a build to TestFlight"
lane :beta_deploy do
set_build_changelog
pilot(
beta_app_description: File.read(build_description_path),
beta_app_feedback_email: File.read(beta_feedback_path)
)
end
desc "Update App Store metadata"
lane :update_metadata do
deliver(
skip_screenshots: true
)
end
desc "Update App Store screenshots"
lane :update_screenshots do
deliver(
skip_metadata: true
)
end
desc "Update provisioning profiles"
lane :update_provisioning do |options|
match(options)
end

View File

@ -10,11 +10,15 @@
# sdk "iphoneos9.0"
derived_data_path ENV["STAGE_BUILD_PATH"]
buildlog_path ENV["STAGE_BUILD_PATH"]
build_path ENV["STAGE_BUILD_PATH"]
output_directory ENV["STAGE_ARTIFACTS_PATH"]
output_name ENV["STAGE_ARCHIVE_NAME"]
build_target = ENV["TARGET"]
stage_build_path = "#{ENV["BUILD_PATH"]}/#{build_target}"
stage_artifacts_path = "#{ENV["DIST_PATH"]}/#{build_target}"
derived_data_path stage_build_path
buildlog_path stage_build_path
build_path stage_build_path
output_directory stage_artifacts_path
output_name ENV["APP_NAME"]
clean true
silent false