provise 0.0.1 → 0.0.2

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: dad5d5179c3d1afd36717680f63598e85615a50f
4
+ data.tar.gz: 78724260ae17944dbc304ce676a55ed69d85d99e
5
+ SHA512:
6
+ metadata.gz: 0c13af65294834c4384e8548d84dae8f50456743664fea0042440a4bf6dfbf4904842189554f017dab178cae7827cf80f5ad8515fefc92e626c963fac9c4585f
7
+ data.tar.gz: 21ba826923263546288d59829afc4fc98b7bd5286fa29e795df9d2ecbb3bd8a4e0f4904178fd1f3080e172ea0e8ffb76ec276dd8d36f821315e0e50c380a0a22
data/Gemfile CHANGED
@@ -1,3 +1,3 @@
1
- source :rubygems
1
+ source "https://rubygems.org"
2
2
 
3
3
  gemspec
data/Gemfile.lock CHANGED
@@ -1,15 +1,15 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- provise (0.0.1)
4
+ provise (0.0.2)
5
5
  commander (~> 4.1.2)
6
6
 
7
7
  GEM
8
- remote: http://rubygems.org/
8
+ remote: https://rubygems.org/
9
9
  specs:
10
- commander (4.1.2)
10
+ commander (4.1.6)
11
11
  highline (~> 1.6.11)
12
- highline (1.6.15)
12
+ highline (1.6.21)
13
13
 
14
14
  PLATFORMS
15
15
  ruby
data/README.md CHANGED
@@ -1,18 +1,53 @@
1
- # provise
1
+ # Provise
2
2
 
3
3
  CLI used to change the provisioning profile of an iOS App (.ipa file). Also makes possible changing the bundle identifier if the new provisioning has a different one.
4
4
 
5
5
  ## Installation
6
-
7
- $ gem install provise
6
+ ```
7
+ $ gem install provise
8
+ ```
8
9
 
9
10
  ## Usage
10
11
 
11
12
  To simply change the provisioning
12
13
 
13
- $ resign ipa -i Application.ipa -p foo/bar.mobileprovision -c \"iPhone Distribution: Bla Bla\"
14
-
14
+ ```
15
+ $ resign ipa -i Application.ipa -p foo/bar.mobileprovision -c \"iPhone Distribution: Bla Bla\"
16
+ ```
17
+
15
18
  To change the peovisionig and also the bundle identifier
