gogetit 0.22.1 → 0.22.6

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
  SHA256:
3
- metadata.gz: 4bd003c220653968ff362c86fcdf82c096f7a6bb42cd7eef991a40fed9c6c982
4
- data.tar.gz: 9186850f7546ad2229c899ed660c49f37d80f992fd3aa5205079f18ac6e8c438
3
+ metadata.gz: 5a4ad33d9e3ba2abd56517e7b492c6783ff9ffd3b5c31cacae0d9a4f08aca465
4
+ data.tar.gz: d0fd8947a53283a51888d5cbf348647c29d889fd8998b94d7692bd6f56e8e0d9
5
5
  SHA512:
6
- metadata.gz: b4bad92eb03ed3db46df49cdacb340a71441c2233cd6e9805b3749686153b0a3ea5f80b9e51764fb15090d3b113ea205a8527894064d740d595317cf3042afaf
7
- data.tar.gz: bd9bd694c8ac3f54d7f60c108cafa90949c07e15a799605e31df15a8e7c822b36e23cc04a0e2837680a3605f4f1ac39c8362bff5829098831e56e3f1c234547f
6
+ metadata.gz: 53fd56efeb9ec487cecc93736a502a8989c1c9c72b85144e712fc6b6313ab5b30eabfa0ee9d22bc69317a1e7cde4421041ce1cc6ad04f1ccf8bdaa7a94a97eb1
7
+ data.tar.gz: cbced91db630cee9cb53eebaba6e644392b44f8a33958b54a085f894c58709f50514eebac82a3470af425bfaecaf182275268e97d8abee1ea2d6b32b02dfe7e9
@@ -265,11 +265,6 @@ module Gogetit
265
265
  def generate_cloud_init_config(options, config, user_data = {})
266
266
  logger.info("Calling <#{__method__.to_s}>")
267
267
 
268
- # apt
269
- user_data['apt'] = {}
270
- # preserve source list for a while
271
- user_data['apt']['preserve_sources_list'] = true
272
-
273
268
  if options[:'no-maas']
274
269
  # When there is no MAAS, containers should be able to resolve
275
270
  # their name with hosts file.
@@ -280,11 +275,11 @@ module Gogetit
280
275
  # https://cloudinit.readthedocs.io/en/latest/topics/examples.html
281
276
  # #configure-an-instances-trusted-ca-certificates
282
277
  #
283
- if config[:cloud_init] && config[:cloud_init][:ca_certs]
278
+ if config[:cloud_init_helper] && config[:cloud_init_helper][:ca_certs]
284
279
  user_data['ca-certs'] = {}
285
280
  certs = []
286
281
 
287
- config[:cloud_init][:ca_certs].each do |ca|
282
+ config[:cloud_init_helper][:ca_certs].each do |ca|
288
283
  content = get_http_content(ca)
289
284
  certs.push(
290
285
  /^-----BEGIN CERTIFICATE-----.*-/m.match(content).to_s
@@ -297,15 +292,15 @@ module Gogetit
297
292
  # To get CA public key to be used for SSH authentication
298
293
  # https://cloudinit.readthedocs.io/en/latest/topics/examples.html
299
294
  # #writing-out-arbitrary-files
300
- if config[:cloud_init] && config[:cloud_init][:ssh_ca_public_key]
295
+ if config[:cloud_init_helper] && config[:cloud_init_helper][:ssh_ca_public_key]
301
296
  user_data['write_files'] = []
302
- content = get_http_content(config[:cloud_init][:ssh_ca_public_key][:key_url])
297
+ content = get_http_content(config[:cloud_init_helper][:ssh_ca_public_key][:key_url])
303
298
  if content
304
299
  file = {
305
300
  'content' => content.chop!,
306
- 'path' => config[:cloud_init][:ssh_ca_public_key][:key_path],
307
- 'owner' => config[:cloud_init][:ssh_ca_public_key][:owner],
308
- 'permissions' => config[:cloud_init][:ssh_ca_public_key][:permissions]
301
+ 'path' => config[:cloud_init_helper][:ssh_ca_public_key][:key_path],
302
+ 'owner' => config[:cloud_init_helper][:ssh_ca_public_key][:owner],
303
+ 'permissions' => config[:cloud_init_helper][:ssh_ca_public_key][:permissions]
309
304
  }
310
305
  user_data['write_files'].push(file)
311
306
  user_data['bootcmd'] = []
@@ -315,34 +310,24 @@ echo \"TrustedUserCAKeys #{file['path']}\" >> /etc/ssh/sshd_config"
315
310
  )
316
311
  end
317
312
 
318
- if config[:cloud_init][:ssh_ca_public_key][:revocation_url]
319
- content = get_http_content(config[:cloud_init][:ssh_ca_public_key][:revocation_url])
313
+ if config[:cloud_init_helper][:ssh_ca_public_key][:revocation_url]
314
+ content = get_http_content(config[:cloud_init_helper][:ssh_ca_public_key][:revocation_url])
320
315
  if content
