91053af09d
For both containers and classic deployments, allow to configure policy.json for all OpenStack APIs with new parameters (hash, empty by default). Example of new parameter: NovaApiPolicies. See environments/nova-api-policy.yaml for how the feature can be used. Note: use it with extreme caution. Partial-implement: blueprint modify-policy-json Change-Id: I1144f339da3836c3e8c8ae4e5567afc4d1a83e95
60 lines
1.5 KiB
YAML
60 lines
1.5 KiB
YAML
heat_template_version: ocata
|
|
|
|
description: >
|
|
A software config which runs puppet on the {{role}} role
|
|
|
|
parameters:
|
|
ConfigDebug:
|
|
default: false
|
|
description: Whether to run config management (e.g. Puppet) in debug mode.
|
|
type: boolean
|
|
StepConfig:
|
|
type: string
|
|
description: Config manifests that will be used to step through the deployment.
|
|
default: ''
|
|
PuppetTags:
|
|
type: string
|
|
description: List of comma-separated tags to limit puppet catalog to.
|
|
default: ''
|
|
|
|
conditions:
|
|
|
|
puppet_tags_empty: {equals : [{get_param: PuppetTags}, '']}
|
|
|
|
resources:
|
|
|
|
{{role}}PuppetConfigImpl:
|
|
type: OS::Heat::SoftwareConfig
|
|
properties:
|
|
group: puppet
|
|
options:
|
|
enable_debug: {get_param: ConfigDebug}
|
|
enable_hiera: True
|
|
enable_facter: False
|
|
modulepath: /etc/puppet/modules:/opt/stack/puppet-modules:/usr/share/openstack-puppet/modules
|
|
tags:
|
|
if:
|
|
- puppet_tags_empty
|
|
- ''
|
|
- list_join:
|
|
- ','
|
|
- ['file,concat,file_line,augeas', {get_param: PuppetTags}]
|
|
outputs:
|
|
- name: result
|
|
inputs:
|
|
- name: step
|
|
type: Number
|
|
config:
|
|
list_join:
|
|
- ''
|
|
- - str_replace:
|
|
template: {get_file: manifests/overcloud_role.pp}
|
|
params:
|
|
__ROLE__: {{role.lower()}}
|
|
- {get_param: StepConfig}
|
|
|
|
outputs:
|
|
OS::stack_id:
|
|
description: The software config which runs puppet on the {{role}} role
|
|
value: {get_resource: {{role}}PuppetConfigImpl}
|