build: fastlane setup
- Adds a configuration called 'Development' to the project, which uses
manual signing
- Changes the 'Release' configuration to use manual signing
- Adds support for fastlane automation.
This commit adds 2 lanes:
- 'test' uses scan to build and run unit tests on the client
- 'build' unlocks the system's keychain, uses match to sync the
development certificate and provisioning profile with a private git
repo, then uses gym to build the development configuration of the
xcode project
- Adds a .gitignore to Ring/fastlane for undesired fastlane related files
Change-Id: I1bc0eb8cfa20cc536c297ba7ae14292cc66e1d96
diff --git a/Ring/fastlane/Fastfile b/Ring/fastlane/Fastfile
new file mode 100644
index 0000000..bbe0982
--- /dev/null
+++ b/Ring/fastlane/Fastfile
@@ -0,0 +1,47 @@
+# Customise this file, documentation can be found here:
+# https://github.com/fastlane/fastlane/tree/master/fastlane/docs
+# All available actions: https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Actions.md
+# can also be listed using the `fastlane actions` command
+
+# Change the syntax highlighting to Ruby
+# All lines starting with a # are ignored when running `fastlane`
+
+# If you want to automatically update fastlane if a new version is available:
+# update_fastlane
+
+# This is the minimum version number required.
+# Update this, if you use features of a newer version
+fastlane_version "2.68.0"
+
+default_platform :ios
+
+platform :ios do
+ desc "Runs all the tests"
+ lane :test do
+ scan
+ end
+
+ desc "Test build without packaging"
+ lane :build do
+ unlock_keychain
+ match(
+ force: true,
+ type: "development"
+ )
+ gym(
+ scheme: "Ring",
+ clean: true,
+ configuration: "Development",
+ export_method: 'development',
+ skip_package_ipa: true
+ )
+ end
+
+ after_all do |lane|
+ # This block is called, only if the executed lane was successful
+ end
+
+ error do |lane, exception|
+ # This block is called, only if the executed lane has failed
+ end
+end