produce 1.1.2 → 1.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7a19cb660ed63ad2eee87a62cee016900683ad1a
4
- data.tar.gz: dfe64f1ddfadd9fe16444cc81a65f8690013dfc2
3
+ metadata.gz: 6e763c15fc8d5801af15fbb3263b51af9657e92e
4
+ data.tar.gz: d0a555c4dd008d72232dee7c431af65019a4c20a
5
5
  SHA512:
6
- metadata.gz: aa9565dd0715645ebf97329501205c51df44e3695d219faaaf07855711aa121cb070135574a2d4c4331811f84f3ffd5f978d1b27f67aa0edf7637205faea9857
7
- data.tar.gz: 1f7cdb8f03dc918fca8ce5d4b1adee4d6e01d6b392948e3e81473503ab3d004a30cb2d8f0a76fc59ffa62de20742cf54ffa531494a6b959e1ecf19a8b918711a
6
+ metadata.gz: d0331aebb18a1a88602877a2c47ad125fc89ea9ab2e80b5c6f7324fe537f50b8515a62d4ca02b1a7298023136463f4c705f62938796edeafe369f7611b8d6c3a
7
+ data.tar.gz: aa8a9772cf8174706debebb88758da922aa15ced1a1624b3046f4317cbec5d0e47e113141cfe3a7c3f2833952d85339f06a2f7cc65fe8f5a0c8d17463736c241
data/README.md CHANGED
@@ -35,7 +35,9 @@ produce
35
35
 
36
36
  ###### Create new iOS apps on iTunes Connect and Dev Portal using your command line
37
37
 
