nixenvironment 0.0.77 → 0.0.79

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: b86af60e19d716873c260f3e03b4054282c3d569
4
- data.tar.gz: 4fbe4725f2639e52efb70269793c91e91f09d9de
3
+ metadata.gz: e93a34bbb5aeb1dcf4ab1dd60001ea18ed6b3ef6
4
+ data.tar.gz: c684207dbc816f36b1b6632a3bc2c89e8d98e288
5
5
  SHA512:
6
- metadata.gz: c57d21a9a174db9c60083c19b65bcb2be31292122cbdc4c79291f8ff481e18060cd5aae0ae8f566ec5cb1ef042adb9df7913d8835b29a159f62613d44fe7d9ca
7
- data.tar.gz: 5fc56573955f6d973ddb8a0b0a3e5da013cce5dcd8c88373475c6dc8a445106b3a846799af53af6f93bd36454fa4a9a3bc9bf4b5bfe4f997a216bee6cbea3afa
6
+ metadata.gz: d84393272f2d4b6073c88959ab78b3bdf7e0b196de91b1e0a74d98aea157741b8ef7a6e87cc3896929b963b0ef9385c8074df444f5b8c11a4c619a89998dd597
7
+ data.tar.gz: 09a803f91ce63521378085c2de85c505c68c7eb68a713e660826027952f6f1ebffb3193ebd5ccee806c90b7db3da04be1a9e122ddf7280926f8d209d69c34017
@@ -269,21 +269,33 @@ command :master do |c|
269
269
  c.option '--init', 'Init Jenkins master'
270
270
  c.option '--start', 'Start Jenkins master'
271
271
  c.option '--deinit', 'Deinit Jenkins master'
272
+ c.option '--start_pu', 'Start Provisioning updater'
273
+ c.option '--stop', 'Stop Jenkins master'
272
274
  c.action do |_args, options|
273
- if options.init
274
- MasterInitializer.new.start
275
- elsif options.deinit
276
- MasterDeinitializer.new.start
275
+ begin
276
+ if options.init
277
+ MasterInitializer.new.start
278
+ elsif options.deinit
279
+ MasterDeinitializer.new.start
280
+ end
281
+ rescue AlreadyInitialized
282
+ puts("Skip by reason: Already initialized")
283
+ end
284
+
285
+ if options.stop
286
+ MasterStarter.new.stop
277
287
  end
278
288
 
279
289
  if options.start
280
- starter = MastertStarter.new
290
+ starter = MasterStarter.new
281
291
 
282
292
  begin
283
293
  starter.start
284
294
  rescue SystemExit, Interrupt
285
295
  starter.stop
286
296
  end
297
+ elsif options.start_pu
298
+ MasterStarter.new.start_pu
287
299
  end
288
300
  end
289
301
  end
@@ -356,13 +368,16 @@ def init
356
368
  puts "Push ... #{dest_url}"
357
369
  Git.remote_add(repo_name, dest_url)
358
370
  Git.commit(:m => 'Initial commit')
371
+ Git.checkout(Git::DEVELOP, :b => true)
359
372
  Git.push(repo_name, Git::DEFAULT_REFSPEC, :f => true)
373
+ Git.push(repo_name, Git::DEVELOP, :f => true)
360
374
  raise "Push failed for #{dest_url} repository!" unless Git.last_cmd_success?
361
375
  end
362
376
  end
363
377
 
364
378
  puts "Cloning new created project from #{dest_url} to #{local_directory_to_clone} ..."
365
379
  Git.clone(dest_url, local_directory_to_clone, :r => true)
380
+ Dir.chdir(local_directory_to_clone) { |_path| Git.checkout(Git::DEVELOP) }
366
381
  raise "Error cloning #{dest_url}!" unless Git.last_cmd_success?
367
382
  rescue => e
368
383
  error('Project initialization failed!', e)
@@ -16,4 +16,6 @@ require 'nixenvironment/jenkins/slave/slave_starter'
16
16
  # Master
17
17
  require 'nixenvironment/jenkins/master/master_initializer'
18
18
  require 'nixenvironment/jenkins/master/master_deinitializer'
19
- require 'nixenvironment/jenkins/master/master_starter'
19
+ require 'nixenvironment/jenkins/master/master_starter'
20
+
21
+ require 'nixenvironment/jenkins/Modules/exceptions'
@@ -9,6 +9,7 @@ module Nixenvironment
9
9
  @binary_name = 'git'
10
10
 
11
11
  HEAD = 'HEAD'
