dev-lxc 0.2.3 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: c4a6d760a6df8b811cd6028e91d1964e8396de53
4
+ data.tar.gz: 8aeba30eb10916eaf0e193addad0d1c6e126e28b
5
+ SHA512:
6
+ metadata.gz: 5848cd101928b5769f0f1f376fd5900d7644a4069e9591c06554b5fba411d0c6176df9fa68e349b134cbdb12131af09a1c63d18d132095df10fc29d646a1239d
7
+ data.tar.gz: ee0568a316d55e9e3694d087407fbceb6c3957883b0317a1cb6ea068c44f1bc09febee771bd017d65b4124f8b799e41f9c442d609af78d7f3e6080e945184475
data/README.md CHANGED
@@ -297,8 +297,11 @@ creation of the cluster's servers is very quick.
297
297
 
298
298
  [https://chef-tier.lxc](https://chef-tier.lxc) resolves to the frontend.
299
299
 
300
- Ponyville and wonderbolts orgs, users, knife.rb and keys are automatically created in
301
- the bootstrap backend server in /srv/piab/users for testing purposes.
300
+ A test org and user and knife.rb and keys are automatically created in
301
+ the bootstrap backend server in /root/chef-repo/.chef for testing purposes.
302
+ The `knife-opc` plugin is installed in the embedded ruby environment of the
303
+ Private Chef and Enterprise Chef server to facilitate the creation of the test
304
+ org and user.
302
305
 
303
306
  Show the status of the cluster.
304
307
 
@@ -83,10 +83,6 @@ module DevLXC
83
83
 
84
84
  def chef_server_config
85
85
  chef_server_config = %Q(api_fqdn "#{@api_fqdn}"\n)
86
- @cluster_config["packages"]["server"].to_s.match(/(private-chef|chef-server)[_-](\d+)\.(\d+\.?){2,}-/)
87
- if Regexp.last_match[2].to_i >= 11
88
- chef_server_config += %Q(bookshelf["vip"] = "#{@api_fqdn}"\n)
89
- end
90
86
  if %w(tier ha).include?(@topology)
91
87
  chef_server_config += %Q(
92
88
  topology "#{@topology}"
@@ -28,9 +28,24 @@ module DevLXC
28
28
  @base_platform = cluster_config["base_platform"]
29
29
  @packages = cluster_config["packages"]
30
30
 
31
+ if File.basename(@packages["server"]).match(/^(\w+-\w+.*)[_-]((?:\d+\.?){3,})-/)
32
+ @chef_server_type = Regexp.last_match[1]
33
+ @chef_server_version = Regexp.last_match[2].gsub(".", "-")
34
+ end
35
+
31
36
  @base_server_name = @base_platform
32
- @base_server_name += "-ec-#{Regexp.last_match[1].gsub(".", "-")}" if @packages["server"].to_s.match(/private-chef[_-]((\d+\.?){3,})-/)
33
- @base_server_name += "-osc-#{Regexp.last_match[1].gsub(".", "-")}" if @packages["server"].to_s.match(/chef-server[_-]((\d+\.?){3,})-/)
37
+ case @chef_server_type
38
+ when 'chef-server-core'
39
+ @base_server_name += '-cs'
40
+ @server_ctl = 'chef-server'
41
+ when 'private-chef'
42
+ @base_server_name += '-ec'
43
+ @server_ctl = 'private-chef'
44
+ when 'chef-server'
45
+ @base_server_name += '-osc'
46
+ @server_ctl = 'chef-server'
47
+ end
48
+ @base_server_name += "-#{@chef_server_version}"
34
49
  @base_server_name += "-reporting-#{Regexp.last_match[1].gsub(".", "-")}" if @packages["reporting"].to_s.match(/[_-]((\d+\.?){3,})-/)
35
50
  @base_server_name += "-pushy-#{Regexp.last_match[1].gsub(".", "-")}" if @packages["push-jobs-server"].to_s.match(/[_-]((\d+\.?){3,})-/)
36
51
  end
@@ -181,19 +196,26 @@ module DevLXC
181
196
  case @role
182
197
  when "open-source"
183
198
  puts "Creating /etc/chef-server/chef-server.rb"
184
- FileUtils.mkdir("#{@server.config_item('lxc.rootfs')}/etc/chef-server")
199
+ FileUtils.mkdir_p("#{@server.config_item('lxc.rootfs')}/etc/chef-server")
185
200
  IO.write("#{@server.config_item('lxc.rootfs')}/etc/chef-server/chef-server.rb", @chef_server_config)
186
- run_ctl("chef-server", "reconfigure")
201
+ run_ctl(@server_ctl, "reconfigure")
187
202
  when "standalone", "bootstrap_backend"
188
- puts "Creating /etc/opscode/private-chef.rb"
189
- FileUtils.mkdir("#{@server.config_item('lxc.rootfs')}/etc/opscode")
190
- IO.write("#{@server.config_item('lxc.rootfs')}/etc/opscode/private-chef.rb", @chef_server_config)
191
- run_ctl("private-chef", "reconfigure")
203
+ case @chef_server_type
204
+ when 'private-chef'
205
+ puts "Creating /etc/opscode/private-chef.rb"
206
+ FileUtils.mkdir_p("#{@server.config_item('lxc.rootfs')}/etc/opscode")
207
+ IO.write("#{@server.config_item('lxc.rootfs')}/etc/opscode/private-chef.rb", @chef_server_config)
208
+ when 'chef-server-core'
209
+ puts "Creating /etc/opscode/chef-server.rb"
210
+ FileUtils.mkdir_p("#{@server.config_item('lxc.rootfs')}/etc/opscode")
211
+ IO.write("#{@server.config_item('lxc.rootfs')}/etc/opscode/chef-server.rb", @chef_server_config)
212
+ end
213
+ run_ctl(@server_ctl, "reconfigure")
192
214
  when "secondary_backend", "frontend"
193
215
  puts "Copying /etc/opscode from bootstrap backend"
194
216
  FileUtils.cp_r("#{LXC::Container.new(@bootstrap_backend).config_item('lxc.rootfs')}/etc/opscode",
195
217
  "#{@server.config_item('lxc.rootfs')}/etc")
196
- run_ctl("private-chef", "reconfigure")
218
+ run_ctl(@server_ctl, "reconfigure")
197
219
  end
198
220
  end
199
221
 
@@ -203,23 +225,25 @@ module DevLXC
203
225
  FileUtils.cp_r("#{LXC::Container.new(@bootstrap_backend).config_item('lxc.rootfs')}/etc/opscode-reporting",
204
226
  "#{@server.config_item('lxc.rootfs')}/etc")
205
227
  end
206
- run_ctl("private-chef", "reconfigure")
228
+ run_ctl(@server_ctl, "reconfigure")
207
229
  run_ctl("opscode-reporting", "reconfigure")
208
230
  end
209
231
 
210
232
  def configure_push_jobs_server
211
233
  run_ctl("opscode-push-jobs-server", "reconfigure")
212
234
  if %w(bootstrap_backend secondary_backend).include?(@role)
213
- run_ctl("private-chef", "reconfigure")
235
+ run_ctl(@server_ctl, "reconfigure")
214
236
  end
215
- run_ctl("private-chef", "restart opscode-pushy-server")
237
+ run_ctl(@server_ctl, "restart opscode-pushy-server")
216
238
  end
217
239
 
218
240
  def configure_manage
219
- puts "Disabling old opscode-webui in /etc/opscode/private-chef.rb"
220
- DevLXC.search_file_delete_line("#{@server.config_item('lxc.rootfs')}/etc/opscode/private-chef.rb", /opscode_webui[.enable.]/)
221
- DevLXC.append_line_to_file("#{@server.config_item('lxc.rootfs')}/etc/opscode/private-chef.rb", "\nopscode_webui['enable'] = false\n")
222
- run_ctl("private-chef", "reconfigure")
241
+ if @chef_server_type == 'private-chef'
242
+ puts "Disabling old opscode-webui in /etc/opscode/private-chef.rb"
243
+ DevLXC.search_file_delete_line("#{@server.config_item('lxc.rootfs')}/etc/opscode/private-chef.rb", /opscode_webui[.enable.]/)
244
+ DevLXC.append_line_to_file("#{@server.config_item('lxc.rootfs')}/etc/opscode/private-chef.rb", "\nopscode_webui['enable'] = false\n")
245
+ run_ctl(@server_ctl, "reconfigure")
246
+ end
223
247
  run_ctl("opscode-manage", "reconfigure")
224
248
  end
225
249
 
@@ -229,17 +253,34 @@ module DevLXC
229
253
  end
230
254
 
231
255
  def create_users
232
- puts "Creating users, keys and knife config files"
233
- FileUtils.mkdir_p(["#{@server.config_item('lxc.rootfs')}/cookbooks/create_users/recipes",
234
- "#{@server.config_item('lxc.rootfs')}/cookbooks/create_users/templates/default",
235
- "#{@server.config_item('lxc.rootfs')}/cookbooks/create_users/libraries"])
236
- FileUtils.cp("#{File.dirname(__FILE__)}/../../files/create_users/default.rb", "#{@server.config_item('lxc.rootfs')}/cookbooks/create_users/recipes")
237
- DevLXC.search_file_replace("#{@server.config_item('lxc.rootfs')}/cookbooks/create_users/recipes/default.rb", /chef\.lxc/, @api_fqdn)
238
- FileUtils.cp("#{File.dirname(__FILE__)}/../../files/create_users/knife.rb.erb", "#{@server.config_item('lxc.rootfs')}/cookbooks/create_users/templates/default")
239
- FileUtils.cp("#{File.dirname(__FILE__)}/../../files/create_users/create_users.rb", "#{@server.config_item('lxc.rootfs')}/cookbooks/create_users/libraries")
240
- IO.write("#{@server.config_item('lxc.rootfs')}/cookbooks/solo.rb", "cookbook_path '/cookbooks'")
241
- @server.run_command("/opt/opscode/embedded/bin/chef-solo -c /cookbooks/solo.rb -o create_users -l info")
242
- FileUtils.rm_r("#{@server.config_item('lxc.rootfs')}/cookbooks")
256
+ puts "Creating org, user, keys and knife.rb in /root/chef-repo/.chef"
257
+ FileUtils.mkdir_p("#{@server.config_item('lxc.rootfs')}/root/chef-repo/.chef")
258
+ knife_rb = "chef_server_url 'https://127.0.0.1/organizations/ponyville'\n"
259
+ knife_rb += "node_name 'rainbowdash'\n"
260
+ knife_rb += "client_key 'rainbowdash.pem'\n"
261
+ knife_rb += "knife[:chef_repo_path] = Dir.pwd\n"
262
+ IO.write("#{@server.config_item('lxc.rootfs')}/root/chef-repo/.chef/knife.rb", knife_rb)
263
+ case @chef_server_type
264
+ when 'private-chef'
265
+ # give time for all services to come up completely
266
+ sleep 60
267
+ pivotal_rb = "chef_server_root 'https://127.0.0.1/'\n"
268
+ pivotal_rb += "chef_server_url 'https://127.0.0.1/'\n"
269
+ pivotal_rb += "node_name 'pivotal'\n"
270
+ pivotal_rb += "client_key '/etc/opscode/pivotal.pem'\n"
271
+ pivotal_rb += "knife[:chef_repo_path] = Dir.pwd\n"
272
+ IO.write("#{@server.config_item('lxc.rootfs')}/root/chef-repo/.chef/pivotal.rb", pivotal_rb)
273
+ @server.run_command("/opt/opscode/embedded/bin/gem install knife-opc --no-ri --no-rdoc")
274
+ @server.run_command("/opt/opscode/embedded/bin/knife opc org create ponyville ponyville --filename /root/chef-repo/.chef/ponyville-validator.pem -c /root/chef-repo/.chef/pivotal.rb")
275
+ @server.run_command("/opt/opscode/embedded/bin/knife opc user create rainbowdash rainbowdash rainbowdash rainbowdash@noreply.com rainbowdash --filename /root/chef-repo/.chef/rainbowdash.pem -c /root/chef-repo/.chef/pivotal.rb")
276
+ @server.run_command("/opt/opscode/embedded/bin/knife opc org user add ponyville rainbowdash --admin")
277
+ when 'chef-server-core'
278
+ # give time for all services to come up completely
279
+ sleep 10
280
+ run_ctl(@server_ctl, "org-create ponyville ponyville --filename /root/chef-repo/.chef/ponyville-validator.pem")
281
+ run_ctl(@server_ctl, "user-create rainbowdash rainbowdash rainbowdash rainbowdash@noreply.com rainbowdash --filename /root/chef-repo/.chef/rainbowdash.pem")
282
+ run_ctl(@server_ctl, "org-user-add ponyville rainbowdash --admin")
283
+ end
243
284
  end
244
285
  end
245
286
  end
@@ -1,3 +1,3 @@
1
1
  module DevLXC
2
- VERSION = "0.2.3"
2
+ VERSION = "0.2.4"
3
3
  end
data/lib/dev-lxc.rb CHANGED
@@ -18,6 +18,8 @@ module DevLXC
18
18
  base_platform.create("download", "btrfs", 0, ["-d", "ubuntu", "-r", "lucid", "-a", "amd64"])
19
19
  when "b-ubuntu-1204"
20
20
  base_platform.create("download", "btrfs", 0, ["-d", "ubuntu", "-r", "precise", "-a", "amd64"])
21
+ when "b-ubuntu-1404"
22
+ base_platform.create("download", "btrfs", 0, ["-d", "ubuntu", "-r", "trusty", "-a", "amd64"])
21
23
  when "b-centos-5"
22
24
  base_platform.create("centos", "btrfs", 0, ["-R", "5"])
23
25
  when "b-centos-6"
@@ -45,7 +47,7 @@ module DevLXC
45
47
  end
46
48
  base_platform.run_command("apt-get update")
47
49
  base_platform.run_command("apt-get install -y standard^ server^ vim-nox emacs23-nox curl tree")
48
- when "b-ubuntu-1204"
50
+ when "b-ubuntu-1204", "b-ubuntu-1404"
49
51
  base_platform.run_command("apt-get update")
50
52
  base_platform.run_command("apt-get install -y standard^ server^ vim-nox emacs23-nox tree")
51
53
  when "b-centos-5"
metadata CHANGED
@@ -1,78 +1,69 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dev-lxc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
5
- prerelease:
4
+ version: 0.2.4
6
5
  platform: ruby
7
6
  authors:
8
7
  - Jeremiah Snapp
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-03-20 00:00:00.000000000 Z
11
+ date: 2015-01-24 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: bundler
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
19
  version: '1.3'
22
20
  type: :development
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
29
26
  version: '1.3'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rake
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ~>
38
+ - - "~>"
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: thor
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ~>
45
+ - - "~>"
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ~>
52
+ - - "~>"
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: ruby-lxc
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ~>
59
+ - - "~>"
68
60
  - !ruby/object:Gem::Version
69
61
  version: 1.0.1
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ~>
66
+ - - "~>"
76
67
  - !ruby/object:Gem::Version
77
68
  version: 1.0.1
78
69
  description: A tool for creating Chef server clusters using LXC containers
@@ -83,7 +74,7 @@ executables:
83
74
  extensions: []
84
75
  extra_rdoc_files: []
85
76
  files:
86
- - .gitignore
77
+ - ".gitignore"
87
78
  - Gemfile
88
79
  - LICENSE
89
80
  - README.md
@@ -94,9 +85,6 @@ files:
94
85
  - files/configs/open-source.yaml
95
86
  - files/configs/standalone.yaml
96
87
  - files/configs/tier.yaml
97
- - files/create_users/create_users.rb
98
- - files/create_users/default.rb
99
- - files/create_users/knife.rb.erb
100
88
  - lib/dev-lxc.rb
101
89
  - lib/dev-lxc/chef-cluster.rb
102
90
  - lib/dev-lxc/chef-server.rb
@@ -106,27 +94,26 @@ files:
106
94
  homepage: https://github.com/jeremiahsnapp/dev-lxc
107
95
  licenses:
108
96
  - Apache2
97
+ metadata: {}
109
98
  post_install_message:
110
99
  rdoc_options: []
111
100
  require_paths:
112
101
  - lib
113
102
  required_ruby_version: !ruby/object:Gem::Requirement
114
- none: false
115
103
  requirements:
116
- - - ! '>='
104
+ - - ">="
117
105
  - !ruby/object:Gem::Version
118
106
  version: '0'
119
107
  required_rubygems_version: !ruby/object:Gem::Requirement
120
- none: false
121
108
  requirements:
122
- - - ! '>='
109
+ - - ">="
123
110
  - !ruby/object:Gem::Version
124
111
  version: '0'
125
112
  requirements: []
126
113
  rubyforge_project:
127
- rubygems_version: 1.8.23
114
+ rubygems_version: 2.4.1
128
115
  signing_key:
129
- specification_version: 3
116
+ specification_version: 4
130
117
  summary: A tool for creating Chef server clusters using LXC containers
131
118
  test_files: []
132
119
  has_rdoc:
@@ -1,53 +0,0 @@
1
- # Authors
2
- # Seth Chisamore
3
- # Seth Falcon
4
- # Jeremiah Snapp
5
-
6
- require 'chef/mixin/shell_out'
7
- include Chef::Mixin::ShellOut
8
-
9
- class PiabHelper
10
-
11
- VALID_OMNIBUS_ROOTS = %w{
12
- /opt/opscode
13
- /opt/chef-server
14
- }
15
-
16
- def self.omnibus_root
17
- @@root_path ||= begin
18
- root_path = VALID_OMNIBUS_ROOTS.detect{|path| File.exists?(path) }
19
- raise "Could not locate one of #{VALID_OMNIBUS_ROOTS.join(', ')}" unless root_path
20
- root_path
21
- end
22
- end
23
-
24
- def self.omnibus_bin_path
25
- self.omnibus_root + "/embedded/bin"
26
- end
27
-
28
- def self.private_chef_ha?
29
- File.exists?("/etc/opscode/private-chef.rb") && File.read("/etc/opscode/private-chef.rb") =~ /topology\s+.*ha/
30
- end
31
-
32
- def self.private_chef?
33
- File.exists?("/opt/opscode/bin/private-chef-ctl")
34
- end
35
-
36
- def self.open_source_chef?
37
- File.exists?("/opt/chef-server/bin/chef-server-ctl")
38
- end
39
-
40
- def self.existing_config
41
- config_files = {
42
- "private_chef" => "/etc/opscode/chef-server-running.json",
43
- "chef_server" => "/etc/chef-server/chef-server-running.json"
44
- }
45
- config_files.each do |key, path|
46
- if ::File.exists?(path)
47
- return Chef::JSONCompat.from_json(IO.read(path))[key]
48
- end
49
- end
50
- raise "No existing config found"
51
- end
52
-
53
- end
@@ -1,261 +0,0 @@
1
- # Authors
2
- # Seth Chisamore
3
- # Seth Falcon
4
-
5
- # OPC config data
6
- # TODO - read this in from /etc/opscode/chef-server-running.json
7
- opc_bundle = "#{PiabHelper.omnibus_root}/embedded/bin/bundle"
8
- opscode_account_url = "http://127.0.0.1:9465"
9
- opscode_account_path = "#{PiabHelper.omnibus_root}/embedded/service/opscode-account"
10
- superuser_pem = "/etc/opscode/pivotal.pem"
11
- superuser_name = ::File.basename(superuser_pem).split('.')[0]
12
- user_root = "/srv/piab/users"
13
- dev_users = {}
14
-
15
- organizations = {
16
- 'ponyville' => [
17
- 'rainbowdash',
18
- 'fluttershy',
19
- 'applejack',
20
- 'pinkiepie',
21
- 'twilightsparkle',
22
- 'rarity'
23
- ],
24
- 'wonderbolts' => [
25
- 'spitfire',
26
- 'soarin',
27
- 'rapidfire',
28
- 'fleetfoot'
29
- ]
30
- }
31
-
32
- organizations.each do |orgname, users|
33
-
34
- users.each do |username|
35
-
36
- folder = "#{user_root}/#{username}"
37
- dot_chef = "#{folder}/.chef"
38
-
39
- dev_users[username] = {
40
- 'username' => username,
41
- 'displayname' => username,
42
- 'email' => "#{username}@mylittlepony.com",
43
- 'orgname' => orgname,
44
- 'folder' => folder,
45
- 'private_key' => "#{dot_chef}/#{username}.pem",
46
- 'org_validator' => "#{dot_chef}/#{username}-validator.pem",
47
- 'knife_config' => "#{dot_chef}/knife.rb"
48
- }
49
-
50
- end
51
- end
52
-
53
- unless File.exists?("/srv/piab/dev_users_created")
54
-
55
- ruby_block "Waiting for first-time OPC initializtion" do
56
- block do
57
- sleep 10
58
- end
59
- end
60
-
61
- dev_users.each_pair do |name, options|
62
-
63
- # create the students .chef/ dir
64
- directory ::File.dirname(options['private_key']) do
65
- recursive true
66
- action :create
67
- end
68
-
69
- # create an account on the OPC for the student
70
- execute "create OPC account #{name}" do
71
- command <<-EOH
72
- #{opc_bundle} exec bin/createobjecttool --object-type 'user' -a '#{opscode_account_url}' \
73
- --object-name #{options['username']} --displayname '#{options['displayname']}' -e '#{options['email']}' \
74
- -f '#{options['displayname']}' -m '#{options['displayname']}' -l '#{options['displayname']}' \
75
- --key-path #{options['private_key']} --user-password '#{options['username']}' \
76
- --opscode-username #{superuser_name} --opscode-private-key #{superuser_pem}
77
- EOH
78
- cwd opscode_account_path
79
- end
80
-
81
- # create a knife.rb file for the user
82
- template "#{options['knife_config']}" do
83
- source "knife.rb.erb"
84
- variables(
85
- :username => options['username'],
86
- :orgname => options['orgname'],
87
- :server_fqdn => 'chef.lxc'
88
- )
89
- mode "0777"
90
- action :create
91
- end
92
-
93
- end
94
-
95
- # create the orgs and associate the users
96
- organizations.each do |orgname, users|
97
-
98
- org_validator = "#{user_root}/#{orgname}-validator.pem"
99
-
100
- ruby_block "create OPC organization #{orgname}" do
101
- block do
102
- cmd =<<-EOH
103
- #{opc_bundle} exec bin/createorgtool -t Business -a '#{opscode_account_url}' \
104
- --org-name #{orgname} --customer-org-fullname '#{orgname}' \
105
- --username '#{users.join(' ')}' \
106
- --client-key-path #{org_validator} \
107
- --opscode-username #{superuser_name} --opscode-private-key #{superuser_pem}
108
- EOH
109
- waiting = true
110
- while waiting
111
- opts = {:cwd => opscode_account_path,
112
- :returns => [0,53]}
113
- case shell_out(cmd, opts).exitstatus
114
- when 53
115
- Chef::Log.info("...")
116
- sleep 10
117
- when 0
118
- Chef::Log.info("#{orgname} created!")
119
- waiting = false
120
- else
121
- Chef::Log.error("#{orgname} not created...error!")
122
- waiting = false
123
- end
124
- end
125
- end
126
- end
127
-
128
- end
129
-
130
- ruby_block 'LOL' do
131
- block do
132
- Chef::Log.info <<-EOH
133
-
134
-
135
- .`
136
- `,,,,,.` ;,;
137
- ,;;;;;''''';;;,:..; ` ;;
138
- .;;;'''''''''''''';,...; ;;; ;,;
139
- ` ,;;;''''''''''''';;;;;,....; ;:,; ;..;
140
- ;;''''''';'''''';;;;;;;:,....,; ;,,,; ;:,,..;
141
- :;;;;'';''''';;;;;;;;;,,.....:. `;,,,: ;,,:..,,
142
- ```;'''';;;;;;;;;;..,...;..; ;,,,: :,,;..,:`
143
- ;''';;;;;;;;;;;.,,:....:.,: ;,,,; :,,:...; :;;;
144
- ;''';;;;;;;;;;:,,,,;....;..;;` .,,,,: :,,;....; .:...;
145
- ,;';;;;;;;;;;;,,,,.;,....,,.,:;. ;,,,,. ;,,;...,: ;....;
146
- `;';;;;;;;;;;;,,,,,,;......:..';;. ;,,,: `,,,:...:` .;....,,
147
- ;';;;;;;;;;;;,,,,,,,,.....:;.,;;;; ;,,,: ;,,:,...; ;;.....;
148
- ,;;;;;;;;;;;;;,,,:,,'......,,..;;;'; ;,,,; ;,,:....;.::....:
149
- ;;;;;;;;;;;;;.,,,'.:...........;;;;; ;,,,; ;,,;....;;'....,:
150
- ,;;;;;;;;;;;;,,,,,:,:...........:;;;;. ;,,,: ;,,'....',,....;
151
- ;;;;;;;;;;;;;,,,,;,;............,:;;'; ;,,,:,:,,;....';....,.
152
- `:;;;;;;;;;;;.,,,';;.........,....';;;; ;,,,,;:,,:,...;:....;
153
- ;;;;;;;;;;;;;,,,;.;...........,...;;;;; ;,,,,;:,,:....;....,`
154
- ;;;;;;;;;;;;,,,;,,.+......;,':.;..:';;; ;,,,,;,,:,....:....;
155
- .;;;;;;:;;@;#,,'...;......@@@@:@,..,;;;; :,,,,::,;.........,,
156
- ;;;;;;;;;;+;;,;....,...,,@@@@@@.@..,;;;; .:,,,,;,'.........; .;
157
- :;;;::;;;';@#;.........'# +@@@@;...,;;;;, ;,,,,,,;........,; ,;;;: ;;;
158
- ;;;;; ;;;;;#;,'...,@...@;` `\#@@@....,;;;'; ;,,,:;,;..;;....;` ;,...,: .;;; .:;;;;;;;;;;,
159
- `:;;. :;;;+';,: ,..,;@@+ : `\#@@@....:;;;;;` ;,,:,,::.'..,...;;,......:;;;; .;;'''''''''''''';;`
160
- ;:: ;;;;;.@@: @....;; ;. ;@@@#....;;;;;;; ;,:,,,;,'..,,..::........;'';,;;'''''''''';;:::,,,,,
161
- .: ,;;;` + ;' @....,,` :;+@@@@'..,:;;;;;;;.,,,,,,;:...,...'........;'';;'''''''''''';,
162
- ;:: :'#:.....; `;;\#.\#@:..,;;;;;;;;;`:,,,,;:...;...........;;';;''''''';;;;'''';:
163
- ;: + @'.....@ ';;:;;;.,;;;;;;;;;;;:,,,,;...,:,........,;;'';''';;;;;;;;;;;;''';
164
- : `;@+,.....@ ';,...,;;;;;;';;;;;:,,,:,...;,:,......:;''';;;;;;;;;;;;;;;;;;''';
165
- ` '::.......',..,...;;;;;;;;;;;;;,,,,;...;,...:,..,;;'''';;;;;;;;;;;;;;;;;;;''';
166
- '........,:,,...;;';;;;;;;;;';:,,,,..;....,,.,;,,;;'';;;;;;;;;;;;;;;;;;;;;''';
167
- ;,.........,....:;;:;;;;;;;;;';:,,;..:.....;.,::,..,:;;;;;;;;;;;;;;;;;;;;;;;''';
168
- .,.,..,..........;,;;;;;;;;;;''';,'........'..........;;;;;;;;;;;;;;;;;;';;;;'''';
169
- ;....;.........,,:;;;;;;;;;'''';;........;,,,,......:';;;;;::::;;';;;;;;';;;;'''':
170
- ;;;;..........;,:;;;;;;;;;'''';,......,;,...,,....;,.,,,,,,,,,,,,,;';;;;;;;;;''';`
171
- `;,........,;;..;;;;;;;;;'''';.......,:.....;...,;;;;;::,,,..,,,,,,.;;;;;;;;;;''';
172
- .;;;;;;;;. :,:;;;;;;;;'';'';.......,,....,,.,;:;;;;;;;;;;;;;:.,,,,,,;;;;;;;;''';`
173
- ;..;;;;;;;;;;;'';..............;:;;;'''''''''''';;;;;.,,,,:;;;;;;;;''';
174
- ;,:;;;;;;;;;;'';............,:;;..;';;:::;;''''''';;;;,,,,.';;;;;;;''';
175
- :,.;;;;;;;;;;'';.........,,:;:,....,; :;''''''';;;:,,,;;;;;;;;;'';
176
- ;.:;;;;;;;::'';....;.,.....,,,......:, `;''';''';;;,,,:;;;;;;;;'';
177
- `:.;;;;;;;.:';;......;:.....,:, :...; :''';:''';;;.,,;;;;;;;;;';
178
- :.:;;;;:.,,;;,.........,:;;:,, ...,` ;''; ;'';;;:,.;;;;;;;;;';
179
- ;.;;;:...,;;...............` , .....; ;''; :''';;;,.';;;;;;;;';
180
- ;;;;....,;;..............,, , `.:...; .''; ;'';;;.,';;;;;,;;';
181
- `;;,.....;,................, ` ..,:` .''; ;'';;;.,;;;;;;; ;;;
182
- .;..........................,:` , ....:` :''; :'';;;.,:;;;;;; `;;
183
- ,............................,',,;.,....,` ;'; ;'';;;.,:;;;;;; ;;
184
- ,............................,'.,:,;....:` .;;: ;'';;;.,:;;;;;: `;
185
- ,............................,',,,,:...,; ;;, .''';;;,,:;;;;;. ;
186
- .,....................,;,.....';'',:....; ;;. ;''';;;,,:;;;;;` ;
187
- :......................;.....;'::,,...,: .; ;'';;;;,,,;;;;;, ,
188
- :;;. ;......................::....,:.,,,..,:` ;'';;;;,,,;;;;;;
189
- ;,,;;;:::;;,;.,....................;,......,,,...; ;'';;;;,,,;;;;;;
190
- ;,,,,,,,,,,,:,:,....................;,.....,:,....;` .''';;;;.,,;;;;;;
191
- `:,,,,,,,,,,,,;:......,............,;:;......:......;;. ,''';;;;.,,;;;;;;
192
- :,,,,,,,,,,,,,,;......'.........,;; ;,:;,....,........:;;:` :''';;;;.,,;;;;;;
193
- ;,,,,,,,,,,,,,,;......;,....,,;;, ;,,;;,..............,;, ;''';;;;,,,;;;;;:
194
- ;,,,,,,,,,,,,,,:.....,:,::::,` ;,,,:;,..............;` ;''';;;:,,,;;;;;.
195
- .:,,,,,:,:;;;;;;,......,` ;:,,,:;;,...........,; ;''';;::,,:;;;;;
196
- ;,,,,,,::` ;.......,, ,;,,,,,;;,..........:; ;''';;;,,,:;;;;;
197
- ;,,,,,,:` ;.......,: ;:,,,,,;;,.........; ;''';;:.,,;;;;;,
198
- ;,,,,,,,: :........: .;,,,,,,;.........,; ;''';;;.,,;;;;;
199
- ,:,,,,,,,; ,,........; ::,,,,,,;.........; ;'''':;.,,';;;;
200
- ;,,,,,,,,:` ;.........; ;,,,,,,:,........:;,;''':;.,,';;;:
201
- ;,,,,,,,,,; ;.........: ;,,,,,,,;.........; ;''';;.,,';;;,
202
- ;,,,,,,,,,;` ,.........: ;,,,,,,,:;........;.,'''';,,,';;;.
203
- ;,,,,,,,,,,; ..........,, :,,,,,,,,;........,; ;'''.;,,;;;;,
204
- ;,,,,,,,,,,;, ;.........,. :,,,,,,,,;.........;` ;'';`;,,;;;:
205
- `:,,,,,,,,,,,; :.........,` :,,,,,,,,;,........:; ,;'; ,:.'';;
206
- `:,,,,,,,,,,,;;,.........: ;,,,,,,,,::.........; :;; ::';;;
207
- `:,,,,,,,,,,,,;.........,; ;,,,,,,,,:;,........;: :': ::;;;`
208
- :,,,,,,,,,,,,:,.........; ;,,,,,,,,:;.........,; :; ,;;;;
209
- ;,,,,,,,,,,,;...........; `:,,,,,,,,:;..........;. ,; ,;;;
210
- ;,,,,,,,,,,,:,..........; :,,,,,,,,,;;..........:; ,: ,;;;
211
- :,,,,,,,,,,;...........,. ;,,,,,,,,,;;..........,; `: ,;;
212
- ;,,,,,,,,,,...........:` ;,,,,,,,,,;;...........; :;,
213
- ;,,,,,,,,;............; .;,,,,,,,,,;;...........;. ;:
214
- `:,,,,,,:.............; ;,,,,,,,,,,:;..........,:: .,
215
- ;,,,,,;:............,: ;,,,,,,,,,,,;...........:: `
216
- ;,,;;:.............:` ;,,,,,,,,,,`;...........,;
217
- :, :.............; ,,,,,,,,,,,: ;,..........,;
218
- ;..............; ;,,,,,,,,,,:,:............;
219
- .:.............,` `;,,,,,,,,,,;;,............;`
220
- ;..............; ;,,,,,,,,,,,.;............,:`
221
- :,.............., `;,,,,:::::;;`;........,...:;
222
- :..............: ,,,,,..`` :...,,,::;;;;.
223
- ;;;::::::::::;;;; ,;;:`
224
-
225
- . t#, L. .,
226
- ;W ;##W. EW: ,ft t ,Wt
227
- f#E :#L:WE E##; t#E Ej i#D.
228
- .E#f .KG ,#D E###t t#E E#, f#f
229
- iWW; EE ;#f E#fE#f t#E E#t .D#i
230
- L##Lffi f#. t#i E#t D#G t#E E#t :KW, .......
231
- tLLG##L :#G GK E#t f#E. t#E E#t t#f GEEEEEEf.
232
- ,W#i ;#L LW. E#t t#K: t#E E#t ;#G
233
- j#E. t#f f#: E#t ;#W,t#E E#t :KE.
234
- .D#j f#D#; E#t :K#D#E E#t .DW:
235
- ,WK, G#t E#t .E##E E#t L#,
236
- EG. t .. G#E E#t jt
237
- , fE ,;.
238
- ,
239
- L. t#, t#,
240
- j. t EW: ,ft . ;##W. ;##W.
241
- EW, .. Ej E##; t#E Ef. :#L:WE :#L:WE .. :
242
- E##j ;W, E#, E###t t#E E#Wi .KG ,#D .KG ,#D ,W, .Et
243
- E###D. j##, E#t E#fE#f t#E E#K#D: EE ;#f EE ;#f t##, ,W#t
244
- E#jG#W; G###, E#t E#t D#G t#E E#t,E#f. f#. t#i f#. t#i L###, j###t
245
- E#t t##f :E####, E#t E#t f#E. t#E E#WEE##Wt:#G GK :#G GK .E#j##, G#fE#t
246
- E#t :K#E: ;W#DG##, E#t E#t t#K: t#E E##Ei;;;;.;#L LW. ;#L LW. ;WW; ##,:K#i E#t
247
- E#KDDDD###i j###DW##, E#t E#t ;#W,t#E E#DWWt t#f f#: t#f f#: j#E. ##f#W, E#t
248
- E#f,t#Wi,,, G##i,,G##, E#t E#t :K#D#E E#t f#K; f#D#; f#D#; .D#L ###K: E#t
249
- E#t ;#W: :K#K: L##, E#t E#t .E##E E#Dfff##E, G#t G#t :K#t ##D. E#t
250
- DWi ,KK: ;##D. L##, E#t .. G#E jLLLLLLLLL; t t ... #G ..
251
- ,,, .,, ,;. fE j
252
- ,
253
- EOH
254
- end
255
- end
256
-
257
- file "/srv/piab/dev_users_created" do
258
- content "Canned dev users and organization created successfully at #{Time.now}"
259
- action :create
260
- end
261
- end
@@ -1,15 +0,0 @@
1
- # Authors
2
- # Seth Chisamore
3
- # Mark Mzyk
4
-
5
- current_dir = File.dirname(__FILE__)
6
- log_level :info
7
- log_location STDOUT
8
- node_name "<%= @username %>"
9
- client_key "#{current_dir}/<%= @username %>.pem"
10
- validation_client_name "<%= @orgname %>-validator"
11
- validation_key "#{current_dir}/../../<%= @orgname %>-validator.pem"
12
- chef_server_url "https://<%= @server_fqdn %>/organizations/<%= @orgname %>"
13
- cache_type 'BasicFile'
14
- cache_options( :path => "#{ENV['HOME']}/.chef/checksums" )
15
- cookbook_path ["#{current_dir}/../cookbooks"]