heat_template_version: rocky

parameters:

  name:
    type: string
    default: ""

  actions:
    type: comma_delimited_list
    default: ['CREATE', 'UPDATE']

  server:
    type: string

  config:
    type: string

  input_values:
    type: json
    description: input values for the software deployments
    default: {}

  input_key:
    type: string
    default: 'get_input'

  signal_transport:
    type: string
    default: 'CFN_SIGNAL'

  input_values_validate:
    type: string
    default: 'LAX'

resources:

  TripleODeployment:
    type: OS::Heat::Value
    properties:
      value:
        name: {get_param: name}
        server: {get_param: server}
        config: {get_param: config}
        input_values: {get_param: input_values}
        deployment: {get_resource: TripleOSoftwareDeployment}

  TripleOSoftwareDeployment:
    type: OS::Heat::SoftwareDeployment
    properties:
      name: deployment_resource
      config: {get_param: config}
      server: {get_resource: TripleOServer}
      input_values: {get_param: input_values}
      signal_transport: NO_SIGNAL
      actions: {get_param: actions}

  TripleOServer:
    type: OS::Heat::DeployedServer
    properties:
      name: server_resource

outputs:

  deploy_status_code:
    value: 0
  deploy_stderr:
    value: ''
  deploy_stdout:
    value: ''
  show:
    value: ''

  update_managed_packages:
    description: boolean value indicating whether to upgrade managed packages
    value: false
  hostname:
    description: hostname
    value: ''