12
+ DEVELOP = 'develop'
12
13
  REMOTE_MASTER = 'refs/heads/master'
13
14
  DEFAULT_REFSPEC = "#{HEAD}:#{REMOTE_MASTER}"
14
15
 
@@ -28,6 +29,7 @@ module Nixenvironment
28
29
  MESSAGE_OPT = '--message'
29
30
  FORCE_OPT = '--force'
30
31
  PORCELAIN_OPT = '--porcelain'
32
+ BRANCH_OPT = '-b'
31
33
 
32
34
  # options
33
35
  # :recursive, :r => after the clone is created, initialize all submodules within
@@ -54,6 +56,7 @@ module Nixenvironment
54
56
  def self.checkout(branch, options = {})
55
57
  arr_opts = []
56
58
  arr_opts << ORPHAN_OPT if options[:orphan]
59
+ arr_opts << BRANCH_OPT if options[:branch] || options[:b]
57
60
  arr_opts << branch
58
61
 
59
62
  execute(CHECKOUT_CMD, arr_opts)
@@ -51,16 +51,21 @@ module AppletHelper
51
51
  end
52
52
 
53
53
  def stop_applets
54
- javaProcesses = `jps -v`
55
- applets = applets_in_environment
54
+ begin
55
+ java_processes = `jps -v`
56
+ applets = applets_in_environment
56
57
 
57
- applets.each do |file_path|
58
- javaProcesses.each_line do |line|
59
- if line.include? file_path
60
- pid = line.split.first
61
- Process.kill('QUIT', pid.to_i)
58
+ applets.each do |file_path|
59
+ java_processes.each_line do |line|
60
+ if line.include? file_path
61
+ pid = line.split.first
62
+ Process.kill('QUIT', pid.to_i)
63
+ end
62
64
  end
63
65
  end
66
+ puts("Stop applets: done")
67
+ rescue
68
+ puts("Stop applets: fail")
64
69
  end
65
70
  end
66
71
  end
@@ -0,0 +1,5 @@
1
+ class AlreadyInitialized < Exception
2
+ end
3
+
4
+ class NotInitialized < Exception
5
+ end
@@ -0,0 +1,4 @@
1
+ #!/bin/sh
2
+
3
+ nixenvironment master --init --start
4
+ sh
@@ -1,7 +1,8 @@
1
1
  require_relative '../modules/applet_helper'
2
2
  require_relative '../modules/paths'
3
+ require_relative '../modules/exceptions'
3
4
 
4
- class MastertStarter
5
+ class MasterStarter
5
6
  include AppletHelper
6
7
  include Paths
7
8
 
@@ -10,39 +11,71 @@ class MastertStarter
10
11
  `pids=$(ps -fu $USER | grep "#{name}" | grep -v "grep" | awk '{print $2}')`
11
12
  `for pid in ${pids[@]}; do kill -9 $pid; done`
12
13
  end
13
-
14
+
15
+ def add_to_autorun
16
+ `osascript -e 'tell application "System Events" to make login item at end with properties {path:"#{__dir__}/iJenkins_autorun", hidden:true, name:"iJenkins Master"}'`
17
+ end
18
+
14
19
  public
15
20
  def start
16
- raise "Сan't run a slave." unless should_start_slave
17
-
21
+ raise NotInitialized unless should_start_slave
22
+
23
+ add_to_autorun
24
+
18
25
  # Applet
19
26
  start_master
20
27
 
21
28
  # Start Unity cache server
22
- cacheThread = Thread.new do
23
- FileUtils::mkdir_p("#{path_to_unity_cache}/Cache5.0")
24
- FileUtils::mkdir_p("#{path_to_unity_cache}/Cache")
25
- `#{path_to_environment}/CacheServer/RunOSX.command --path #{path_to_unity_cache}/Cache5.0 --legacypath #{path_to_unity_cache}/Cache`
26
- end
29
+ start_cache_server
27
30
 
28
31
  # Start provisioning updater
29
- serverThread = Thread.new do
30
- Dir.chdir(path_to_provisioning_updater) do
31
- `./run -e production -p 3000`
32
- end
33
- end
34
-
35
- cacheThread.join
36
- serverThread.join
32
+ start_pu
33
+
37
34
  true
38
35
  end
39
-
36
+
37
+ def start_pu
38
+ stop_pu
39
+
40
+ fork do
41
+ Dir.chdir(path_to_provisioning_updater) do
42
+ `./run -e production -p 3000`
43
+ end
44
+ end
45
+ end
46
+
47
+ def start_cache_server
48
+ stop_cache_server
49
+
50
+ fork do
51
+ FileUtils::mkdir_p("#{path_to_unity_cache}/Cache5.0")
52
+ FileUtils::mkdir_p("#{path_to_unity_cache}/Cache")
53
+ `#{path_to_environment}/CacheServer/RunOSX.command --path #{path_to_unity_cache}/Cache5.0 --legacypath #{path_to_unity_cache}/Cache`
54
+ end
55
+ end
56
+
40
57
  def stop
41
58
  stop_applets
59
+ stop_pu
60
+ stop_cache_server
61
+ kill_proc("rails")
62
+ end
63
+
64
+ def stop_pu
65
+ begin
42
66
  `kill -9 "$(cat #{path_to_provisioning_updater}/tmp/pids/server.pid)" 2>/dev/null`
67
+ puts("Stop Provisioning updater: done")
68
+ rescue
69
+ puts("Stop Provisioning updater: fail")
70
+ end
71
+ end
72
+
73
+ def stop_cache_server
74
+ begin
43
75
  kill_proc("#{path_to_environment}/CacheServer/")
44
- kill_proc("rails")
45
-
46
- true
76
+ puts("Stop Unity cache server: done")
77
+ rescue
78
+ puts("Stop Unity cache server: fail")
79
+ end
47
80
  end
48
81
  end
@@ -4,6 +4,7 @@ require_relative '../modules/provisioning_helper'
4
4
  require_relative '../modules/keychain_helper'
5
5
  require_relative '../modules/backup_helper'
6
6
  require_relative '../modules/gem_helper'
7
+ require_relative '../modules/exceptions'
7
8
 
8
9
  class SlaveInitializer
9
10
  include SshHelper
@@ -14,7 +15,7 @@ class SlaveInitializer
14
15
  include GemHelper
15
16
 
16
17
  def start
17
- raise 'Backup is already exist' if check_backup_exist
18
+ raise AlreadyInitialized if check_backup_exist
18
19
 
19
20
  # Git
20
21
  clone_environment
@@ -1,6 +1,7 @@
1
1
  require_relative '../modules/applet_helper'
2
2
  require_relative '../modules/git_helper'
3
3
  require_relative '../modules/provisioning_helper'
4
+ require_relative '../modules/exceptions'
4
5
 
5
6
  class SlaveStarter
6
7
  include AppletHelper
@@ -8,7 +9,7 @@ class SlaveStarter
8
9
  include ProvisioningHelper
9
10
 
10
11
  def start
11
- raise "Сan't run a slave." unless should_start_slave
12
+ raise NotInitialized unless should_start_slave
12
13
 
13
14
  # Git
14
15
  hook_thread = set_git_hook do
@@ -1,3 +1,3 @@
1
1
  module Nixenvironment
2
- VERSION = '0.0.77'
2
+ VERSION = '0.0.79'
3
3
  end
@@ -26,7 +26,7 @@ Gem::Specification.new do |spec|
26
26
  spec.add_dependency 'colorize'
27
27
  spec.add_dependency 'CFPropertyList', '= 2.2.8'
28
28
  spec.add_dependency 'pilot', '~> 1.0.0'
29
- spec.add_dependency 'nokogiri', '= 1.6.7.rc3'
29
+ spec.add_dependency 'nokogiri', '= 1.6.7.2'
30
30
  spec.add_dependency 'net-scp'
31
31
 
32
32
  # Development only
