Merge "Centralize config options - [deploy]"
This commit is contained in:
commit
7e80ab8f22
@ -22,6 +22,7 @@ from ironic.conf import conductor
|
||||
from ironic.conf import console
|
||||
from ironic.conf import database
|
||||
from ironic.conf import default
|
||||
from ironic.conf import deploy
|
||||
from ironic.conf import dhcp
|
||||
from ironic.conf import glance
|
||||
from ironic.conf import iboot
|
||||
@ -47,6 +48,7 @@ conductor.register_opts(CONF)
|
||||
console.register_opts(CONF)
|
||||
database.register_opts(CONF)
|
||||
default.register_opts(CONF)
|
||||
deploy.register_opts(CONF)
|
||||
dhcp.register_opts(CONF)
|
||||
glance.register_opts(CONF)
|
||||
iboot.register_opts(CONF)
|
||||
|
68
ironic/conf/deploy.py
Normal file
68
ironic/conf/deploy.py
Normal file
@ -0,0 +1,68 @@
|
||||
# Copyright 2016 Intel Corporation
|
||||
# Copyright (c) 2012 NTT DOCOMO, INC.
|
||||
# All Rights Reserved.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from oslo_config import cfg
|
||||
|
||||
from ironic.common.i18n import _
|
||||
|
||||
|
||||
opts = [
|
||||
cfg.StrOpt('http_url',
|
||||
help=_("ironic-conductor node's HTTP server URL. "
|
||||
"Example: http://192.1.2.3:8080")),
|
||||
cfg.StrOpt('http_root',
|
||||
default='/httpboot',
|
||||
help=_("ironic-conductor node's HTTP root path.")),
|
||||
cfg.IntOpt('erase_devices_priority',
|
||||
help=_('Priority to run in-band erase devices via the Ironic '
|
||||
'Python Agent ramdisk. If unset, will use the priority '
|
||||
'set in the ramdisk (defaults to 10 for the '
|
||||
'GenericHardwareManager). If set to 0, will not run '
|
||||
'during cleaning.')),
|
||||
# TODO(mmitchell): Remove the deprecated name/group during Ocata cycle.
|
||||
cfg.IntOpt('shred_random_overwrite_iterations',
|
||||
deprecated_name='erase_devices_iterations',
|
||||
deprecated_group='deploy',
|
||||
default=1,
|
||||
min=0,
|
||||
help=_('During shred, overwrite all block devices N times with '
|
||||
'random data. This is only used if a device could not '
|
||||
'be ATA Secure Erased. Defaults to 1.')),
|
||||
cfg.BoolOpt('shred_final_overwrite_with_zeros',
|
||||
default=True,
|
||||
help=_("Whether to write zeros to a node's block devices "
|
||||
"after writing random data. This will write zeros to "
|
||||
"the device even when "
|
||||
"deploy.shred_random_overwrite_interations is 0. This "
|
||||
"option is only used if a device could not be ATA "
|
||||
"Secure Erased. Defaults to True.")),
|
||||
cfg.BoolOpt('continue_if_disk_secure_erase_fails',
|
||||
default=False,
|
||||
help=_('Defines what to do if an ATA secure erase operation '
|
||||
'fails during cleaning in the Ironic Python Agent. '
|
||||
'If False, the cleaning operation will fail and the '
|
||||
'node will be put in ``clean failed`` state. '
|
||||
'If True, shred will be invoked and cleaning will '
|
||||
'continue.')),
|
||||
cfg.BoolOpt('power_off_after_deploy_failure',
|
||||
default=True,
|
||||
help=_('Whether to power off a node after deploy failure. '
|
||||
'Defaults to True.')),
|
||||
]
|
||||
|
||||
|
||||
def register_opts(conf):
|
||||
conf.register_opts(opts, group='deploy')
|
@ -17,7 +17,6 @@ import ironic.drivers.modules.agent_base_vendor
|
||||
import ironic.drivers.modules.agent_client
|
||||
import ironic.drivers.modules.amt.common
|
||||
import ironic.drivers.modules.amt.power
|
||||
import ironic.drivers.modules.deploy_utils
|
||||
import ironic.drivers.modules.iscsi_deploy
|
||||
import ironic.drivers.modules.pxe
|
||||
|
||||
@ -49,7 +48,7 @@ _opts = [
|
||||
('conductor', ironic.conf.conductor.opts),
|
||||
('console', ironic.conf.console.opts),
|
||||
('database', ironic.conf.database.opts),
|
||||
('deploy', ironic.drivers.modules.deploy_utils.deploy_opts),
|
||||
('deploy', ironic.conf.deploy.opts),
|
||||
('dhcp', ironic.conf.dhcp.opts),
|
||||
('glance', ironic.conf.glance.opts),
|
||||
('iboot', ironic.conf.iboot.opts),
|
||||
|
@ -21,7 +21,6 @@ import time
|
||||
|
||||
from ironic_lib import disk_utils
|
||||
from oslo_concurrency import processutils
|
||||
from oslo_config import cfg
|
||||
from oslo_log import log as logging
|
||||
from oslo_serialization import jsonutils
|
||||
from oslo_utils import excutils
|
||||
@ -40,58 +39,13 @@ from ironic.common import keystone
|
||||
from ironic.common import states
|
||||
from ironic.common import utils
|
||||
from ironic.conductor import utils as manager_utils
|
||||
from ironic.conf import CONF
|
||||
from ironic.drivers.modules import agent_client
|
||||
from ironic.drivers.modules import image_cache
|
||||
from ironic.drivers import utils as driver_utils
|
||||
from ironic import objects
|
||||
|
||||
|
||||
deploy_opts = [
|
||||
cfg.StrOpt('http_url',
|
||||
help=_("ironic-conductor node's HTTP server URL. "
|
||||
"Example: http://192.1.2.3:8080")),
|
||||
cfg.StrOpt('http_root',
|
||||
default='/httpboot',
|
||||
help=_("ironic-conductor node's HTTP root path.")),
|
||||
cfg.IntOpt('erase_devices_priority',
|
||||
help=_('Priority to run in-band erase devices via the Ironic '
|
||||
'Python Agent ramdisk. If unset, will use the priority '
|
||||
'set in the ramdisk (defaults to 10 for the '
|
||||
'GenericHardwareManager). If set to 0, will not run '
|
||||
'during cleaning.')),
|
||||
# TODO(mmitchell): Remove the deprecated name/group during Ocata cycle.
|
||||
cfg.IntOpt('shred_random_overwrite_iterations',
|
||||
deprecated_name='erase_devices_iterations',
|
||||
deprecated_group='deploy',
|
||||
default=1,
|
||||
min=0,
|
||||
help=_('During shred, overwrite all block devices N times with '
|
||||
'random data. This is only used if a device could not '
|
||||
'be ATA Secure Erased. Defaults to 1.')),
|
||||
cfg.BoolOpt('shred_final_overwrite_with_zeros',
|
||||
default=True,
|
||||
help=_("Whether to write zeros to a node's block devices "
|
||||
"after writing random data. This will write zeros to "
|
||||
"the device even when "
|
||||
"deploy.shred_random_overwrite_interations is 0. This "
|
||||
"option is only used if a device could not be ATA "
|
||||
"Secure Erased. Defaults to True.")),
|
||||
cfg.BoolOpt('continue_if_disk_secure_erase_fails',
|
||||
default=False,
|
||||
help=_('Defines what to do if an ATA secure erase operation '
|
||||
'fails during cleaning in the Ironic Python Agent. '
|
||||
'If False, the cleaning operation will fail and the '
|
||||
'node will be put in ``clean failed`` state. '
|
||||
'If True, shred will be invoked and cleaning will '
|
||||
'continue.')),
|
||||
cfg.BoolOpt('power_off_after_deploy_failure',
|
||||
default=True,
|
||||
help=_('Whether to power off a node after deploy failure. '
|
||||
'Defaults to True.')),
|
||||
]
|
||||
CONF = cfg.CONF
|
||||
CONF.register_opts(deploy_opts, group='deploy')
|
||||
|
||||
# TODO(Faizan): Move this logic to common/utils.py and deprecate
|
||||
# rootwrap_config.
|
||||
# This is required to set the default value of ironic_lib option
|
||||
|
Loading…
x
Reference in New Issue
Block a user