heat_template_version: 2015-04-30

description: >
  A software config which runs manifests/overcloud_volume.pp

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: ''

resources:

  BlockStoragePuppetConfigImpl:
    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
      inputs:
      - name: step
        type: Number
      outputs:
      - name: result
      config:
        list_join:
        - ''
        - - get_file: manifests/overcloud_volume.pp
          - {get_param: StepConfig}

outputs:
  OS::stack_id:
    description: The software config which runs overcloud_controller.pp
    value: {get_resource: BlockStoragePuppetConfigImpl}