diff --git a/ironic_staging_drivers/ansible/playbooks/add-ironic-nodes.yaml b/ironic_staging_drivers/ansible/playbooks/add-ironic-nodes.yaml index 872bca8..c39c51d 100644 --- a/ironic_staging_drivers/ansible/playbooks/add-ironic-nodes.yaml +++ b/ironic_staging_drivers/ansible/playbooks/add-ironic-nodes.yaml @@ -4,8 +4,8 @@ - add_host: group: ironic hostname: "{{ item.name }}" - ansible_ssh_host: "{{ item.ip }}" - ansible_ssh_user: "{{ item.user }}" + ansible_host: "{{ item.ip }}" + ansible_user: "{{ item.user }}" ironic_extra: "{{ item.extra | default({}) }}" with_items: "{{ ironic_nodes }}" tags: always diff --git a/ironic_staging_drivers/ansible/playbooks/ansible.cfg b/ironic_staging_drivers/ansible/playbooks/ansible.cfg index e1b0e83..cd524cd 100644 --- a/ironic_staging_drivers/ansible/playbooks/ansible.cfg +++ b/ironic_staging_drivers/ansible/playbooks/ansible.cfg @@ -1,19 +1,30 @@ [defaults] # retries through the ansible-deploy driver are not supported retry_files_enabled = False + # this is using supplied callback_plugin to interleave ansible event logs # into Ironic-conductor log as set in ironic configuration file, # see callback_plugin/ironic_log.ini for some options to set # (DevStack _needs_ some tweaks) callback_whitelist = ironic_log + # For better security, bake SSH host keys into bootstrap image, # add those to ~/.ssh/known_hosts for user running ironic-conductor service # on all nodes where ironic-conductor and ansible-deploy driver are installed, # and set the host_key_checking to True (or comment it out, it is the default) host_key_checking = False + # uncomment if you have problem with ramdisk locale on ansible >= 2.1 #module_set_locale=False +# This sets the interval (in seconds) of Ansible internal processes polling +# each other. Lower values improve performance with large playbooks at +# the expense of extra CPU load. Higher values are more suitable for Ansible +# usage in automation scenarios, when UI responsiveness is not required but +# CPU usage might be a concern. +# Default corresponds to the value hardcoded in Ansible ≤ 2.1: +#internal_poll_interval = 0.001 + [ssh_connection] # pipelining greatly increases speed of deployment, disable it only when # your version of ssh client on ironic node or server in bootstrap image diff --git a/ironic_staging_drivers/ansible/playbooks/callback_plugins/ironic_log.py b/ironic_staging_drivers/ansible/playbooks/callback_plugins/ironic_log.py index a0dbf51..8c6f9a9 100644 --- a/ironic_staging_drivers/ansible/playbooks/callback_plugins/ironic_log.py +++ b/ironic_staging_drivers/ansible/playbooks/callback_plugins/ironic_log.py @@ -16,11 +16,14 @@ import os from oslo_config import cfg from oslo_log import log as logging +import pbr.version -from ironic.common import i18n -from ironic import version +from ironic_staging_drivers.common import i18n +CONF = cfg.CONF +DOMAIN = 'ironic' +# parse callback plugin config and Ironic config, setup logging basename = os.path.splitext(__file__)[0] config = ConfigParser.ConfigParser() ironic_config = None @@ -34,21 +37,20 @@ try: except Exception: pass -CONF = cfg.CONF -DOMAIN = 'ironic' +version_info = pbr.version.VersionInfo(DOMAIN) + LOG = logging.getLogger(__name__, project=DOMAIN, - version=version.version_info.release_string()) + version=version_info.release_string()) logging.register_options(CONF) conf_kwargs = dict(args=[], project=DOMAIN, - version=version.version_info.release_string()) + version=version_info.release_string()) if ironic_config: conf_kwargs['default_config_files'] = [ironic_config] CONF(**conf_kwargs) if ironic_log_file: CONF.set_override("log_file", ironic_log_file) -CONF.set_override("use_stderr", False) logging.setup(CONF, DOMAIN)