nixenvironment 0.0.8 → 0.0.9

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: cb46f15cc9b3336e295e430809edbe5094502733
4
- data.tar.gz: cfd5f3224cb1f4700d87778cf9e4871f5cd34276
3
+ metadata.gz: 3526732db0e17b9f34a822a5b677cf205dbacdb7
4
+ data.tar.gz: 459bbd9b2d37acd6c521fe8a94e4d94a15724167
5
5
  SHA512:
6
- metadata.gz: 43064f58d004c8498a7adf8ab12a40b576b2d15e07be2c52fca0d2e834c55ff6dd639d8c9b0bf02483562f5d827aab5e2b4a69af0a2b4517d35cac3631c3a28d
7
- data.tar.gz: 2859e5496959b3064ff010fb9fcffd224a1378aa9d75723be1ffdca01526a999c00d0b2ff60717f03b977f5f5d95e89aeaf75e500fc1428d6d1b552c25a2e128
6
+ metadata.gz: 4027c122a44ba48f21c42c9923f8450511532a1d32169aa6fa2ae53d663ed94b09a8ccb04070d94dabe2cb929c66e6425d483c832177bcc770f6e77d9b161dba
7
+ data.tar.gz: 174a76a624f69ac626e4e932a679b327910481ceecb0e920a398ef1836da6e02b7b4c89fa5caf634ccbeca813d73e4f701a7e025636a1ae911cc9277cd5569fb
data/README.md CHANGED
@@ -4,17 +4,31 @@ Nixenvironment installs, updates and manages inner NIX environment stuff to make
4
4
 
5
5
  ## Installation
6
6
 
7
- $ gem install nixenvironment
7
+ $ [sudo] gem install nixenvironment
8
8
 
9
9
  ## Usage
10
10
 
11
11
  COMMANDS:
12
12
 
13
- build Build project for selected configuration and make signed/resigned ipa
14
- clean Remove temp files and clean all targets for xcode project
15
- deploy Deploy build to mds
16
- help Display global or [command] help documentation
17
- update Install or update ninbas and other environment stuff
13
+ build # Build project for selected configuration and make signed/resigned ipa
14
+
15
+ clean # Remove temp files and clean all targets for xcode project
16
+
17
+ clean_working_copy # Make working copy clean
18
+
19
+ code_duplication_report # Generate code duplication report
20
+
21
+ deploy # Deploy built artifacts to given server
22
+
23
+ help # Display global or [command] help documentation
24
+
25
+ svn_tag_from_jenkins # Make tag by finding the first credential in local credential storage
26
+
27
+ tag # Make SVN/git/mercurial tag, SCM_USERNAME and SCM_PASSWORD must be defined on calling this target
28
+
29
+ test # Build unit tests and run them in simulator
30
+
31
+ update # Install or update ninbas and other environment stuff
18
32
 
19
33
  GLOBAL OPTIONS:
20
34
 
@@ -26,9 +40,26 @@ Nixenvironment installs, updates and manages inner NIX environment stuff to make
26
40
 
27
41
  -t, --trace
28
42
  Display backtrace when an error occurs
43
+
44
+ EXAMPLES:
45
+
46
+ nixenvironment -h
47
+
48
+ nixenvironment update # Update all environment stuff from last tags
49
+
50
+ nixenvironment update --ninbas feature/nixenv
51
+
52
+ nixenvironment build # Make Debug build and create .ipa file from last built app product by default
53
+
54
+ nixenvironment build --config Release --ipa resigned_ipa_for_device
55
+
56
+ nixenvironment deploy
57
+
58
+ ...
29
59
 
30
60
  ## TODO:
31
61
 
32
62
  1. Move project adjuster to this gem.
33
63
  2. Implement bunch ipa making and deployment.
34
- 3. Implement next commands: |test|, |code_duplication_report|, |tag|, |svn_tag_from_jenkins|, |clean_working_copy|, etc.
64
+ 3. Implement xctest and code_coverage_for_xctest commands (https://bitbucket.org/nixsolutions/ninbas/pull-request/1/added-scripts-for-xctests/).
65
+ 4. Rewrite XcodeIconTagger/tagIcons.sh and use it in prebuild method.
data/bin/nixenvironment CHANGED
@@ -38,7 +38,7 @@ end
38
38
 
39
39
  command :deploy do |c|
40
40
  c.syntax = 'nixenvironment deploy'
41
- c.description = 'Deploy build to mds'
41
+ c.description = 'Deploy built artifacts to given server'
42
42
  c.action do |args, options|
43
43
  read_config
44
44
  deploy
@@ -53,6 +53,48 @@ command :clean do |c|
53
53
  end
54
54
  end
55
55
 
56
+ command :test do |c|
57
+ c.syntax = 'nixenvironment test'
58
+ c.description = 'Build unit tests and run them in simulator'
59
+ c.action do |args, options|
60
+ read_config
61
+ test
62
+ end
63
+ end
64
+
65
+ command :code_duplication_report do |c|
66
+ c.syntax = 'nixenvironment code_duplication_report'
67
+ c.description = 'Generate code duplication report'
68
+ c.action do |args, options|
69
+ read_config
70
+ code_duplication_report
71
+ end
72
+ end
73
+
74
+ command :tag do |c|
75
+ c.syntax = 'nixenvironment tag'
76
+ c.description = 'Make SVN/git/mercurial tag, SCM_USERNAME and SCM_PASSWORD must be defined on calling this target'
77
+ c.action do |args, options|
78
+ tag
79
+ end
80
+ end
81
+
82
+ command :svn_tag_from_jenkins do |c|
83
+ c.syntax = 'nixenvironment svn_tag_from_jenkins'
84
+ c.description = 'Make tag by finding the first credential in local credential storage'
85
+ c.action do |args, options|
86
+ svn_tag_from_jenkins
87
+ end
88
+ end
89
+
90
+ command :clean_working_copy do |c|
91
+ c.syntax = 'nixenvironment clean_working_copy'
92
+ c.description = 'Make working copy clean'
93
+ c.action do |args, options|
94
+ clean_working_copy
95
+ end
96
+ end
97
+
56
98
  def update(ninbas)
57
99
  root_working_directory = Dir.pwd
58
100
  target_directory = File.join(Dir.home, NIXENV_ROOT)
@@ -64,7 +106,6 @@ def update(ninbas)
64
106
  REPO_LIST.each do |repo_name, repo_url|
65
107
  unless Dir.exist?(repo_name)
66
108
  clone_success = system("git clone #{repo_url} --recursive")
67
-
68
109
  unless clone_success
69
110
  p("Authentication failed for #{repo_name} project!")
70
111
  next
@@ -75,7 +116,6 @@ def update(ninbas)
75
116
 
76
117
  if repo_name == BUILD_SCRIPTS
77
118
  if ninbas
78
- #TODO: rework me please!
79
119
  system("git checkout #{ninbas}")
80
120
  Dir.chdir('..')
81
121
  next
@@ -89,8 +129,9 @@ def update(ninbas)
89
129
  if tags.size > 0
90
130
  p("Checkout newest #{repo_name} tag...")
91
131
  system("git checkout #{tags.last}")
132
+ else
133
+ abort("Error checkout #{repo_name}! There is no tags!")
92
134
  end
93
- #TODO: hadle tags.size == 0
94
135
 
95
136
  p("Checkout #{repo_name} #{tags.last} tag success!")
96
137
 
@@ -147,8 +188,6 @@ def setup(config)
147
188
  -showBuildSettings ]
148
189
  end
149
190
 
150
- #TODO: handle if cmd_output still nil
151
-
152
191
  env_vars_list = cmd_output.split(/\n/).reject(&:empty?)
153
192
 
154
193
  build_settings = Hash.new
@@ -167,33 +206,20 @@ def setup(config)
167
206
  return build_settings
168
207
  end
169
208
 
170
- def prebuild(build_settings)
171
- save_revision_script_path = File.join(BUILD_SCRIPTS_PATH, 'SaveRevision.sh')
172
- save_build_env_vars_script_path = File.join(BUILD_SCRIPTS_PATH, 'SaveBuildEnvVars.sh')
173
- tag_icons_script_path = File.join(BUILD_SCRIPTS_PATH, 'XcodeIconTagger/tagIcons.sh')
174
- update_build_number_script_path = File.join(BUILD_SCRIPTS_PATH, 'UpdateBuildNumber.sh')
175
- update_revision_number_script_path = File.join(BUILD_SCRIPTS_PATH, 'UpdateRevisionNumber.sh')
176
-
177
- icon_path = @config['ICONS_PATH']
178
-
179
- system("#{save_revision_script_path}")
180
-
181
- abort unless working_copy_is_clean?
182
-
183
- # TODO: rewrite SaveBuildEnvVars.sh
184
- #system("#{save_build_env_vars_script_path}")
209
+ def save_build_env_vars(build_settings)
210
+ app_product = "#{build_settings['BUILT_PRODUCTS_DIR']}/#{build_settings['EXECUTABLE_NAME']}.app"
185
211
 