38
- Get in contact with the developer on Twitter: [@FastlaneTools](https://twitter.com/FastlaneTools)
38
+ `produce` creates new iOS apps on both the Apple Developer Portal and iTunes Connect with the minimum required information.
39
+
40
+ Get in contact with the developers on Twitter: [@FastlaneTools](https://twitter.com/FastlaneTools)
39
41
 
40
42
  -------
41
43
  <p align="center">
@@ -51,7 +53,6 @@ Get in contact with the developer on Twitter: [@FastlaneTools](https://twitter.c
51
53
 
52
54
  <h5 align="center"><code>produce</code> is part of <a href="https://fastlane.tools">fastlane</a>: The easiest way to automate building and releasing your iOS and Android apps.</h5>
53
55
 
54
-
55
56
  # Features
56
57
 
57
58
  - **Create** new apps on both iTunes Connect and the Apple Developer Portal
@@ -107,7 +108,7 @@ If you want to enable Application Services for an App ID (HomeKit and HealthKit
107
108
 
108
109
  produce enable_services --homekit --healthkit
109
110
 
110
- If you want to disable Application Servies for an App ID (iCloud in this case):
111
+ If you want to disable Application Services for an App ID (iCloud in this case):
111
112
 
112
113
  produce disable_services --icloud
113
114
 
data/bin/produce CHANGED
@@ -1,134 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
-
3
2
  $:.push File.expand_path("../../lib", __FILE__)
4
3
 
5
4
  require 'produce'
6
- require 'commander'
7
- require 'credentials_manager/appfile_config'
8
-
9
- HighLine.track_eof = false
10
-
11
- class ProduceApplication
12
- include Commander::Methods
13
-
14
- # rubocop:disable Metrics/MethodLength
15
- # rubocop:disable Metrics/AbcSize
16
- def run
17
- program :version, Produce::VERSION
18
- program :description, 'CLI for \'produce\''
19
- program :help, 'Author', 'Felix Krause <produce@krausefx.com>'
20
- program :help, 'Website', 'https://fastlane.tools'
21
- program :help, 'GitHub', 'https://github.com/fastlane/produce'
22
- program :help_formatter, :compact
23
-
24
- global_option('--verbose') { $verbose = true }
25
-
26
- FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options)
27
-
28
- command :create do |c|
29
- c.syntax = 'produce create'
30
- c.description = 'Creates a new app on iTunes Connect and the Apple Developer Portal'
31
-
32
- c.action do |args, options|
33
- Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__)
34
-
35
- puts Produce::Manager.start_producing
36
- end
37
- end
38
-
39
- command :enable_services do |c|
40
- c.syntax = 'produce enable_services -a APP_IDENTIFIER SERVICE1, SERVICE2, ...'
41
- c.description = 'Enable specific Application Services for a specific app on the Apple Developer Portal'
42
- c.example 'Enable HealthKit, HomeKit and Passbook', 'produce enable_services -a com.example.app --healthkit --homekit --passbook'
43
-
44
- c.option '--app-group', 'Enable App Groups'
45
- c.option '--associated-domains', 'Enable Associated Domains'
46
- c.option '--data-protection STRING', String, 'Enable Data Protection, suitable values are "complete", "unlessopen" and "untilfirstauth"'
47
- c.option '--healthkit', 'Enable HealthKit'
48
- c.option '--homekit', 'Enable HomeKit'
49
- c.option '--wireless-conf', 'Enable Wireless Accessory Configuration'
50
- c.option '--icloud STRING', String, 'Enable iCloud, suitable values are "legacy" and "cloudkit"'
51
- c.option '--inter-app-audio', 'Enable Inter-App-Audio'
52
- c.option '--passbook', 'Enable Passbook'
53
- c.option '--push-notification', 'Enable Push notification (only enables the service, does not configure certificates)'
54
- c.option '--vpn-conf', 'Enable VPN Configuration'
55
-
56
- c.action do |args, options|
57
- # Filter the options so that we can still build the configuration
58
- allowed_keys = Produce::Options.available_options.collect(&:key)
59
- Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include? key })
60
-
61
- require 'produce/service'
62
- Produce::Service.enable(options, args)
63
- end
64
- end
65
-
66
- command :disable_services do |c|
67
- c.syntax = 'produce disable_services -a APP_IDENTIFIER SERVICE1, SERVICE2, ...'
68
- c.description = 'Disable specific Application Services for a specific app on the Apple Developer Portal'
69
- c.example 'Disable HealthKit', 'produce disable_services -a com.example.app --healthkit'
70
-
71
- c.option '--app-group', 'Disable App Groups'
72
- c.option '--associated-domains', 'Disable Associated Domains'
73
- c.option '--data-protection', 'Disable Data Protection'
74
- c.option '--healthkit', 'Disable HealthKit'
75
- c.option '--homekit', 'Disable HomeKit'
76
- c.option '--wireless-conf', 'Disable Wireless Accessory Configuration'
77
- c.option '--icloud', 'Disable iCloud'
78
- c.option '--inter-app-audio', 'Disable Inter-App-Audio'
79
- c.option '--passbook', 'Disable Passbook'
80
- c.option '--push-notification', 'Disable Push notifications'
81
- c.option '--vpn-conf', 'Disable VPN Configuration'
82
-
83
- c.action do |args, options|
84
- # Filter the options so that we can still build the configuration
85
- allowed_keys = Produce::Options.available_options.collect(&:key)
86
- Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include? key })
87
-
88
- require 'produce/service'
89
- Produce::Service.disable(options, args)
90
- end
91
- end
92
-
93
- command :group do |c|
94
- c.syntax = 'produce group'
95
- c.description = 'Ensure that a specific App Group exists'
96
- c.example 'Create group', 'produce group -g group.example.app -n "Example App Group"'
97
-
98
- c.option '-n', '--group_name STRING', String, 'Name for the group that is created (PRODUCE_GROUP_NAME)'
99
- c.option '-g', '--group_identifier STRING', String, 'Group identifier for the group (PRODUCE_GROUP_IDENTIFIER)'
100
-
101
- c.action do |args, options|
102
- allowed_keys = Produce::Options.available_options.collect(&:key)
103
- Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include? key })
104
-
105
- require 'produce/group'
106
- Produce::Group.new.create(options, args)
107
- end
108
- end
109
-
110
- command :associate_group do |c|
111
- c.syntax = 'produce associate_group -a APP_IDENTIFIER GROUP_IDENTIFIER1, GROUP_IDENTIFIER2, ...'
112
- c.description = 'Associate with a group, which is create if needed or simply located otherwise'
113
- c.example 'Associate with group', 'produce associate-group -a com.example.app group.example.com'
114
-
115
- c.action do |args, options|
116
- Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__)
117
-
118
- require 'produce/group'
119
- Produce::Group.new.associate(options, args)
120
- end
121
- end
122
-
123
- default_command :create
124
-
125
- run!
126
- end
127
- end
128
-
129
- begin
130
- FastlaneCore::UpdateChecker.start_looking_for_update('produce')
131
- ProduceApplication.new.run
132
- ensure
133
- FastlaneCore::UpdateChecker.show_update_status('produce', Produce::VERSION)
134
- end
5
+ require 'produce/commands_generator'
6
+ Produce::CommandsGenerator.start
@@ -0,0 +1,132 @@
1
+ require 'commander'
2
+
3
+ HighLine.track_eof = false
4
+
5
+ module Produce
6
+ class CommandsGenerator
7
+ include Commander::Methods
8
+
9
+ def self.start
10
+ FastlaneCore::UpdateChecker.start_looking_for_update('produce')
11
+ self.new.run
12
+ ensure
13
+ FastlaneCore::UpdateChecker.show_update_status('produce', Produce::VERSION)
14
+ end
15
+
16
+ # rubocop:disable Metrics/AbcSize
17
+ # rubocop:disable Metrics/MethodLength
18
+ def run
19
+ program :version, Produce::VERSION
20
+ program :description, 'CLI for \'produce\''
21
+ program :help, 'Author', 'Felix Krause <produce@krausefx.com>'
22
+ program :help, 'Website', 'https://fastlane.tools'
23
+ program :help, 'GitHub', 'https://github.com/fastlane/produce'
24
+ program :help_formatter, :compact
25
+
26
+ global_option('--verbose') { $verbose = true }
27
+
28
+ FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options)
29
+
30
+ command :create do |c|
31
+ c.syntax = 'produce create'
32
+ c.description = 'Creates a new app on iTunes Connect and the Apple Developer Portal'
33
+
34
+ c.action do |args, options|
35
+ Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__)
36
+
37
+ puts Produce::Manager.start_producing
38
+ end
39
+ end
40
+
41
+ command :enable_services do |c|
42
+ c.syntax = 'produce enable_services -a APP_IDENTIFIER SERVICE1, SERVICE2, ...'
43
+ c.description = 'Enable specific Application Services for a specific app on the Apple Developer Portal'
44
+ c.example 'Enable HealthKit, HomeKit and Passbook', 'produce enable_services -a com.example.app --healthkit --homekit --passbook'
45
+
46
+ c.option '--app-group', 'Enable App Groups'
47
+ c.option '--associated-domains', 'Enable Associated Domains'
48
+ c.option '--data-protection STRING', String, 'Enable Data Protection, suitable values are "complete", "unlessopen" and "untilfirstauth"'
49
+ c.option '--healthkit', 'Enable HealthKit'
50
+ c.option '--homekit', 'Enable HomeKit'
51
+ c.option '--wireless-conf', 'Enable Wireless Accessory Configuration'
52
+ c.option '--icloud STRING', String, 'Enable iCloud, suitable values are "legacy" and "cloudkit"'
53
+ c.option '--inter-app-audio', 'Enable Inter-App-Audio'
54
+ c.option '--passbook', 'Enable Passbook'
55
+ c.option '--push-notification', 'Enable Push notification (only enables the service, does not configure certificates)'
56
+ c.option '--vpn-conf', 'Enable VPN Configuration'
57
+
58
+ c.action do |args, options|
59
+ # Filter the options so that we can still build the configuration
60
+ allowed_keys = Produce::Options.available_options.collect(&:key)
61
+ Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include? key })
62
+
63
+ require 'produce/service'
64
+ Produce::Service.enable(options, args)
65
+ end
66
+ end
67
+
68
+ command :disable_services do |c|
69
+ c.syntax = 'produce disable_services -a APP_IDENTIFIER SERVICE1, SERVICE2, ...'
70
+ c.description = 'Disable specific Application Services for a specific app on the Apple Developer Portal'
71
+ c.example 'Disable HealthKit', 'produce disable_services -a com.example.app --healthkit'
72
+
73
+ c.option '--app-group', 'Disable App Groups'
74
+ c.option '--associated-domains', 'Disable Associated Domains'
75
+ c.option '--data-protection', 'Disable Data Protection'
76
+ c.option '--healthkit', 'Disable HealthKit'
77
+ c.option '--homekit', 'Disable HomeKit'
78
+ c.option '--wireless-conf', 'Disable Wireless Accessory Configuration'
79
+ c.option '--icloud', 'Disable iCloud'
80
+ c.option '--inter-app-audio', 'Disable Inter-App-Audio'
81
+ c.option '--passbook', 'Disable Passbook'
82
+ c.option '--push-notification', 'Disable Push notifications'
83
+ c.option '--vpn-conf', 'Disable VPN Configuration'
84
+
85
+ c.action do |args, options|
86
+ # Filter the options so that we can still build the configuration
87
+ allowed_keys = Produce::Options.available_options.collect(&:key)
88
+ Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include? key })
89
+
90
+ require 'produce/service'
91
+ Produce::Service.disable(options, args)
92
+ end
93
+ end
94
+
95
+ command :group do |c|
96
+ c.syntax = 'produce group'
97
+ c.description = 'Ensure that a specific App Group exists'
98
+ c.example 'Create group', 'produce group -g group.example.app -n "Example App Group"'
99
+
100
+ c.option '-n', '--group_name STRING', String, 'Name for the group that is created (PRODUCE_GROUP_NAME)'
101
+ c.option '-g', '--group_identifier STRING', String, 'Group identifier for the group (PRODUCE_GROUP_IDENTIFIER)'
102
+
103
+ c.action do |args, options|
104
+ allowed_keys = Produce::Options.available_options.collect(&:key)
105
+ Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include? key })
106
+
107
+ require 'produce/group'
108
+ Produce::Group.new.create(options, args)
109
+ end
110
+ end
111
+
112
+ command :associate_group do |c|
113
+ c.syntax = 'produce associate_group -a APP_IDENTIFIER GROUP_IDENTIFIER1, GROUP_IDENTIFIER2, ...'
114
+ c.description = 'Associate with a group, which is create if needed or simply located otherwise'
115
+ c.example 'Associate with group', 'produce associate-group -a com.example.app group.example.com'
116
+
117
+ c.action do |args, options|
118
+ Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__)
119
+
120
+ require 'produce/group'
121
+ Produce::Group.new.associate(options, args)
122
+ end
123
+ end
124
+
125
+ default_command :create
126
+
127
+ run!
128
+ end
129
+ # rubocop:enable Metrics/AbcSize
130
+ # rubocop:enable Metrics/MethodLength
131
+ end
132
+ end
@@ -1,3 +1,3 @@
1
1
  module Produce
2
- VERSION = "1.1.2"
2
+ VERSION = "1.1.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: produce
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
4
+ version: 1.1.3
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-05-04 00:00:00.000000000 Z
11
+ date: 2016-08-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fastlane_core
@@ -36,7 +36,7 @@ dependencies:
36
36
  requirements:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: 0.16.0
39
+ version: 0.29.1
40
40
  - - "<"
41
41
  - !ruby/object:Gem::Version
42
42
  version: 1.0.0
@@ -46,7 +46,7 @@ dependencies:
46
46
  requirements:
47
47
  - - ">="
48
48
  - !ruby/object:Gem::Version
49
- version: 0.16.0
49
+ version: 0.29.1
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
52
  version: 1.0.0
@@ -204,6 +204,7 @@ files:
204
204
  - bin/produce
205
205
  - lib/produce.rb
206
206
  - lib/produce/available_default_languages.rb
207
+ - lib/produce/commands_generator.rb
207
208
  - lib/produce/developer_center.rb
208
209
  - lib/produce/group.rb
209
210
  - lib/produce/itunes_connect.rb
@@ -231,7 +232,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
231
232
  version: '0'
232
233
  requirements: []
233
234
  rubyforge_project:
234
- rubygems_version: 2.4.5.1
235
+ rubygems_version: 2.2.2
235
236
  signing_key:
236
237
  specification_version: 4
237
238
  summary: Create new iOS apps on iTunes Connect and Dev Portal using the command line