Merge "Implement hardcoded nailgun tasks in library"
This commit is contained in:
commit
264e422386
|
@ -7,7 +7,7 @@
|
|||
cross-depends:
|
||||
- name: aodh-db
|
||||
- name: aodh-keystone
|
||||
condition: "settings:additional_components.ceilometer.value == true"
|
||||
condition: "settings:ceilometer.enabled == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/aodh/aodh.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
@ -25,7 +25,7 @@
|
|||
requires: [primary-keystone, keystone]
|
||||
cross-depends:
|
||||
- name: keystone
|
||||
condition: "settings:additional_components.ceilometer.value == true"
|
||||
condition: "settings:ceilometer.enabled == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/aodh/keystone.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
@ -38,7 +38,7 @@
|
|||
cross-depends:
|
||||
- name: /(primary-)?database/
|
||||
required_for: [aodh]
|
||||
condition: "settings:additional_components.ceilometer.value == true"
|
||||
condition: "settings:ceilometer.enabled == true"
|
||||
requires: [primary-database, database]
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/aodh/db.pp
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
groups: [primary-controller, controller]
|
||||
required_for: [primary-openstack-controller, openstack-controller]
|
||||
requires: [openstack-haproxy]
|
||||
condition: "settings:additional_components.ceilometer.value == true"
|
||||
condition: "settings:ceilometer.enabled == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/ceilometer/controller.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
@ -25,7 +25,7 @@
|
|||
requires: [ceilometer-controller, top-role-compute]
|
||||
cross-depends:
|
||||
- name: ceilometer-controller
|
||||
condition: "settings:additional_components.ceilometer.value == true"
|
||||
condition: "settings:ceilometer.enabled == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/ceilometer/compute.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
@ -40,7 +40,7 @@
|
|||
version: 2.0.0
|
||||
groups: [primary-controller]
|
||||
required_for: [ceilometer-controller]
|
||||
condition: "settings:additional_components.ceilometer.value == true"
|
||||
condition: "settings:ceilometer.enabled == true"
|
||||
requires: [primary-keystone, keystone]
|
||||
cross-depends:
|
||||
- name: /(primary-)?keystone/
|
||||
|
@ -55,7 +55,7 @@
|
|||
role: [primary-controller, controller]
|
||||
requires: [post_deployment_start, enable_rados]
|
||||
required_for: [post_deployment_end]
|
||||
condition: "settings:additional_components.ceilometer.value == true and settings:storage.objects_ceph.value == true"
|
||||
condition: "settings:ceilometer.enabled == true and settings:storage.objects_ceph == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/ceilometer/radosgw_user.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller, controller]
|
||||
condition: "settings:additional_components.ironic.value == true"
|
||||
condition: "settings:ironic.enabled == true"
|
||||
cross-depends:
|
||||
- name: ironic-db
|
||||
- name: ironic-keystone
|
||||
|
@ -19,7 +19,7 @@
|
|||
groups: [primary-controller]
|
||||
cross-depends:
|
||||
- name: /(primary-)?database/
|
||||
condition: "settings:additional_components.ironic.value == true"
|
||||
condition: "settings:ironic.enabled == true"
|
||||
required_for: [ironic-api]
|
||||
requires: [primary-database, database]
|
||||
parameters:
|
||||
|
@ -31,7 +31,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller]
|
||||
condition: "settings:additional_components.ironic.value == true"
|
||||
condition: "settings:ironic.enabled == true"
|
||||
required_for: [ironic-api]
|
||||
requires: [primary-keystone, keystone]
|
||||
cross-depends:
|
||||
|
@ -45,7 +45,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller, controller]
|
||||
condition: "settings:additional_components.ironic.value == true"
|
||||
condition: "settings:ironic.enabled == true"
|
||||
required_for: [deploy_end]
|
||||
requires: [primary-openstack-controller, openstack-controller, ironic-api]
|
||||
refresh_on: [nova_config, nova_paste_api_ini]
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller, controller]
|
||||
condition: "settings:additional_components.murano.value == true"
|
||||
condition: "settings:murano.enabled == true"
|
||||
required_for: [deploy_end, controller_remaining_tasks]
|
||||
requires: [primary-heat, heat, horizon, primary-rabbitmq, rabbitmq]
|
||||
cross-depends:
|
||||
|
@ -23,7 +23,7 @@
|
|||
groups: [primary-controller]
|
||||
cross-depends:
|
||||
- name: /(primary-)?database/
|
||||
condition: "settings:additional_components.murano.value == true"
|
||||
condition: "settings:murano.enabled == true"
|
||||
required_for: [murano]
|
||||
requires: [primary-database, database]
|
||||
parameters:
|
||||
|
@ -35,7 +35,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller]
|
||||
condition: "settings:additional_components.murano.value == true"
|
||||
condition: "settings:murano.enabled == true"
|
||||
required_for: [murano]
|
||||
requires: [primary-keystone, keystone]
|
||||
cross-depends:
|
||||
|
@ -49,7 +49,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller, controller]
|
||||
condition: "settings:additional_components.murano.value == true"
|
||||
condition: "settings:murano.enabled == true"
|
||||
required_for: [murano]
|
||||
cross-depends:
|
||||
- name: /(primary-)?rabbitmq/
|
||||
|
@ -64,7 +64,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller, controller]
|
||||
condition: "settings:additional_components.murano-cfapi.value == true"
|
||||
condition: "settings:murano-cfapi.enabled == true"
|
||||
requires: [murano]
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/murano/cfapi.pp
|
||||
|
@ -75,7 +75,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller]
|
||||
condition: "settings:additional_components.murano-cfapi.value == true"
|
||||
condition: "settings:murano-cfapi.enabled == true"
|
||||
required_for: [murano-cfapi]
|
||||
requires: [primary-keystone, keystone]
|
||||
cross-depends:
|
||||
|
|
|
@ -103,7 +103,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller]
|
||||
condition: "settings:neutron_advanced_configuration.neutron_l3_ha.value == false"
|
||||
condition: "settings:neutron_advanced_configuration.neutron_l3_ha == false"
|
||||
required_for: [openstack-network-end]
|
||||
requires: [openstack-network-start, openstack-network-networks]
|
||||
parameters:
|
||||
|
@ -117,7 +117,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
role: [primary-controller]
|
||||
condition: "settings:neutron_advanced_configuration.neutron_l3_ha.value == true"
|
||||
condition: "settings:neutron_advanced_configuration.neutron_l3_ha == true"
|
||||
required_for: [post_deployment_end]
|
||||
requires: [post_deployment_start]
|
||||
parameters:
|
||||
|
|
|
@ -105,7 +105,7 @@
|
|||
- id: allocate_hugepages
|
||||
type: puppet
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
requires: [setup_repositories]
|
||||
required_for: [globals]
|
||||
parameters:
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller, controller]
|
||||
condition: "settings:additional_components.sahara.value == true"
|
||||
condition: "settings:sahara.enabled == true"
|
||||
required_for: [deploy_end, controller_remaining_tasks]
|
||||
requires: [openstack-network-end, horizon]
|
||||
cross-depends:
|
||||
|
@ -24,7 +24,7 @@
|
|||
cross-depends:
|
||||
- name: /(primary-)?database/
|
||||
required_for: [sahara]
|
||||
condition: "settings:additional_components.sahara.value == true"
|
||||
condition: "settings:sahara.enabled == true"
|
||||
requires: [primary-database, database]
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/sahara/db.pp
|
||||
|
@ -39,7 +39,7 @@
|
|||
requires: [primary-keystone, keystone]
|
||||
cross-depends:
|
||||
- name: keystone
|
||||
condition: "settings:additional_components.sahara.value == true"
|
||||
condition: "settings:sahara.enabled == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/sahara/keystone.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
groups: [primary-controller, controller]
|
||||
required_for: [deploy_end, controller_remaining_tasks]
|
||||
requires: [openstack-controller]
|
||||
condition: &swift_enabled "( settings:storage.objects_ceph.value == false or settings:storage.images_ceph.value == false ) and settings:storage.images_vcenter.value == false"
|
||||
condition: &swift_enabled "( settings:storage.objects_ceph == false or settings:storage.images_ceph == false ) and settings:storage.images_vcenter == false"
|
||||
cross-depends:
|
||||
- name: /(primary-)?rabbitmq/
|
||||
- name: /glance/
|
||||
|
|
|
@ -2,54 +2,57 @@ class osnailyfacter::generate_vms::generate_vms {
|
|||
|
||||
notice('MODULAR: generate_vms/generate_vms.pp')
|
||||
|
||||
$libvirt_dir = '/etc/libvirt/qemu'
|
||||
$template_dir = '/var/lib/nova'
|
||||
$packages = ['qemu-utils', 'qemu-kvm', 'libvirt-bin', 'xmlstarlet']
|
||||
|
||||
$vms = hiera_array('vms_conf')
|
||||
$enabled = str2bool(inline_template('<%= @vms.collect{|x| x["created"]}.compact.any? %>'))
|
||||
|
||||
include ::nova::params
|
||||
if $enabled {
|
||||
$libvirt_dir = '/etc/libvirt/qemu'
|
||||
$template_dir = '/var/lib/nova'
|
||||
$packages = ['qemu-utils', 'qemu-kvm', 'libvirt-bin', 'xmlstarlet']
|
||||
|
||||
package { $packages:
|
||||
ensure => 'installed',
|
||||
}
|
||||
|
||||
service { $::nova::params::libvirt_service_name:
|
||||
ensure => 'running',
|
||||
require => Package[$packages],
|
||||
before => Exec['generate_vms'],
|
||||
}
|
||||
include ::nova::params
|
||||
|
||||
file { "${libvirt_dir}/autostart":
|
||||
ensure => 'directory',
|
||||
require => Package[$packages],
|
||||
}
|
||||
|
||||
file { $template_dir:
|
||||
ensure => 'directory',
|
||||
}
|
||||
|
||||
::osnailyfacter::generate_vms::vm_config { $vms:
|
||||
before => Exec['generate_vms'],
|
||||
require => File[$template_dir],
|
||||
}
|
||||
|
||||
exec { 'generate_vms':
|
||||
command => "/usr/bin/generate_vms.sh ${libvirt_dir} ${template_dir}",
|
||||
path => ['/usr/sbin', '/usr/bin' , '/sbin', '/bin'],
|
||||
require => [File[$template_dir], File["${libvirt_dir}/autostart"]],
|
||||
}
|
||||
|
||||
if $::operatingsystem == 'Ubuntu' {
|
||||
# TODO(mpolenchuk): Remove when LP#1057024 has been resolved.
|
||||
# https://bugs.launchpad.net/ubuntu/+source/qemu-kvm/+bug/1057024
|
||||
file { '/dev/kvm':
|
||||
ensure => present,
|
||||
group => 'kvm',
|
||||
mode => '0660',
|
||||
package { $packages:
|
||||
ensure => 'installed',
|
||||
}
|
||||
|
||||
Package<||> ~> File['/dev/kvm'] -> Exec['generate_vms']
|
||||
}
|
||||
service { $::nova::params::libvirt_service_name:
|
||||
ensure => 'running',
|
||||
require => Package[$packages],
|
||||
before => Exec['generate_vms'],
|
||||
}
|
||||
|
||||
file { "${libvirt_dir}/autostart":
|
||||
ensure => 'directory',
|
||||
require => Package[$packages],
|
||||
}
|
||||
|
||||
file { $template_dir:
|
||||
ensure => 'directory',
|
||||
}
|
||||
|
||||
::osnailyfacter::generate_vms::vm_config { $vms:
|
||||
before => Exec['generate_vms'],
|
||||
require => File[$template_dir],
|
||||
}
|
||||
|
||||
exec { 'generate_vms':
|
||||
command => "/usr/bin/generate_vms.sh ${libvirt_dir} ${template_dir}",
|
||||
path => ['/usr/sbin', '/usr/bin' , '/sbin', '/bin'],
|
||||
require => [File[$template_dir], File["${libvirt_dir}/autostart"]],
|
||||
}
|
||||
|
||||
if $::operatingsystem == 'Ubuntu' {
|
||||
# TODO(mpolenchuk): Remove when LP#1057024 has been resolved.
|
||||
# https://bugs.launchpad.net/ubuntu/+source/qemu-kvm/+bug/1057024
|
||||
file { '/dev/kvm':
|
||||
ensure => present,
|
||||
group => 'kvm',
|
||||
mode => '0660',
|
||||
}
|
||||
|
||||
Package<||> ~> File['/dev/kvm'] -> Exec['generate_vms']
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -28,27 +28,38 @@
|
|||
timeout: 180
|
||||
|
||||
- id: upload_nodes_info
|
||||
type: upload_file
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
type: skipped
|
||||
version: 2.1.0
|
||||
role: ['/.*/']
|
||||
requires: [post_deployment_start]
|
||||
parameters:
|
||||
path: /etc/hiera/nodes.yaml
|
||||
|
||||
- id: upload_configuration
|
||||
type: upload_file
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
version: 2.1.0
|
||||
role: ['/.*/']
|
||||
requires: [override_configuration]
|
||||
required_for: [pre_deployment_end]
|
||||
refresh_on: ['*']
|
||||
parameters:
|
||||
path: /etc/fuel/cluster/{CLUSTER_ID}/astute.yaml
|
||||
timeout: 180
|
||||
data:
|
||||
yaql_exp: '$.toYaml()'
|
||||
|
||||
- id: configuration_symlink
|
||||
type: shell
|
||||
version: 2.1.0
|
||||
role: ['/.*/']
|
||||
requires: [upload_configuration]
|
||||
required_for: [pre_deployment_end]
|
||||
parameters:
|
||||
cmd: ln -sf /etc/fuel/cluster/{CLUSTER_ID}/astute.yaml /etc/astute.yaml
|
||||
timeout: 180
|
||||
|
||||
- id: update_hosts
|
||||
type: puppet
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
required_for: [post_deployment_end]
|
||||
requires: [upload_nodes_info]
|
||||
parameters:
|
||||
|
@ -63,7 +74,7 @@
|
|||
role: [primary-controller, compute-vmware]
|
||||
requires: [post_deployment_start, enable_nova_compute_service]
|
||||
required_for: [post_deployment_end]
|
||||
condition: "settings:common.use_vcenter.value == true"
|
||||
condition: "settings:use_vcenter == true"
|
||||
parameters:
|
||||
cmd: /usr/bin/python /etc/puppet/modules/osnailyfacter/modular/astute/vcenter_hooks.py --create_zones
|
||||
timeout: 180
|
||||
|
@ -110,7 +121,7 @@
|
|||
- id: rsync_core_puppet
|
||||
type: sync
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
requires: [pre_deployment_start]
|
||||
required_for: [pre_deployment_end]
|
||||
parameters:
|
||||
|
@ -122,7 +133,7 @@
|
|||
- id: clear_nodes_info
|
||||
type: shell
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
requires: [pre_deployment_start]
|
||||
required_for: [pre_deployment_end]
|
||||
parameters:
|
||||
|
@ -132,7 +143,7 @@
|
|||
- id: copy_keys
|
||||
type: copy_files
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
required_for: [pre_deployment_end]
|
||||
requires: [generate_keys]
|
||||
cross-depends:
|
||||
|
@ -176,7 +187,7 @@
|
|||
version: 2.0.0
|
||||
role: master
|
||||
requires: [pre_deployment_start]
|
||||
condition: "(settings:public_ssl.horizon.value == true or settings:public_ssl.services.value == true) and settings:public_ssl.cert_source.value == 'self_signed'"
|
||||
condition: "(settings:public_ssl.horizon == true or settings:public_ssl.services == true) and settings:public_ssl.cert_source == 'self_signed'"
|
||||
required_for: [copy_haproxy_keys]
|
||||
parameters:
|
||||
cmd: sh /etc/puppet/modules/osnailyfacter/modular/astute/generate_haproxy_keys.sh -i {CLUSTER_ID} -h {CN_HOSTNAME} -o 'haproxy' -p /var/lib/fuel/keys/
|
||||
|
@ -185,13 +196,13 @@
|
|||
- id: copy_haproxy_keys
|
||||
type: copy_files
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
required_for: [pre_deployment_end]
|
||||
requires: [generate_haproxy_keys]
|
||||
cross-depends:
|
||||
- name: generate_haproxy_keys
|
||||
role: master
|
||||
condition: "(settings:public_ssl.horizon.value == true or settings:public_ssl.services.value == true) and settings:public_ssl.cert_source.value == 'self_signed'"
|
||||
condition: "(settings:public_ssl.horizon == true or settings:public_ssl.services == true) and settings:public_ssl.cert_source == 'self_signed'"
|
||||
parameters:
|
||||
files:
|
||||
- src: /var/lib/fuel/keys/{CLUSTER_ID}/haproxy/public_haproxy.pem
|
||||
|
@ -204,7 +215,7 @@
|
|||
- id: sync_time
|
||||
type: shell
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
requires: [pre_deployment_start]
|
||||
required_for: [pre_deployment_end]
|
||||
parameters:
|
||||
|
@ -216,7 +227,7 @@
|
|||
- id: pre_hiera_config
|
||||
type: puppet
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
requires: [pre_deployment_start, rsync_core_puppet]
|
||||
required_for: [pre_deployment_end]
|
||||
parameters:
|
||||
|
@ -228,7 +239,7 @@
|
|||
- id: override_configuration
|
||||
type: puppet
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
requires: [pre_hiera_config]
|
||||
required_for: [pre_deployment_end]
|
||||
parameters:
|
||||
|
@ -253,7 +264,7 @@
|
|||
type: shell
|
||||
version: 2.0.0
|
||||
role: [primary-controller]
|
||||
condition: "settings:additional_components.ironic.value == true"
|
||||
condition: "settings:ironic.enabled == true"
|
||||
requires: [enable_quorum, enable_rados]
|
||||
required_for: [post_deployment_end]
|
||||
parameters:
|
||||
|
@ -266,7 +277,7 @@
|
|||
type: shell
|
||||
version: 2.0.0
|
||||
role: [primary-controller]
|
||||
condition: "settings:additional_components.ironic.value == true"
|
||||
condition: "settings:ironic.enabled == true"
|
||||
required_for: [post_deployment_end]
|
||||
requires: [enable_quorum, enable_rados]
|
||||
parameters:
|
||||
|
@ -279,7 +290,7 @@
|
|||
type: copy_files
|
||||
version: 2.0.0
|
||||
role: [ironic]
|
||||
condition: "settings:additional_components.ironic.value == true"
|
||||
condition: "settings:ironic.enabled == true"
|
||||
required_for: [pre_deployment_end]
|
||||
requires: [pre_deployment_start]
|
||||
parameters:
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
- id: copy_keys_ceph
|
||||
type: copy_files
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
required_for: [pre_deployment_end]
|
||||
requires: [generate_keys_ceph]
|
||||
cross-depends:
|
||||
|
@ -129,7 +129,7 @@
|
|||
- name: ceph_create_pools
|
||||
requires: [ceph_create_pools]
|
||||
required_for: [post_deployment_end]
|
||||
condition: "settings:storage.objects_ceph.value == true or settings:storage.images_ceph.value == true or settings:storage.volumes_ceph.value == true or settings:storage.ephemeral_ceph.value == true"
|
||||
condition: "settings:storage.objects_ceph == true or settings:storage.images_ceph == true or settings:storage.volumes_ceph == true or settings:storage.ephemeral_ceph == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/ceph_compute.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
@ -146,7 +146,7 @@
|
|||
required_for: [ceph_ready_check]
|
||||
cross-depended-by:
|
||||
- name: ceph_ready_check
|
||||
condition: "settings:storage.objects_ceph.value == true or settings:storage.images_ceph.value == true or settings:storage.volumes_ceph.value == true or settings:storage.ephemeral_ceph.value == true"
|
||||
condition: "settings:storage.objects_ceph == true or settings:storage.images_ceph == true or settings:storage.volumes_ceph == true or settings:storage.ephemeral_ceph == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ceph/ceph_pools.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
@ -157,7 +157,7 @@
|
|||
type: shell
|
||||
version: 2.0.0
|
||||
role: [primary-controller]
|
||||
condition: "settings:storage.objects_ceph.value == true or settings:storage.images_ceph.value == true or settings:storage.volumes_ceph.value == true or settings:storage.ephemeral_ceph.value == true"
|
||||
condition: "settings:storage.objects_ceph == true or settings:storage.images_ceph == true or settings:storage.volumes_ceph == true or settings:storage.ephemeral_ceph == true"
|
||||
requires: [post_deployment_start]
|
||||
required_for: [enable_rados, upload_cirros]
|
||||
parameters:
|
||||
|
@ -168,7 +168,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
role: [primary-controller, controller]
|
||||
condition: "settings:storage.objects_ceph.value == true"
|
||||
condition: "settings:storage.objects_ceph == true"
|
||||
requires: [post_deployment_start]
|
||||
required_for: [upload_cirros, post_deployment_end]
|
||||
cross-depended-by:
|
||||
|
@ -183,7 +183,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
role: [primary-controller, controller, ceph-osd]
|
||||
condition: "settings:storage.objects_ceph.value == true or settings:storage.images_ceph.value == true or settings:storage.volumes_ceph.value == true or settings:storage.ephemeral_ceph.value == true"
|
||||
condition: "settings:storage.objects_ceph == true or settings:storage.images_ceph == true or settings:storage.volumes_ceph == true or settings:storage.ephemeral_ceph == true"
|
||||
requires: [post_deployment_start]
|
||||
required_for: [post_deployment_end]
|
||||
parameters:
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
- id: cgroups
|
||||
type: puppet
|
||||
version: 2.0.0
|
||||
role: '*'
|
||||
role: ['/.*/']
|
||||
requires: [post_deployment_start]
|
||||
required_for: [post_deployment_end]
|
||||
parameters:
|
||||
|
|
|
@ -283,7 +283,7 @@
|
|||
type: puppet
|
||||
version: 2.0.0
|
||||
groups: [primary-controller, controller]
|
||||
condition: "settings:additional_components.ironic.value == true"
|
||||
condition: "settings:ironic.enabled == true"
|
||||
required_for: [deploy_end]
|
||||
requires: [deploy_start, primary-cluster-haproxy, cluster-haproxy]
|
||||
cross-depends:
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
version: 2.0.0
|
||||
groups: [primary-controller, controller, compute, compute-vmware, cinder, cinder-vmware, primary-mongo, mongo, ceph-osd, virt]
|
||||
requires: [firewall]
|
||||
condition: "(settings:public_ssl.horizon.value == true or settings:public_ssl.services.value == true) and settings:public_ssl.cert_source.value == 'user_uploaded'"
|
||||
condition: "(settings:public_ssl.horizon == true or settings:public_ssl.services == true) and settings:public_ssl.cert_source == 'user_uploaded'"
|
||||
required_for: [deploy_end]
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ssl/ssl_keys_saving.pp
|
||||
|
@ -17,7 +17,7 @@
|
|||
version: 2.0.0
|
||||
groups: [primary-controller, controller, compute, compute-vmware, cinder, cinder-vmware, primary-mongo, mongo, ceph-osd, virt]
|
||||
requires: [firewall, ssl-keys-saving]
|
||||
condition: "settings:public_ssl.horizon.value == true or settings:public_ssl.services.value == true"
|
||||
condition: "settings:public_ssl.horizon == true or settings:public_ssl.services == true"
|
||||
required_for: [hosts]
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ssl/ssl_add_trust_chain.pp
|
||||
|
@ -31,7 +31,7 @@
|
|||
version: 2.0.0
|
||||
groups: [primary-controller, controller]
|
||||
requires: [firewall, ssl-add-trust-chain]
|
||||
condition: "settings:public_ssl.horizon.value == true or settings:public_ssl.services.value == true"
|
||||
condition: "settings:public_ssl.horizon == true or settings:public_ssl.services == true"
|
||||
required_for: [hosts]
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/ssl/ssl_dns_setup.pp
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
groups: [primary-controller, controller]
|
||||
required_for: [deploy_end]
|
||||
requires: [controller_remaining_tasks]
|
||||
condition: "settings:common.use_vcenter.value == true"
|
||||
condition: "settings:use_vcenter == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/vmware/vcenter.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
@ -16,7 +16,7 @@
|
|||
groups: [cinder-vmware]
|
||||
required_for: [deploy_end]
|
||||
requires: [top-role-cinder]
|
||||
condition: "settings:common.use_vcenter.value == true"
|
||||
condition: "settings:use_vcenter == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/vmware/cinder-vmware.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
@ -32,7 +32,7 @@
|
|||
groups: [compute-vmware]
|
||||
required_for: [enable_nova_compute_service]
|
||||
requires: [top-role-compute, ceilometer-compute, ceilometer-keystone]
|
||||
condition: "settings:common.use_vcenter.value == true"
|
||||
condition: "settings:use_vcenter == true"
|
||||
parameters:
|
||||
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/vmware/compute-vmware.pp
|
||||
puppet_modules: /etc/puppet/modules
|
||||
|
|
|
@ -6,65 +6,68 @@ manifest = 'generate_vms/generate_vms.pp'
|
|||
|
||||
describe manifest do
|
||||
shared_examples 'catalog' do
|
||||
libvirt_dir = '/etc/libvirt/qemu'
|
||||
template_dir = '/var/lib/nova'
|
||||
libvirt_service = 'libvirtd'
|
||||
packages = ['qemu-utils', 'qemu-kvm', 'libvirt-bin', 'xmlstarlet']
|
||||
|
||||
vms = Noop.hiera 'vms_conf'
|
||||
enabled = vms.collect{|x| x['created']}.compact.any?
|
||||
|
||||
it 'should exec generate_vms' do
|
||||
should contain_exec('generate_vms').with(
|
||||
'command' => "/usr/bin/generate_vms.sh #{libvirt_dir} #{template_dir}",
|
||||
)
|
||||
end
|
||||
if enabled
|
||||
libvirt_dir = '/etc/libvirt/qemu'
|
||||
template_dir = '/var/lib/nova'
|
||||
libvirt_service = 'libvirtd'
|
||||
packages = ['qemu-utils', 'qemu-kvm', 'libvirt-bin', 'xmlstarlet']
|
||||
|
||||
vms.each do | vm |
|
||||
it "should define osnailyfacter::generate_vms::vm_config #{vm}" do
|
||||
should contain_osnailyfacter__generate_vms__vm_config(vm).with(
|
||||
vms.each do | vm |
|
||||
it "should define osnailyfacter::generate_vms::vm_config #{vm}" do
|
||||
should contain_osnailyfacter__generate_vms__vm_config(vm).with(
|
||||
'before' => 'Exec[generate_vms]',
|
||||
'require' => "File[#{template_dir}]",
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
it 'should exec generate_vms' do
|
||||
should contain_exec('generate_vms').with(
|
||||
'command' => "/usr/bin/generate_vms.sh #{libvirt_dir} #{template_dir}",
|
||||
)
|
||||
end
|
||||
|
||||
it "should create #{template_dir} directory" do
|
||||
should contain_file(template_dir).with(
|
||||
'ensure' => 'directory',
|
||||
)
|
||||
end
|
||||
|
||||
it "should create #{libvirt_dir}/autostart directory" do
|
||||
should contain_file("#{libvirt_dir}/autostart").with(
|
||||
'ensure' => 'directory',
|
||||
)
|
||||
end
|
||||
|
||||
it "should start #{libvirt_service} service" do
|
||||
should contain_service(libvirt_service).with(
|
||||
'ensure' => 'running',
|
||||
'before' => 'Exec[generate_vms]',
|
||||
'require' => "File[#{template_dir}]",
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
it "should create #{template_dir} directory" do
|
||||
should contain_file(template_dir).with(
|
||||
'ensure' => 'directory',
|
||||
)
|
||||
end
|
||||
packages.each do | package |
|
||||
it "should install #{package} package" do
|
||||
should contain_package(package).with(
|
||||
'ensure' => 'installed',
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
it "should create #{libvirt_dir}/autostart directory" do
|
||||
should contain_file("#{libvirt_dir}/autostart").with(
|
||||
'ensure' => 'directory',
|
||||
)
|
||||
end
|
||||
|
||||
it "should start #{libvirt_service} service" do
|
||||
should contain_service(libvirt_service).with(
|
||||
'ensure' => 'running',
|
||||
'before' => 'Exec[generate_vms]',
|
||||
)
|
||||
end
|
||||
|
||||
packages.each do | package |
|
||||
it "should install #{package} package" do
|
||||
should contain_package(package).with(
|
||||
'ensure' => 'installed',
|
||||
)
|
||||
it 'should set permissions for /dev/kvm under Ubuntu' do
|
||||
if facts[:operatingsystem] == 'Ubuntu'
|
||||
should contain_file('/dev/kvm').with(
|
||||
:ensure => 'present',
|
||||
:group => 'kvm',
|
||||
:mode => '0660',
|
||||
).that_comes_before('Exec[generate_vms]')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
it 'should set permissions for /dev/kvm under Ubuntu' do
|
||||
if facts[:operatingsystem] == 'Ubuntu'
|
||||
should contain_file('/dev/kvm').with(
|
||||
:ensure => 'present',
|
||||
:group => 'kvm',
|
||||
:mode => '0660',
|
||||
).that_comes_before('Exec[generate_vms]')
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
test_ubuntu_and_centos manifest
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue