We are gleeful to announce the release of: bifrost 3.0.0: Deployment of physical machines using OpenStack Ironic and Ansible This release is part of the ocata release series. Download the package from: https://tarballs.openstack.org/bifrost/ For more details, please see below. 3.0.0 ^^^^^ During the Ocata cycle, a number of improvements have been made to bifrost to improve the managability and longevity of a bifrost installation. Coupled with a number of fixes, and improvements, users upgrading should take the time to read the entire release notes. A few highlights are below: * Bifrost now installs and utilizes Ansible 2.1 by default from PyPI. * Ironic's default of modifying a pre-existing ironic.conf upon the installation being re-executed, has been changed to a utilize a template file. * Bifrost supports generating and reading from a os-client-config "clouds.yaml" file for obtaining credentials. * Bifrost can now leverage authentiation, as well as install and configure keystone if requested by the installer. * As a number of in-tree drivers in ironic were removed this past cycle, due to lack of third-party CI, support has been added to enable installation of the staging drivers repository. New Features ************ * Allow user to insert private SSH key for ironic user. This is useful for ansible deploy driver and another ssh based drivers. The private key can be specified as path to local file in "ssh_private_key_path" variable, or as string in "ssh_private_key". * Allow install Ironic on remote server. Added group 'target' to inventory, which is same as localhost by default. For install ironic remotely, address and ssh credentials should be configured in playbooks/inventory/target file. * Bifrost has been updated to utilize Ansible 2.1's stable branch for the version of ansible installed. * Bifrost now prefers to use a system with Ansible already installed. When this is the case, execution of the "env-setup.sh" script is not required as it is geared for development and testing use of bifrost. In order to use the playbooks on a system with Ansible already installed, the library requirements must be installed prior to playbook execution: "pip install -r requirements.txt" Administrative privileges may be required if the packages must be installed system wide. * The environment setup script will now attempt to install bifrost from PyPI instead of using a stable branch. This is to address stability issues with Ansible stable branches. If not requested to be installed into virtualenv, Ansible will be installed into user's "~/.local" directory to not clobber possibly existing system installation. To use such installed Ansible, modifications of "$PATH" environment variable might be required to include "~/.local/bin" path. Some backwards compatibility is provided via the use of the "ANSIBLE_GIT_BRANCH" variable, where a user can define "stable-X.Y" and the latest available version in that series will be installed. To install the Ansible 2.1 series as part of the env-setup script, execute "env ANSIBLE_GIT_BRANCH="stable-2.1" scripts/env-setup". Similarly, "ANSIBLE_PIP_VERSION" can be utilized to specify the exact version, or range of version desired. Example: "ANSIBLE_PIP_VERSION=2.1.0.1" or "ANSIBLE_PIP_VERSION=<2.2" * Bifrost now has a role that can create a clouds.yaml file for os- client-config based client auto-configuration. * The functionality to create a service account and default user account to bifrost has been added. This is controlled by the "enable_keystone" parameter as well a "keystone" and "ironic" data structure that contains all required parameters. Please consult the bifrost-ironic-install/defaults/main.yml file for more details. * Previously bifrost deployments on RedHat/Suse systems had to be performed with selinux at least in permissive mode. This patch adds the necessary policies to allow the components to operate with selinux in enforcing mode. * bifrost now supports "dnf" as package manager on RedHat-based distros. It tries to use it by default and falls back to "yum" when "dnf" is not available. * Discovery of nodes via the ironic-inspector is now enabled by default. If you wish to disable this, set "enable_inspector_discovery" to "false" and re-execute the installation playbook. * Inspector is now installed and enabled by default. This changes default value for the "enable_inspector" variable from "false" to "true". * Functionality to configure the ironic-inspector to utilize keystone, utilizing the base "enable_keystone" boolean parameter. * An ansible role enabling the installation of keystone has been added in preparation for the addition of keystone support to bifrost. * The "bifrost-keystone-client-config" role can now write a "clouds.yaml" file with several clouds settings. It starts to accept a single compound variable "clouds" that must contain a dictionary describing key:value pairs in the format of "<cloud-name>:<dict-of- cloud-settings>". The previous way of passing "config_*" vars to the role is supported for backward compatibility but is deprecated and should be expected to be removed in Pike. In addition to previous "bifrost" cloud, the default "install.yaml" playbook now also writes "bifrost-admin" cloud settings that contain Keystone admin credentials so that when installed, the Keystone service is fully usable right away (users/projects etc can be managed). * The capability for Bifrost to read directly from the os-client- config data has been added. While shade can do this for us to a degree, bifrost also allows a user to directly choose the server which they are connecting to via the "ironic_url" parameter. Instead of duplicate code and retool, if no global "auth" parameter is detected, the authentication parameters from the "os_client_config" module is utilized to set the parameters. * An optional parameter has been added to the roles that interact with ironic that defines a "cloud_name". This cloud name is utilized by the roles to determine the entry from os-client-config to utilize. * Add support of remote logging. This feature allows to send logs from local syslog server and not collects logs from services on baremetal nodes. To collect from the actual running nodes requires configuration injected into each deployed host. Syslog server address and port can be specified in options "remote_syslog_server" and "remote_syslog_port" respectively. * Ironic-Staging-Drivers can now be installed. These are drivers that are not included in the ironic repo, and provide additional hardware support for ironic. More information about the drivers can be found at Ironic-Staging-Drivers (http://git.openstack.org/cgit/openstack /ironic-staging-drivers) To install the staging drivers set *staging_drivers_include* to true. The default value is false. * Ironic.conf is templated and only sets required options now, as opposed to editing the sample configuration of Ironic. Known Issues ************ * If installing bifrost in a virtualenv (venv) and running playbooks against localhost, you must install the basic python requirements on a system-wide level due to the operating behavior of Ansible. * Bifrost now has a role that can create a clouds.yaml file for os- client-config based client auto-configuration. This file overwrites the default file for the user executing bifrost, located at "~/.config/openstack/clouds.yaml". It is recommended that users execute bifrost's installation via a service account. * The addition of support for os-client-config does not allow a user to choose their "cloud" directly. Only the first entry returned is utilized. * Log entries where authentication data is read and stored have been masked with the "no_log" parameter. Troubleshooting non-standard authentication configurations may require modifying the playbooks so users can debug their input OR pass data directly in a different way. Upgrade Notes ************* * Bifrost has been changed to utilize Ansible 2.1 by default. Should a deployment encounter issues with Ansible, they may wish to check/update their version of Ansible, or re-execute the env- setup.sh script. * Bifrost no longer supports installing ironic AMT drivers when PXE drivers are enabled (which is the default) due to AMT drivers having been removed from ironic in Ocata release. * Upon installation, bifrost will replace the installed ironic.conf file with a template generated file. Custom setting changes to that file, which were previously retained, will now be lost upon re- installation. Deprecation Notes ***************** * The "ANSIBLE_INSTALL_ROOT" variable has been deprecated and is used only to raise a warning for third party scripts. * The "ANSIBLE_FROM_PYPI" variable no longer has any effect, as Ansible is always installed from PyPI now. * The "node_network_info" parameter has been deperecated in favor of the "node_network_data" parameter as the related configuration drive "network_info.json" file was misnamed originally, and should have been named "network_data.json". Support for the node_network_info, and the continued write-out of the network_info.json file in configuration drives will be removed in the Queens cycle. * The "ironic_auth_strategy" setting is deprecated and will be removed in Pike. The setting has no effect if the "enable_keystone" setting is present and set to "true". * The "inspector_auth" setting is deprecated and will be removed in Pike. The setting has no effect if the "enable_keystone" setting is present and set to "true". * Passing "config_*" variables defining credentials for "bifrost" cloud to the "bifrost-keystone-client-config" role has been deprecated, and will be removed in the Pike cycle. Instead a single compound variable named "clouds" defining sets of settings to be written to "clouds.yaml" should be passed to that role. Bug Fixes ********* * Due to breaking change in the stable branch tags utilized with Ansible, bifrost now utilizes installation of Ansible from PyPI. * When support for passing configuration drive data to the nodes was originally created, the file was accidently named incorrectly as "network_info.json". The correct filename is "network_data.json". Both files will now be written until support for writing "network_info.json" is removed in the Queens cycle. * Added dhcp configuration tasks to inspection role. In case when inventory_dhcp is enabled and node is not deployed yet, inspection is not working because dnsmasq ignores requests from unknown address. This fix introduces tasks which configures dhcp before inspection. * Some users have encountered issues with introspection periodically timing out for systems. As a result, we have added a new parameter "inspection_wait_timeout" that is now defaulted to "1800" seconds. Other Notes *********** * By default, the installation process now downloads iPXE binaries from ipxe.org upon re-installation. Previously, the download was not set to be forced, and thus would be skipped if the file was already present. * In the past, the sample config in Ironic may have set some boilerplate that Bifrost took advantage of. But now that config is entirely made up of comments, and so this change does not change much except stripping out all of those comments and leaving just the required content in ironic.conf to use Ironic with Bifrost. Changes in bifrost 2.1.0..3.0.0 ------------------------------- 7a7f858 Always install Ansible with pip d81f113 roles: bifrost-ironic-install: Always download the latest iPXE files 1d6e871 Revise release notes for release 7579106 Cleanup unused/deprecated files 1a04c6a Cleanup python requirements 3aeeec6 Correct closing brace causing install failure 69486c4 playbooks: bifrost-ironic-install: Fix reboot if iPXE boot failed 33c7804 Remove support for py34 1236d93 Allow deploy-dynamic on remote host ae01dcd Enable DeprecationWarning in test environments f72408b Typo fix: prepatory => preparatory b67e785 Remove deprecated test playbooks 652aff9 Fixing typo in deprecation note 410176d Remove deprecated nginx_port option 1e5db81 Remove my_ip_address from use d10abd2 roles: bifrost-create-vm-nodes: Randomize VM XML file 3a31ba4 Remove link to modindex e09bec2 Allow to create cloud.yaml with many clouds 2153089 Consolidate release notes 15fc697 Allow enroll-dynamic on remote host a229d65 scripts: test-bifrost.sh: Use 'unsafe' disk cache for test VMs 299a725 Do not install pxe_amt driver by default 29a7f96 Refresh Ansible facts after installing packages b7a861c roles: bifrost-create-vm-nodes: Allow overriding the disk caching method 90f83d3 Move misplaced releasenote d336d43 Remove local actions for ssh keys f46afa9 Make path to ironic-rootwrap dynamic 1dfd452 roles: bifrost-ironic-install: SUSE/Debian: Add gcc and python-pip packages ae78483 Typo fix: insufficent = insufficient d6d4dad Fix endpoint service name for inspector 639d0cf Add socat package 8ae2209 Allow enroll node with empty properties. d2ca09a Add wait_for_node_deploy parameter to deploy task with custom instance_info f018f9a Fix "Create SSH directory for ironic user" task c6e2851 Fixes to allow install Ironic on remote node 1767bc4 Typo fix: enviroment => environment d87f253 Updated from global requirements 5be9b6f Allow user to specify private SSH key 31e3edb Need install ansible in source case 2ab916d Fix race in virbr0 startup b70ef9e Don't assume 'dhcp' if node_network_data set 8651e26 Fix indentation of code in network_metadata.py 95837a6 Fix formatting of Role variables a493cc9 Add keystone to git contents download 8e226b8 Remove useless paramiko requirements 460bc85 Correct inspector keystone endpoint name 3f58451 Fix condition for include ssh_public_key_path 697bb2d Support to wait for node deployment to complete d6de3f9 Fix uuid and name parameters in inspect task 65a7b00 Fix stdout not defined 9b7d791 Add missing skip_install conditions 7288af2 Add checks for keystone endpoints 109cf98 Add dhcp related tasks to inspection role 0128ca8 Updated from global requirements e56a4ac Fixes to allow services startup after reboot 361eb32 Default keystone to uuid tokens d63fd59 Add support of remote logging 9772824 Fix ipa images urls in pxe config 490aae0 Fix bifrost install playbook README: default value 382f21c Adding staging driver support ac5b258 Improve bifrost inventory module 9241ceb README.rst: Add openSUSE Leap to list of supported distributions cf77dd9 Minor documentation updates 5ea4e7a Add support for dnf as package manager 487de04 Fix keystone config templates 68e7f12 Fix git_root default in README ccce073 Provide default to uwsgi_install_prefix c93ed6a Do not use bare variables in with_items eb727f4 Allow installing Ansible from PyPI aa38052 DRY when installing components 7a6fa59 Ensure git_root folder exists ee38716 Adding keystone support to inspector config 5632058 Add keystone capability to base install ad8d68b Update the task label for inspection b17e4fc Add test script for Bifrost using keystone 2cf5ce5 Add initial keystone use documentation 82482a7 follow up to Change-Id: I4150f86fbc141dcd6fd12094acab1ca43d76910c 33d79b0 Config drive spec uses network_data.json d806782 Enable inspector by default 3b60999 Bifrost keystone follow-up 46a552c Test timeout extension for inspection d1e73c7 Show team and repo badges on README e671094 playbooks: bifrost-ironic-install: Stop and disable epmd on SUSE 9629270 Replace six.iteritems() with .items() 345a62f Add Keystone support to ironic.conf 65dd103 Convert ironic.conf to template generated 99f1ca4 Add keystone install and clouds.yaml to testing 9068d38 Add ability to write clouds.yaml 6ad5be7 Add support to update keystone for bifrost a5c688a Add keystone installation playbook 3e8a84f Update playbooks to support os_client_config 2c60745 Update Ansible version to stable-2.1 befa4bd playbooks: bifrost-ironic-install: Fix regexp for pxe_bootfile_name 95fc7af Updated from global requirements c7e5132 Allow bifrost to work with selinux enabled 356ce0e Create new fact for dib_env_vars d92db61 Updated from global requirements a3f09bf Add instructions to setup ip on provisiong on virsh 5970763 Updated from global requirements fd6045d Enable upper requirements on bifrost 43c2504 Don't include openstack/common in flake8 exclude list 2f7ba2d playbooks: Do not serialize ironic deployment 21f2731 bifrost: inventory: Downgrade log level to 'debug' for csv parsing af24107 Add instructions to deploy bifrost on virsh 2786b42 Enable inspector discovery by default cb373c8 Cleanup: adding linebreaks for readability ec15436 Enable release notes translation 87a32c6 Serialize localhost actions during final host deployment ba9fccc Fix a typo in documentation 5ef4bc5 Allow users to change the default provisioning timeout value 6e14419 Updated from global requirements 6ab45b2 Allow management of vlans when specifying mac 900bd2a TrivialFix: Fix typo in the RST file cba9638 Add read and execute perms to httpboot and tftpboot folder 132e3fd Fix typo in bifrost-role-auth-support-ea6b5571cd339aa2.yaml 2599d4f Update flake8 ignore list 377e199 Redirect mkisofs and genisoimage stderr/stdout to /dev/null fe9680c Ignore Ansible retry files in .gitignore 3edef76 Add new lines to improve pre-install yaml files f4fb657 Update reno for Newton 231d5a9 SuSE support for VM node creation 0ed31d8 Install process SuSE support add3cfb Workaround openSUSE ansible_os_family issue 5644b68 Refactor env-setup.sh 767276b Allow user to get iPXE files c09d05c Updated from global requirements 1433fc8 Explain how to pronounce Bifrost Diffstat (except docs and test files) ------------------------------------- .gitignore | 9 + README.rst | 113 +++++--- README.vagrant.rst | 4 +- bifrost/inventory.py | 49 ++-- openstack-common.conf | 6 - playbooks/deploy-dynamic.yaml | 9 +- playbooks/deploy.yaml | 9 - playbooks/enroll-dynamic.yaml | 12 +- playbooks/enroll.yaml | 9 - playbooks/install.yaml | 22 +- playbooks/inventory/group_vars/baremetal | 7 + playbooks/inventory/group_vars/target | 72 ++++++ playbooks/inventory/localhost | 2 +- playbooks/inventory/target | 2 + playbooks/library/network_metadata.py | 25 +- playbooks/library/os_ironic_facts.py | 4 +- .../roles/bifrost-configdrives-dynamic/README.md | 20 +- .../bifrost-configdrives-dynamic/defaults/main.yml | 3 + .../bifrost-configdrives-dynamic/meta/main.yml | 2 +- .../bifrost-configdrives-dynamic/tasks/main.yml | 48 +++- .../tasks/ssh_public_key_path.yaml | 2 + .../tasks/update_facts_from_ironic.yaml | 27 +- .../templates/network_data.json.j2 | 1 + .../templates/network_info.json.j2 | 1 - .../roles/bifrost-create-dib-image/tasks/main.yml | 17 +- .../defaults/required_defaults_Suse.yml | 10 + .../files/create_vm_nodes-for-role.sh | 20 +- .../roles/bifrost-create-vm-nodes/tasks/main.yml | 43 +++- .../roles/bifrost-deploy-nodes-dynamic/README.md | 29 ++- .../bifrost-deploy-nodes-dynamic/defaults/main.yml | 12 +- .../bifrost-deploy-nodes-dynamic/meta/main.yml | 2 +- .../bifrost-deploy-nodes-dynamic/tasks/main.yml | 35 ++- playbooks/roles/bifrost-ironic-install/README.md | 31 ++- .../roles/bifrost-ironic-install/defaults/main.yml | 99 ++++++- .../defaults/required_defaults_Debian_family.yml | 5 +- .../defaults/required_defaults_Debian_jessie.yml | 1 - .../defaults/required_defaults_RedHat_family.yml | 7 +- .../defaults/required_defaults_Suse_family.yml | 54 ++++ .../defaults/required_defaults_Ubuntu_16.04.yml | 33 +++ .../roles/bifrost-ironic-install/files/boot.ipxe | 2 +- .../bifrost-ironic-install/files/ironic_policy.te | 19 ++ .../bifrost-ironic-install/tasks/bootstrap.yml | 152 ++++++++--- .../tasks/create_tftpboot.yml | 28 +- .../tasks/download_ipa_image.yml | 3 + .../bifrost-ironic-install/tasks/get_ipxe.yml | 31 +++ .../tasks/inspector_bootstrap.yml | 7 +- .../tasks/inspector_install.yml | 1 + .../tasks/inspector_start.yml | 1 + .../roles/bifrost-ironic-install/tasks/install.yml | 9 +- .../bifrost-ironic-install/tasks/ironic_config.yml | 184 +------------ .../tasks/keystone_setup.yml | 268 +++++++++++++++++++ .../tasks/keystone_setup_inspector.yml | 204 +++++++++++++++ .../roles/bifrost-ironic-install/tasks/main.yml | 21 ++ .../bifrost-ironic-install/tasks/pip_install.yml | 5 +- .../tasks/redhat_libvirt_changes.yml | 2 +- .../tasks/set_ssh_private_key.yml | 12 + .../tasks/staging_install.yml | 22 ++ .../roles/bifrost-ironic-install/tasks/start.yml | 28 +- .../templates/10-rsyslog-remote.conf.j2 | 1 + .../templates/inspector-default-boot-ipxe.j2 | 4 +- .../templates/ironic-inspector.conf.j2 | 49 +++- .../templates/ironic.conf.j2 | 90 +++++++ .../bifrost-ironic-install/templates/nginx.conf.j2 | 1 + .../roles/bifrost-keystone-client-config/README.md | 92 +++++++ .../defaults/main.yml | 2 + .../bifrost-keystone-client-config/meta/main.yml | 22 ++ .../bifrost-keystone-client-config/tasks/main.yml | 45 ++++ .../templates/clouds.yaml.j2 | 14 + playbooks/roles/bifrost-keystone-install/README.md | 119 +++++++++ .../defaults/dummy-defaults.yml | 3 + .../bifrost-keystone-install/defaults/main.yml | 57 +++++ .../defaults/required_defaults_Debian_family.yml | 21 ++ .../defaults/required_defaults_Debian_jessie.yml | 20 ++ .../defaults/required_defaults_Fedora_22.yml | 5 + .../defaults/required_defaults_RedHat_family.yml | 25 ++ .../defaults/required_defaults_Suse_family.yml | 19 ++ .../defaults/required_defaults_Ubuntu_15.04.yml | 4 + .../defaults/required_defaults_Ubuntu_15.10.yml | 4 + .../defaults/required_defaults_Ubuntu_16.04.yml | 21 ++ .../roles/bifrost-keystone-install/meta/main.yml | 15 ++ .../bifrost-keystone-install/tasks/bootstrap.yml | 285 +++++++++++++++++++++ .../bifrost-keystone-install/tasks/install.yml | 47 ++++ .../roles/bifrost-keystone-install/tasks/main.yml | 46 ++++ .../bifrost-keystone-install/tasks/pip_install.yml | 27 ++ .../roles/bifrost-keystone-install/tasks/start.yml | 22 ++ .../templates/keystone-admin.ini.j2 | 18 ++ .../templates/keystone-public.ini.j2 | 18 ++ .../templates/keystone.conf.j2 | 26 ++ .../templates/nginx.conf.j2 | 52 ++++ .../nginx_conf.d_bifrost-keystone.conf.j2 | 21 ++ .../templates/systemd_template.j2 | 15 ++ .../templates/upstart_template.j2 | 10 + .../roles/bifrost-openstack-ci-prep/tasks/main.yml | 3 + playbooks/roles/bifrost-prep-for-install/README.md | 4 +- .../bifrost-prep-for-install/defaults/main.yml | 47 ++++ .../roles/bifrost-prep-for-install/tasks/git.yml | 23 -- .../tasks/git_download.yaml | 44 ---- .../bifrost-prep-for-install/tasks/local_path.yaml | 27 -- .../roles/bifrost-prep-for-install/tasks/main.yml | 21 +- playbooks/roles/bifrost-test-vm/defaults/main.yml | 1 - playbooks/roles/bifrost-test-vm/tasks/main.yml | 7 +- .../bifrost-unprovision-node-dynamic/README.md | 3 + .../bifrost-unprovision-node-dynamic/meta/main.yml | 2 +- .../tasks/main.yml | 24 +- playbooks/roles/ironic-delete-dynamic/README.md | 3 + .../roles/ironic-delete-dynamic/meta/main.yml | 2 +- .../roles/ironic-delete-dynamic/tasks/main.yml | 24 +- playbooks/roles/ironic-enroll-dynamic/README.md | 3 + .../roles/ironic-enroll-dynamic/defaults/main.yml | 4 +- .../roles/ironic-enroll-dynamic/meta/main.yml | 2 +- .../roles/ironic-enroll-dynamic/tasks/main.yml | 29 ++- playbooks/roles/ironic-inspect-node/README.md | 41 +++ .../roles/ironic-inspect-node/defaults/main.yml | 4 + playbooks/roles/ironic-inspect-node/meta/main.yml | 2 +- playbooks/roles/ironic-inspect-node/tasks/main.yml | 59 ++++- .../ironic-inspect-node/templates/dhcp-host.j2 | 6 + .../ironic-inspect-node/templates/dns-address.j2 | 2 + playbooks/test-bifrost-dhcp.yaml | 149 ----------- playbooks/test-bifrost-dynamic.yaml | 99 ------- playbooks/test-bifrost.yaml | 32 ++- .../notes/add-private-key-9788621be14ba324.yaml | 6 + .../allow-install-remote-101eea1ea4009fe1.yaml | 6 + .../notes/ansible-2.1-4b6b36998287bb11.yaml | 9 + .../ansible-pip-install-2b66bd82ce9ed4f6.yaml | 56 ++++ ...bifrost-role-auth-support-ea6b5571cd339aa2.yaml | 2 +- .../notes/create-clouds.yaml-9bbc79c0497dee43.yaml | 12 + .../creation-of-ironic-user-5a970c5f73e8ef45.yaml | 8 + ...ploy-with-selinux-enabled-6c155cfa8f8720c0.yaml | 7 + ...precate_node_network_info-8c5e1bc4df6b8097.yaml | 17 ++ .../notes/dnf-support-413762b0af2887bc.yaml | 5 + releasenotes/notes/drop-amt-e4bfb6e2ae3c4301.yaml | 6 + ...nable-inspector-discovery-77aa6f5c1f1e42c6.yaml | 6 + ...able_inspector_by_default-828fc1284d6a7c2b.yaml | 5 + ...ction-with-inventory-dhcp-cfc236974bf4ed0a.yaml | 7 + ...nspector-keystone-support-3786a22b49e851e5.yaml | 12 + ...pection-timeout-parameter-8e86afffd2f1d947.yaml | 6 + .../notes/ipxe-download-bc1235cbbc87121c.yaml | 6 + .../keystone-installation-3b812d9f673c7bbe.yaml | 5 + .../notes/more-clouds-7c0fccf5701918d7.yaml | 24 ++ .../notes/ocata-summary-040e557460bab2bc.yaml | 19 ++ .../os_client_config-support-b1073062d842febb.yaml | 24 ++ .../support-remote-logging-93e159eeef4cc68b.yaml | 8 + .../support-staging-drivers-1c398a56dde9b240.yaml | 9 + .../templated_ironic_conf-bd052f2b2897d37a.yaml | 18 ++ releasenotes/source/conf.py | 3 + releasenotes/source/index.rst | 2 +- releasenotes/source/newton.rst | 2 +- requirements.txt | 13 +- scripts/ansible-pip-str.py | 55 ++++ scripts/env-setup.sh | 237 ++++------------- scripts/install-deps.sh | 152 +++++++++++ scripts/test-bifrost-keystone-auth.sh | 1 + scripts/test-bifrost.sh | 33 ++- test-requirements.txt | 9 +- tools/README.md | 4 +- tools/virsh_dev_env/README.md | 65 +++++ tools/virsh_dev_env/network/br_direct.xml | 6 + tools/virsh_dev_env/network/default.xml | 15 ++ tools/virsh_dev_env/vm/baremetal.xml | 101 ++++++++ tox.ini | 9 +- troubleshooting.rst | 2 +- 164 files changed, 3824 insertions(+), 1026 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index 34e451b..47f0055 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,10 +4,3 @@ -PyYAML>=3.1.0 # MIT -Jinja2>=2.8 # BSD License (3 clause) -pbr>=1.6 # Apache-2.0 -Babel>=2.3.4 # BSD -oslo.config>=3.14.0 # Apache-2.0 -oslo.log>=1.14.0 # Apache-2.0 -six>=1.9.0 # MIT -PyMySQL!=0.7.7,>=0.6.2 # MIT License -paramiko>=2.0 # LGPLv2.1+ -pycrypto>=2.6 # Public Domain +pbr>=1.8 # Apache-2.0 +oslo.config!=3.18.0,>=3.14.0 # Apache-2.0 +oslo.log>=3.11.0 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index 7a55eca..29974b1 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -7 +7 @@ hacking<0.11,>=0.10.0 -coverage>=3.6 # Apache-2.0 +coverage>=4.0 # Apache-2.0 @@ -9,3 +9,3 @@ python-subunit>=0.0.18 # Apache-2.0/BSD -reno>=1.8.0 # Apache2 -sphinx!=1.3b1,<1.3,>=1.2.1 # BSD -oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0 +reno>=1.8.0 # Apache-2.0 +sphinx!=1.3b1,<1.4,>=1.2.1 # BSD +oslosphinx>=4.7.0 # Apache-2.0 @@ -15,0 +16 @@ testtools>=1.4.0 # MIT +PyYAML>=3.10.0 # MIT