python-tripleoclient 12.4.0 (train)
We exuberantly announce the release of: python-tripleoclient 12.4.0: TripleO client This release is part of the train stable release series. The source is available from: https://opendev.org/openstack/python-tripleoclient Download the package from: https://tarballs.openstack.org/python-tripleoclient/ Please report issues through: https://bugs.launchpad.net/tripleo/+bugs For more details, please see below. 12.4.0 ^^^^^^ New Features ************ * The *overcloud delete* subcommand now supports cleaning up overcloud hosts, services, and DNS entries in FreeIPA. This is applicable to deployments with TLS support enabled since FreeIPA serves DNS and manages certificates for overcloud infrastructure. This subcommand also includes a new option called "--skip-ipa- cleanup" that allows the caller to forego cleaning up FreeIPA. This may be useful when deployers want to forcibly cleanup overcloud stacks and leave FreeIPA entries intact (e.g., network partition events where the FreeIPA server isn't reachable). Note that you will need to manually cleanup FreeIPA if you use "--skip-ipa-cleanup". * A new *--ansible-forks* argument has been added to the TripleO and Overcloud commands. The default value for forks has also been adjusted to no longer exceed 100 forks. * Add --work-dir to openstack overcloud container image build command and every run will create a unique workspace which where will be stored Kolla configs and build logs. Default directory will be in /tmp/container-builds. UUIDs are used to identify each time we run the command and will be the directory name in the work dir. * Added *--overcloud-ssh-enable-timeout* to allow end users to increase the wait time during the deploy, ffu, upgrade and admin actions. By default this is 600 seconds. * Added *--overcloud-ssh-port-timeout* to allow end users to increase the time we wait for ssh to become ready on the hosts during the deploy, ffu, upgrade and admin actions. On older hardware or slow booting hardware, the 300 seconds we wait by default for the port to come up may not be sufficient. * A new command "openstack overcloud export ceph" is added. The command is used to export the Ceph deployment data from one stack for use in another stack with storage services which use that Ceph cluster when using the multi-stack deployment feature. * The network interface drivers for the Baremetal service on the undercloud is now configurable. New undercloud.conf options "enabled_network_interfaces" (Default: "flat") and "default_network_interface" (Default: "flat") control the enabled network interface and the default network interface when enrolling nodes. * The upgrade/update commands have a prompt by default now that ask for confirmation before proceeding. It'll prevent an operator to run the command and cause the problems to infrastructure. This prompt can be skipped with --yes/-y argument. * The TripleO Validator CLI has now a new logging feature which keep every validation execution log in the Undercloud (/var/log/validations/). The CLI is able to display the history and allow the user to get the full execution details. Upgrade Notes ************* * The *undercloud.conf* file is now strictly parsed. If there are detected issues within the *undercloud.conf* configuration file operations will halt, producing an error and highlighting how to resolve the issue. Deprecation Notes ***************** * The ffwd-upgrade command isn't needed anymore since Queens. The ffwd upgrade now relies on the overcloud upgrade commands, therefore there is no need to keep the old ffwd-upgrade commands around as they could just cause confusion to the user. Bug Fixes ********* * Ansible connection timeout used for config download and the deployment timeout now will be given proper values. It fixes bug 1868063. * The client (tripleoclient) now raises a new exception, ConfigDownloadInProgress, if there is already an instance of the tripleo.deployment.v1.config_download_deploy workflow in progress for the current stack. * With adding UseTLSTransportForNbd feature in stein, UseTLSTransportForNbd is enabled per default. If an environment gets upgraded where UseTLSTransportForNbd was not enabled will make live migration to fail as the required certs are not part of the env of the previously created qemu process containers. This change handles UseTLSTransportForNbd as: * new environments it is enabled, which is the default in THT since stein * if it is an existing environment: - global_config_settings get checked for use_tls_for_nbd key - if the global_config_settings does not exist, e.g. update from previous THT version or previous major release, the hieradata key nova::compute::libvirt::qemu::nbd_tls gets evaluated that there is no unnecessary disable of nbd_tls In change I7f583d18e558b95922a66eb539cc91de74409c96 we move the certs to be handled using bind mounts, so the upgrade path to enable nbd-tls would be 1. deploy with this change + the puppet-tripleo and tht change to use bind mounts for certs. 2. migrate all instances once that the containers running the qemu processes have the correct cert bind mounts 3. run an overcloud deploy using UseTLSTransportForNbd=true * openstack overcloud export now exports user defined password values instead of just always exporting the generated password values. * The *undercloud.conf* file is now strictly parsed which ensures a clean configuration when deploying the undercloud. Changes in python-tripleoclient 12.3.1..12.4.0 ---------------------------------------------- 7f001ff7 Make workflow monitoring more resilient 9c343949 [train-only] Extend list of DEPRECATED_SERVICES 76bb5725 [train-only] Set rc = 0 for successful standalone/output-only action bfd01adc Expose --ansible-forks 9c89072f remove c7 update/upgrdae jobs e5b8ebde [TRAIN-Only] Reduce open mock scope 302d2f2b Wire up new tripleo upgrades jobs template ac397523 Revert "Removed ubi-8 based jobs" d239ca70 [TRAIN] Default ceph export config-download dir to mistral dfa32942 Do not require authentication for the validator CLI f5892a58 [TRAIN-only] Don't stop scale down if ansible fails 52014762 Map build host repos to distro.repos.d instead of yum.repos.d 8274fa5b remove lower-constraints 15050a25 Add config-download-dir flag to cell export command 94ada5c0 [train/stein] Handle UseTLSTransportForNbd for previous created envs 85ca8946 Removed ubi-8 based jobs 9d1e3df8 [Container build] raise Exception post logging error 4a5027a6 Add detection of package manager for undercloud upgrade 709a3377 [c7-train] Simplify tags for consumer jobs f962b728 Remove centos-7-standalone-upgrade c83a3f80 [train] Switch to content provider jobs/templates 05a909c3 Check CephClusterFSID against proposed env files 7700507f Fix tcib build 2bac6517 Add openstack overcloud export ceph d4bb4fe1 Fix if conditions in constants.py e00630cf Remove playbook param from tripleo_validator.py 89fe42bd Set portmap cidr fields to extracted CIDR a09ddc85 Remove c7 containers multinode job ae583292 Inject both paths for validations roles location 370be5b4 [TRAIN-Only] Fix missing mock de7ef0ca [TRAIN-Only] Remove extra linebreak 04840122 Add --temp-dir to overcloud image build 49fd5d47 Train only: supply the stack name when creating the inventory 86c9fa70 Combined cherry-pick to allow TCIB to run config-less 8b336981 Make python interpreter option for ansible validation run e55aaaba Update tripleo-validations path to /usr/share/ansible 73e1b63a Allow to pass a static inventory to the validator CLI bd22a7fb Fix extra_env_files option and type in format string f3853c94 Implement validations-libs framework for ALL validator commands 5e3097e4 [train-only] Add ipa config check to _cleanup_ipa 79bb147b (UX) Improve logging if the ephemeral heat stack wasn't created b02ed76d TCIB: add --rhel-modules argument 8e7a8e76 Allow usage of duplicated IPs for undercloud config fa012996 overcloud_deploy: move horizon url/rc files before config-download 1399785a Limit ip_version when resolving public_host and admin_host 182892b1 Add tripleo container image hotfix command c15d0d0b Use user set password values in overcloud export 29686a65 Cleanup UndercloudHostsEntries 6bf36b3b Correct YAML load warning 66c1f75a Don't build image upload tasks when dry_run is True c62e12db Rename UpgradeConvergeOvercloud into UpgradeConverge. 8d98d0b5 [train-only] Run tripleo-build-containers-ubi-8 under specific conditions 846911ef [TRAIN-Only] Increase deploy workflow wait ad603d39 Port jobs from centos7 to centos8 d77bb6e3 Close session objects in container_image.py b40432f1 Add openstack tripleo container image build aedc6146 Correct ansible playbook execution handler 6c8086ff Remove ffwd-upgrade commands from tripleoclient. 9e08f1ea [TRAIN-and-older] Properly close sockets 309df8af [stable-only] Use folder with plan name for config download export 6f8134b2 [train] manual backport & squash for overcloud_deploy raise changes cc4d0599 Throw warning if --limit used with a skip list in Heat 28975947 Add "yes" prompt for update/upgrades commands bf17d081 Skip network check with stack env when validations disabled 57ed1b88 Identify not allowed parameters in upgrades. f0c2113c update constraint for tripleo-common to new release 11.4.0 d58ea5bb [TRAIN ONLY] Do not encode hostnames in validation result 0ba53608 Refactor upgrade prepare and converge. 4b1a018e Detect TLS for pre-provisioned nodes 6f877f6b TripleO Validations Logging CLI Introduction ecf22416 [TRAIN-AND-OLDER] Improve timeout error handling ed0ed100 [stable/train] Revert "Remove download_ansible_playbooks" fc34403e Remove left over print f0c8e5f1 Fix upgrade prompt 55c99266 Use undercloud upgrade to update all required pkgs e277e46f Removed job tripleo-ci-centos-7-scenario009-multinode-oooq-container 3b52fa2c tripleo-ci-centos-7-containerized-undercloud-upgrades -> NV 54f1e93e Add option to skip ipa cleanup when deleting overclouds da9dc6eb [stable-only] Add retry for inserting temp_ssh_key 3b0f307c Add login flag to container image prepare defaults 9b0f5dd8 Raise a new ValueError with the contents of the JSON is parsing fails 5627d8d9 [stable-only] Raise error for temp_ssh_key import failure 7fc95cac Expose --limit, --skip-tags, and --tags on the CLI. 934d713a [stable only] Remove timeout in config-download-export b9511925 Add release note for undercloud.conf parsing 42822ff9 Update necessary packages before undercloud upgarde. 8b7d1be9 Fix ResourceWarning: unclosed file 780139aa Fix misused deployment vs connection timeouts d4c35c06 Ensure the undercloud output dir constant is consistent 6efccee3 Add logic to clean up ipa on stack delete fdce01fc Improve container_images_file comments 8f5a2dab Normalize the 'undercloud-passwords.conf' return data 7f4622dd Add --work-dir option to container image build command b1703f2f Local file based image uploader 63f4078b Add option to control ironic network interfaces f8671e51 baremetal provision expose concurrency and timeout b5bc064b Use correct default key file and normalize the usage 25c00613 Update undercloud.conf with correct SSL information f3064562 overcloud: set DeployIdentifier to '' if --skip-deploy-identifier is used 8e0c0cd7 Make _get_undercloud_host_entry(self) python3 friendly f39c1823 Refactor image upload command 42c04f7f Relax ~/.config permissions 5e40c707 Remove extra whitespaces from getent. 3818c0e3 Fix default image registry address lookup 760b354d Increase ssh port timeout eefe92ee Add source auth to image push 4c46dc16 undercloud: introduce undercloud_enable_paunch option 358465d2 Revert "Default to zero verbosity when using Ansible." df649121 Revert "Added for support for generating overcloud clouds.yaml" 629a35f0 Implement utils.copy_clouds_yaml 23884fe1 tripleo_deploy: set RootStackName 5e09e827 Allow import to specify image location ipxe=false 27ce58ac Enable stack status output for tripleo deploy 303a334d Fix all py27 tests 449a77a4 Revert "Remove panko" b2f0a34f openstack overcloud node delete --baremetal-deployment aef369e7 Default to zero verbosity when using Ansible. bd2a3773 Enforce 0600 permissions on private SSH key file. 6367d58c Handle config-download in progress in tripleoclient 1f52be58 Add additional ssh timeout options 6acea631 Complete overcloud deploy --baremetal-deployment f15890bd Improvements to unprovision command 13e24cdc Allow ctlplane subnets in undercloud chrony acl rules be999f12 Catch exceptions when processing subnets 585fb281 Pass container name to update_nodes workflow 94163f40 TripleO Validator CLI Refactor Diffstat (except docs and test files) ------------------------------------- bindep.txt | 1 + lower-constraints.txt | 7 +- ...eanup-to-overcloud-delete-ab5835b098805d45.yaml | 12 + .../notes/ansible-forks-arg-9f7b439e4b6980dd.yaml | 6 + ...nsible_connection_timeout-78e45f20ff91f672.yaml | 6 + ...nfig-download-in-progress-4af02517cb5a5c0c.yaml | 6 + .../notes/container_work_dir-edb40007cb25168e.yaml | 8 + .../libvirtd_handle_nbd_tls-277e72f07dd867c8.yaml | 26 + ...ent-timeouts-configurable-326124c81ce56fca.yaml | 11 + ...ack-overcloud-export-ceph-f36421e1685db302.yaml | 6 + ...ironic-network-interfaces-7e185f5fd67c7500.yaml | 8 + ...rcloud-cloud-yaml-support-fae7585c46eda8e8.yaml | 8 - ...vercloud-export-passwords-bfa698491601a734.yaml | 4 + ...panko-deprecated-in-train-0444baa3ba4688f1.yaml | 6 - ...ove_ffwd-upgrade_commands-579f885957f02863.yaml | 7 + .../strict-config-parsing-ded8d4994c8ea363.yaml | 9 + ...eo_validator_cli_refactor-64c298348d405347.yaml | 17 + .../upgrade_update_prompt-f6ace53f02b62fa0.yaml | 7 + ...lidation_logging_features-a7c096868197c42a.yaml | 7 + requirements.txt | 4 +- setup.cfg | 14 +- test-requirements.txt | 2 +- tripleoclient/command.py | 23 + tripleoclient/config/standalone.py | 17 +- tripleoclient/config/undercloud.py | 27 +- tripleoclient/constants.py | 132 +++- tripleoclient/exceptions.py | 23 + tripleoclient/export.py | 99 ++- tripleoclient/plugin.py | 14 +- .../__init__.py | 0 .../test_tripleo_container_image.py | 300 ++++++++ .../v1/overcloud_config/test_overcloud_config.py | 10 +- .../v1/overcloud_delete/test_overcloud_delete.py | 78 ++ .../v1/overcloud_deploy/test_overcloud_deploy.py | 303 +++++++- .../test_overcloud_external_update.py | 28 +- .../test_overcloud_external_upgrade.py | 28 +- .../test_overcloud_ffwd_upgrade.py | 247 ------ .../v1/overcloud_image/test_overcloud_image.py | 829 +++++++++++++++------ .../v1/overcloud_update/test_overcloud_update.py | 72 +- .../v1/overcloud_upgrade/test_overcloud_upgrade.py | 178 +++-- tripleoclient/utils.py | 559 ++++++++------ tripleoclient/v1/container_image.py | 224 ++++-- tripleoclient/v1/mock_clouds_yaml.py | 3 - tripleoclient/v1/overcloud_admin.py | 25 +- tripleoclient/v1/overcloud_cell.py | 18 +- tripleoclient/v1/overcloud_config.py | 10 +- tripleoclient/v1/overcloud_delete.py | 87 +++ tripleoclient/v1/overcloud_deploy.py | 270 +++++-- tripleoclient/v1/overcloud_export_ceph.py | 114 +++ tripleoclient/v1/overcloud_external_update.py | 38 +- tripleoclient/v1/overcloud_external_upgrade.py | 39 +- tripleoclient/v1/overcloud_ffwd_upgrade.py | 218 ------ tripleoclient/v1/overcloud_image.py | 502 ++++++++----- tripleoclient/v1/overcloud_node.py | 229 +++++- tripleoclient/v1/overcloud_update.py | 107 ++- tripleoclient/v1/overcloud_upgrade.py | 151 ++-- tripleoclient/v1/tripleo_container_image.py | 738 ++++++++++++++++++ tripleoclient/v1/tripleo_deploy.py | 62 +- tripleoclient/v1/tripleo_upgrade.py | 7 + tripleoclient/v1/tripleo_validator.py | 493 +++++++----- tripleoclient/v1/undercloud.py | 100 ++- tripleoclient/v1/undercloud_config.py | 91 ++- tripleoclient/v1/undercloud_preflight.py | 6 +- tripleoclient/workflows/baremetal.py | 11 + tripleoclient/workflows/base.py | 9 +- tripleoclient/workflows/deployment.py | 140 ++-- tripleoclient/workflows/parameters.py | 82 ++ tripleoclient/workflows/scale.py | 3 +- zuul.d/layout.yaml | 58 +- 88 files changed, 6326 insertions(+), 2429 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index 739e8e1d..e7167d1e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -19 +19,2 @@ websocket-client>=0.44.0 # LGPLv2+ -tripleo-common>=11.3.1 # Apache-2.0 +tenacity>=5.0.1 # Apache-2.0 +tripleo-common>=11.4.0 # Apache-2.0 @@ -21,0 +23 @@ futures>=3.0.0;python_version=='2.7' or python_version=='2.6' # BSD +validations-libs>=1.0.0 diff --git a/test-requirements.txt b/test-requirements.txt index 3a42b24d..4c821db0 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -9 +9 @@ fixtures>=3.0.0 # Apache-2.0/BSD -mock>=2.0.0 # BSD +mock>=3.0.0 # BSD
participants (1)
-
no-reply@openstack.org