Unsupported option
This patch adds possibility of using unsupported parameter CONFIG_STORAGE_HOST, which allows Packstack to install Glance and Cinder to separate host. Change-Id: I71e82356a3c1ccdeaf784706f44535f8126c93fe Resolves: rhbz#1131866
This commit is contained in:
parent
f54c44fea0
commit
b26280d835
|
@ -223,10 +223,12 @@ def initSequences(controller):
|
|||
|
||||
def check_cinder_vg(config, messages):
|
||||
cinders_volume = 'cinder-volumes'
|
||||
if config['CONFIG_UNSUPPORTED'] != 'y':
|
||||
config['CONFIG_STORAGE_HOST'] = config['CONFIG_CONTROLLER_HOST']
|
||||
|
||||
# Do we have a cinder-volumes vg?
|
||||
have_cinders_volume = False
|
||||
server = utils.ScriptRunner(config['CONFIG_CONTROLLER_HOST'])
|
||||
server = utils.ScriptRunner(config['CONFIG_STORAGE_HOST'])
|
||||
server.append('vgdisplay %s' % cinders_volume)
|
||||
try:
|
||||
server.execute()
|
||||
|
@ -235,7 +237,7 @@ def check_cinder_vg(config, messages):
|
|||
pass
|
||||
|
||||
# Configure system LVM settings (snapshot_autoextend)
|
||||
server = utils.ScriptRunner(config['CONFIG_CONTROLLER_HOST'])
|
||||
server = utils.ScriptRunner(config['CONFIG_STORAGE_HOST'])
|
||||
server.append('sed -i -r "s/^ *snapshot_autoextend_threshold +=.*/'
|
||||
' snapshot_autoextend_threshold = 80/" '
|
||||
'/etc/lvm/lvm.conf')
|
||||
|
@ -260,7 +262,7 @@ def check_cinder_vg(config, messages):
|
|||
|
||||
# TO-DO: This is implemented in cinder::setup_test_volume class.
|
||||
# We should use it instead of this Python code
|
||||
server = utils.ScriptRunner(config['CONFIG_CONTROLLER_HOST'])
|
||||
server = utils.ScriptRunner(config['CONFIG_STORAGE_HOST'])
|
||||
server.append('systemctl')
|
||||
try:
|
||||
server.execute()
|
||||
|
@ -315,7 +317,7 @@ def check_cinder_vg(config, messages):
|
|||
# fails.
|
||||
try:
|
||||
logging.debug("Release loop device, volume creation failed")
|
||||
server = utils.ScriptRunner(config['CONFIG_CONTROLLER_HOST'])
|
||||
server = utils.ScriptRunner(config['CONFIG_STORAGE_HOST'])
|
||||
server.append('losetup -d $(losetup -j %s | cut -d : -f 1)'
|
||||
% cinders_volume_path)
|
||||
server.execute()
|
||||
|
@ -328,14 +330,20 @@ def check_cinder_vg(config, messages):
|
|||
|
||||
|
||||
def create_keystone_manifest(config, messages):
|
||||
if config['CONFIG_UNSUPPORTED'] != 'y':
|
||||
config['CONFIG_STORAGE_HOST'] = config['CONFIG_CONTROLLER_HOST']
|
||||
|
||||
manifestfile = "%s_keystone.pp" % config['CONFIG_CONTROLLER_HOST']
|
||||
manifestdata = getManifestTemplate("keystone_cinder.pp")
|
||||
appendManifestFile(manifestfile, manifestdata)
|
||||
|
||||
|
||||
def create_manifest(config, messages):
|
||||
if config['CONFIG_UNSUPPORTED'] != 'y':
|
||||
config['CONFIG_STORAGE_HOST'] = config['CONFIG_CONTROLLER_HOST']
|
||||
|
||||
manifestdata = getManifestTemplate(get_mq(config, "cinder"))
|
||||
manifestfile = "%s_cinder.pp" % config['CONFIG_CONTROLLER_HOST']
|
||||
manifestfile = "%s_cinder.pp" % config['CONFIG_STORAGE_HOST']
|
||||
manifestdata += getManifestTemplate("cinder.pp")
|
||||
|
||||
if config['CONFIG_CINDER_BACKEND'] == "lvm":
|
||||
|
|
|
@ -80,13 +80,19 @@ def initSequences(controller):
|
|||
#-------------------------- step functions --------------------------
|
||||
|
||||
def create_keystone_manifest(config, messages):
|
||||
if config['CONFIG_UNSUPPORTED'] != 'y':
|
||||
config['CONFIG_STORAGE_HOST'] = config['CONFIG_CONTROLLER_HOST']
|
||||
|
||||
manifestfile = "%s_keystone.pp" % config['CONFIG_CONTROLLER_HOST']
|
||||
manifestdata = getManifestTemplate("keystone_glance.pp")
|
||||
appendManifestFile(manifestfile, manifestdata)
|
||||
|
||||
|
||||
def create_manifest(config, messages):
|
||||
manifestfile = "%s_glance.pp" % config['CONFIG_CONTROLLER_HOST']
|
||||
if config['CONFIG_UNSUPPORTED'] != 'y':
|
||||
config['CONFIG_STORAGE_HOST'] = config['CONFIG_CONTROLLER_HOST']
|
||||
|
||||
manifestfile = "%s_glance.pp" % config['CONFIG_STORAGE_HOST']
|
||||
manifestdata = getManifestTemplate("glance.pp")
|
||||
if config['CONFIG_CEILOMETER_INSTALL'] == 'y':
|
||||
mq_template = get_mq(config, "glance_ceilometer")
|
||||
|
|
|
@ -27,382 +27,522 @@ PLUGIN_NAME_COLORED = utils.color_text(PLUGIN_NAME, 'blue')
|
|||
def initConfig(controller):
|
||||
default_ssh_key = os.path.join(os.environ["HOME"], ".ssh/*.pub")
|
||||
default_ssh_key = (glob.glob(default_ssh_key) + [""])[0]
|
||||
params = [
|
||||
{"CMD_OPTION": "ssh-public-key",
|
||||
"USAGE": ("Path to a Public key to install on servers. If a usable "
|
||||
"key has not been installed on the remote servers the user "
|
||||
"will be prompted for a password and this key will be "
|
||||
"installed so the password will not be required again"),
|
||||
"PROMPT": ("Enter the path to your ssh Public key to install "
|
||||
"on servers"),
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_file, validators.validate_sshkey],
|
||||
"PROCESSORS": [processors.process_ssh_key],
|
||||
"DEFAULT_VALUE": default_ssh_key,
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_SSH_KEY",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
params = {
|
||||
"GLOBAL": [
|
||||
{"CMD_OPTION": "ssh-public-key",
|
||||
"USAGE": (
|
||||
"Path to a Public key to install on servers. If a usable "
|
||||
"key has not been installed on the remote servers the user "
|
||||
"will be prompted for a password and this key will be "
|
||||
"installed so the password will not be required again"
|
||||
),
|
||||
"PROMPT": (
|
||||
"Enter the path to your ssh Public key to install on servers"
|
||||
),
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [
|
||||
validators.validate_file,
|
||||
validators.validate_sshkey
|
||||
],
|
||||
"PROCESSORS": [processors.process_ssh_key],
|
||||
"DEFAULT_VALUE": default_ssh_key,
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_SSH_KEY",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "mysql-install",
|
||||
"USAGE": "Set to 'y' if you would like Packstack to install MySQL",
|
||||
"PROMPT": "Should Packstack install MySQL DB",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_MYSQL_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "mysql-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install MySQL"
|
||||
),
|
||||
"PROMPT": "Should Packstack install MySQL DB",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_MYSQL_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-glance-install",
|
||||
"USAGE": ("Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Image Service (Glance)"),
|
||||
"PROMPT": "Should Packstack install OpenStack Image Service (Glance)",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_GLANCE_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "os-glance-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Image Service (Glance)"
|
||||
),
|
||||
"PROMPT": (
|
||||
"Should Packstack install OpenStack Image Service (Glance)"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_GLANCE_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-cinder-install",
|
||||
"USAGE": ("Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Block Storage (Cinder)"),
|
||||
"PROMPT": ("Should Packstack install OpenStack Block Storage "
|
||||
"(Cinder) service"),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_CINDER_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "os-cinder-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Block Storage (Cinder)"
|
||||
),
|
||||
"PROMPT": (
|
||||
"Should Packstack install OpenStack Block Storage "
|
||||
"(Cinder) service"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_CINDER_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-nova-install",
|
||||
"USAGE": ("Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Compute (Nova)"),
|
||||
"PROMPT": "Should Packstack install OpenStack Compute (Nova) service",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_NOVA_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "os-nova-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Compute (Nova)"
|
||||
),
|
||||
"PROMPT": (
|
||||
"Should Packstack install OpenStack Compute (Nova) service"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_NOVA_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-neutron-install",
|
||||
"USAGE": ("Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Networking (Neutron). Otherwise Nova Network "
|
||||
"will be used."),
|
||||
"PROMPT": ("Should Packstack install OpenStack Networking (Neutron) "
|
||||
"service"),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_NEUTRON_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "os-neutron-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Networking (Neutron). Otherwise Nova Network "
|
||||
"will be used."
|
||||
),
|
||||
"PROMPT": (
|
||||
"Should Packstack install OpenStack Networking (Neutron) "
|
||||
"service"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_NEUTRON_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-horizon-install",
|
||||
"USAGE": ("Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Dashboard (Horizon)"),
|
||||
"PROMPT": "Should Packstack install OpenStack Dashboard (Horizon)",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_HORIZON_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "os-horizon-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Dashboard (Horizon)"
|
||||
),
|
||||
"PROMPT": (
|
||||
"Should Packstack install OpenStack Dashboard (Horizon)"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_HORIZON_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-swift-install",
|
||||
"USAGE": ("Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Object Storage (Swift)"),
|
||||
"PROMPT": "Should Packstack install OpenStack Object Storage (Swift)",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_SWIFT_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "os-swift-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Object Storage (Swift)"
|
||||
),
|
||||
"PROMPT": (
|
||||
"Should Packstack install OpenStack Object Storage (Swift)"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_SWIFT_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-ceilometer-install",
|
||||
"USAGE": ("Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Metering (Ceilometer)"),
|
||||
"PROMPT": "Should Packstack install OpenStack Metering (Ceilometer)",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_CEILOMETER_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "os-ceilometer-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Metering (Ceilometer)"
|
||||
),
|
||||
"PROMPT": (
|
||||
"Should Packstack install OpenStack Metering (Ceilometer)"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_CEILOMETER_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-heat-install",
|
||||
"USAGE": ("Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Orchestration (Heat)"),
|
||||
"PROMPT": "Should Packstack install OpenStack Orchestration (Heat)",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "n",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_HEAT_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "os-heat-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install "
|
||||
"OpenStack Orchestration (Heat)"
|
||||
),
|
||||
"PROMPT": (
|
||||
"Should Packstack install OpenStack Orchestration (Heat)"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "n",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_HEAT_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-client-install",
|
||||
"USAGE": ("Set to 'y' if you would like Packstack to install "
|
||||
"the OpenStack Client packages. An admin \"rc\" file will "
|
||||
"also be installed"),
|
||||
"PROMPT": "Should Packstack install OpenStack client tools",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_CLIENT_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "os-client-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install "
|
||||
"the OpenStack Client packages. An admin \"rc\" file will "
|
||||
"also be installed"
|
||||
),
|
||||
"PROMPT": "Should Packstack install OpenStack client tools",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": "y",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_CLIENT_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "ntp-servers",
|
||||
"USAGE": ("Comma separated list of NTP servers. Leave plain if "
|
||||
"Packstack should not install ntpd on instances."),
|
||||
"PROMPT": ("Enter a comma separated list of NTP server(s). Leave "
|
||||
"plain if Packstack should not install ntpd "
|
||||
"on instances."),
|
||||
"OPTION_LIST": [],
|
||||
"DEFAULT_VALUE": '',
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_NTP_SERVERS",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "ntp-servers",
|
||||
"USAGE": ("Comma separated list of NTP servers. Leave plain if "
|
||||
"Packstack should not install ntpd on instances."),
|
||||
"PROMPT": ("Enter a comma separated list of NTP server(s). Leave "
|
||||
"plain if Packstack should not install ntpd "
|
||||
"on instances."),
|
||||
"OPTION_LIST": [],
|
||||
"DEFAULT_VALUE": '',
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_NTP_SERVERS",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "nagios-install",
|
||||
"USAGE": ("Set to 'y' if you would like Packstack to install Nagios "
|
||||
"to monitor OpenStack hosts"),
|
||||
"PROMPT": ("Should Packstack install Nagios to monitor OpenStack "
|
||||
"hosts"),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": 'y',
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_NAGIOS_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "nagios-install",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you would like Packstack to install Nagios "
|
||||
"to monitor OpenStack hosts"
|
||||
),
|
||||
"PROMPT": (
|
||||
"Should Packstack install Nagios to monitor OpenStack "
|
||||
"hosts"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": 'y',
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_NAGIOS_INSTALL",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "exclude-servers",
|
||||
"USAGE": ("Comma separated list of servers to be excluded from "
|
||||
"installation in case you are running Packstack the second "
|
||||
"time with the same answer file and don't want Packstack "
|
||||
"to touch these servers. Leave plain if you don't need to "
|
||||
"exclude any server."),
|
||||
"PROMPT": ("Enter a comma separated list of server(s) to be excluded."
|
||||
" Leave plain if you don't need to exclude any server."),
|
||||
"OPTION_LIST": [],
|
||||
"DEFAULT_VALUE": '',
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "EXCLUDE_SERVERS",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "exclude-servers",
|
||||
"USAGE": (
|
||||
"Comma separated list of servers to be excluded from "
|
||||
"installation in case you are running Packstack the second "
|
||||
"time with the same answer file and don't want Packstack "
|
||||
"to touch these servers. Leave plain if you don't need to "
|
||||
"exclude any server."
|
||||
),
|
||||
"PROMPT": (
|
||||
"Enter a comma separated list of server(s) to be excluded."
|
||||
" Leave plain if you don't need to exclude any server."
|
||||
),
|
||||
"OPTION_LIST": [],
|
||||
"DEFAULT_VALUE": '',
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "EXCLUDE_SERVERS",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-debug-mode",
|
||||
"USAGE": ("Set to 'y' if you want to run OpenStack services in debug "
|
||||
"mode. Otherwise set to 'n'."),
|
||||
"PROMPT": "Do you want to run OpenStack services in debug mode",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"DEFAULT_VALUE": "n",
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_DEBUG_MODE",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"CMD_OPTION": "os-debug-mode",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you want to run OpenStack services in debug "
|
||||
"mode. Otherwise set to 'n'."
|
||||
),
|
||||
"PROMPT": "Do you want to run OpenStack services in debug mode",
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"DEFAULT_VALUE": "n",
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_DEBUG_MODE",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CONF_NAME": "CONFIG_CONTROLLER_HOST",
|
||||
"CMD_OPTION": "os-controller-host",
|
||||
"USAGE": ("The IP address of the server on which to install OpenStack"
|
||||
" services specific to controller role such as API servers,"
|
||||
" Horizon, etc."),
|
||||
"PROMPT": "Enter the IP address of the controller host",
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_ip,
|
||||
validators.validate_ssh],
|
||||
"DEFAULT_VALUE": utils.get_localhost_ip(),
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False,
|
||||
"DEPRECATES": ['CONFIG_CEILOMETER_HOST',
|
||||
'CONFIG_CINDER_HOST',
|
||||
'CONFIG_GLANCE_HOST',
|
||||
'CONFIG_HORIZON_HOST',
|
||||
'CONFIG_HEAT_HOST',
|
||||
'CONFIG_KEYSTONE_HOST',
|
||||
'CONFIG_NAGIOS_HOST',
|
||||
'CONFIG_NEUTRON_SERVER_HOST',
|
||||
'CONFIG_NEUTRON_LBAAS_HOSTS',
|
||||
'CONFIG_NOVA_API_HOST',
|
||||
'CONFIG_NOVA_CERT_HOST',
|
||||
'CONFIG_NOVA_VNCPROXY_HOST',
|
||||
'CONFIG_NOVA_SCHED_HOST',
|
||||
'CONFIG_OSCLIENT_HOST',
|
||||
'CONFIG_SWIFT_PROXY_HOSTS']},
|
||||
{"CONF_NAME": "CONFIG_CONTROLLER_HOST",
|
||||
"CMD_OPTION": "os-controller-host",
|
||||
"USAGE": (
|
||||
"The IP address of the server on which to install OpenStack"
|
||||
" services specific to controller role such as API servers,"
|
||||
" Horizon, etc."
|
||||
),
|
||||
"PROMPT": "Enter the IP address of the controller host",
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_ip,
|
||||
validators.validate_ssh],
|
||||
"DEFAULT_VALUE": utils.get_localhost_ip(),
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False,
|
||||
"DEPRECATES": ['CONFIG_CEILOMETER_HOST',
|
||||
'CONFIG_CINDER_HOST',
|
||||
'CONFIG_GLANCE_HOST',
|
||||
'CONFIG_HORIZON_HOST',
|
||||
'CONFIG_HEAT_HOST',
|
||||
'CONFIG_KEYSTONE_HOST',
|
||||
'CONFIG_NAGIOS_HOST',
|
||||
'CONFIG_NEUTRON_SERVER_HOST',
|
||||
'CONFIG_NEUTRON_LBAAS_HOSTS',
|
||||
'CONFIG_NOVA_API_HOST',
|
||||
'CONFIG_NOVA_CERT_HOST',
|
||||
'CONFIG_NOVA_VNCPROXY_HOST',
|
||||
'CONFIG_NOVA_SCHED_HOST',
|
||||
'CONFIG_OSCLIENT_HOST',
|
||||
'CONFIG_SWIFT_PROXY_HOSTS']},
|
||||
|
||||
{"CONF_NAME": "CONFIG_COMPUTE_HOSTS",
|
||||
"CMD_OPTION": "os-compute-hosts",
|
||||
"USAGE": ("The list of IP addresses of the server on which to install"
|
||||
" the Nova compute service"),
|
||||
"PROMPT": ("Enter list of IP addresses on which to install compute "
|
||||
"service"),
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_multi_ip,
|
||||
validators.validate_multi_ssh],
|
||||
"DEFAULT_VALUE": utils.get_localhost_ip(),
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False,
|
||||
"DEPRECATES": ['CONFIG_NOVA_COMPUTE_HOSTS']},
|
||||
{"CONF_NAME": "CONFIG_COMPUTE_HOSTS",
|
||||
"CMD_OPTION": "os-compute-hosts",
|
||||
"USAGE": (
|
||||
"The list of IP addresses of the server on which to install"
|
||||
" the Nova compute service"
|
||||
),
|
||||
"PROMPT": (
|
||||
"Enter list of IP addresses on which to install compute "
|
||||
"service"
|
||||
),
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_multi_ip,
|
||||
validators.validate_multi_ssh],
|
||||
"DEFAULT_VALUE": utils.get_localhost_ip(),
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False,
|
||||
"DEPRECATES": ['CONFIG_NOVA_COMPUTE_HOSTS']},
|
||||
|
||||
{"CONF_NAME": "CONFIG_NETWORK_HOSTS",
|
||||
"CMD_OPTION": "os-network-hosts",
|
||||
"USAGE": ("The list of IP addresses of the server on which "
|
||||
"to install the network service such as Nova "
|
||||
"network or Neutron"),
|
||||
"PROMPT": ("Enter list of IP addresses on which to install "
|
||||
"network service"),
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_multi_ip,
|
||||
validators.validate_multi_ssh],
|
||||
"DEFAULT_VALUE": utils.get_localhost_ip(),
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False,
|
||||
"DEPRECATES": ['CONFIG_NEUTRON_L3_HOSTS',
|
||||
'CONFIG_NEUTRON_DHCP_HOSTS',
|
||||
'CONFIG_NEUTRON_METADATA_HOSTS',
|
||||
'CONFIG_NOVA_NETWORK_HOSTS']},
|
||||
{"CONF_NAME": "CONFIG_NETWORK_HOSTS",
|
||||
"CMD_OPTION": "os-network-hosts",
|
||||
"USAGE": ("The list of IP addresses of the server on which "
|
||||
"to install the network service such as Nova "
|
||||
"network or Neutron"),
|
||||
"PROMPT": ("Enter list of IP addresses on which to install "
|
||||
"network service"),
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_multi_ip,
|
||||
validators.validate_multi_ssh],
|
||||
"DEFAULT_VALUE": utils.get_localhost_ip(),
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False,
|
||||
"DEPRECATES": ['CONFIG_NEUTRON_L3_HOSTS',
|
||||
'CONFIG_NEUTRON_DHCP_HOSTS',
|
||||
'CONFIG_NEUTRON_METADATA_HOSTS',
|
||||
'CONFIG_NOVA_NETWORK_HOSTS']},
|
||||
|
||||
{"CMD_OPTION": "os-vmware",
|
||||
"USAGE": ("Set to 'y' if you want to use VMware vCenter as hypervisor"
|
||||
" and storage. Otherwise set to 'n'."),
|
||||
"PROMPT": ("Do you want to use VMware vCenter as hypervisor and "
|
||||
"datastore"),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"DEFAULT_VALUE": "n",
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_VMWARE_BACKEND",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
]
|
||||
group = {"GROUP_NAME": "GLOBAL",
|
||||
"DESCRIPTION": "Global Options",
|
||||
"PRE_CONDITION": lambda x: 'yes',
|
||||
"PRE_CONDITION_MATCH": "yes",
|
||||
"POST_CONDITION": False,
|
||||
"POST_CONDITION_MATCH": True}
|
||||
controller.addGroup(group, params)
|
||||
{"CMD_OPTION": "os-vmware",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you want to use VMware vCenter as hypervisor"
|
||||
" and storage. Otherwise set to 'n'."
|
||||
),
|
||||
"PROMPT": (
|
||||
"Do you want to use VMware vCenter as hypervisor and "
|
||||
"datastore"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"DEFAULT_VALUE": "n",
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_VMWARE_BACKEND",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "os-vmware",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you want to use VMware vCenter as hypervisor"
|
||||
" and storage. Otherwise set to 'n'."
|
||||
),
|
||||
"PROMPT": (
|
||||
"Do you want to use VMware vCenter as hypervisor and "
|
||||
"datastore"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"DEFAULT_VALUE": "n",
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_VMWARE_BACKEND",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "unsupported",
|
||||
"USAGE": (
|
||||
"Set to 'y' if you want to use unsupported parameters. "
|
||||
"This should be used only if you know what you are doing."
|
||||
"Issues caused by using unsupported options won't be fixed "
|
||||
"before next major release."
|
||||
),
|
||||
"PROMPT": (
|
||||
"Enable this on your own risk. Do you want to use unsupported "
|
||||
"parameters"
|
||||
),
|
||||
"OPTION_LIST": ["y", "n"],
|
||||
"DEFAULT_VALUE": "n",
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME": "CONFIG_UNSUPPORTED",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
],
|
||||
|
||||
"VMWARE": [
|
||||
{"CMD_OPTION": "vcenter-host",
|
||||
"USAGE": "The IP address of the VMware vCenter server",
|
||||
"PROMPT": (
|
||||
"Enter the IP address of the VMware vCenter server to use "
|
||||
"with Nova"
|
||||
),
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_ip],
|
||||
"DEFAULT_VALUE": "",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME": "CONFIG_VCENTER_HOST",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "vcenter-username",
|
||||
"USAGE": "The username to authenticate to VMware vCenter server",
|
||||
"PROMPT": ("Enter the username to authenticate on VMware "
|
||||
"vCenter server"),
|
||||
"DEFAULT_VALUE": "",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME": "CONFIG_VCENTER_USER",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "vcenter-password",
|
||||
"USAGE": "The password to authenticate to VMware vCenter server",
|
||||
"PROMPT": ("Enter the password to authenticate on VMware "
|
||||
"vCenter server"),
|
||||
"DEFAULT_VALUE": "",
|
||||
"MASK_INPUT": True,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME": "CONFIG_VCENTER_PASSWORD",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CMD_OPTION": "vcenter-cluster",
|
||||
"USAGE": "The name of the vCenter cluster",
|
||||
"PROMPT": "Enter the name of the vCenter datastore",
|
||||
"DEFAULT_VALUE": "",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME": "CONFIG_VCENTER_CLUSTER_NAME",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
],
|
||||
|
||||
"UNSUPPORTED": [
|
||||
{"CONF_NAME": "CONFIG_STORAGE_HOST",
|
||||
"CMD_OPTION": "os-storage-host",
|
||||
"USAGE": (
|
||||
"(Unsupported!) The IP address of the server on which "
|
||||
"to install OpenStack services specific to storage servers "
|
||||
"such as Glance and Cinder."
|
||||
),
|
||||
"PROMPT": "Enter the IP address of the storage host",
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_ip,
|
||||
validators.validate_ssh],
|
||||
"DEFAULT_VALUE": utils.get_localhost_ip(),
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
]
|
||||
}
|
||||
|
||||
def use_vcenter(config):
|
||||
return (config['CONFIG_NOVA_INSTALL'] == 'y' and
|
||||
config['CONFIG_VMWARE_BACKEND'] == 'y')
|
||||
|
||||
params = [
|
||||
{"CMD_OPTION": "vcenter-host",
|
||||
"USAGE": "The IP address of the VMware vCenter server",
|
||||
"PROMPT": ("Enter the IP address of the VMware vCenter server to use "
|
||||
"with Nova"),
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_ip],
|
||||
"DEFAULT_VALUE": "",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME": "CONFIG_VCENTER_HOST",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
def unsupported_enabled(config):
|
||||
return config['CONFIG_UNSUPPORTED'] == 'y'
|
||||
|
||||
{"CMD_OPTION": "vcenter-username",
|
||||
"USAGE": "The username to authenticate to VMware vCenter server",
|
||||
"PROMPT": ("Enter the username to authenticate on VMware "
|
||||
"vCenter server"),
|
||||
"DEFAULT_VALUE": "",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME": "CONFIG_VCENTER_USER",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
groups = [
|
||||
{"GROUP_NAME": "GLOBAL",
|
||||
"DESCRIPTION": "Global Options",
|
||||
"PRE_CONDITION": lambda x: 'yes',
|
||||
"PRE_CONDITION_MATCH": "yes",
|
||||
"POST_CONDITION": False,
|
||||
"POST_CONDITION_MATCH": True},
|
||||
|
||||
{"CMD_OPTION": "vcenter-password",
|
||||
"USAGE": "The password to authenticate to VMware vCenter server",
|
||||
"PROMPT": ("Enter the password to authenticate on VMware "
|
||||
"vCenter server"),
|
||||
"DEFAULT_VALUE": "",
|
||||
"MASK_INPUT": True,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME": "CONFIG_VCENTER_PASSWORD",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"GROUP_NAME": "VMWARE",
|
||||
"DESCRIPTION": "vCenter Config Parameters",
|
||||
"PRE_CONDITION": use_vcenter,
|
||||
"PRE_CONDITION_MATCH": True,
|
||||
"POST_CONDITION": False,
|
||||
"POST_CONDITION_MATCH": True},
|
||||
|
||||
{"CMD_OPTION": "vcenter-cluster",
|
||||
"USAGE": "The name of the vCenter cluster",
|
||||
"PROMPT": "Enter the name of the vCenter datastore",
|
||||
"DEFAULT_VALUE": "",
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME": "CONFIG_VCENTER_CLUSTER_NAME",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
{"GROUP_NAME": "UNSUPPORTED",
|
||||
"DESCRIPTION": "Global unsupported options",
|
||||
"PRE_CONDITION": unsupported_enabled,
|
||||
"PRE_CONDITION_MATCH": True,
|
||||
"POST_CONDITION": False,
|
||||
"POST_CONDITION_MATCH": True}
|
||||
]
|
||||
group = {"GROUP_NAME": "VMWARE",
|
||||
"DESCRIPTION": "vCenter Config Parameters",
|
||||
"PRE_CONDITION": use_vcenter,
|
||||
"PRE_CONDITION_MATCH": True,
|
||||
"POST_CONDITION": False,
|
||||
"POST_CONDITION_MATCH": True}
|
||||
controller.addGroup(group, params)
|
||||
for group in groups:
|
||||
controller.addGroup(group, params[group['GROUP_NAME']])
|
||||
|
||||
|
||||
def initSequences(controller):
|
||||
|
|
|
@ -228,6 +228,10 @@ def initSequences(controller):
|
|||
{'title': 'Adding Provisioning Tempest manifest entries',
|
||||
'functions': [create_tempest_manifest]}
|
||||
)
|
||||
provision_steps.append(
|
||||
{'title': 'Adding Provisioning Glance manifest entries',
|
||||
'functions': [create_storage_manifest]}
|
||||
)
|
||||
|
||||
marshall_conf_bool(config, 'CONFIG_PROVISION_TEMPEST')
|
||||
marshall_conf_bool(config, 'CONFIG_PROVISION_ALL_IN_ONE_OVS_BRIDGE')
|
||||
|
@ -276,6 +280,19 @@ def create_demo_manifest(config, messages):
|
|||
appendManifestFile(manifest_file, manifest_data)
|
||||
|
||||
|
||||
def create_storage_manifest(config, messages):
|
||||
if config['CONFIG_UNSUPPORTED'] != 'y':
|
||||
config['CONFIG_STORAGE_HOST'] = config['CONFIG_CONTROLLER_HOST']
|
||||
|
||||
if config['CONFIG_PROVISION_TEMPEST'] == "y":
|
||||
template = "provision_tempest_glance.pp"
|
||||
else:
|
||||
template = "provision_demo_glance.pp"
|
||||
manifest_file = '%s_provision_glance.pp' % config['CONFIG_STORAGE_HOST']
|
||||
manifest_data = getManifestTemplate(template)
|
||||
appendManifestFile(manifest_file, manifest_data)
|
||||
|
||||
|
||||
def create_tempest_manifest(config, messages):
|
||||
using_neutron(config)
|
||||
using_heat(config)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
cinder_config {
|
||||
"DEFAULT/glance_host": value => "%(CONFIG_CONTROLLER_HOST)s";
|
||||
"DEFAULT/glance_host": value => "%(CONFIG_STORAGE_HOST)s";
|
||||
}
|
||||
|
||||
package {'python-keystone':
|
||||
|
@ -18,3 +18,4 @@ class {'cinder::scheduler':
|
|||
|
||||
class {'cinder::volume':
|
||||
}
|
||||
|
||||
|
|
|
@ -4,6 +4,6 @@ package { 'lvm2':
|
|||
}
|
||||
|
||||
class {'cinder::volume::iscsi':
|
||||
iscsi_ip_address => '%(CONFIG_CONTROLLER_HOST)s',
|
||||
iscsi_ip_address => '%(CONFIG_STORAGE_HOST)s',
|
||||
require => Package['lvm2'],
|
||||
}
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
|
||||
class {"cinder::keystone::auth":
|
||||
password => "%(CONFIG_CINDER_KS_PW)s",
|
||||
public_address => "%(CONFIG_CONTROLLER_HOST)s",
|
||||
admin_address => "%(CONFIG_CONTROLLER_HOST)s",
|
||||
internal_address => "%(CONFIG_CONTROLLER_HOST)s",
|
||||
password => "%(CONFIG_CINDER_KS_PW)s",
|
||||
public_address => "%(CONFIG_STORAGE_HOST)s",
|
||||
admin_address => "%(CONFIG_STORAGE_HOST)s",
|
||||
internal_address => "%(CONFIG_STORAGE_HOST)s",
|
||||
}
|
||||
|
||||
keystone_service { "${cinder::keystone::auth::auth_name}_v2":
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
|
||||
class {"glance::keystone::auth":
|
||||
password => "%(CONFIG_GLANCE_KS_PW)s",
|
||||
public_address => "%(CONFIG_CONTROLLER_HOST)s",
|
||||
admin_address => "%(CONFIG_CONTROLLER_HOST)s",
|
||||
internal_address => "%(CONFIG_CONTROLLER_HOST)s",
|
||||
public_address => "%(CONFIG_STORAGE_HOST)s",
|
||||
admin_address => "%(CONFIG_STORAGE_HOST)s",
|
||||
internal_address => "%(CONFIG_STORAGE_HOST)s",
|
||||
}
|
||||
|
|
|
@ -9,7 +9,7 @@ $public_key = {
|
|||
}
|
||||
|
||||
class { "nova":
|
||||
glance_api_servers => "%(CONFIG_CONTROLLER_HOST)s:9292",
|
||||
glance_api_servers => "%(CONFIG_STORAGE_HOST)s:9292",
|
||||
qpid_hostname => "%(CONFIG_AMQP_HOST)s",
|
||||
qpid_username => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
|
|
|
@ -9,7 +9,7 @@ $public_key = {
|
|||
}
|
||||
|
||||
class { "nova":
|
||||
glance_api_servers => "%(CONFIG_CONTROLLER_HOST)s:9292",
|
||||
glance_api_servers => "%(CONFIG_STORAGE_HOST)s:9292",
|
||||
rabbit_host => "%(CONFIG_AMQP_HOST)s",
|
||||
rabbit_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
rabbit_userid => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
|
|
|
@ -11,11 +11,6 @@
|
|||
# Heat Using Trusts
|
||||
$heat_using_trusts = '%(CONFIG_HEAT_USING_TRUSTS)s'
|
||||
|
||||
## Glance
|
||||
$image_name = 'cirros'
|
||||
$image_source = 'http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-disk.img'
|
||||
$image_ssh_user = 'cirros'
|
||||
|
||||
## Neutron
|
||||
$public_network_name = 'public'
|
||||
$public_subnet_name = 'public_subnet'
|
||||
|
@ -48,16 +43,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
## Images
|
||||
|
||||
glance_image { $image_name:
|
||||
ensure => present,
|
||||
is_public => 'yes',
|
||||
container_format => 'bare',
|
||||
disk_format => 'qcow2',
|
||||
source => $image_source,
|
||||
}
|
||||
|
||||
|
||||
## Neutron
|
||||
|
||||
if %(PROVISION_NEUTRON_AVAILABLE)s {
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
|
||||
## Images
|
||||
## Glance
|
||||
$image_name = 'cirros'
|
||||
$image_source = 'http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-disk.img'
|
||||
$image_ssh_user = 'cirros'
|
||||
|
||||
glance_image { $image_name:
|
||||
ensure => present,
|
||||
is_public => 'yes',
|
||||
container_format => 'bare',
|
||||
disk_format => 'qcow2',
|
||||
source => $image_source,
|
||||
}
|
||||
|
|
@ -81,16 +81,6 @@ if '%(CONFIG_PROVISION_TEMPEST_USER)s' != '' {
|
|||
}
|
||||
}
|
||||
|
||||
## Images
|
||||
|
||||
glance_image { $image_name:
|
||||
ensure => present,
|
||||
is_public => 'yes',
|
||||
container_format => 'bare',
|
||||
disk_format => 'qcow2',
|
||||
source => $image_source,
|
||||
}
|
||||
|
||||
# Support creation of a second glance image
|
||||
# distinct from the first, for tempest. It
|
||||
# doesn't need to be a different image, just
|
||||
|
@ -111,13 +101,6 @@ if '%(CONFIG_PROVISION_TEMPEST_USER)s' != '' {
|
|||
$image_alt_ssh_user_real = $image_ssh_user_alt
|
||||
}
|
||||
|
||||
glance_image { $image_name_alt:
|
||||
ensure => present,
|
||||
is_public => 'yes',
|
||||
container_format => 'bare',
|
||||
disk_format => 'qcow2',
|
||||
source => $image_source_alt_real,
|
||||
}
|
||||
} else {
|
||||
$image_name_alt_real = $image_name
|
||||
}
|
||||
|
|
|
@ -0,0 +1,53 @@
|
|||
|
||||
## Glance
|
||||
$image_name = 'cirros'
|
||||
$image_source = 'http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-disk.img'
|
||||
$image_ssh_user = 'cirros'
|
||||
|
||||
## Tempest
|
||||
|
||||
$image_name_alt = false
|
||||
$image_source_alt = false
|
||||
$image_ssh_user_alt = false
|
||||
## Images
|
||||
|
||||
glance_image { $image_name:
|
||||
ensure => present,
|
||||
is_public => 'yes',
|
||||
container_format => 'bare',
|
||||
disk_format => 'qcow2',
|
||||
source => $image_source,
|
||||
}
|
||||
|
||||
# Support creation of a second glance image
|
||||
# distinct from the first, for tempest. It
|
||||
# doesn't need to be a different image, just
|
||||
# have a different name and ref in glance.
|
||||
if $image_name_alt {
|
||||
$image_name_alt_real = $image_name_alt
|
||||
if ! $image_source_alt {
|
||||
# Use the same source by default
|
||||
$image_source_alt_real = $image_source
|
||||
} else {
|
||||
$image_source_alt_real = $image_source_alt
|
||||
}
|
||||
|
||||
if ! $image_ssh_user_alt {
|
||||
# Use the same user by default
|
||||
$image_alt_ssh_user_real = $image_ssh_user
|
||||
} else {
|
||||
$image_alt_ssh_user_real = $image_ssh_user_alt
|
||||
}
|
||||
|
||||
glance_image { $image_name_alt:
|
||||
ensure => present,
|
||||
is_public => 'yes',
|
||||
container_format => 'bare',
|
||||
disk_format => 'qcow2',
|
||||
source => $image_source_alt_real,
|
||||
}
|
||||
} else {
|
||||
$image_name_alt_real = $image_name
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue