(undercloud|overcloud)-deploy: Add deployed_server script support

This patchset adds a flag to the undercloud-deploy role to support
arbitrary extra configuration.

It also adds support to the overcloud-deploy role to allow it to perform
some setup tasks required for deployed_server deployments such as
nodepool multinode.

Change-Id: I0688d7538d4c6fe4d24d5152ee4c8dae2557508f
This commit is contained in:
Ben Kero 2017-01-10 00:03:17 +08:00 committed by John Trowbridge
parent 678fda623a
commit f65419107f
8 changed files with 48 additions and 2 deletions

View File

@ -15,6 +15,7 @@ A description of the settable variables for this role should go here, including
* `overcloud_ipv6`: enables IPv6 deployment on the overcloud
* `enable_cinder_backup`: false/true - enables cinder-backup service.
* `deployed_server`: false/true - enables support for nodepool deployed server deployment (default: false)
Dependencies
------------

View File

@ -66,6 +66,11 @@ backup_args: ""
ssl_args: ""
validation_args: "--validation-warnings-fatal"
deployed_server: false
deployed_server_prepare_script: deployed_server_prepare.sh.j2
deployed_server_prepare_log: "{{ working_dir }}/deployed_server_prepare.txt"
container_args: ""
deploy_args: >-

View File

@ -0,0 +1,24 @@
---
- name: Create deployed_server_prepare script
template:
src: "{{ deployed_server_prepare_script }}"
dest: "{{ working_dir }}/deployed_server_prepare.sh"
mode: 0755
- name: Run the deployed-server_prepare script
shell: |
{{ working_dir }}/deployed_server_prepare.sh > {{ deployed_server_prepare_log }} 2>&1
async: 10800
poll: 0
environment:
OPT_WORKDIR: "{{ lookup('env', 'OPT_WORKDIR') }}"
http_proxy: "{{ lookup('env', 'http_proxy') }}"
no_proxy: "{{ lookup('env', 'no_proxy') }}"
TRIPLEO_ROOT: "{{ lookup('env','TRIPLEO_ROOT') }}"
CONTROLLER_HOSTS: "{{ lookup('env','CONTROLLER_HOSTS') }}"
COMPUTE_HOSTS: "{{ lookup('env', 'COMPUTE_HOSTS') }}"
BLOCKSTORAGE_HOSTS: "{{ lookup('env', 'BLOCKSTORAGE_HOSTS') }}"
OBJECTSTORAGE_HOSTS: "{{ lookup('env', 'OBJECTSTORAGE_HOSTS') }}"
CEPHSTORAGE_HOSTS: "{{ lookup('env', 'CEPHSTORAGE_HOSTS') }}"
SUBNODES_SSH_KEY: "/etc/nodepool/id_rsa"

View File

@ -6,6 +6,11 @@
tags:
- overcloud-scripts
- include: deployed-server.yml
when: deployed_server|bool
tags:
- overcloud-deploy
- include: deploy-overcloud.yml
tags:
- overcloud-deploy

View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
source ${HOME}/stackrc
/usr/share/openstack-tripleo-heat-templates/deployed-server/scripts/get-occ-config.sh 2>&1 | sudo dd of=/var/log/deployed-server-os-collect-config.log

View File

@ -32,6 +32,7 @@ properly with the option --old-deploy-image
- `libvirt_uri`: <'qemu:///session'> -- the URI used by libvirt, by default tripleo-quickstart uses
user sessions to provide greater flexixiblity to our users. ** additional documentation ** is at
http://docs.openstack.org/developer/tripleo-quickstart/accessing-libvirt.html
- `undercloud_conf_extra`: "" -- extra options to be added to ~/undercloud.conf
Role Network Variables
----------------------
@ -70,4 +71,4 @@ Sample playbook to call the role
gather_facts: no
roles:
- undercloud-deploy
```
```

View File

@ -27,4 +27,5 @@ network_environment_args:
# not require privileged access (but does require the setup performed by the
# `environment/setup` role).
libvirt_uri: qemu:///session
enable_vbmc: true
enable_vbmc: true
undercloud_conf_extra: ""

View File

@ -366,3 +366,7 @@ undercloud_swift_hash_suffix = {{undercloud_undercloud_swift_hash_suffix}}
{% else %}
#undercloud_swift_hash_suffix = <None>
{% endif %}
{% if undercloud_conf_extra != "" %}
{{ undercloud_conf_extra }}
{% endif %}