sigh 0.3.4 → 0.3.5

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: 1f42e282f190c126b2e2698b8294f64ead5b52ba
4
- data.tar.gz: 77fc2e97b0a314183bd0cfdc7ba537f866dfbe01
3
+ metadata.gz: 5018f22e6ad8a3bfa5abdc11ebe01ef8d2239ca3
4
+ data.tar.gz: 9c2429680ceaf4303f1886ddb310b0363bafdb03
5
5
  SHA512:
6
- metadata.gz: b2b4dff8c89d996764cb0a28f105c6a4f48c91a2b78b1307463b21842a4b0b7bb895ed1a9a660573733118d3cfe28e767cfb3d21e8d4e54cd744587a0a2c4322
7
- data.tar.gz: e6fcf9e4b4a32d8e0905ad46a844c150c3387e8b6449d8491ab8314d4d53bce796adb07a40345468f57fbe62ddab052aaafff889ac9ae64050914d8b24d55c4b
6
+ metadata.gz: 5046a1d9413148b4a56cd78cac1136b047a0c2db807c8b829bf034c903e7e43eac3c076e8e509ad566e216f1e52b3a7f829ca55088573114b0a7815446332db7
7
+ data.tar.gz: 9de2b40769911d889e650f22e28806c5d6d364f742d7f330f1132cb0198c5e20e312c6dd5307b88b97494bb79e41e782be2114ac2d0fed82ab9c70ad26f594ff
data/README.md CHANGED
@@ -12,7 +12,8 @@
12
12
  <a href="https://github.com/KrauseFx/PEM">PEM</a> &bull;
13
13
  <b>sigh</b> &bull;
14
14
  <a href="https://github.com/KrauseFx/produce">produce</a> &bull;
15
- <a href="https://github.com/KrauseFx/cert">cert</a>
15
+ <a href="https://github.com/KrauseFx/cert">cert</a> &bull;
16
+ <a href="https://github.com/KrauseFx/codes">codes</a>
16
17
  </p>
17
18
  -------
18
19
 
@@ -29,14 +30,10 @@ sigh
29
30
 
30
31
  ###### Because you would rather spend your time building stuff than fighting provisioning
31
32
 
32
- Tired of manually creating, renewing and downloading your iOS provisioning profiles?
33
-
34
- ```sigh``` handles all that for you. Just run ```sigh``` and it will do the rest.
33
+ `sigh` can create, renew, download and repair provisioning profiles (with one command). It supports App Store, Ad Hoc, Development and Enterprise profiles and supports nice features, like auto-adding all test devices.
35
34
 
36
35
  Get in contact with the developer on Twitter: [@KrauseFx](https://twitter.com/KrauseFx)
37
36
 
38
-
39
-
40
37
  -------
41
38
  <p align="center">
42
39
  <a href="#features">Features</a> &bull;
@@ -66,6 +63,8 @@ Get in contact with the developer on Twitter: [@KrauseFx](https://twitter.com/Kr
66
63
 
67
64
  To automate iOS Push profiles you can use [PEM](https://github.com/KrauseFx/PEM).
68
65
 
66
+ ##### [Like this tool? Be the first to know about updates and new fastlane tools](https://tinyletter.com/krausefx)
67
+
69
68
  ### Why not let Xcode do the work?
70
69
 
71
70
  - ```sigh``` can easily be integrated into your CI-server (e.g. Jenkins)
@@ -149,6 +148,7 @@ In case you prefer environment variables:
149
148
  - `SIGH_APP_IDENTIFIER`
150
149
  - `SIGH_TEAM_ID` (The Team ID, e.g. `Q2CBPK58CA`)
151
150
  - `SIGH_DISABLE_OPEN_ERROR` - in case of error, `sigh` won't open Preview with a screenshot of the error when this variable is set.
151
+ - `SIGH_PROVISIONING_PROFILE_NAME` (set a custom name for the name of the generated file)
152
152
 
153
153
  Choose signing certificate to use:
154
154
 
@@ -156,7 +156,9 @@ Choose signing certificate to use:
156
156
  - `SIGH_CERTIFICATE_ID` (The ID of the certificate)
157
157
  - `SIGH_CERTIFICATE_EXPIRE_DATE` (The expire date of the certificate)
158
158
 
159
- If you're using [cert](https://github.com/KrauseFx/cert) in combination with [fastlane](https://github.com/KrauseFx/fastlane) the signing certificate will automatically be selected for you.
159
+ If you're using [cert](https://github.com/KrauseFx/cert) in combination with [fastlane](https://github.com/KrauseFx/fastlane) the signing certificate will automatically be selected for you. (make sure to run `cert` before `sigh`)
160
+
161
+ `sigh` will store the `UDID` of the generated provisioning profile in the environment: `SIGH_UDID`.
160
162
 
161
163
  # How does it work?
162
164
 
@@ -176,6 +178,9 @@ If you're using [cert](https://github.com/KrauseFx/cert) in combination with [fa
176
178
  - [`PEM`](https://github.com/KrauseFx/pem): Automatically generate and renew your push notification profiles
177
179
  - [`produce`](https://github.com/KrauseFx/produce): Create new iOS apps on iTunes Connect and Dev Portal using the command line
178
180
  - [`cert`](https://github.com/KrauseFx/cert): Automatically create and maintain iOS code signing certificates
181
+ - [`codes`](https://github.com/KrauseFx/codes): Create promo codes for iOS Apps using the command line
182
+
183
+ ##### [Like this tool? Be the first to know about updates and new fastlane tools](https://tinyletter.com/krausefx)
179
184
 
180
185
  ## Use the 'Provisioning Quicklook plugin'
181
186
  Download and install the [Provisioning Plugin](https://github.com/chockenberry/Provisioning).
@@ -22,9 +22,17 @@ module FastlaneCore
22
22
  output_path = File.join(TMP_FOLDER, cert_name)
23
23
  File.write(output_path, cert)
24
24
 
25
+ store_provisioning_id_in_environment(output_path) unless ENV["SIGH_SKIP_ANALYSER"]
26
+
25
27
  return output_path
26
28
  end
27
29
 
30
+ def store_provisioning_id_in_environment(path)
31
+ require 'sigh/profile_analyser'
32
+ udid = Sigh::ProfileAnalyser.run(path)
33
+ ENV["SIGH_UDID"] = udid if udid
34
+ end
35
+
28
36
  def maintain_app_certificate(app_identifier, type, force)
29
37
  begin
30
38
  if type == DEVELOPMENT
@@ -159,7 +167,8 @@ module FastlaneCore
159
167
 
160
168
  # 5) Choose a profile name
161
169
  wait_for_elements('.distributionType')
162
- profile_name = [app_identifier, type].join(' ')
170
+ profile_name = ENV["SIGH_PROVISIONING_PROFILE_NAME"]
171
+ profile_name ||= [app_identifier, type].join(' ')
163
172
  fill_in "provisioningProfileName", with: profile_name
164
173
  click_next
165
174
  wait_for_elements('.row-details')
@@ -0,0 +1,15 @@
1
+ require 'plist'
2
+
3
+ module Sigh
4
+ class ProfileAnalyser
5
+ def self.run(path)
6
+ plist = Plist::parse_xml(`security cms -D -i #{path}`)
7
+ if plist.count > 10
8
+ Helper.log.info("Provisioning profile of app '#{plist['AppIDName']}' with the name '#{plist['Name']}' successfully generated and analysed.".green)
9
+ return plist["UUID"]
10
+ else
11
+ Helper.log.error("Error parsing provisioning profile at path '#{path}'".red)
12
+ end
13
+ end
14
+ end
15
+ end
data/lib/sigh/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Sigh
2
- VERSION = "0.3.4"
2
+ VERSION = "0.3.5"
3
3
  end
metadata CHANGED
@@ -1,29 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sigh
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.4
4
+ version: 0.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-19 00:00:00.000000000 Z
11
+ date: 2015-02-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fastlane_core
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 0.2.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ~>
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: 0.2.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: plist
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 3.1.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: 3.1.0
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: bundler
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -139,6 +153,7 @@ files:
139
153
  - lib/sigh/dependency_checker.rb
140
154
  - lib/sigh/developer_center.rb
141
155
  - lib/sigh/developer_center_signing.rb
156
+ - lib/sigh/profile_analyser.rb
142
157
  - lib/sigh/resign.rb
143
158
  - lib/sigh/version.rb
144
159
  homepage: http://fastlane.tools