deploygate 0.0.6 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. checksums.yaml +13 -5
  2. data/.gitignore +4 -0
  3. data/.travis.yml +4 -4
  4. data/README.md +3 -3
  5. data/lib/deploygate/android/gradle_deploy.rb +95 -0
  6. data/lib/deploygate/android/gradle_plugin_installer.rb +101 -0
  7. data/lib/deploygate/android/gradle_project.rb +14 -0
  8. data/lib/deploygate/commands/deploy/build.rb +15 -154
  9. data/lib/deploygate/{build.rb → project.rb} +3 -3
  10. data/lib/deploygate/version.rb +1 -1
  11. data/lib/deploygate/xcode/analyze.rb +116 -0
  12. data/lib/deploygate/xcode/export.rb +281 -0
  13. data/lib/deploygate/{builds → xcode}/ios.rb +13 -5
  14. data/lib/deploygate/xcode/member_center.rb +52 -0
  15. data/lib/deploygate/xcode/member_centers/app.rb +35 -0
  16. data/lib/deploygate/xcode/member_centers/provisioning_profile.rb +99 -0
  17. data/lib/deploygate.rb +14 -5
  18. data/spec/deploygate/project_spec.rb +39 -0
  19. data/spec/deploygate/xcode/analyze_spec.rb +3 -0
  20. data/spec/deploygate/{builds/ios → xcode}/export_spec.rb +21 -21
  21. data/spec/deploygate/{builds → xcode}/ios_spec.rb +12 -12
  22. data/spec/deploygate/xcode/member_center_spec.rb +21 -0
  23. data/spec/deploygate/xcode/member_centers/app_spec.rb +60 -0
  24. data/spec/deploygate/xcode/member_centers/provisioning_profile_spec.rb +3 -0
  25. metadata +70 -66
  26. data/lib/deploygate/builds/ios/analyze.rb +0 -111
  27. data/lib/deploygate/builds/ios/export.rb +0 -188
  28. data/lib/deploygate/builds/ios/set_profile.rb +0 -128
  29. data/spec/deploygate/build_spec.rb +0 -37
  30. data/spec/deploygate/builds/ios/analyze_spec.rb +0 -3
  31. data/spec/deploygate/builds/ios/set_profile_spec.rb +0 -3
metadata CHANGED
@@ -1,279 +1,279 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: deploygate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - deploygate
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-07 00:00:00.000000000 Z
11
+ date: 2015-12-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
19
  version: 1.8.2
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
26
  version: 1.8.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: httpclient
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ~>
32
32
  - !ruby/object:Gem::Version
33
33
  version: 2.2.5
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ~>
39
39
  - !ruby/object:Gem::Version
40
40
  version: 2.2.5
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: commander
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ~>
46
46
  - !ruby/object:Gem::Version
47
47
  version: 4.3.5
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ~>
53
53
  - !ruby/object:Gem::Version
54
54
  version: 4.3.5
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: color_echo
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ~>
60
60
  - !ruby/object:Gem::Version
61
61
  version: 2.0.1
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ~>
67
67
  - !ruby/object:Gem::Version
68
68
  version: 2.0.1
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: plist
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ~>
74
74
  - !ruby/object:Gem::Version
75
75
  version: 3.1.0
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ~>
81
81
  - !ruby/object:Gem::Version
82
82
  version: 3.1.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: xcodeproj
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
87
+ - - ~>
88
88
  - !ruby/object:Gem::Version
89
89
  version: 0.28.2
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - "~>"
94
+ - - ~>
95
95
  - !ruby/object:Gem::Version
96
96
  version: 0.28.2
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: github_issue_request
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - "~>"
101
+ - - ~>
102
102
  - !ruby/object:Gem::Version
103
103
  version: 0.0.2
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - "~>"
108
+ - - ~>
109
109
  - !ruby/object:Gem::Version
110
110
  version: 0.0.2
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: highline
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - "~>"
115
+ - - ~>
116
116
  - !ruby/object:Gem::Version
117
117
  version: 1.7.8
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - "~>"
122
+ - - ~>
123
123
  - !ruby/object:Gem::Version
124
124
  version: 1.7.8
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: uuid
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - "~>"
129
+ - - ~>
130
130
  - !ruby/object:Gem::Version
131
131
  version: 2.3.8
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - "~>"
136
+ - - ~>
137
137
  - !ruby/object:Gem::Version
138
138
  version: 2.3.8
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: gem_update_checker
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - "~>"
143
+ - - ~>
144
144
  - !ruby/object:Gem::Version
145
145
  version: 0.2.0
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - "~>"
150
+ - - ~>
151
151
  - !ruby/object:Gem::Version
152
152
  version: 0.2.0
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: activesupport
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - "~>"
157
+ - - ~>
158
158
  - !ruby/object:Gem::Version