data/test.sh ADDED
@@ -0,0 +1,38 @@
1
+ #!/bin/sh
2
+
3
+ # Enter your gem name below (do not enter version number)
4
+ # or pass it as the first argument to the shell script
5
+ GEM_NAME="nixenvironment"
6
+
7
+ # Don't touch these
8
+ GEMSPEC_SUFFIX=".gemspec"
9
+ GEM_BUILD_CMD="gem build"
10
+
11
+ # if there is an argument to the script, define the gem name with it
12
+ if [ $# -eq 1 ]; then
13
+ GEM_NAME=$1
14
+ elif [ $# -gt 1 ]; then
15
+ echo "You entered too many arguments. Please specify the name of your gem as the argument to the script." >&2
16
+ exit 1
17
+ fi
18
+
19
+ # if the gem name has not been defined, print error message and exit
20
+ if [ -z "$GEM_NAME" ]; then
21
+ echo "You did not enter a gem name. Please include it as an argument to the script or hard code it as a variable in the script." >&2
22
+ exit 1
23
+ fi
24
+
25
+ # run the gem build and parse for the gem release filename
26
+ GEM_BUILD_NAME=$($GEM_BUILD_CMD "$GEM_NAME$GEMSPEC_SUFFIX" | awk '/File/ {print $2}' -)
27
+
28
+ # if the build failed (i.e. no file name obtained above), print error message and exit
29
+ if [ -z "$GEM_BUILD_NAME" ]; then
30
+ echo "The gem build failed. Please confirm the gem name and try again." >&2
31
+ exit 1
32
+ fi
33
+
34
+ # if above succeeded, update bundle and install the gem that was compiled
35
+ bundle update
36
+ sudo gem install --local $GEM_BUILD_NAME
37
+
38
+ exit 0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nixenvironment
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.77
4
+ version: 0.0.79
5
5
  platform: ruby
6
6
  authors:
7
7
  - Karen
@@ -9,76 +9,76 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-02-01 00:00:00.000000000 Z
12
+ date: 2016-02-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: cocoapods
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - '>='
18
+ - - ">="
19
19
  - !ruby/object:Gem::Version
20
20
  version: '0'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - '>='
25
+ - - ">="
26
26
  - !ruby/object:Gem::Version
27
27
  version: '0'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: xcpretty
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - '>='
32
+ - - ">="
33
33
  - !ruby/object:Gem::Version
34
34
  version: '0'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - '>='
39
+ - - ">="
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: ocunit2junit
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - '>='
46
+ - - ">="
47
47
  - !ruby/object:Gem::Version
48
48
  version: '0'
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - '>='
53
+ - - ">="
54
54
  - !ruby/object:Gem::Version
55
55
  version: '0'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: terminal-table
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - '>='
60
+ - - ">="
61
61
  - !ruby/object:Gem::Version
62
62
  version: '0'
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - '>='
67
+ - - ">="
68
68
  - !ruby/object:Gem::Version
69
69
  version: '0'
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: colorize
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - '>='
74
+ - - ">="
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  type: :runtime
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - '>='
81
+ - - ">="
82
82
  - !ruby/object:Gem::Version
83
83
  version: '0'
84
84
  - !ruby/object:Gem::Dependency
@@ -99,14 +99,14 @@ dependencies:
99
99
  name: pilot
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - ~>
102
+ - - "~>"
103
103
  - !ruby/object:Gem::Version
104
104
  version: 1.0.0
105
105
  type: :runtime
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - ~>
109
+ - - "~>"
110
110
  - !ruby/object:Gem::Version
111
111
  version: 1.0.0
112
112
  - !ruby/object:Gem::Dependency
@@ -115,96 +115,96 @@ dependencies:
115
115
  requirements:
116
116
  - - '='
117
117
  - !ruby/object:Gem::Version
118
- version: 1.6.7.rc3
118
+ version: 1.6.7.2
119
119
  type: :runtime
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
123
  - - '='
124
124
  - !ruby/object:Gem::Version
125
- version: 1.6.7.rc3
125
+ version: 1.6.7.2
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: net-scp
128
128
  requirement: !ruby/object:Gem::Requirement
129
129
  requirements:
130
- - - '>='
130
+ - - ">="
131
131
  - !ruby/object:Gem::Version
132
132
  version: '0'
133
133
  type: :runtime
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
136
136
  requirements:
137
- - - '>='
137
+ - - ">="
138
138
  - !ruby/object:Gem::Version
139
139
  version: '0'
140
140
  - !ruby/object:Gem::Dependency
141
141
  name: bundler
142
142
  requirement: !ruby/object:Gem::Requirement
143
143
  requirements:
144
- - - '>='
144
+ - - ">="
145
145
  - !ruby/object:Gem::Version
146
146
  version: '0'
147
147
  type: :development
148
148
  prerelease: false
149
149
  version_requirements: !ruby/object:Gem::Requirement
150
150
  requirements:
151
- - - '>='
151
+ - - ">="
152
152
  - !ruby/object:Gem::Version
153
153
  version: '0'
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: rake
156
156
  requirement: !ruby/object:Gem::Requirement
157
157
  requirements:
158
- - - '>='
158
+ - - ">="
159
159
  - !ruby/object:Gem::Version
160
160
  version: '0'
161
161
  type: :development
162
162
  prerelease: false
163
163
  version_requirements: !ruby/object:Gem::Requirement
164
164
  requirements:
165
- - - '>='
165
+ - - ">="
166
166
  - !ruby/object:Gem::Version
167
167
  version: '0'
168
168
  - !ruby/object:Gem::Dependency
169
169
  name: rspec
170
170
  requirement: !ruby/object:Gem::Requirement
171
171
  requirements:
172
- - - '>='
172
+ - - ">="
173
173
  - !ruby/object:Gem::Version
174
174
  version: '0'
175
175
  type: :development
176
176
  prerelease: false
177
177
  version_requirements: !ruby/object:Gem::Requirement
178
178
  requirements:
179
- - - '>='
179
+ - - ">="
180
180
  - !ruby/object:Gem::Version
181
181
  version: '0'
182
182
  - !ruby/object:Gem::Dependency
183
183
  name: commander
184
184
  requirement: !ruby/object:Gem::Requirement
185
185
  requirements:
186
- - - '>='
186
+ - - ">="
187
187
  - !ruby/object:Gem::Version
188
188
  version: '0'
189
189
  type: :development
190
190
  prerelease: false
191
191
  version_requirements: !ruby/object:Gem::Requirement
192
192
  requirements:
193
- - - '>='
193
+ - - ">="
194
194
  - !ruby/object:Gem::Version
195
195
  version: '0'
196
196
  - !ruby/object:Gem::Dependency
197
197
  name: fuzzy_match
198
198
  requirement: !ruby/object:Gem::Requirement
199
199
  requirements:
200
- - - '>='
200
+ - - ">="
201
201
  - !ruby/object:Gem::Version
202
202
  version: '0'
203
203
  type: :development
204
204
  prerelease: false
205
205
  version_requirements: !ruby/object:Gem::Requirement
206
206
  requirements:
207
- - - '>='
207
+ - - ">="
208
208
  - !ruby/object:Gem::Version
209
209
  version: '0'
210
210
  description: Installs, updates and manages inner environment stuff to make build and
@@ -217,7 +217,7 @@ executables:
217
217
  extensions: []
218
218
  extra_rdoc_files: []
219
219
  files:
220
- - .gitignore
220
+ - ".gitignore"
221
221
  - Gemfile
222
222
  - LICENSE.txt
223
223
  - README.md
@@ -242,12 +242,14 @@ files:
242
242
  - lib/nixenvironment/git.rb
243
243
  - lib/nixenvironment/jenkins/Modules/applet_helper.rb
244
244
  - lib/nixenvironment/jenkins/Modules/backup_helper.rb
245
+ - lib/nixenvironment/jenkins/Modules/exceptions.rb
245
246
  - lib/nixenvironment/jenkins/Modules/gem_helper.rb
246
247
  - lib/nixenvironment/jenkins/Modules/git_helper.rb
247
248
  - lib/nixenvironment/jenkins/Modules/keychain_helper.rb
248
249
  - lib/nixenvironment/jenkins/Modules/paths.rb
249
250
  - lib/nixenvironment/jenkins/Modules/provisioning_helper.rb
250
251
  - lib/nixenvironment/jenkins/Modules/ssh_helper.rb
252
+ - lib/nixenvironment/jenkins/master/iJenkins_autorun
251
253
  - lib/nixenvironment/jenkins/master/master_deinitializer.rb
252
254
  - lib/nixenvironment/jenkins/master/master_initializer.rb
253
255
  - lib/nixenvironment/jenkins/master/master_starter.rb
@@ -259,6 +261,7 @@ files:
259
261
  - lib/nixenvironment/version.rb
260
262
  - lib/nixenvironment/xcodebuild.rb
261
263
  - nixenvironment.gemspec
264
+ - test.sh
262
265
  - utils/XcodeIconTagger/IconTagger
263
266
  - utils/XcodeIconTagger/masks/OneLineMask.png
264
267
  - utils/XcodeIconTagger/masks/TwoLineMask.png
@@ -276,17 +279,17 @@ require_paths:
276
279
  - lib
277
280
  required_ruby_version: !ruby/object:Gem::Requirement
278
281
  requirements:
279
- - - '>='
282
+ - - ">="
280
283
  - !ruby/object:Gem::Version
281
284
  version: 2.0.0
282
285
  required_rubygems_version: !ruby/object:Gem::Requirement
283
286
  requirements:
284
- - - '>='
287
+ - - ">="
285
288
  - !ruby/object:Gem::Version
286
289
  version: '0'
287
290
  requirements: []
288
291
  rubyforge_project:
289
- rubygems_version: 2.0.14
292
+ rubygems_version: 2.5.1
290
293
  signing_key:
291
294
  specification_version: 4
292
295
  summary: NIX projects build and deploy utility