19
+ ```
20
+ $ resign ipa -i Application.ipa -p foo/bar.mobileprovision -c "iPhone Distribution: Bla Bla" -b br.com.new.bundle.identifier
21
+ ```
22
+
23
+ Help
24
+
25
+ ```
26
+ $ resign ipa --help
27
+ ```
28
+
29
+ ## Reference
30
+
31
+ Based on Erik's (http://stackoverflow.com/users/487353/erik) original answer at
32
+ http://stackoverflow.com/a/6921689/429521
33
+
34
+
35
+ ## Changelog
36
+
37
+ - **0.0.2**
38
+ - Added bundle version and entitlements file parameters (thanks [eilers](https://github.com/eilers))
39
+ - **0.0.1**
40
+ - Initial release
41
+
42
+ ## Contact
43
+
44
+ Felipe Sabino
45
+
46
+ - http://github.com/felipesabino
47
+ - http://twitter.com/felipesabino
48
+ - http://stackoverflow.com/users/429521/felipe-sabino
49
+ - felipe@sabino.me
16
50
 
17
- $ resign ipa -i Application.ipa -p foo/bar.mobileprovision -c "iPhone Distribution: Bla Bla" -b br.com.new.bundle.identifier
51
+ ## License
18
52
 
53
+ Provise is available under the MIT license. See the LICENSE file for more info.
data/lib/provise.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Provise
2
- VERSION = '0.0.1'
2
+ VERSION = '0.0.2'
3
3
  end
@@ -11,6 +11,9 @@ command :ipa do |c|
11
11
  c.option '-p', '--provisioning PROVISIONING', 'Path to the provisioning profile file (generally a .mobileprovision file)'
12
12
  c.option '-c', '--certificate CERTIFICATE', 'Name of the Distribution Certificate name (copy it from Certificate detail\'s "Common name" at the Keychain Access)'
13
13
  c.option '-b', '--bundle BUNDLE', 'The new bundle identifier in case your new provisioning has a differente one'
14
+ c.option '--bundleVersionShort VERSIONSHORT', 'The new release version (CFBundleShortVersionString)'
15
+ c.option '--bundleVersion VERSION', 'The new build version (CFBundleVersion)'
16
+ c.option '--entitlementFile FILE', 'The new entitlement used for creating the signatures'
14
17
  c.option '-q', '--quiet', 'Supress warnings and info messages'
15
18
 
16
19
  c.action do |args, options|
@@ -21,6 +24,9 @@ command :ipa do |c|
21
24
  @provisioning_path = options.provisioning
22
25
  @certificate_name = options.certificate
23
26
  @new_bundle_identifier = options.bundle
27
+ @version_short = options.bundleVersionShort
28
+ @bundle_version = options.bundleVersion
29
+ @entitlement_file = options.entitlementFile;
24
30
 
25
31
  return unless validate_params!
26
32
 
@@ -43,11 +49,27 @@ command :ipa do |c|
43
49
  system "/usr/libexec/PlistBuddy -c \"Set :CFBundleIdentifier #{@new_bundle_identifier}\" #{@tmp_dir}/Payload/*.app/Info.plist"
44
50
  end
45
51
 
52
+ if @version_short
53
+ say "Changing CFBundleShortVersionString to #{@version_short}" unless options.quiet
54
+ system "/usr/libexec/PlistBuddy -c \"Set :CFBundleShortVersionString #{@version_short}\" #{@tmp_dir}/Payload/*.app/Info.plist"
55
+ end
56
+
57
+ if @bundle_version
58
+ say "Changing CFBundleVersion to #{@bundle_version}" unless options.quiet
59
+ system "/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion #{@bundle_version}\" #{@tmp_dir}/Payload/*.app/Info.plist"
60
+ end
61
+
62
+ @entitlement_parameter = "";
63
+ if @entitlement_file
64
+ say "Using entitlement file: #{@entitlement_file}" unless options.quiet
65
+ @entitlement_parameter = "--entitlements \"#{@entitlement_file}\""
66
+ end
67
+
46
68
  say "Replacing provisioning profile" unless options.quiet
47
69
  system "cp #{@provisioning_path} #{@tmp_dir}/Payload/*.app/embedded.mobileprovision"
48
70
 
49
71
  say "Replacing existing signatures" unless options.quiet
50
- system "/usr/bin/codesign -f -s \"#{@certificate_name}\" --resource-rules #{@tmp_dir}/Payload/*.app/ResourceRules.plist #{@tmp_dir}/Payload/*.app"
72
+ system "/usr/bin/codesign -f -s \"#{@certificate_name}\" #{@entitlement_parameter} --resource-rules #{@tmp_dir}/Payload/*.app/ResourceRules.plist #{@tmp_dir}/Payload/*.app"
51
73
 
52
74
 
53
75
  new_ipa_file = "#{@ipa_filename}.resigned.ipa"
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: provise
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
5
- prerelease:
4
+ version: 0.0.2
6
5
  platform: ruby
7
6
  authors:
8
7
  - Felipe Sabino
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-12-08 00:00:00.000000000 Z
11
+ date: 2014-05-16 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: commander
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
@@ -47,32 +44,25 @@ files:
47
44
  - provise.gemspec
48
45
  homepage: ''
49
46
  licenses: []
47
+ metadata: {}
50
48
  post_install_message:
51
49
  rdoc_options: []
52
50
  require_paths:
53
51
  - lib
54
52
  required_ruby_version: !ruby/object:Gem::Requirement
55
- none: false
56
53
  requirements:
57
- - - ! '>='
54
+ - - '>='
58
55
  - !ruby/object:Gem::Version
59
56
  version: '0'
60
- segments:
61
- - 0
62
- hash: 1835449240709771196
63
57
  required_rubygems_version: !ruby/object:Gem::Requirement
64
- none: false
65
58
  requirements:
66
- - - ! '>='
59
+ - - '>='
67
60
  - !ruby/object:Gem::Version
68
61
  version: '0'
69
- segments:
70
- - 0
71
- hash: 1835449240709771196
72
62
  requirements: []
73
63
  rubyforge_project:
74
- rubygems_version: 1.8.24
64
+ rubygems_version: 2.2.2
75
65
  signing_key:
76
- specification_version: 3
66
+ specification_version: 4
77
67
  summary: Re-sign iOS Apps (.ipa files)
78
68
  test_files: []