159
159
  version: 4.2.4
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
- - - "~>"
164
+ - - ~>
165
165
  - !ruby/object:Gem::Version
166
166
  version: 4.2.4
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: gym
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
- - - "~>"
171
+ - - ~>
172
172
  - !ruby/object:Gem::Version
173
173
  version: 1.0.0
174
174
  type: :runtime
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
- - - "~>"
178
+ - - ~>
179
179
  - !ruby/object:Gem::Version
180
180
  version: 1.0.0
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: spaceship
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
- - - "~>"
185
+ - - ~>
186
186
  - !ruby/object:Gem::Version
187
187
  version: 0.12.3
188
188
  type: :runtime
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
- - - "~>"
192
+ - - ~>
193
193
  - !ruby/object:Gem::Version
194
194
  version: 0.12.3
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: sigh
197
197
  requirement: !ruby/object:Gem::Requirement
198
198
  requirements:
199
- - - "~>"
199
+ - - ~>
200
200
  - !ruby/object:Gem::Version
201
201
  version: 1.1.0
202
202
  type: :runtime
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
- - - "~>"
206
+ - - ~>
207
207
  - !ruby/object:Gem::Version
208
208
  version: 1.1.0
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: locale
211
211
  requirement: !ruby/object:Gem::Requirement
212
212
  requirements:
213
- - - ">="
213
+ - - ! '>='
214
214
  - !ruby/object:Gem::Version
215
215
  version: '0'
216
216
  type: :runtime
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
219
219
  requirements:
220
- - - ">="
220
+ - - ! '>='
221
221
  - !ruby/object:Gem::Version
222
222
  version: '0'
223
223
  - !ruby/object:Gem::Dependency
224
224
  name: bundler
225
225
  requirement: !ruby/object:Gem::Requirement
226
226
  requirements:
227
- - - "~>"
227
+ - - ~>
228
228
  - !ruby/object:Gem::Version
229
229
  version: '1.3'
230
230
  type: :development
231
231
  prerelease: false
232
232
  version_requirements: !ruby/object:Gem::Requirement
233
233
  requirements:
234
- - - "~>"
234
+ - - ~>
235
235
  - !ruby/object:Gem::Version
236
236
  version: '1.3'
237
237
  - !ruby/object:Gem::Dependency
238
238
  name: rake
239
239
  requirement: !ruby/object:Gem::Requirement
240
240
  requirements:
241
- - - ">="
241
+ - - ! '>='
242
242
  - !ruby/object:Gem::Version
243
243
  version: '0'
244
244
  type: :development
245
245
  prerelease: false
246
246
  version_requirements: !ruby/object:Gem::Requirement
247
247
  requirements:
248
- - - ">="
248
+ - - ! '>='
249
249
  - !ruby/object:Gem::Version
250
250
  version: '0'
251
251
  - !ruby/object:Gem::Dependency
252
252
  name: rspec
253
253
  requirement: !ruby/object:Gem::Requirement
254
254
  requirements:
255
- - - "~>"
255
+ - - ~>
256
256
  - !ruby/object:Gem::Version
257
257
  version: 3.3.0
258
258
  type: :development
259
259
  prerelease: false
260
260
  version_requirements: !ruby/object:Gem::Requirement
261
261
  requirements:
262
- - - "~>"
262
+ - - ~>
263
263
  - !ruby/object:Gem::Version
264
264
  version: 3.3.0
265
265
  - !ruby/object:Gem::Dependency
266
266
  name: webmock
267
267
  requirement: !ruby/object:Gem::Requirement
268
268
  requirements:
269
- - - "~>"
269
+ - - ~>
270
270
  - !ruby/object:Gem::Version
271
271
  version: 1.21.0
272
272
  type: :development
273
273
  prerelease: false
274
274
  version_requirements: !ruby/object:Gem::Requirement
275
275
  requirements:
276
- - - "~>"
276
+ - - ~>
277
277
  - !ruby/object:Gem::Version
278
278
  version: 1.21.0
279
279
  description: You can control to DeployGate in your terminal
@@ -284,9 +284,9 @@ executables:
284
284
  extensions: []
285
285
  extra_rdoc_files: []
286
286
  files:
287
- - ".gitignore"
288
- - ".rspec"
289
- - ".travis.yml"
287
+ - .gitignore
288
+ - .rspec
289
+ - .travis.yml
290
290
  - Gemfile
291
291
  - LICENSE.txt
292
292
  - README.md
@@ -294,15 +294,13 @@ files:
294
294
  - bin/dg
295
295
  - deploygate.gemspec
296
296
  - lib/deploygate.rb