186
212
  system("
187
213
  echo \"#!/bin/sh\
188
- ### AUTOGENERATED BY SaveBuildEnvVars.sh; DO NOT EDIT ###
214
+ ### AUTOGENERATED BY Nixenvironment; DO NOT EDIT ###
189
215
  PROJECT=\"#{build_settings['PROJECT']}\"
190
216
  BUILT_PRODUCTS_DIR=\"#{build_settings['BUILT_PRODUCTS_DIR']}\"
191
217
  OBJECTS_NORMAL_DIR=\"#{build_settings['OBJECT_FILE_DIR_normal']}\"
192
218
  EXECUTABLE_NAME=\"#{build_settings['EXECUTABLE_NAME']}\"
193
- APP_PRODUCT=\"#{build_settings['BUILT_PRODUCTS_DIR']}/#{build_settings['EXECUTABLE_NAME']}.app\"
194
- APP_DSYM=\"#{build_settings['BUILT_PRODUCTS_DIR']}/#{build_settings['EXECUTABLE_NAME']}.app.dSYM\"
219
+ APP_PRODUCT=\"#{app_product}\"
220
+ APP_DSYM=\"#{app_product}.dSYM\"
195
221
  APP_INFOPLIST_FILE=\"#{@config['INFOPLIST_PATH']}\"
196
- EMBEDDED_PROFILE=\"#{build_settings['BUILT_PRODUCTS_DIR']}/#{build_settings['EXECUTABLE_NAME']}.app/#{build_settings['EMBEDDED_PROFILE_NAME']}\"
222
+ EMBEDDED_PROFILE=\"##{app_product}/#{build_settings['EMBEDDED_PROFILE_NAME']}\"
197
223
  TARGET_NAME=\"#{build_settings['TARGET_NAME']}\"
198
224
  CONFIGURATION=\"#{build_settings['CONFIGURATION']}\"
199
225
  SDK_NAME=\"#{build_settings['SDK_NAME']}\"
@@ -201,103 +227,135 @@ RESIGNED_BUNDLE_ID=\"#{build_settings['RESIGNED_BUNDLE_ID']}\"
201
227
  RESIGNED_BUNDLE_NAME=\"#{build_settings['RESIGNED_BUNDLE_NAME']}\"
202
228
  RESIGNED_ENTITLEMENTS_PATH=\"#{build_settings['RESIGNED_ENTITLEMENTS_PATH']}\"\" > _last_build_vars.sh
203
229
  ")
230
+ end
231
+
232
+ def prebuild(build_settings)
233
+ save_revision = File.join(BUILD_SCRIPTS_PATH, 'SaveRevision.sh')
234
+ tag_icons = File.join(BUILD_SCRIPTS_PATH, 'XcodeIconTagger/tagIcons.sh')
235
+ update_build_number = File.join(BUILD_SCRIPTS_PATH, 'UpdateBuildNumber.sh')
236
+ update_revision_number = File.join(BUILD_SCRIPTS_PATH, 'UpdateRevisionNumber.sh')
237
+
238
+ system("#{save_revision}")
239
+
240
+ abort unless working_copy_is_clean?
241
+
242
+ save_build_env_vars(build_settings)
204
243
 
205
244
  # TODO: rewrite tagIcons.sh
206
- # system("#{tag_icons_script_path} #{icon_path}")
245
+ # system("#{tag_icons} @config['ICONS_PATH']")
207
246
 
208
- # Implement all modify things in one script
209
- system("#{update_build_number_script_path}")
210
- system("#{update_revision_number_script_path}")
247
+ system("#{update_build_number}")
248
+ system("#{update_revision_number}")
211
249
  end
212
250
 
213
251
  def build(config, ipa)
214
- build_script_path = File.join(BUILD_SCRIPTS_PATH, 'Build.py')
252
+ build = File.join(BUILD_SCRIPTS_PATH, 'Build.py')
215
253
 
216
- system("#{build_script_path} --project \"#{@config['PROJECT_TO_BUILD']}\"\
217
- --target \"#{@config['PROJECT_TARGET_TO_BUILD']}\"\
218
- --workspace \"#{@config['WORKSPACE_TO_BUILD']}\"\
219
- --scheme \"#{@config['WORKSPACE_SCHEME_TO_BUILD']}\"\
220
- --configuration \"#{config}\"\
221
- --sdk \"#{@config['SDK']}\"\
222
- --env-var-prefix \"#{@config['ENV_VAR_PREFIX']}\"")
254
+ build_success = system("#{build} --project \"#{@config['PROJECT_TO_BUILD']}\"\
255
+ --target \"#{@config['PROJECT_TARGET_TO_BUILD']}\"\
256
+ --workspace \"#{@config['WORKSPACE_TO_BUILD']}\"\
257
+ --scheme \"#{@config['WORKSPACE_SCHEME_TO_BUILD']}\"\
258
+ --configuration \"#{config}\"\
259
+ --sdk \"#{@config['SDK']}\"\
260
+ --env-var-prefix \"#{@config['ENV_VAR_PREFIX']}\"")
261
+ abort('Build error!') unless build_success
223
262
 
224
263
  case ipa
225
264
  # create .ipa file from last built app product
226
265
  when 'ipa'
227
- make_script_path = File.join(BUILD_SCRIPTS_PATH, 'MakeIPA.sh')
266
+ make = File.join(BUILD_SCRIPTS_PATH, 'MakeIPA.sh')
228
267
  # resign last built app product with iPhone Developer profile and package it into .ipa file
229
268
  when 'resigned_ipa_for_device'
230
- make_script_path = File.join(BUILD_SCRIPTS_PATH, 'MakeResignedIPAForDevice.sh')
269
+ make = File.join(BUILD_SCRIPTS_PATH, 'MakeResignedIPAForDevice.sh')
231
270
  # resign last built app product with iPhone Distribution AdHoc profile and package it into .ipa file
232
271
  when 'resigned_ipa_for_adhoc_distribution'
233
- make_script_path = File.join(BUILD_SCRIPTS_PATH, 'MakeResignedIPAForAdHocDistribution.sh')
272
+ make = File.join(BUILD_SCRIPTS_PATH, 'MakeResignedIPAForAdHocDistribution.sh')
234
273
  # resign last built app product with Appstore distribution profile and package it into .ipa file
235
274
  when 'resigned_ipa_for_appstore'
236
- make_script_path = File.join(BUILD_SCRIPTS_PATH, 'MakeResignedIPAForAppstore.sh')
275
+ make = File.join(BUILD_SCRIPTS_PATH, 'MakeResignedIPAForAppstore.sh')
237
276
  else
238
- p("Error: Unknown ipa '#{ipa}'!")
277
+ abort("Error: Unknown ipa '#{ipa}'!")
239
278
  end
240
279
 
241
- system("#{make_script_path}") if defined? make_script_path
280
+ make_success = system("#{make}") if defined? make
281
+ abort("#{make} error!") unless make_success
242
282
  end
243
283
 
244
284
  def revert_info_plist
245
285
  p('Reverting Info.plist ...')
246
- system("git checkout #{@config['INFOPLIST_PATH']}")
247
- p('Done.')
286
+
287
+ revert_success = system("git checkout #{@config['INFOPLIST_PATH']}")
288
+ abort('Reverting Info.plist error!') unless revert_success
289
+
290
+ p('Info.plist was reverted.')
248
291
  end
249
292
 
250
- # deploys built artifacts to given server
251
293
  def deploy
252
- deploy_script_path = File.join(BUILD_SCRIPTS_PATH, 'Deploy.sh')
294
+ deploy = File.join(BUILD_SCRIPTS_PATH, 'Deploy.sh')
253
295
 
254
296
  deploy_host = @config['DEPLOY_HOST'].nil? || @config['DEPLOY_HOST'].empty? ? ENV['DEPLOY_HOST'] : @config['DEPLOY_HOST']
255
297
  deploy_path = @config['DEPLOY_PATH'].nil? || @config['DEPLOY_PATH'].empty? ? ENV['DEPLOY_PATH'] : @config['DEPLOY_PATH']
256
298
  deploy_username = @config['DEPLOY_USERNAME'].nil? || @config['DEPLOY_USERNAME'].empty? ? ENV['DEPLOY_USERNAME'] : @config['DEPLOY_USERNAME']
257
299
  deploy_password = @config['DEPLOY_PASSWORD'].nil? || @config['DEPLOY_PASSWORD'].empty? ? ENV['DEPLOY_PASSWORD'] : @config['DEPLOY_PASSWORD']
258
300
 
259
- system("#{deploy_script_path} #{deploy_host}\
260
- #{deploy_path}\
261
- #{deploy_username}\
262
- #{deploy_password}")
301
+ deploy_success = system("#{deploy} #{deploy_host} #{deploy_path} #{deploy_username} #{deploy_password}")
302
+ abort('Deploy error!') unless deploy_success
263
303
  end
264
304
 
265
305
  def clean
266
- remove_temporary_files_script_path = File.join(BUILD_SCRIPTS_PATH, 'RemoveTemporaryFiles.sh')
306
+ remove_temporary_files = File.join(BUILD_SCRIPTS_PATH, 'RemoveTemporaryFiles.sh')
267
307
 
268
- system("#{remove_temporary_files_script_path}")
308
+ system("#{remove_temporary_files}")
269
309
  system('rm -rf test-results/')
270
310
  system("find . -name \"*.pyc\" -exec rm -rf {} \;")
271
311
  system('xcodebuild -alltargets clean')
272
312
  end
273
313
 
274
- # # build unit tests and run them in simulator
275
- # def test
276
- # ${BUILD_SCRIPTS_PATH}Build.py --project "${PROJECT_TO_BUILD}" --target "${PROJECT_TARGET_TO_TEST}" --workspace "${WORKSPACE_TO_BUILD}" --scheme "${WORKSPACE_SCHEME_TO_TEST}" --configuration "Release" --sdk "${SDK_FOR_TESTS}" --env-var-prefix "${ENV_VAR_PREFIX}"
277
- # ${BUILD_SCRIPTS_PATH}RunTests.sh
278
- # ${BUILD_SCRIPTS_PATH}GenerateCodeCoverageReport.sh "${EXCLUDE_PATTERN_FOR_CODE_COVERAGE}" coverage.xml
279
- # end
280
- #
281
- # # generates code duplication report
282
- # def code_duplication_report
283
- # ${BUILD_SCRIPTS_PATH}GenerateCodeDuplicationReport.sh "${EXCLUDE_PATTERN_FOR_CODE_DUPLICATION}" duplication.xml
284
- # end
285
- #
286
- # # make SVN/git/mercurial tag, SCM_USERNAME and SCM_PASSWORD must be defined on calling this target
287
- # def tag
288
- # ${BUILD_SCRIPTS_PATH}MakeTag.sh "${SCM_USERNAME}" "${SCM_PASSWORD}"
289
- # end
290
- #
291
- # # Jenkins stores SVN credentials locally in XML, so this target gets and uses them on making tag by finding the first credential in local credential storage
292
- # # additional |echo| is needed in order to add newline, otherwise base64 encoding doesn't work
293
- # # ATTENTION: if this script picks up wrong credentials, then you should manually edit subversion.credentials file on Jenkins in order to remove the wrong credential
294
- # def svn_tag_from_jenkins:
295
- # SCM_USERNAME="$(shell xpath ../subversion.credentials \(//userName\)[1]/text\(\))"\
296
- # SCM_PASSWORD="$(shell echo $$(xpath ../subversion.credentials \(//password\)[1]/text\(\) 2>/dev/null && echo) | openssl base64 -d)"
297
- #
298
- # tag
299
- # end
300
- #
301
- # def clean_working_copy
302
- # ${BUILD_SCRIPTS_PATH}CleanWorkingCopy.sh
303
- # end
314
+ def test
315
+ build = File.join(BUILD_SCRIPTS_PATH, 'Build.py')
316
+ run_tests = File.join(BUILD_SCRIPTS_PATH, 'RunTests.sh')
317
+ generate_code_coverage_report = File.join(BUILD_SCRIPTS_PATH, 'GenerateCodeCoverageReport.sh')
318
+
319
+ build_success = system("#{build} --project \"#{@config['PROJECT_TO_BUILD']}\"\
320
+ --target \"#{@config['PROJECT_TARGET_TO_TEST']}\"\
321
+ --workspace \"#{@config['WORKSPACE_TO_BUILD']}\"\
322
+ --scheme \"#{@config['WORKSPACE_SCHEME_TO_TEST']}\"\
323
+ --configuration \"Release\"\
324
+ --sdk \"#{@config['SDK_FOR_TESTS']}\"\
325
+ --env-var-prefix \"#{@config['ENV_VAR_PREFIX']}\"")
326
+ abort('Build for test error!') unless build_success
327
+
328
+ run_tests_success = system("#{run_tests}")
329
+ abort('Run test error!') unless run_tests_success
330
+
331
+ coverage_success = system("#{generate_code_coverage_report} \"#{@config['EXCLUDE_PATTERN_FOR_CODE_COVERAGE']}\" coverage.xml")
332
+ abort('Generate code coverage error!') unless coverage_success
333
+ end
334
+
335
+ def code_duplication_report
336
+ generate_code_duplication_report = File.join(BUILD_SCRIPTS_PATH, 'GenerateCodeDuplicationReport.sh')
337
+ duplication_success = system("#{generate_code_duplication_report} \"#{@config['EXCLUDE_PATTERN_FOR_CODE_DUPLICATION']}\" duplication.xml")
338
+ abort('Generate code duplication error!') unless duplication_success
339
+ end
340
+
341
+ def tag
342
+ make_tag = File.join(BUILD_SCRIPTS_PATH, 'MakeTag.sh ')
343
+ tag_success = system("#{make_tag} \"#{ENV['SCM_USERNAME']}\" \"#{ENV['SCM_PASSWORD']}\"")
344
+ abort('Make tag error!') unless tag_success
345
+ end
346
+
347
+ # Jenkins stores SVN credentials locally in XML, so this command gets and uses them on making tag by finding the first credential in local credential storage
348
+ # ATTENTION: if this command picks up wrong credentials, then you should manually edit subversion.credentials file on Jenkins in order to remove the wrong credential
349
+ # Additional |echo| is needed in order to add newline, otherwise base64 encoding doesn't work
350
+ def svn_tag_from_jenkins
351
+ ENV['SCM_USERNAME']=%x[ $(shell xpath ../subversion.credentials \(//userName\)[1]/text\(\)) ]
352
+ ENV['SCM_PASSWORD']=%x[ $(shell echo $$(xpath ../subversion.credentials \(//password\)[1]/text\(\) 2>/dev/null && echo) | openssl base64 -d) ]
353
+
354
+ tag
355
+ end
356
+
357
+ def clean_working_copy
358
+ clean_working_copy = File.join(BUILD_SCRIPTS_PATH, 'CleanWorkingCopy.sh')
359
+ clean_success = system("#{clean_working_copy}")
360
+ abort('Clean working copy error!') unless clean_success
361
+ end
@@ -1,3 +1,3 @@
1
1
  module Nixenvironment
2
- VERSION = '0.0.8'
2
+ VERSION = '0.0.9'
3
3
  end
metadata CHANGED
@@ -1,69 +1,69 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nixenvironment
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Karen Arzumanian
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-06 00:00:00.000000000 Z
11
+ date: 2014-11-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.7'
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.7'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ~>
32
32
  - !ruby/object:Gem::Version
33
33
  version: '10.0'
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: '10.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: cocoapods
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ~>
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0.34'
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: '0.34'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: commander
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ~>
60
60
  - !ruby/object:Gem::Version
61
61
  version: '4.2'
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: '4.2'
69
69
  description: Installs, updates and manages inner environment stuff to make build and
@@ -76,7 +76,7 @@ executables:
76
76
  extensions: []
77
77
  extra_rdoc_files: []
78
78
  files:
79
- - ".gitignore"
79
+ - .gitignore
80
80
  - Gemfile
81
81
  - LICENSE.txt
82
82
  - README.md
@@ -97,17 +97,17 @@ require_paths:
97
97
  - lib
98
98
  required_ruby_version: !ruby/object:Gem::Requirement
99
99
  requirements:
100
- - - ">="
100
+ - - '>='
101
101
  - !ruby/object:Gem::Version
102
102
  version: '0'
103
103
  required_rubygems_version: !ruby/object:Gem::Requirement
104
104
  requirements:
105
- - - ">="
105
+ - - '>='
106
106
  - !ruby/object:Gem::Version
107
107
  version: '0'
108
108
  requirements: []
109
109
  rubyforge_project:
110
- rubygems_version: 2.2.2
110
+ rubygems_version: 2.0.14
111
111
  signing_key:
112
112
  specification_version: 4
113
113
  summary: NIX projects build and deploy utility