fuel-library/deployment/puppet/deployment_groups/tasks.yaml
Dmitry Shulyak 4451a173fa Make one joined graph from 3 separate stages
Previously this 3 stages was disjoined and connected programatically
during traversal in nailgun. Such approach imposes some dificulties
during traversal and filtering and not really extandable (add new stages).

Introduced change allows us to simplify traversal logic, and therefore
improve UX for tasks developer

Also in such approach it is quite easy to introduce new stages, like
something that should be executed after cluster is completed, for example,
stage end_notification that should fire some messages when we can guarantee
that cluster is completed.
Or add stage provision to the same graph.

related to blueprint granular-deployment-based-on-tasks
Depends on nailgun: Ida5880525f9c3428ad8bb590f7ef78a0b20b1049

Change-Id: Ie332d0c1745a48c5ae96c4c80d94922c321d5f7a
2015-02-25 19:14:06 +00:00

109 lines
1.9 KiB
YAML

#STAGES
- id: pre_deployment_start
type: stage
- id: pre_deployment_end
type: stage
requires: [pre_deployment_start]
- id: deploy_start
type: stage
requires: [pre_deployment_end]
- id: deploy_end
type: stage
requires: [deploy_start]
- id: post_deployment_start
type: stage
requires: [deploy_end]
- id: post_deployment_end
type: stage
requires: [post_deployment_start]
#GROUPS
- id: primary-controller
type: group
role: [primary-controller]
requires: [deploy_start]
required_for: [deploy_end]
parameters:
strategy:
type: one_by_one
- id: controller
type: group
role: [controller]
requires: [primary-controller]
required_for: [deploy_end]
parameters:
strategy:
type: parallel
amount: 6
- id: cinder
type: group
role: [cinder]
requires: [controller]
required_for: [deploy_end]
parameters:
strategy:
type: parallel
- id: compute
type: group
role: [compute]
requires: [controller]
required_for: [deploy_end]
parameters:
strategy:
type: parallel
- id: zabbix-server
type: group
role: [zabbix-server]
required_for: [deploy_end]
requires: [deploy_start]
parameters:
strategy:
type: one_by_one
- id: mongo
type: group
role: [mongo]
requires: [zabbix-server]
required_for: [deploy_end, primary-controller, controller]
parameters:
strategy:
type: parallel
- id: primary-mongo
type: group
role: [primary-mongo]
requires: [mongo]
required_for: [deploy_end, primary-controller, controller]
parameters:
strategy:
type: one_by_one
- id: ceph-osd
type: group
role: [ceph-osd]
requires: [controller]
required_for: [deploy_end]
parameters:
strategy:
type: parallel
- id: base-os
type: group
role: [base-os]
tasks: [hiera, globals]
required_for: [deploy_end]
requires: [deploy_start]
parameters:
strategy:
type: parallel