fastlane 2.118.0.beta.20190309200014 → 2.118.0.beta.20190310200100
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2a7f27ca3cbc60232a64042b967bf5b0f1fead5c
|
4
|
+
data.tar.gz: 56d5ad659ff4ef7260ab78b26f8640497f9076bf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c3909edc580b5bee7c5b6b3be4054ea7462c3c759b42e865c6d7bcff1f40dfef7e421dfb548f187d59f5921669132b8e26f67d2557a93080be9921ac3a55b882
|
7
|
+
data.tar.gz: ac3cc2664058b6e1d135b94773066b37cc909ef8cab13a916615f865cc05d3ca45335bd815834e09eb0778856d790d94a97007cc0fa063cb4863c35483ebd7f1
|
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
A new approach to iOS code signing: Share one code signing identity across your development team to simplify your codesigning setup and prevent code signing issues.
|
8
8
|
|
9
|
-
_match_ is the implementation of the https://codesigning.guide concept. _match_ creates all required certificates & provisioning profiles and stores them in a separate git repository. Every team member with access to the repo can use those credentials for code signing. _match_ also automatically repairs broken and expired credentials. It's the easiest way to share signing credentials across teams
|
9
|
+
_match_ is the implementation of the [https://codesigning.guide concept](https://codesigning.guide). _match_ creates all required certificates & provisioning profiles and stores them in a separate git repository. Every team member with access to the repo can use those credentials for code signing. _match_ also automatically repairs broken and expired credentials. It's the easiest way to share signing credentials across teams
|
10
10
|
|
11
11
|
[More information on how to get started with codesigning](https://docs.fastlane.tools/codesigning/getting-started/)
|
12
12
|
|
@@ -24,7 +24,7 @@ _match_ is the implementation of the https://codesigning.guide concept. _match_
|
|
24
24
|
|
25
25
|
## Why match?
|
26
26
|
|
27
|
-
Before starting to use _match_, make sure to read the [codesigning.guide](https://codesigning.guide)
|
27
|
+
Before starting to use _match_, make sure to read the [codesigning.guide](https://codesigning.guide):
|
28
28
|
|
29
29
|
> When deploying an app to the App Store, beta testing service or even installing it on a device, most development teams have separate code signing identities for every member. This results in dozens of profiles including a lot of duplicates.
|
30
30
|
|
@@ -34,6 +34,8 @@ Before starting to use _match_, make sure to read the [codesigning.guide](https:
|
|
34
34
|
|
35
35
|
> Share one code signing identity across your development team to simplify your setup and prevent code signing issues. What if there was a central place where your code signing identity and profiles are kept, so anyone in the team can access them during the build process?
|
36
36
|
|
37
|
+
For more information about the concept, visit [codesigning.guide](https://codesigning.guide).
|
38
|
+
|
37
39
|
### Why not let Xcode handle all this?
|
38
40
|
|
39
41
|
- You have full control over what happens
|
@@ -58,15 +60,12 @@ Before starting to use _match_, make sure to read the [codesigning.guide](https:
|
|
58
60
|
👥 | Support for multiple Apple accounts and multiple teams
|
59
61
|
✨ | Tightly integrated with [_fastlane_](https://fastlane.tools) to work seamlessly with [_gym_](https://docs.fastlane.tools/actions/gym/) and other build tools
|
60
62
|
|
61
|
-
For more information about the concept, visit [codesigning.guide](https://codesigning.guide).
|
62
|
-
|
63
63
|
## Usage
|
64
64
|
|
65
65
|
### Setup
|
66
66
|
|
67
|
-
1. Create a **new,
|
68
|
-
|
69
|
-
3. Run the following in your project folder to start using _match_:
|
67
|
+
1. Optional: Create a **new, shared Apple Developer Portal account**, something like `office@company.com`, that will be shared across your team from now on (for more information visit [codesigning.guide](https://codesigning.guide))
|
68
|
+
1. Run the following in your project folder to start using _match_:
|
70
69
|
|
71
70
|
```no-highlight
|
72
71
|
fastlane match init
|
@@ -74,13 +73,13 @@ fastlane match init
|
|
74
73
|
|
75
74
|
<img src="/img/actions/match_init.gif" width="550" />
|
76
75
|
|
77
|
-
You'll be asked if you want to store your code signing identities inside a Git repo
|
76
|
+
You'll be asked if you want to store your code signing identities inside a **Git repo**, or on **Google Cloud**.
|
78
77
|
|
79
78
|
#### Git Storage
|
80
79
|
|
81
80
|
Use Git Storage to store all code signing identities in a private git repo, owned and operated by you. The files will be encrypted using OpenSSL.
|
82
81
|
|
83
|
-
First, enter the URL to your Git repo.
|
82
|
+
First, enter the URL to your private (!) Git repo (You can create one for free on e.g. [GitHub](https://github.com/new) or [BitBucket](https://bitbucket.org/repo/create)). The URL you enter can be either a `https://` or a `git` URL. (If your machine is currently using SSH to authenticate with GitHub, you'll want to use a `git` URL, otherwise you may see an authentication error when you attempt to use match.) `fastlane match init` won't read or modify your certificates or profiles yet, and also won't validate your git URL.
|
84
83
|
|
85
84
|
This will create a `Matchfile` in your current directory (or in your `./fastlane/` folder).
|
86
85
|
|
@@ -107,6 +106,8 @@ google_cloud_bucket_name("major-key-certificates")
|
|
107
106
|
|
108
107
|
### Multiple teams
|
109
108
|
|
109
|
+
_match_ can store the codesigning files for multiple development teams:
|
110
|
+
|
110
111
|
#### Git Storage
|
111
112
|
|
112
113
|
Use one git branch per team. _match_ also supports storing certificates of multiple teams in one repo, by using separate git branches. If you work in multiple teams, make sure to set the `git_branch` parameter to a unique value per team. From there, _match_ will automatically create and use the specified branch for you.
|
@@ -136,7 +137,8 @@ fastlane match development
|
|
136
137
|
|
137
138
|
<img src="/img/actions/match_appstore_small.gif" width="550" />
|
138
139
|
|
139
|
-
This will create a new certificate and provisioning profile (if required) and store them in your selected storage.
|
140
|
+
This will create a new certificate and provisioning profile (if required) and store them in your selected storage.
|
141
|
+
If you previously ran _match_ with the configured storage it will automatically install the existing profiles from your storage.
|
140
142
|
|
141
143
|
The provisioning profiles are installed in `~/Library/MobileDevice/Provisioning Profiles` while the certificates and private keys are installed in your Keychain.
|
142
144
|
|
@@ -154,7 +156,9 @@ fastlane action match
|
|
154
156
|
|
155
157
|
#### Handle multiple targets
|
156
158
|
|
157
|
-
|
159
|
+
_match_ can use the same one Git repository or Google Cloud Storage for all bundle identifiers.
|
160
|
+
|
161
|
+
If you have several targets with different bundle identifiers, supply them as a comma-separated list:
|
158
162
|
|
159
163
|
```no-highlight
|
160
164
|
fastlane match appstore -a tools.fastlane.app,tools.fastlane.app.watchkitapp
|
@@ -164,11 +168,11 @@ You can make this even easier using [_fastlane_](https://fastlane.tools) by crea
|
|
164
168
|
|
165
169
|
```ruby
|
166
170
|
lane :certificates do
|
167
|
-
match(app_identifier: ["
|
171
|
+
match(app_identifier: ["tools.fastlane.app", "tools.fastlane.app.watchkitapp"])
|
168
172
|
end
|
169
173
|
```
|
170
174
|
|
171
|
-
Then all your team has to do is `fastlane certificates` and keys,
|
175
|
+
Then all your team has to do is run `fastlane certificates` and the keys, certificates and profiles for all targets will be synced.
|
172
176
|
|
173
177
|
#### Handle multiple apps per developer/distribution certificate
|
174
178
|
|
@@ -189,17 +193,17 @@ _match_ will reuse certificates and will create separate provisioning profiles f
|
|
189
193
|
|
190
194
|
When running _match_ for the first time on a new machine, it will ask you for the passphrase for the Git repository. This is an additional layer of security: each of the files will be encrypted using `openssl`. Make sure to remember the password, as you'll need it when you run match on a different machine.
|
191
195
|
|
192
|
-
To set the passphrase to decrypt your profiles using an environment variable
|
196
|
+
To set the passphrase to decrypt your profiles using an environment variable (and avoid the prompt) use `MATCH_PASSWORD`.
|
193
197
|
|
194
198
|
#### Migrate from Git Repo to Google Cloud
|
195
199
|
|
196
|
-
If you're already using a Git Repo, but would like to switch to using Google Cloud Storage,
|
200
|
+
If you're already using a Git Repo, but would like to switch to using Google Cloud Storage, run the following command to automatically migrate all your existing code signing identities and provisioning profiles
|
197
201
|
|
198
202
|
```no-highlight
|
199
203
|
fastlane match migrate
|
200
204
|
```
|
201
205
|
|
202
|
-
After a successful migration you can safely delete your
|
206
|
+
After a successful migration you can safely delete your Git repo.
|
203
207
|
|
204
208
|
#### Google Cloud access control
|
205
209
|
|
@@ -325,16 +329,6 @@ If you're not using _fastlane_, you can also use the `force_for_new_devices` opt
|
|
325
329
|
fastlane match adhoc --force_for_new_devices
|
326
330
|
```
|
327
331
|
|
328
|
-
##### Multiple Targets
|
329
|
-
|
330
|
-
If your app has multiple targets (e.g. Today Widget or watchOS Extension)
|
331
|
-
|
332
|
-
```ruby
|
333
|
-
match(app_identifier: ["tools.fastlane.app", "tools.fastlane.app.today_widget"], type: "appstore")
|
334
|
-
```
|
335
|
-
|
336
|
-
_match_ can use the same one Git repository or Google Cloud Storage for all bundle identifiers.
|
337
|
-
|
338
332
|
##### Templates (aka: custom entitlements)
|
339
333
|
|
340
334
|
Match can generate profiles that contain custom entitlements by passing in the entitlement's name with the `template_name` parameter.
|
@@ -35,6 +35,14 @@ module Fastlane
|
|
35
35
|
command << "--use-libraries"
|
36
36
|
end
|
37
37
|
|
38
|
+
if params[:skip_import_validation]
|
39
|
+
command << "--skip-import-validation"
|
40
|
+
end
|
41
|
+
|
42
|
+
if params[:skip_tests]
|
43
|
+
command << "--skip-tests"
|
44
|
+
end
|
45
|
+
|
38
46
|
if params[:verbose]
|
39
47
|
command << "--verbose"
|
40
48
|
end
|
@@ -56,7 +64,7 @@ module Fastlane
|
|
56
64
|
[
|
57
65
|
FastlaneCore::ConfigItem.new(key: :use_bundle_exec,
|
58
66
|
description: "Use bundle exec when there is a Gemfile presented",
|
59
|
-
|
67
|
+
type: Boolean,
|
60
68
|
default_value: false),
|
61
69
|
FastlaneCore::ConfigItem.new(key: :path,
|
62
70
|
description: "The Podspec you want to push",
|
@@ -71,11 +79,11 @@ module Fastlane
|
|
71
79
|
FastlaneCore::ConfigItem.new(key: :allow_warnings,
|
72
80
|
description: "Allow warnings during pod push",
|
73
81
|
optional: true,
|
74
|
-
|
82
|
+
type: Boolean),
|
75
83
|
FastlaneCore::ConfigItem.new(key: :use_libraries,
|
76
84
|
description: "Allow lint to use static libraries to install the spec",
|
77
85
|
optional: true,
|
78
|
-
|
86
|
+
type: Boolean),
|
79
87
|
FastlaneCore::ConfigItem.new(key: :sources,
|
80
88
|
description: "The sources of repos you want the pod spec to lint with, separated by commas",
|
81
89
|
optional: true,
|
@@ -88,10 +96,18 @@ module Fastlane
|
|
88
96
|
description: "The SWIFT_VERSION that should be used to lint the spec. This takes precedence over a .swift-version file",
|
89
97
|
optional: true,
|
90
98
|
is_string: true),
|
99
|
+
FastlaneCore::ConfigItem.new(key: :skip_import_validation,
|
100
|
+
description: "Lint skips validating that the pod can be imported",
|
101
|
+
optional: true,
|
102
|
+
type: Boolean),
|
103
|
+
FastlaneCore::ConfigItem.new(key: :skip_tests,
|
104
|
+
description: "Lint skips building and running tests during validation",
|
105
|
+
optional: true,
|
106
|
+
type: Boolean),
|
91
107
|
FastlaneCore::ConfigItem.new(key: :verbose,
|
92
108
|
description: "Show more debugging information",
|
93
109
|
optional: true,
|
94
|
-
|
110
|
+
type: Boolean,
|
95
111
|
default_value: false)
|
96
112
|
]
|
97
113
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
module Fastlane
|
2
|
-
VERSION = '2.118.0.beta.
|
2
|
+
VERSION = '2.118.0.beta.20190310200100'.freeze
|
3
3
|
DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
|
4
4
|
MINIMUM_XCODE_RELEASE = "7.0".freeze
|
5
5
|
RUBOCOP_REQUIREMENT = '0.49.1'.freeze
|
data/sigh/lib/assets/resign.sh
CHANGED
@@ -66,6 +66,9 @@
|
|
66
66
|
# new features January 2019
|
67
67
|
# 1. fixed bug where the com.apple.icloud-container-environment entitlement was being assigned an incorrect value
|
68
68
|
#
|
69
|
+
# new features March 2019
|
70
|
+
# 1. two more fixes for only creating the archived-expanded-entitlements.xcent file if the version of Xcode < 9.3 as Xcode 10 does not create it.
|
71
|
+
#
|
69
72
|
|
70
73
|
# Logging functions
|
71
74
|
|
@@ -589,7 +592,10 @@ function resign {
|
|
589
592
|
|
590
593
|
log "Resigning application using certificate: '$CERTIFICATE'"
|
591
594
|
log "and entitlements: $ENTITLEMENTS"
|
592
|
-
|
595
|
+
if [[ "${XCODE_VERSION/.*/}" -lt 10 ]]; then
|
596
|
+
log "Creating an archived-expanded-entitlements.xcent file for Xcode 9 builds or earlier"
|
597
|
+
cp -f "$ENTITLEMENTS" "$APP_PATH/archived-expanded-entitlements.xcent"
|
598
|
+
fi
|
593
599
|
/usr/bin/codesign ${VERBOSE} -f -s "$CERTIFICATE" --entitlements "$ENTITLEMENTS" "$APP_PATH"
|
594
600
|
checkStatus
|
595
601
|
elif [[ -n "${USE_APP_ENTITLEMENTS}" ]]; then
|
@@ -816,7 +822,10 @@ function resign {
|
|
816
822
|
log "Resigning application using certificate: '$CERTIFICATE'"
|
817
823
|
log "and patched entitlements:"
|
818
824
|
log "$(cat "$PATCHED_ENTITLEMENTS")"
|
819
|
-
|
825
|
+
if [[ "${XCODE_VERSION/.*/}" -lt 10 ]]; then
|
826
|
+
log "Creating an archived-expanded-entitlements.xcent file for Xcode 9 builds or earlier"
|
827
|
+
cp -f "$PATCHED_ENTITLEMENTS" "$APP_PATH/archived-expanded-entitlements.xcent"
|
828
|
+
fi
|
820
829
|
/usr/bin/codesign ${VERBOSE} -f -s "$CERTIFICATE" --entitlements "$PATCHED_ENTITLEMENTS" "$APP_PATH"
|
821
830
|
checkStatus
|
822
831
|
else
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.118.0.beta.
|
4
|
+
version: 2.118.0.beta.20190310200100
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jimmy Dee
|
@@ -27,7 +27,7 @@ authors:
|
|
27
27
|
autorequire:
|
28
28
|
bindir: bin
|
29
29
|
cert_chain: []
|
30
|
-
date: 2019-03-
|
30
|
+
date: 2019-03-10 00:00:00.000000000 Z
|
31
31
|
dependencies:
|
32
32
|
- !ruby/object:Gem::Dependency
|
33
33
|
name: slack-notifier
|
@@ -1687,24 +1687,24 @@ metadata:
|
|
1687
1687
|
post_install_message:
|
1688
1688
|
rdoc_options: []
|
1689
1689
|
require_paths:
|
1690
|
+
- produce/lib
|
1691
|
+
- match/lib
|
1692
|
+
- fastlane_core/lib
|
1693
|
+
- cert/lib
|
1690
1694
|
- supply/lib
|
1691
|
-
- screengrab/lib
|
1692
1695
|
- spaceship/lib
|
1693
|
-
-
|
1694
|
-
- sigh/lib
|
1696
|
+
- precheck/lib
|
1695
1697
|
- snapshot/lib
|
1696
|
-
-
|
1698
|
+
- scan/lib
|
1697
1699
|
- pem/lib
|
1698
|
-
-
|
1700
|
+
- pilot/lib
|
1699
1701
|
- deliver/lib
|
1700
|
-
- gym/lib
|
1701
1702
|
- fastlane/lib
|
1702
|
-
-
|
1703
|
-
-
|
1704
|
-
-
|
1705
|
-
- fastlane_core/lib
|
1703
|
+
- screengrab/lib
|
1704
|
+
- sigh/lib
|
1705
|
+
- gym/lib
|
1706
1706
|
- credentials_manager/lib
|
1707
|
-
-
|
1707
|
+
- frameit/lib
|
1708
1708
|
required_ruby_version: !ruby/object:Gem::Requirement
|
1709
1709
|
requirements:
|
1710
1710
|
- - ">="
|