{ "info": { "author": "TripleO Team", "author_email": "openstack-discuss@lists.openstack.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Topic :: Utilities" ], "description": "===============\ntripleo-upgrade\n===============\n\nThis role aims to provide a unified tool for upgrading TripleO based deploments.\n\nRequirements\n------------\n\nThis role requires:\n\n* An ansible inventory file containing reacheable undercloud and overcloud nodes\n\n* Nodes in the inventory file are placed in groups based on their roles (e.g compute nodes are part of the 'compute' group)\n\n* Repositories containing packages to be upgraded are already installed on undercloud and overcloud nodes (or, for overcloud, define an upgrade_init_command variable)\n\n* The initial overcloud deploy command is placed in a script file located in the path set by the overcloud_deploy_script var. Each option/environment file should be placed on a separate new line, e.g::\n\n source ~/stackrc\n export THT=/usr/share/openstack-tripleo-heat-templates/\n\n openstack overcloud deploy --templates $THT \\\n -r ~/openstack_deployment/roles/roles_data.yaml \\\n -e $THT/environments/network-isolation.yaml \\\n -e $THT/environments/network-management.yaml \\\n -e $THT/environments/storage-environment.yaml \\\n -e ~/openstack_deployment/environments/nodes.yaml \\\n -e ~/openstack_deployment/environments/network-environment.yaml \\\n -e ~/openstack_deployment/environments/disk-layout.yaml \\\n -e ~/openstack_deployment/environments/neutron-settings.yaml \\\n --log-file overcloud_deployment.log &> overcloud_install.log\n\nRole Variables\n--------------\n\nAvailable variables are listed below::\n\n upgrade_noop: false\n\nOnly create upgrade scripts without running them::\n\n update_noop: false\n\nOnly create update scripts without running them::\n\n undercloud_upgrade: false\n\nRun undercloud upgrade::\n\n containerized_undercloud_upgrade: false\n\nRun containerized undercloud upgrade::\n\n overcloud_upgrade: false\n\nRun overcloud upgrade::\n\n undercloud_update: false\n\nRun undercloud update::\n\n overcloud_update: false\n\nRun overcloud update::\n\n overcloud_deploy_script: \"~/overcloud_deploy.sh\"\n\nLocation of the initial overcloud deploy script::\n\n undercloud_upgrade_script: \"~/undercloud_upgrade.sh\"\n\nLocation of the undercloud upgrade script which is going to be generated by this role::\n\n overcloud_composable_upgrade_script: \"~/composable_docker_upgrade.sh\"\n\nLocation of the upgrade script used in the composable docker upgrade step which is going to be generated by this role::\n\n overcloud_converge_upgrade_script: \"~/converge_docker_upgrade.sh\"\n\nLocation of the upgrade script used in the converge docker upgrade step which is going to be generated by this role::\n\n undercloud_rc: \"~/stackrc\"\n\nLocation of the undercloud credentials file::\n\n overcloud_rc: \"~/overcloudrc\"\n\nLocation of the overcloud credentials file::\n\n upgrade_workarounds: false\n\nAllows the user to apply known issues workarounds during the upgrade process. The list of patches/commands used for workarounds should be passed via --extra-vars and it should include dictionaries for undercloud/overcloud workarounds::\n\n use_oooq: false\n\nSet to true when the deployment has been done by tripleo quickstart::\n\n workload_launch: false\n\nSet to true to launch an instance before starting upgrade. This can be useful for running tests during upgrade such as live migration or floating IP connectivity checks::\n\n external_network_name: \"public\"\n\nName of the external network providing floating IPs for instance connectivity. This provides external connectivity and needs to exist beforehand, created by the user::\n\n workload_image_url: \"http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img\"\n\nURL of the image used for the workload instance::\n\n workload_memory: \"512\"\n\nAmount of memory assigned for the workload instance::\n\n tripleo_ci: false\n\nSet to true when running the role in the TripleO CI jobs. It avoids losing connectivity to the undercloud by skipping reboot and ssh kill tasks::\n\n upgrade_init_command: |\n sudo tripleo-repos -b pike current\n\nBash commands, defines a custom upgrade init to be taken into account during overcloud upgrade.\n\nDependencies\n------------\n\nNone.\n\n\nExample Playbook\n----------------\n\nAn example playbook is provided in tests/test.yml::\n\n - hosts: undercloud\n gather_facts: true\n become: true\n become_method: sudo\n become_user: stack\n roles:\n - tripleo-upgrade\n\n\nUsage with tripleo Quickstart\n-----------------------------\n\nAfter a successful deployment with OOOQ, you can create the necessary\nscripts using this example playbook (duplicate from\n./tests/oooq-test.yaml)::\n\n ---\n - hosts: undercloud\n gather_facts: true\n become: true\n become_method: sudo\n become_user: stack\n roles:\n - { role: tripleo-upgrade, use_oooq: 'true'}\n\n\nAnd then you run it like this (adjust the paths to your oooq specific\none)::\n\n ANSIBLE_SSH_ARGS=\"-F $(pwd)/ssh.config.ansible\" \\\n ANSIBLE_CONFIG=$PWD/ansible.cfg \\\n ansible-playbook -i hosts -vvv tripleo-upgrade/tests/oooq-test.yaml\n\nThis will only create the file (without running the actual upgrade):\n - undercloud_upgrade.sh\n - composable_docker_upgrade.sh\n - overcloud-compute-\\*_upgrade_pre.sh\n - overcloud-compute-\\*_upgrade.sh\n - overcloud-compute-\\*_upgrade_post.sh\n - converge_docker_upgrade.sh\n\nwith the correct parameters.\n\nUsage with InfraRed\n-------------------\n\ntripleo-upgrade comes preinstalled as an InfraRed plugin.\nIn order to install it manually, the following InfraRed command should be used::\n\n infrared plugin add tripleo-upgrade\n # add with a specific revision / branch\n infrared plugin add --revision stable/pike tripleo-upgrade\n\nAfter a successful InfraRed overcloud deployment you need to run the following steps to upgrade the deployment:\n\nSymlink roles path::\n\n ln -s $(pwd)/plugins $(pwd)/plugins/tripleo-upgrade/infrared_plugin/roles\n\nSet up undercloud upgrade repositories::\n\n infrared tripleo-undercloud \\\n --upgrade yes \\\n --mirror ${mirror_location} \\\n --ansible-args=\"tags=upgrade_repos\"\n\nSet up undercloud update repositories::\n\n infrared tripleo-undercloud \\\n --update-undercloud yes \\\n --mirror ${mirror_location} \\\n --build latest \\\n --version 12 \\\n --ansible-args=\"tags=upgrade_repos\"\n\nUpgrade undercloud::\n\n infrared tripleo-upgrade \\\n --undercloud-upgrade yes\n\nUpdate undercloud::\n\n infrared tripleo-upgrade \\\n --undercloud-update yes\n\nSet up overcloud upgrade repositories::\n\n infrared tripleo-overcloud \\\n --deployment-files virt \\\n --upgrade yes \\\n --mirror ${mirror_location} \\\n --ansible-args=\"tags=upgrade_collect_info,upgrade_repos\"\n\nSet up overcloud update repositories/containers::\n\n infrared tripleo-overcloud \\\n --deployment-files virt \\\n --ocupdate True \\\n --build latest \\\n --ansible-args=\"tags=update_collect_info,update_undercloud_validation,update_repos,update_prepare_containers\"\n\nUpgrade overcloud::\n\n infrared tripleo-upgrade \\\n --overcloud-upgrade yes\n\nUpdate overcloud::\n infrared tripleo-upgrade \\\n --overcloud-update yes\n\n\nRunning the role manually from the undercloud\n---------------------------------------------\nThis role can be run manually from the undercloud by doing the following steps:\n\nNote: before starting the upgrade process make sure that both the undercloud\nand overcloud nodes have the repositories with upgraded packages set up\n\nClone this repository\n git clone https://git.openstack.org/openstack/tripleo-upgrade\n\nSet ansible roles path::\n ANSIBLE_ROLES_PATH=$(pwd)\n\nCreate inventory file::\n printf \"[undercloud]\\nlocalhost ansible_connection=local\" > hosts\n\nRun the playbook including this role::\n ansible-playbook -i hosts tripleo-upgrade/tests/test.yml\n\n=======\nLicense\n=======\n\nBSD\n\n==================\nAuthor Information\n==================\n\nAn optional section for the role authors to include contact information, or a website (HTML is not allowed).\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://git.openstack.org/cgit/openstack/tripleo-upgrade", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "tripleo-upgrade", "package_url": "https://pypi.org/project/tripleo-upgrade/", "platform": "", "project_url": "https://pypi.org/project/tripleo-upgrade/", "project_urls": { "Homepage": "https://git.openstack.org/cgit/openstack/tripleo-upgrade" }, "release_url": "https://pypi.org/project/tripleo-upgrade/4.0.0/", "requires_dist": [ "pbr (>=1.6)" ], "requires_python": "", "summary": "tripleo-upgrade - An ansible role for upgrade and update a TripleO deployment", "version": "4.0.0" }, "last_serial": 5309999, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "69de6586fb8b3e5f4d798a1b39999200", "sha256": "f4b3635a93cd98959531e4e442b30ae4c23030be3547a3ec66c917efb1030c75" }, "downloads": -1, "filename": "tripleo_upgrade-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "69de6586fb8b3e5f4d798a1b39999200", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 53520, "upload_time": "2018-01-12T19:29:47", "url": "https://files.pythonhosted.org/packages/32/3a/87d04302b21f194e25725ba414b32cb862ddb1f9fc282253e51d0a0c88d7/tripleo_upgrade-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eefb370b59c9b3162ede0e1b94078e86", "sha256": "4b7037771a37d967e5246dbc256b0475295b4652213540813c2de9e955427845" }, "downloads": -1, "filename": "tripleo-upgrade-1.0.0.tar.gz", "has_sig": false, "md5_digest": "eefb370b59c9b3162ede0e1b94078e86", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36068, "upload_time": "2018-01-12T19:29:51", "url": "https://files.pythonhosted.org/packages/58/18/947b2db6ca9dcd2abf0656244f2de8d61b1d94cc0c7ba711355e3bea40cc/tripleo-upgrade-1.0.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "a488f1fd41652fc6dd51c37160811fea", "sha256": "cabbecf76b2ce9ebda6b17ad7d38b48e02ce806b8592f6fe6df57eb1328b9e23" }, "downloads": -1, "filename": "tripleo_upgrade-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a488f1fd41652fc6dd51c37160811fea", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 67059, "upload_time": "2018-03-09T18:20:01", "url": "https://files.pythonhosted.org/packages/75/aa/fe11abd1a4d9b895aba6e733fe97bac8083d0a67c19c4407053356d0d3ca/tripleo_upgrade-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dc25e8b9b5bfdd36926e132f1c571125", "sha256": "00a44466b6c2795863487b2ed4097cdb02bc38272d291b973e4f52b243db062a" }, "downloads": -1, "filename": "tripleo-upgrade-2.0.0.tar.gz", "has_sig": false, "md5_digest": "dc25e8b9b5bfdd36926e132f1c571125", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43488, "upload_time": "2018-03-09T18:20:04", "url": "https://files.pythonhosted.org/packages/be/7c/3571a884642de128201b0e419a45db1ed6f32b053a22ac5a0d55936d5e12/tripleo-upgrade-2.0.0.tar.gz" } ], "3.0.0": [ { "comment_text": "", "digests": { "md5": "83db8fc78eae28b678b33bd8284c8f29", "sha256": "b6db3b60a8604e823a191940b178e44792a08bc837098f5d0cbe678cf0d61c33" }, "downloads": -1, "filename": "tripleo_upgrade-3.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "83db8fc78eae28b678b33bd8284c8f29", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 91305, "upload_time": "2018-09-10T05:16:43", "url": "https://files.pythonhosted.org/packages/1e/ee/0fdf25a90fe326b8b11eb7507cf7f2cfa57aa5521fd06f9310922d6c529d/tripleo_upgrade-3.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "34d7b1a94e10d9a6fbeaf7f6ba73fb75", "sha256": "1318c468f40676c0b98a233edb89623a33cbd82cdcbc07c891afd6da593b710d" }, "downloads": -1, "filename": "tripleo-upgrade-3.0.0.tar.gz", "has_sig": false, "md5_digest": "34d7b1a94e10d9a6fbeaf7f6ba73fb75", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51138, "upload_time": "2018-09-10T05:16:46", "url": "https://files.pythonhosted.org/packages/ad/cc/6ce88d3ffe50330946198425a5b1e29338f96f4bd90746b35c4f80c5bf36/tripleo-upgrade-3.0.0.tar.gz" } ], "4.0.0": [ { "comment_text": "", "digests": { "md5": "fe93948a6c801ec8d6d551a0d505b478", "sha256": "9400137c0fa5f9e3b474e473f8c8fb915815e70311349d072e3f966bc7f7bfc8" }, "downloads": -1, "filename": "tripleo_upgrade-4.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fe93948a6c801ec8d6d551a0d505b478", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 96727, "upload_time": "2019-05-23T23:56:48", "url": "https://files.pythonhosted.org/packages/ab/c0/e218f2e8f1f3668c84cdf21528c66d4243b6bd8cddbe68c1cb90b6dc3527/tripleo_upgrade-4.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d07781b1aafcae5ab6600de6f5411978", "sha256": "18c258fcd86faaf79ade99a7ad1e65de0689fcc349be02e7cde823b85fd9c8cf" }, "downloads": -1, "filename": "tripleo-upgrade-4.0.0.tar.gz", "has_sig": false, "md5_digest": "d07781b1aafcae5ab6600de6f5411978", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51802, "upload_time": "2019-05-23T23:56:51", "url": "https://files.pythonhosted.org/packages/13/95/8c0221ebca34753e22586a0c528c9a00249d287f500f4997ddc77f5b0d95/tripleo-upgrade-4.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fe93948a6c801ec8d6d551a0d505b478", "sha256": "9400137c0fa5f9e3b474e473f8c8fb915815e70311349d072e3f966bc7f7bfc8" }, "downloads": -1, "filename": "tripleo_upgrade-4.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fe93948a6c801ec8d6d551a0d505b478", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 96727, "upload_time": "2019-05-23T23:56:48", "url": "https://files.pythonhosted.org/packages/ab/c0/e218f2e8f1f3668c84cdf21528c66d4243b6bd8cddbe68c1cb90b6dc3527/tripleo_upgrade-4.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d07781b1aafcae5ab6600de6f5411978", "sha256": "18c258fcd86faaf79ade99a7ad1e65de0689fcc349be02e7cde823b85fd9c8cf" }, "downloads": -1, "filename": "tripleo-upgrade-4.0.0.tar.gz", "has_sig": false, "md5_digest": "d07781b1aafcae5ab6600de6f5411978", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51802, "upload_time": "2019-05-23T23:56:51", "url": "https://files.pythonhosted.org/packages/13/95/8c0221ebca34753e22586a0c528c9a00249d287f500f4997ddc77f5b0d95/tripleo-upgrade-4.0.0.tar.gz" } ] }