2913e57412
In order to specify which version of python we should use for the deployment, we need to pass in the python interpreter into the postconfig where we are directly calling the ansible heat hook. Change-Id: I9dfc72269f800395a9864c457a5a43f7590c8e75 Related-Blueprint: python3-support
132 lines
3.7 KiB
YAML
132 lines
3.7 KiB
YAML
heat_template_version: rocky
|
|
|
|
description: >
|
|
Post-deployment for the TripleO standalone deployment
|
|
|
|
parameters:
|
|
servers:
|
|
type: json
|
|
DeployedServerPortMap:
|
|
default: {}
|
|
type: json
|
|
StandaloneHomeDir:
|
|
description: The HOME directory where the stackrc and ssh credentials for the Standalone will be installed. Set to /home/<user> to customize the location.
|
|
type: string
|
|
default: '/root'
|
|
AdminPassword: #supplied by tripleo-undercloud-passwords.yaml
|
|
type: string
|
|
description: The password for the keystone admin account, used for monitoring, querying neutron etc.
|
|
hidden: True
|
|
SSLCertificate:
|
|
description: >
|
|
The content of the SSL certificate (without Key) in PEM format.
|
|
type: string
|
|
default: ""
|
|
hidden: True
|
|
PublicSSLCertificateAutogenerated:
|
|
default: false
|
|
description: >
|
|
Whether the public SSL certificate was autogenerated or not.
|
|
type: boolean
|
|
KeystoneRegion:
|
|
type: string
|
|
default: 'regionOne'
|
|
description: Keystone region for endpoint
|
|
StandaloneCloudName:
|
|
type: string
|
|
default: 'standalone'
|
|
description: Cloud name for the clouds.yaml
|
|
PythonInterpreter:
|
|
type: string
|
|
description: The python interpreter to use for python and ansible actions
|
|
default: /usr/bin/python
|
|
|
|
conditions:
|
|
|
|
tls_enabled:
|
|
or:
|
|
- not:
|
|
equals:
|
|
- {get_param: SSLCertificate}
|
|
- ""
|
|
- equals:
|
|
- {get_param: PublicSSLCertificateAutogenerated}
|
|
- true
|
|
|
|
resources:
|
|
|
|
StandalonePostConfig:
|
|
type: OS::Heat::SoftwareConfig
|
|
properties:
|
|
group: ansible
|
|
inputs:
|
|
- name: ansible_python_interpreter
|
|
description: Python interpreter to use for the ansible execution
|
|
default: {get_param: PythonInterpreter}
|
|
config: |
|
|
---
|
|
- name: StandalonePostConfig
|
|
connection: local
|
|
hosts: localhost
|
|
tasks:
|
|
- name: Hiera symlink
|
|
file:
|
|
src: /etc/puppet/hiera.yaml
|
|
dest: /etc/hiera.yaml
|
|
state: link
|
|
force: yes
|
|
|
|
StandalonePostDeployment:
|
|
type: OS::Heat::SoftwareDeployments
|
|
properties:
|
|
name: StandalonePostDeployment
|
|
servers: {get_param: servers}
|
|
config: {get_resource: StandalonePostConfig}
|
|
|
|
CloudsYamlConfig:
|
|
type: OS::Heat::SoftwareConfig
|
|
properties:
|
|
group: script
|
|
inputs:
|
|
- name: admin_password
|
|
- name: auth_url
|
|
- name: cloud_name
|
|
- name: home_dir
|
|
- name: identity_api_version
|
|
- name: project_name
|
|
- name: project_domain_name
|
|
- name: region_name
|
|
- name: user_name
|
|
- name: user_domain_name
|
|
config: {get_file: ./clouds_yaml.py}
|
|
|
|
CloudsYamlDeployment:
|
|
type: OS::Heat::SoftwareDeployments
|
|
properties:
|
|
name: CloudsYamlDeployment
|
|
servers: {get_param: servers}
|
|
config: {get_resource: CloudsYamlConfig}
|
|
input_values:
|
|
admin_password: {get_param: AdminPassword}
|
|
auth_url:
|
|
if:
|
|
- tls_enabled
|
|
- make_url:
|
|
scheme: https
|
|
host: {get_param: [DeployedServerPortMap, 'public_virtual_ip', fixed_ips, 0, ip_address]}
|
|
port: 13000
|
|
path: /
|
|
- make_url:
|
|
scheme: http
|
|
host: {get_param: [DeployedServerPortMap, 'control_virtual_ip', fixed_ips, 0, ip_address]}
|
|
port: 5000
|
|
path: /
|
|
cloud_name: {get_param: StandaloneCloudName}
|
|
home_dir: {get_param: StandaloneHomeDir}
|
|
identity_api_version: 3
|
|
project_name: 'admin'
|
|
project_domain_name: 'Default'
|
|
region_name: {get_param: KeystoneRegion}
|
|
user_name: 'admin'
|
|
user_domain_name: 'Default'
|