summaryrefslogtreecommitdiffstats
path: root/deploy/adapters/ansible/ansible_modules
AgeCommit message (Expand)AuthorFilesLines
2017-04-01Create endpoint in different regionliyuenan1-1/+2
2017-01-25Ansible Module substitute for Shell Commandsliyuenan1-0/+227
1 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
heat_template_version: pike
parameters:
  image:
    type: string
    default: unused
  flavor:
    type: string
    default: unused
  key_name:
    type: string
    default: unused
  security_groups:
    type: json
    default: []
  # Require this so we can validate the parent passes the
  # correct value
  user_data_format:
    type: string
  user_data:
    type: string
    default: ''
  name:
    type: string
    default: 'deployed-server'
  image_update_policy:
    type: string
    default: ''
  networks:
    type: comma_delimited_list
    default: ''
  metadata:
    type: json
    default: {}
  software_config_transport:
    default: POLL_SERVER_CFN
    type: string
  scheduler_hints:
    type: json
    description: Optional scheduler hints to pass to nova
    default: {}
  UpgradeInitCommand:
    type: string
    description: |
      Command or script snippet to run on all overcloud nodes to
      initialize the upgrade process. E.g. a repository switch.
    default: ''
  deployment_swift_data:
    type: json
    default: {}

resources:
  deployed-server:
    type: OS::Heat::DeployedServer
    properties:
      name: {get_param: name}
      software_config_transport: {get_param: software_config_transport}
      deployment_swift_data: {get_param: deployment_swift_data}

  UpgradeInitConfig:
    type: OS::Heat::SoftwareConfig
    properties:
      group: script
      config:
        list_join:
        - ''
        - - "#!/bin/bash\n\n"
          - "if [[ -f /etc/resolv.conf.save ]] ; then rm /etc/resolv.conf.save; fi\n\n"
          - get_param: UpgradeInitCommand

  UpgradeInitDeployment:
    type: OS::Heat::SoftwareDeployment
    properties:
      name: UpgradeInitDeployment
      server: {get_resource: deployed-server}
      config: {get_resource: UpgradeInitConfig}


  InstanceIdConfig:
    type: OS::Heat::StructuredConfig
    properties:
      group: apply-config
      config:
        instance-id: {get_resource: deployed-server}

  InstanceIdDeployment:
    type: OS::Heat::StructuredDeployment
    properties:
      name: InstanceIdDeployment
      config: {get_resource: InstanceIdConfig}
      server: {get_resource: deployed-server}
    depends_on: UpgradeInitDeployment

  HostsEntryConfig:
    type: OS::Heat::SoftwareConfig
    properties:
      group: script
      config: |
          #!/bin/bash
          set -eux
          mkdir -p $heat_outputs_path
          host=$(hostname -s)
          echo -n $host > $heat_outputs_path.hostname
          cat $heat_outputs_path.hostname
      outputs:
        - name: hostname
          description: hostname

  HostsEntryDeployment:
    type: OS::Heat::SoftwareDeployment
    properties:
      name: HostsEntryDeployment
      config: {get_resource: HostsEntryConfig}
      server: {get_resource: deployed-server}

  DeployedServerBootstrapConfig:
    type: OS::TripleO::DeployedServer::Bootstrap
    properties:
      server: {get_resource: deployed-server}

  ControlPlanePort:
    type: OS::TripleO::DeployedServer::ControlPlanePort
    properties:
      network: ctlplane
      name:
        list_join:
          - '-'
          - - {get_attr: [HostsEntryDeployment, hostname]}
            - ctlplane
      replacement_policy: AUTO

outputs:
  OS::stack_id:
    value: {get_resource: deployed-server}
  networks:
    value:
      ctlplane:
        - {get_attr: [ControlPlanePort, fixed_ips, 0, ip_address]}
  name:
    value: {get_attr: [HostsEntryDeployment, hostname]}
  os_collect_config:
    value: {get_attr: [deployed-server, os_collect_config]}