sigh 1.2.2 → 1.3.0

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: 30b235b99437637cdff9c2803be57b0369e91e24
4
- data.tar.gz: 0536c7e175e49a65342211d45b8ab7aac708587c
3
+ metadata.gz: 967ededb8169f8a0771e37d422d19875de5750a0
4
+ data.tar.gz: f8513c6e171c78e8d9d3327a477174939322eee2
5
5
  SHA512:
6
- metadata.gz: b37eac7871a84054c390e18c9d0ebe62fdf1d542fa6f634ed5351f6a670d3b1b549482bdcc23ea34c87b31a5a899ab28816b190c91616b7ddece4f6e99c8fb44
7
- data.tar.gz: 292c8bec8c07b0e454ad98617ab87b6311ffd9b98adefb1e9d07390f39e53ebaf8a05e226096874f55777d701b5c8a38e87f070746c74977c4dc7cfc39322089
6
+ metadata.gz: d6c0333740d3489f347e07f5124fdc488c4c9bfdd879863a2dbb83c20d9722c534c242602ce9773581bb575b2df68ea132e4ea3e91c211596d644e72189135f2
7
+ data.tar.gz: c9bae3d4c703a9290eee7a886aecf4fad311121c691e24bb1267fb153956daf79748727eeb7592e40680ee7d7c9187cc902776e9b3ca211a4aea0f3c10f69f15
data/README.md CHANGED
@@ -82,6 +82,9 @@ See ```sigh``` in action:
82
82
  ![assets/sighRecording.gif](assets/sighRecording.gif)
83
83
 
84
84
  # Installation
85
+
86
+ **Note**: It is recommended to use [match](https://github.com/fastlane/match) according to the [codesigning.guide](https://codesigning.guide) for generating and maintaining your provisioning profiles. Use `sigh` directly only if you want full control over what's going on and know more about codesigning.
87
+
85
88
  sudo gem install sigh
86
89
 
87
90
  Make sure, you have the latest version of the Xcode command line tools installed:
data/lib/sigh/resign.rb CHANGED
@@ -5,17 +5,17 @@ module Sigh
5
5
  class Resign
6
6
  def run(options, args)
7
7
  # get the command line inputs and parse those into the vars we need...
8
- ipa, signing_identity, provisioning_profiles = get_inputs(options, args)
9
8
 
9
+ ipa, signing_identity, provisioning_profiles, entitlements = get_inputs(options, args)
10
10
  # ... then invoke our programmatic interface with these vars
11
- resign(ipa, signing_identity, provisioning_profiles)
11
+ resign(ipa, signing_identity, provisioning_profiles, entitlements)
12
12
  end
13
13
 
14
- def self.resign(ipa, signing_identity, provisioning_profiles)
15
- self.new.resign(ipa, signing_identity, provisioning_profiles)
14
+ def self.resign(ipa, signing_identity, provisioning_profiles, entitlements)
15
+ self.new.resign(ipa, signing_identity, provisioning_profiles, entitlements)
16
16
  end
17
17
 
18
- def resign(ipa, signing_identity, provisioning_profiles)
18
+ def resign(ipa, signing_identity, provisioning_profiles, entitlements)
19
19
  resign_path = find_resign_path
20
20
  signing_identity = find_signing_identity(signing_identity)
21
21
 
@@ -25,7 +25,7 @@ module Sigh
25
25
 
26
26
  # validate that we have valid values for all these params, we don't need to check signing_identity because `find_signing_identity` will only ever return a valid value
27
27
  validate_params(resign_path, ipa, provisioning_profiles)
28
-
28
+ entitlements = "-e #{entitlements}" if entitlements
29
29
  provisioning_options = provisioning_profiles.map { |fst, snd| "-p #{[fst, snd].compact.map(&:shellescape).join('=')}" }.join(' ')
30
30
 
31
31
  command = [
@@ -33,6 +33,7 @@ module Sigh
33
33
  ipa.shellescape,
34
34
  signing_identity.shellescape,
35
35
  provisioning_options, # we are aleady shellescaping this above, when we create the provisioning_options from the provisioning_profiles
36
+ entitlements,
36
37
  ipa.shellescape
37
38
  ].join(' ')
38
39
 
@@ -52,8 +53,9 @@ module Sigh
52
53
  ipa = args.first || find_ipa || ask('Path to ipa file: ')
53
54
  signing_identity = options.signing_identity || ask_for_signing_identity
54
55
  provisioning_profiles = options.provisioning_profile || find_provisioning_profile || ask('Path to provisioning file: ')
56
+ entitlements = options.entitlements || find_entitlements
55
57
 
56
- return ipa, signing_identity, provisioning_profiles
58
+ return ipa, signing_identity, provisioning_profiles, entitlements
57
59
  end
58
60
 
59
61
  def find_resign_path
@@ -68,6 +70,10 @@ module Sigh
68
70
  Dir[File.join(Dir.pwd, '*.mobileprovision')].sort { |a, b| File.mtime(a) <=> File.mtime(b) }.first
69
71
  end
70
72
 
73
+ def find_entitlements
74
+ Dir[File.join(Dir.pwd, '*.entitlements')].sort { |a, b| File.mtime(a) <=> File.mtime(b) }.first
75
+ end
76
+
71
77
  def find_signing_identity(signing_identity)
72
78
  until installed_identies.include?(signing_identity)
73
79
  Helper.log.error "Couldn't find signing identity '#{signing_identity}'."
data/lib/sigh/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Sigh
2
- VERSION = "1.2.2"
2
+ VERSION = "1.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sigh
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.2
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-12 00:00:00.000000000 Z
11
+ date: 2016-01-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fastlane_core
@@ -176,14 +176,14 @@ dependencies:
176
176
  requirements:
177
177
  - - "~>"
178
178
  - !ruby/object:Gem::Version
179
- version: '0.34'
179
+ version: 0.35.1
180
180
  type: :development
181
181
  prerelease: false
182
182
  version_requirements: !ruby/object:Gem::Requirement
183
183
  requirements:
184
184
  - - "~>"
185
185
  - !ruby/object:Gem::Version
186
- version: '0.34'
186
+ version: 0.35.1
187
187
  description: Because you would rather spend your time building stuff than fighting
188
188
  provisioning
189
189
  email: