fuel-plugin-contrail/deployment_tasks.yaml

1132 lines
32 KiB
YAML

# Groups
# Contrail - Controller
- id: primary-contrail-controller
type: group
role: [primary-contrail-controller]
tasks: [hiera, globals, setup_repositories, tools, logging, netconfig, hosts, deploy_start]
required_for: [deploy_end]
requires: [deploy_start]
parameters:
strategy:
type: one_by_one
- id: contrail-controller
type: group
role: [contrail-controller]
tasks: [hiera, globals, setup_repositories, tools, logging, netconfig, hosts, deploy_start]
required_for: [deploy_end]
requires: [deploy_start, primary-contrail-controller]
parameters:
strategy:
type: one_by_one
# Contrail - Analytics DB
- id: primary-contrail-analytics-db
type: group
role: [primary-contrail-analytics-db]
tasks: [hiera, globals, setup_repositories, tools, logging, netconfig, hosts, deploy_start]
required_for: [deploy_end]
requires: [deploy_start]
parameters:
strategy:
type: one_by_one
- id: contrail-analytics-db
type: group
role: [contrail-analytics-db]
tasks: [hiera, globals, setup_repositories, tools, logging, netconfig, hosts, deploy_start]
required_for: [deploy_end]
requires: [deploy_start, primary-contrail-analytics-db]
parameters:
strategy:
type: one_by_one
#
# Contrail - Analytics
- id: primary-contrail-analytics
type: group
role: [primary-contrail-analytics]
tasks: [hiera, globals, setup_repositories, tools, logging, netconfig, hosts, deploy_start]
required_for: [deploy_end]
requires: [deploy_start, primary-contrail-controller]
parameters:
strategy:
type: one_by_one
- id: contrail-analytics
type: group
role: [contrail-analytics]
tasks: [hiera, globals, setup_repositories, tools, logging, netconfig, hosts, deploy_start]
required_for: [deploy_end]
requires: [deploy_start, primary-contrail-controller]
parameters:
strategy:
type: parallel
- id: primary-contrail-tsn
type: group
role: [primary-contrail-tsn]
tasks: [hiera, globals, setup_repositories, tools, logging, netconfig, hosts, deploy_start]
required_for: [deploy_end]
requires: [deploy_start, primary-contrail-controller]
parameters:
strategy:
type: parallel
- id: contrail-tsn
type: group
role: [contrail-tsn]
tasks: [hiera, globals, setup_repositories, tools, logging, netconfig, hosts, deploy_start]
required_for: [deploy_end]
requires: [deploy_start, primary-contrail-controller]
parameters:
strategy:
type: parallel
#
# Group for post-deployment tasks
- id: contrail-post-deploy
type: group
role: [primary-contrail-controller, contrail-controller,
primary-contrail-analytics,contrail-analytics,
primary-contrail-analytics-db,contrail-analytics-db]
tasks: [configure_default_route, dns-client, ntp-client]
required_for: [post_deployment_end]
requires: [post_deployment_start]
parameters:
strategy:
type: parallel
#
# Compute dpdk feature
- id: dpdk
type: group
role: [dpdk]
tasks: []
required_for: [deploy_end]
requires: [deploy_start]
parameters:
strategy:
type: parallel
#
# Compute sriov feature
- id: sriov
type: group
role: [sriov]
tasks: []
required_for: [deploy_end]
requires: [deploy_start]
parameters:
strategy:
type: parallel
#
# Contrail VMware vRouter role
- id: contrail-vmware
type: group
role: [contrail-vmware]
tasks: [hiera, globals, setup_repositories, tools, logging, netconfig, hosts, deploy_start, dns-client, ntp-client]
required_for: [deploy_end, primary-contrail-controller]
requires: [deploy_start]
parameters:
strategy:
type: parallel
# Tasks
#############
#0. Remove apt pin for Contrail plugin repo
#############
- id: common-repo
type: puppet
version: 2.1.0
requires: [setup_repositories]
required_for: [tools]
role: ['/.*/']
parameters:
puppet_manifest: "puppet/manifests/common-repo.pp"
puppet_modules: "puppet/modules:/etc/puppet/modules"
timeout: 120
#############
#1. Install Contrail utils, java
#############
- id: contrail-utils
type: puppet
version: 2.1.0
groups: ["/(primary-)?contrail.*/"]
required_for: [deploy_end]
requires: [deploy_start, hosts]
parameters:
puppet_manifest: puppet/manifests/contrail-utils.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
#############
#2. Install Cassandra and wait cluster to bootstrap
#############
- id: contrail-db-primary
type: puppet
version: 2.1.0
groups: [primary-contrail-controller, primary-contrail-analytics-db]
required_for: [deploy_end]
requires: [contrail-utils]
reexecute_on: [deploy_changes]
parameters:
puppet_manifest: puppet/manifests/contrail-db.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 3600
# This task is a anchor for make dependency between fuel keystone tasks and contrail db setup
- id: contrail-keystone
type: skipped
version: 2.1.0
groups: [primary-controller, controller]
required_for: [deploy_end]
requires: [primary-keystone, keystone, neutron-keystone, nova-keystone]
cross-depended-by:
- name: contrail-db-primary
################
#3. Deploy other Cassandra servers
################
- id: contrail-db-all
type: puppet
version: 2.1.0
groups: [contrail-controller, contrail-analytics-db]
required_for: [deploy_end]
requires: [contrail-utils]
reexecute_on: [deploy_changes]
cross-depends:
- name: contrail-db-primary
parameters:
puppet_manifest: puppet/manifests/contrail-db.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 3600
strategy:
type: parallel
amount: 1
###############
#4. Install and configure Contrail Config, Contrail WebUI
# this task is performed on one node initially to allow discovery service to start up
###############
- id: contrail-config-primary
type: puppet
version: 2.1.0
groups: [primary-contrail-controller]
required_for: [deploy_end]
requires: [contrail-utils, deploy_start]
reexecute_on: [deploy_changes]
cross-depends:
- name: /contrail-db(-primary|-all)/
- name: openstack-haproxy-contrail
- name: primary-keystone
parameters:
puppet_manifest: puppet/manifests/contrail-config.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
################
#5. Provision Primary Control config
################
- id: contrail-config-provision-primary
type: puppet
version: 2.1.0
groups: [primary-contrail-controller]
required_for: [deploy_end]
requires: [contrail-config-primary]
reexecute_on: [deploy_changes]
parameters:
puppet_manifest: puppet/manifests/contrail-config-provision.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
################
#6. Perform same actions on other contrail-config nodes
################
- id: contrail-config-all
type: puppet
version: 2.1.0
groups: [contrail-controller]
required_for: [deploy_end]
requires: [contrail-utils]
reexecute_on: [deploy_changes]
cross-depends:
- name: contrail-config-primary
- name: contrail-config-provision-primary
parameters:
puppet_manifest: puppet/manifests/contrail-config.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
strategy:
type: parallel
###############
#7. Provision Contrail Config
###############
- id: contrail-config-provision-all
type: puppet
version: 2.1.0
groups: [contrail-controller]
required_for: [deploy_end]
requires: [contrail-config-all]
parameters:
puppet_manifest: puppet/manifests/contrail-config-provision.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
strategy:
type: parallel
###############
#8. Install and configure Contrail Analytics Node
###############
#
- id: primary-contrail-analytics-db-wait
type: puppet
version: 2.1.0
groups: [primary-contrail-analytics-db]
required_for: [deploy_end]
requires: [contrail-analytics-db, deploy_start]
cross-depends:
- name: primary-contrail-analytics-all
- name: /contrail-config(-primary|-all)/
- name: /contrail-config-provision(-primary|-all)/
parameters:
puppet_manifest: puppet/manifests/contrail-analytics-db-wait.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
- id: primary-contrail-analytics-all
type: puppet
version: 2.1.0
groups: [primary-contrail-analytics]
required_for: [deploy_end]
requires: [contrail-db-primary]
parameters:
puppet_manifest: puppet/manifests/contrail-analytics.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
- id: contrail-analytics-all
type: puppet
version: 2.1.0
groups: [contrail-analytics]
required_for: [deploy_end]
requires: [contrail-utils, deploy_start]
cross-depends:
- name: primary-contrail-analytics-db-wait
- name: primary-contrail-analytics-all
- name: /contrail-config(-primary|-all)/
- name: /contrail-config-provision(-primary|-all)/
parameters:
puppet_manifest: puppet/manifests/contrail-analytics.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
################
#9. Provision Contrail Analytics
################
- id: contrail-analytics-provision
type: puppet
version: 2.1.0
groups: [primary-contrail-analytics,contrail-analytics]
required_for: [deploy_end]
requires: [primary-contrail-analytics-all, contrail-analytics-all]
parameters:
puppet_manifest: puppet/manifests/contrail-analytics-provision.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
################
#10. Install and configure Contrail Control Node
################
- id: contrail-control-primary
type: puppet
version: 2.1.0
groups: [primary-contrail-controller]
required_for: [deploy_end]
requires: [contrail-utils]
cross-depends:
- name: /contrail-config(-primary|-all)/
- name: /contrail-config-provision(-primary|-all)/
- name: contrail-db-provision-all
parameters:
puppet_manifest: puppet/manifests/contrail-control.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
################
#11. Provision Primary Contrail control
################
- id: contrail-control-provision-primary
type: puppet
version: 2.1.0
groups: [primary-contrail-controller]
required_for: [deploy_end]
requires: [contrail-control-primary]
parameters:
puppet_manifest: puppet/manifests/contrail-control-provision.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
##############
#12. Install other Contrail Control Nodes
##############
- id: contrail-control-all
type: puppet
version: 2.1.0
groups: [contrail-controller]
required_for: [deploy_end]
requires: [contrail-utils]
cross-depends:
- name: /contrail-config-provision(-all|-primary)/
- name: contrail-control-primary
parameters:
puppet_manifest: puppet/manifests/contrail-control.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
strategy:
type: parallel
################
#13. Provision Contrail control
################
- id: contrail-control-provision-all
type: puppet
version: 2.1.0
groups: [contrail-controller]
required_for: [deploy_end]
requires: [contrail-control-all]
cross-depends:
- name: contrail-control-provision-primary
parameters:
puppet_manifest: puppet/manifests/contrail-control-provision.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
strategy:
type: parallel
###############
#14. Provision Control db
###############
- id: contrail-db-provision-all
type: puppet
version: 2.1.0
groups: [primary-contrail-controller, contrail-controller, primary-contrail-analytics-db, contrail-analytics-db]
required_for: [deploy_end]
requires: [contrail-utils]
cross-depends:
- name: /contrail-config-provision(-all|-primary)/
parameters:
puppet_manifest: puppet/manifests/contrail-db-provision.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
strategy:
type: parallel
################
#15. Provision Contrail Web UI
################
- id: contrail-webui-provision-primary
type: puppet
version: 2.1.0
groups: [primary-contrail-controller]
required_for: [deploy_end]
requires: [contrail-db-primary]
parameters:
puppet_manifest: puppet/manifests/contrail-webui.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 1440
##############################################################
# Openstack Controller tasks section
##############################################################
- id: openstack-haproxy-contrail
type: puppet
version: 2.1.0
groups: [primary-controller, controller]
requires: [deploy_start, primary-cluster-haproxy, cluster-haproxy]
required_for: [deploy_end, openstack-haproxy]
reexecute_on: [deploy_changes]
cross-depended-by:
- name: contrail-config-primary
parameters:
puppet_manifest: puppet/manifests/controller-vip.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
# Skip L2, L3, DHCP and Metadata Neutron agents
- id: primary-openstack-network-agents-l3
roles: '*'
type: skipped
version: 2.1.0
- id: openstack-network-agents-l3
roles: '*'
type: skipped
version: 2.1.0
- id: primary-openstack-network-plugins-l2
roles: '*'
type: skipped
version: 2.1.0
- id: openstack-network-plugins-l2
roles: '*'
type: skipped
version: 2.1.0
- id: primary-openstack-network-agents-dhcp
roles: '*'
type: skipped
version: 2.1.0
- id: openstack-network-agents-dhcp
roles: '*'
type: skipped
version: 2.1.0
- id: primary-openstack-network-agents-metadata
roles: '*'
type: skipped
version: 2.1.0
- id: openstack-network-agents-metadata
roles: '*'
type: skipped
version: 2.1.0
- id: openstack-network-agents-sriov
roles: '*'
type: skipped
version: 2.1.0
# Skip default fuel networks and routers
- id: openstack-network-networks
roles: '*'
type: skipped
version: 2.1.0
- id: openstack-network-routers
roles: '*'
type: skipped
version: 2.1.0
# Redefined task to skip it on DPDK computes
- id: openstack-network-common-config
type: puppet
version: 2.1.0
groups: [primary-controller,controller,compute]
required_for: [openstack-network-end]
requires: [openstack-network-start]
condition:
yaql_exp: >
(changedAny($.get('openstack_network'), $.get('verbose'), $.debug,
$.quantum_settings, $.neutron_advanced_configuration, $.rabbit,
$.ceilometer, $.network_scheme, $.get('use_syslog'),
$.get('use_stderr'), $.get('syslog_log_facility_neutron'),
$.network_metadata.nodes.values().where(
$.node_roles.any($.matches('controller'))).network_roles.select(
$.get('mgmt/messaging')),
$.get('amqp_hosts'), $.get('kombu_compression')) and not 'dpdk' in $.roles)
parameters:
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/openstack-network/common-config.pp
puppet_modules: /etc/puppet/modules
timeout: 1800
##################
# Configuration for Nova, Neutron, Heat, Ceilometer on OpenStack Controllers
##################
- id: contrail-os-controller
type: puppet
version: 2.1.0
groups: [primary-controller, controller]
required_for: [deploy_end]
requires: [controller_remaining_tasks, primary-heat, heat]
cross-depends:
- name: openstack-network-common-config
role: self
- name: openstack-network-end
role: self
parameters:
puppet_manifest: puppet/manifests/controller-config.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
###################
# Congirures DPDK and SR-IOV filters in nova-scheduler
###################
- id: controller-scheduler
type: puppet
version: 2.1.0
groups: [primary-controller, controller]
required_for: [deploy_end]
requires: [contrail-os-controller]
parameters:
puppet_manifest: puppet/manifests/controller-scheduler.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 120
##################
# Creates aggregate for DPDK
##################
- id: contrail-controller-aggregate
type: puppet
version: 2.1.0
groups: [primary-controller]
required_for: [deploy_end]
requires: [controller-scheduler]
parameters:
puppet_manifest: puppet/manifests/contrail-controller-aggregate.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 120
##################
# Create overrides for Hiera on Controllers: contrail-specific predefined_nets
##################
- id: controller-hiera-post
type: puppet
version: 2.1.0
groups: [primary-controller, controller]
required_for: [deploy_end]
requires: []
cross-depends:
- name: contrail-os-controller
role: self
parameters:
puppet_manifest: puppet/manifests/controller-hiera-post.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 120
#################
# Create networks for ostf-tests and provision route target
#################
- id: contrail-os-controller-prov
type: puppet
version: 2.1.0
groups: [primary-controller]
required_for: [deploy_end]
requires: [controller-hiera-post]
cross-depends:
- name: contrail-config-all
- name: contrail-config-primary
- name: contrail-os-controller
role: self
parameters:
puppet_manifest: puppet/manifests/controller-provision.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
##############################################################
# TSN tasks section
##############################################################
# Set proper apt pin for Contrail repository
- id: contrail_repository_tsn
type: puppet
version: 2.1.0
groups: [primary-contrail-tsn,contrail-tsn]
requires: [setup_repositories, globals]
required_for: [tools]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-repo.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: install_openvswitch
type: shell
version: 2.1.0
role: master
requires: [deploy_start]
required_for: [generate_tsn_certificates]
parameters:
cmd: /usr/bin/yum install openvswitch -y
timeout: 180
cwd: /
condition:
yaql_exp: '$.contrail.enable_tor_agents'
- id: generate_tsn_certificates
type: shell
version: 2.1.0
role: master
requires: [install_openvswitch]
required_for: [generate_tsn_certificates_tgz]
parameters:
cmd: /usr/bin/python /var/www/nailgun/plugins/contrail-5.0/deployment_scripts/generate_tsn_certificates.py {CLUSTER_ID}
timeout: 180
cwd: /
condition:
yaql_exp: '$.contrail.enable_tor_agents'
- id: generate_tsn_certificates_tgz
type: shell
version: 2.1.0
role: master
requires: [generate_tsn_certificates]
required_for: [copy_tsn_certificates]
parameters:
cmd: bash -c "/usr/bin/tar -czf /var/lib/fuel/certificates/{CLUSTER_ID}/certs.tgz certs"
timeout: 180
cwd: /var/lib/fuel/certificates/{CLUSTER_ID}/
condition:
yaql_exp: '$.contrail.enable_tor_agents'
- id: copy_tsn_certificates
type: copy_files
version: 2.1.0
groups: [primary-contrail-tsn,contrail-tsn]
requires: [generate_tsn_certificates_tgz]
required_for: [unpack_tsn_certificates]
cross-depends:
- name: generate_tsn_certificates_tgz
role: master
parameters:
files:
- src: /var/lib/fuel/certificates/{CLUSTER_ID}/certs.tgz
dst: /var/lib/astute/tsn_certificates/certs.tgz
- src: /var/lib/fuel/certificates/{CLUSTER_ID}/switchca/cacert.pem
dst: /var/lib/astute/tsn_certificates/cacert.pem
permissions: '0600'
dir_permissions: '0700'
cwd: /
- id: unpack_tsn_certificates
type: shell
version: 2.1.0
groups: [primary-contrail-tsn,contrail-tsn]
requires: [copy_tsn_certificates]
required_for: [contrail_tsn_network]
parameters:
cmd: bash -c "/bin/tar -xzf certs.tgz"
timeout: 180
cwd: /var/lib/astute/tsn_certificates/
- id: contrail_tsn_network
type: puppet
version: 2.1.0
groups: [primary-contrail-tsn,contrail-tsn]
requires: [netconfig,unpack_tsn_certificates]
required_for: [contrail_tsn_vrouter]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-network.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: contrail_tsn_vrouter
type: puppet
version: 2.1.0
groups: [primary-contrail-tsn,contrail-tsn]
requires: [contrail_tsn_network]
required_for: [reconfigure_contrail_tsn_vrouter]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-vrouter.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: reconfigure_contrail_tsn_vrouter
type: puppet
version: 2.1.0
groups: [primary-contrail-tsn,contrail-tsn]
requires: [contrail_tsn_vrouter]
required_for: [provision_tsn_vrouter]
cross-depends:
- name: contrail-config-primary
- name: contrail-config-provision-primary
parameters:
puppet_manifest: puppet/manifests/reconfigure-contrail-tsn-vrouter.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: provision_tsn_vrouter
type: puppet
version: 2.1.0
groups: [primary-contrail-tsn,contrail-tsn]
requires: [reconfigure_contrail_tsn_vrouter]
required_for: [deploy_end]
cross-depends:
- name: /contrail-config-provision(-all|-primary)/
parameters:
puppet_manifest: puppet/manifests/contrail-tsn-provision.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
##############################################################
# Compute tasks section
##############################################################
################
# Set proper apt pin for Contrail repository
################
- id: contrail-repository
type: puppet
version: 2.1.0
groups: [compute]
required_for: [tools]
requires: [deploy_start, setup_repositories, globals]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-repo.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
#################
# Create overrides for Hiera on Computes
#################
- id: compute-hiera
type: puppet
version: 2.1.0
groups: [compute]
required_for: [netconfig]
requires: [deploy_start, globals]
parameters:
puppet_manifest: puppet/manifests/compute-hiera.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 120
# Workaround for #1550450
- id: enable_nova_compute_service
groups: [compute]
type: skipped
version: 2.1.0
#
# Overrides bridges settings to make netconfig idempotent with DPDK
- id: contrail-compute-netconfig-override
groups: [compute]
type: puppet
version: 2.1.0
condition:
yaql_exp: ('dpdk' in $.roles)
required_for: [deploy_end]
requires: [deploy_start, netconfig, contrail-compute-vrouter]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-netconfig-override.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 120
# Set apt pin for packeges that need to be override
- id: contrail-override-repository
type: puppet
version: 2.1.0
groups: [compute]
required_for: [deploy_end]
requires: [enable_nova_compute_service, openstack-network-end, compute-hiera]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-override.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
# Configures hugepages kernel settings if dpdk is enabled
- id: contrail-compute-hugepages
type: puppet
version: 2.1.0
groups: [compute]
required_for: [deploy_end]
requires: [enable_nova_compute_service, openstack-network-end, contrail-override-repository]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-hugepages.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: contrail-compute-provision
type: puppet
version: 2.1.0
groups: [compute]
required_for: [deploy_end]
requires: []
parameters:
puppet_manifest: puppet/manifests/contrail-compute-provision.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
cross-depends:
- name: contrail-config-provision-primary
- name: contrail-config-provision-all
strategy:
type: one-by-one
- id: contrail-compute-dpdkonvf
type: puppet
version: 2.1.0
groups: [compute]
required_for: [contrail-compute-network,deploy_end]
requires: [openstack-network-end]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-dpdkonvf.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: contrail-compute-network
type: puppet
version: 2.1.0
groups: [compute]
required_for: [deploy_end]
requires: [enable_nova_compute_service, openstack-network-end]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-network.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: contrail-compute-nova
type: puppet
version: 2.1.0
groups: [compute]
required_for: [deploy_end]
requires: [enable_nova_compute_service, openstack-network-end, contrail-compute-network]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-nova.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: contrail-compute-firewall
type: puppet
version: 2.1.0
groups: [compute]
required_for: [deploy_end]
requires: [enable_nova_compute_service, openstack-network-end, contrail-compute-nova]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-firewall.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: contrail-compute-vrouter
type: puppet
version: 2.1.0
groups: [compute]
required_for: [deploy_end]
requires: [enable_nova_compute_service, openstack-network-end, contrail-compute-firewall]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-vrouter.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
# Adds node to nova aggregate for DPDK
- id: contrail-compute-aggregate
type: puppet
version: 2.1.0
groups: [compute]
required_for: [deploy_end]
requires: [enable_nova_compute_service, openstack-network-end, contrail-compute-vrouter]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-aggregate.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 120
- id: sriov_iommu_check
type: skipped
- id: sahara
type: skipped
- id: sahara-contrail
type: puppet
version: 2.1.0
groups: [primary-controller, controller]
condition:
yaql_exp: >
$.sahara.enabled and changedAny($.access, $.sahara, $.rabbit,
$.public_ssl, $.ceilometer,
('primary-controller' in $.roles), $.network_metadata.vips,
$.get('database_vip'), $.quantum_settings, $.quantum, $.network_scheme,
$.get('syslog_log_facility_sahara'), $.debug, $.get('verbose'),
$.get('default_log_levels'), $.get('use_syslog'), $.get('use_stderr'),
$.get('rabbit_ha_queues'), $.get('amqp_port'),
$.network_metadata.nodes.values().where(
$.node_roles.any($.matches('controller'))).network_roles.select(
$.get('mgmt/messaging')), $.get('amqp_hosts'),
$.get('external_lb'), $.get('use_ssl'), $.get('kombu_compression'))
required_for: [deploy_end]
requires: []
cross-depends:
- name: contrail-os-controller-prov
- name: sahara-db
- name: sahara-keystone
parameters:
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/sahara/sahara.pp
puppet_modules: /etc/puppet/modules
timeout: 3600
test_pre:
cmd: ruby /etc/puppet/modules/openstack_tasks/examples/sahara/sahara_pre.rb
test_post:
cmd: ruby /etc/puppet/modules/openstack_tasks/examples/sahara/sahara_post.rb
- id: murano
type: skipped
- id: murano-contrail
type: puppet
version: 2.1.0
groups: [primary-controller, controller]
condition:
yaql_exp: >
$.murano.enabled and changedAny($.murano, $.murano_settings,
$.rabbit, $.quantum_settings, $.network_metadata.vips,
$.get('database_vip'), $.get('region', 'RegionOne'), $.quantum,
$.network_metadata, $.get('syslog_log_facility_murano'), $.debug,
$.get('verbose'), $.get('default_log_levels'), $.get('use_syslog'),
$.get('use_stderr'), $.get('rabbit_ha_queues'), $.get('amqp_port'),
$.network_metadata.nodes.values().where(
$.node_roles.any($.matches('controller'))).network_roles.select(
$.get('mgmt/messaging')),
$.get('amqp_hosts'), $.external_dns, $.public_ssl, $.get('use_ssl'),
('primary-controller' in $.roles), $.get('kombu_compression'),
$.get('external_lb'), $.get('keystone_endpoint'))
required_for: [deploy_end]
requires: [primary-heat, heat, horizon, primary-rabbitmq, rabbitmq, contrail-os-controller-prov]
cross-depends:
- name: murano-db
- name: murano-keystone
parameters:
puppet_manifest: /etc/puppet/modules/openstack_tasks/examples/murano/murano.pp
puppet_modules: /etc/puppet/modules
timeout: 3600
test_pre:
cmd: ruby /etc/puppet/modules/openstack_tasks/examples/murano/murano_pre.rb
test_post:
cmd: ruby /etc/puppet/modules/openstack_tasks/examples/murano/murano_post.rb
##############################################################
# Compute vmware tasks section
##############################################################
- id: gather_vmware_data
type: shell
version: 2.1.0
role: master
cross-depended-by:
- name: plugins_rsync
role: compute-vmware
parameters:
cmd: /usr/bin/python spawner.py --env_id {CLUSTER_ID} --map-ips
timeout: 180
cwd: /var/www/nailgun/plugins/contrail-5.0/deployment_scripts/
condition:
yaql_exp: &use_vcenter '$.use_vcenter'
# Set proper apt pin for Contrail repository
- id: contrail-compute-vmware-repo
type: puppet
version: 2.1.0
groups: [compute-vmware]
required_for: [tools]
requires: [deploy_start, globals]
cross-depends:
- name: gather_vmware_data
role: master
parameters:
puppet_manifest: puppet/manifests/contrail-compute-vmware-repo.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: contrail-compute-vmware-pkg
type: puppet
version: 2.1.0
groups: [compute-vmware]
required_for: [top-role-compute-vmware]
requires: [deploy_start, globals, contrail-compute-vmware-repo]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-vmware-pkg.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: contrail-compute-vmware-nova
type: puppet
version: 2.1.0
role: [compute-vmware]
required_for: [post_deployment_end]
requires: [post_deployment_start]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-nova.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
# Deploy contrail vCenter plugin
- id: contrail-compute-vmware
type: puppet
version: 2.1.0
role: [compute-vmware]
required_for: [post_deployment_end]
requires: [post_deployment_start,contrail-compute-vmware-nova]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-vmware.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: contrail-vmware-provision
type: puppet
version: 2.1.0
groups: [contrail-vmware]
required_for: [contrail-vmware-network]
requires: [contrail-utils]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-provision.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
cross-depends:
- name: contrail-os-controller-prov
role: primary-controller
- id: contrail-vmware-network
type: puppet
version: 2.1.0
groups: [contrail-vmware]
required_for: [contrail-vmware-task]
requires: [deploy_start, hosts]
parameters:
puppet_manifest: puppet/manifests/contrail-compute-network.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
- id: contrail-vmware-task
type: puppet
version: 2.1.0
groups: [contrail-vmware]
required_for: [deploy_end]
requires: [hosts, ssl-dns-setup, contrail-vmware-network]
parameters:
puppet_manifest: puppet/manifests/contrail-vmware.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 720
cross-depends:
- name: contrail-db-provision-all
- id: top-role-compute-vmware
type: skipped
- id: contrail-top-role-compute-vmware
type: puppet
version: 2.1.0
groups: [compute-vmware]
required_for: [enable_nova_compute_service]
requires: [top-role-compute, ceilometer-compute, ceilometer-keystone]
reexecute_on: [deploy_changes]
condition:
yaql_exp: *use_vcenter
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/vmware/compute-vmware.pp
puppet_modules: /etc/puppet/modules
timeout: 180
- id: pkg_upgrade
type: puppet
version: 2.1.0
groups: [primary-controller, controller, cinder, cinder-block-device, cinder-vmware, compute, ceph-osd, primary-mongo, mongo, ironic]
requires: [setup_repositories, common-repo]
required_for: [fuel_pkgs]
condition:
yaql_exp: $.get('mu_upgrade', {}).get('enabled') and changedAny($.mu_upgrade)
parameters:
puppet_manifest: /etc/puppet/modules/osnailyfacter/modular/upgrade/pkg_upgrade.pp
puppet_modules: /etc/puppet/modules
timeout: 3600