297
+ - lib/deploygate/android/gradle_deploy.rb
298
+ - lib/deploygate/android/gradle_plugin_installer.rb
299
+ - lib/deploygate/android/gradle_project.rb
297
300
  - lib/deploygate/api/v1/base.rb
298
301
  - lib/deploygate/api/v1/push.rb
299
302
  - lib/deploygate/api/v1/session.rb
300
303
  - lib/deploygate/api/v1/user.rb
301
- - lib/deploygate/build.rb
302
- - lib/deploygate/builds/ios.rb
303
- - lib/deploygate/builds/ios/analyze.rb
304
- - lib/deploygate/builds/ios/export.rb
305
- - lib/deploygate/builds/ios/set_profile.rb
306
304
  - lib/deploygate/command_builder.rb
307
305
  - lib/deploygate/commands/config.rb
308
306
  - lib/deploygate/commands/deploy.rb
@@ -317,44 +315,48 @@ files:
317
315
  - lib/deploygate/message/error.rb
318
316
  - lib/deploygate/message/success.rb
319
317
  - lib/deploygate/message/warning.rb
318
+ - lib/deploygate/project.rb
320
319
  - lib/deploygate/session.rb
321
320
  - lib/deploygate/user.rb
322
321
  - lib/deploygate/version.rb
322
+ - lib/deploygate/xcode/analyze.rb
323
+ - lib/deploygate/xcode/export.rb
324
+ - lib/deploygate/xcode/ios.rb
325
+ - lib/deploygate/xcode/member_center.rb
326
+ - lib/deploygate/xcode/member_centers/app.rb
327
+ - lib/deploygate/xcode/member_centers/provisioning_profile.rb
323
328
  - spec/deploygate/api/v1/push_spec.rb
324
329
  - spec/deploygate/api/v1/session_spec.rb
325
330
  - spec/deploygate/api/v1/user_spec.rb
326
- - spec/deploygate/build_spec.rb
327
- - spec/deploygate/builds/ios/analyze_spec.rb
328
- - spec/deploygate/builds/ios/export_spec.rb
329
- - spec/deploygate/builds/ios/set_profile_spec.rb
330
- - spec/deploygate/builds/ios_spec.rb
331
331
  - spec/deploygate/config/base_spec.rb
332
332
  - spec/deploygate/deploy_spec.rb
333
+ - spec/deploygate/project_spec.rb
333
334
  - spec/deploygate/session_spec.rb
334
335
  - spec/deploygate/user_spec.rb
336
+ - spec/deploygate/xcode/analyze_spec.rb
337
+ - spec/deploygate/xcode/export_spec.rb
338
+ - spec/deploygate/xcode/ios_spec.rb
339
+ - spec/deploygate/xcode/member_center_spec.rb
340
+ - spec/deploygate/xcode/member_centers/app_spec.rb
341
+ - spec/deploygate/xcode/member_centers/provisioning_profile_spec.rb
335
342
  - spec/spec_helper.rb
336
343
  - spec/test_files/DeployGateSample.apk
337
344
  homepage: https://deploygate.com
338
345
  licenses:
339
346
  - Apache-2.0
340
347
  metadata: {}
341
- post_install_message: |2+
342
-
343
- dg installed! To get started fast:
344
-
345
- $ dg deploy
346
-
348
+ post_install_message: ! "\ndg installed! To get started fast:\n\n $ dg deploy\n\n"
347
349
  rdoc_options: []
348
350
  require_paths:
349
351
  - lib
350
352
  required_ruby_version: !ruby/object:Gem::Requirement
351
353
  requirements:
352
- - - ">="
354
+ - - ! '>='
353
355
  - !ruby/object:Gem::Version
354
356
  version: '0'
355
357
  required_rubygems_version: !ruby/object:Gem::Requirement
356
358
  requirements:
357
- - - ">="
359
+ - - ! '>='
358
360
  - !ruby/object:Gem::Version
359
361
  version: '0'
360
362
  requirements: []
@@ -367,14 +369,16 @@ test_files:
367
369
  - spec/deploygate/api/v1/push_spec.rb
368
370
  - spec/deploygate/api/v1/session_spec.rb
369
371
  - spec/deploygate/api/v1/user_spec.rb
370
- - spec/deploygate/build_spec.rb
371
- - spec/deploygate/builds/ios/analyze_spec.rb
372
- - spec/deploygate/builds/ios/export_spec.rb
373
- - spec/deploygate/builds/ios/set_profile_spec.rb
374
- - spec/deploygate/builds/ios_spec.rb
375
372
  - spec/deploygate/config/base_spec.rb
376
373
  - spec/deploygate/deploy_spec.rb
374
+ - spec/deploygate/project_spec.rb
377
375
  - spec/deploygate/session_spec.rb
378
376
  - spec/deploygate/user_spec.rb
377
+ - spec/deploygate/xcode/analyze_spec.rb
378
+ - spec/deploygate/xcode/export_spec.rb
379
+ - spec/deploygate/xcode/ios_spec.rb
380
+ - spec/deploygate/xcode/member_center_spec.rb
381
+ - spec/deploygate/xcode/member_centers/app_spec.rb
382
+ - spec/deploygate/xcode/member_centers/provisioning_profile_spec.rb
379
383
  - spec/spec_helper.rb
380
384
  - spec/test_files/DeployGateSample.apk
@@ -1,111 +0,0 @@
1
- module DeployGate
2
- module Builds
3
- module Ios
4
- class Analyze
5
- attr_reader :workspaces, :scheme_workspace, :build_workspace, :scheme
6
-
7
- class NotLocalProvisioningProfileError < StandardError
8
- end
9
-
10
- BASE_WORK_DIR_NAME = 'project.xcworkspace'
11
- BUILD_CONFIGRATION = 'Release'
12
-
13
- # @param [Array] workspaces
14
- # @return [DeployGate::Builds::Ios::Analyze]
15
- def initialize(workspaces)
16
- @workspaces = workspaces
17
- @scheme_workspace = find_scheme_workspace(workspaces)
18
- @build_workspace = find_build_workspace(workspaces)
19
- @xcodeproj = File.dirname(@scheme_workspace)
20
-
21
- config = FastlaneCore::Configuration.create(Gym::Options.available_options, {:workspace => @scheme_workspace})
22
- project = FastlaneCore::Project.new(config)
23
- if project.schemes.empty?
24
- config = FastlaneCore::Configuration.create(Gym::Options.available_options, {:workspace => @build_workspace})
25
- project = FastlaneCore::Project.new(config)
26
- end
27
- project.select_scheme
28
- @scheme = project.options[:scheme]
29
- end
30
-
31
- # Support Xcode7 more
32
- # @return [String]
33
- def target_bundle_identifier
34
- product_name = target_product_name
35
- identifier = target_build_configration.build_settings['PRODUCT_BUNDLE_IDENTIFIER']
36
- identifier.gsub!(/\$\(PRODUCT_NAME:.+\)/, product_name)
37
-
38
- identifier
39
- end
40
-
41
- # @return [String]
42
- def target_xcode_setting_provisioning_profile_uuid
43
- uuid = target_build_configration.build_settings['PROVISIONING_PROFILE']
44
- UUID.validate(uuid) ? uuid : nil
45
- end
46
-
47
- private
48
-
49
- def target_build_configration
50
- target_project_setting.build_configuration_list.build_configurations.reject{|conf| conf.name != BUILD_CONFIGRATION}.first
51
- end
52
-
53
- def target_product_name
54
- target_project_setting.product_name
55
- end
56
-
57
- def target_project_setting
58
- scheme_file = find_xcschemes
59
- xs = Xcodeproj::XCScheme.new(scheme_file)
60
- target_name = xs.profile_action.buildable_product_runnable.buildable_reference.target_name
61
-
62
- project = Xcodeproj::Project.open(@xcodeproj)
63
- project.native_targets.reject{|target| target.name != target_name}.first
64
- end
65
-
66
- def find_xcschemes
67
- shared_schemes = Dir[File.join(@xcodeproj, 'xcshareddata', 'xcschemes', '*.xcscheme')].reject do |scheme|
68
- @scheme != File.basename(scheme, '.xcscheme')
69
- end
70
- user_schemes = Dir[File.join(@xcodeproj, 'xcuserdata', '*.xcuserdatad', 'xcschemes', '*.xcscheme')].reject do |scheme|
71
- @scheme != File.basename(scheme, '.xcscheme')
72
- end
73
-
74
- shared_schemes.concat(user_schemes).first
75
- end
76
-
77
- # @param [Array] workspaces
78
- # @return [String]
79
- def find_scheme_workspace(workspaces)
80
- return nil if workspaces.empty?
81
- return workspaces.first if workspaces.count == 1
82
-
83
- select = nil
84
- workspaces.each do |workspace|
85
- if BASE_WORK_DIR_NAME == File.basename(workspace)
86
- select = workspace
87
- end
88
- end
89
-
90
- select
91
- end
92
-
93
- # @param [Array] workspaces
94
- # @return [String]
95
- def find_build_workspace(workspaces)
96
- return nil if workspaces.empty?
97
- return workspaces.first if workspaces.count == 1
98
-
99
- select = nil
100
- workspaces.each do |workspace|
101
- if BASE_WORK_DIR_NAME != File.basename(workspace)
102
- select = workspace
103
- end
104
- end
105
-
106
- select
107
- end
108
- end
109
- end
110
- end
111
- end