321
316
  user_data['bootcmd'].push(
322
317
  "cloud-init-per once download-key-revocation-list \
323
- curl -o #{config[:cloud_init][:ssh_ca_public_key][:revocation_path]} \
324
- #{config[:cloud_init][:ssh_ca_public_key][:revocation_url]}"
318
+ curl -o #{config[:cloud_init_helper][:ssh_ca_public_key][:revocation_path]} \
319
+ #{config[:cloud_init_helper][:ssh_ca_public_key][:revocation_url]}"
325
320
  )
326
321
  user_data['bootcmd'].push(
327
322
  "cloud-init-per once ssh-user-key-revocation-list \
328
- echo \"RevokedKeys #{config[:cloud_init][:ssh_ca_public_key][:revocation_path]}\" \
323
+ echo \"RevokedKeys #{config[:cloud_init_helper][:ssh_ca_public_key][:revocation_path]}\" \
329
324
  >> /etc/ssh/sshd_config"
330
325
  )
331
326
  end
332
327
  end
333
328
  end
334
329
 
335
- # To add users
336
- # https://cloudinit.readthedocs.io/en/latest/topics/examples.html
337
- # #including-users-and-groups
338
- if config[:cloud_init] && config[:cloud_init][:users]
339
- user_data['users'] = []
340
- user_data['users'].push('default')
341
-
342
- config[:cloud_init][:users].each do |user|
343
- user_data['users'].push(Hashie.stringify_keys user)
344
- end
345
- end
330
+ user_data.merge! (Hashie.stringify_keys config[:cloud_init])
346
331
 
347
332
  return user_data
348
333
  end
@@ -1,3 +1,3 @@
1
1
  module Gogetit
2
- VERSION = "0.22.1"
2
+ VERSION = "0.22.6"
3
3
  end
@@ -109,8 +109,8 @@ module Gogetit
109
109
 
110
110
  # physical device will be the gate device
111
111
  lxd_params[:config][:"user.network-config"]['config'].each do |iface|
112
- if iface['type'] == "physical"
113
- options[:ip_to_access] = iface['subnets'][0]['address'].split('/')[0]
112
+ if iface['type'] == 'physical'
113
+ config[:ip_to_access] = iface['subnets'][0]['address'].split('/')[0]
114
114
  end
115
115
  end
116
116
 
@@ -374,17 +374,21 @@ lxc.cgroup.devices.allow = b 7:* rwm"
374
374
  conn.start_container(name, :sync=>"true")
375
375
 
376
376
  if options[:'no-maas']
377
- ip_or_fqdn = options[:ip_to_access]
377
+ ip_or_fqdn = config[:ip_to_access]
378
378
  else
379
379
  ip_or_fqdn = name + '.' + maas.get_domain
380
380
  end
381
381
 
382
- if conn.execute_command(name, "ls /etc/lsb-release")[:metadata][:return] == 0
383
- default_user = 'ubuntu'
384
- elsif conn.execute_command(name, "ls /etc/redhat-release")[:metadata][:return] == 0
385
- default_user = 'centos'
382
+ if config[:default][:user] == config[:cloud_init][:users][0]['name']
383
+ default_user = config[:default][:user]
386
384
  else
387
- default_user = config[:default][:user]
385
+ if conn.execute_command(name, "ls /etc/lsb-release")[:metadata][:return] == 0
386
+ default_user = 'ubuntu'
387
+ elsif conn.execute_command(name, "ls /etc/redhat-release")[:metadata][:return] == 0
388
+ default_user = 'centos'
389
+ else
390
+ default_user = config[:default][:user]
391
+ end
388
392
  end
389
393
 
390
394
  lxd_params[:default_user] = default_user
@@ -393,7 +397,7 @@ lxc.cgroup.devices.allow = b 7:* rwm"
393
397
  logger.info("#{name} has been created.")
394
398
 
395
399
  if options[:'no-maas']
396
- puts "ssh #{default_user}@#{options[:ip_to_access]}"
400
+ puts "ssh #{default_user}@#{config[:ip_to_access]}"
397
401
  else
398
402
  puts "ssh #{default_user}@#{name}"
399
403
  end
@@ -56,6 +56,13 @@ chef:
56
56
  lxd: http://chef.example.com/install_chef_script_for_lxd.sh
57
57
 
58
58
  cloud_init:
59
+ apt:
60
+ primary:
61
+ - arches: [default]
62
+ uri: http://archive.ubuntu.com/ubuntu/
63
+ security:
64
+ - arches: [default]
65
+ uri: http://archive.ubuntu.com/ubuntu/
59
66
  users:
60
67
  - name: usera
61
68
  gecos: usera
@@ -63,6 +70,10 @@ cloud_init:
63
70
  groups: users, admin
64
71
  shell: /bin/bash
65
72
  lock_passwd: true
73
+ ssh_authorized_keys:
74
+ - ssh-rsa blahblahblah usera@desktop
75
+
76
+ cloud_init_helper:
66
77
  ca_certs:
67
78
  - http://pki.example.com/site/root_ca.crt
68
79
  ssh_ca_public_key:
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gogetit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.22.1
4
+ version: 0.22.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Don Draper
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-07-30 00:00:00.000000000 Z
11
+ date: 2018-07-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler