From 935d3cef6a896dac102331cce88e0599309f190d Mon Sep 17 00:00:00 2001 From: Mark Goddard Date: Wed, 18 Apr 2018 19:05:08 +0100 Subject: [PATCH] Update dependencies to Rocky Use stable/rocky branch of: * Kolla * Kolla ansible * Bifrost * IPA * OpenStack services * Requirements Also updates Kolla Ansible inventory template. The seed deploy job has been made non-voting and non-gating, because we are waiting for bifrost change https://review.openstack.org/#/c/618740 to merge, be released, and for the kolla bifrost image to use the new package. Change-Id: Id5e7fdbd196f96e1e75ffc68bc93aab18fa38aa7 Story: 2001864 Task: 27798 Depends-On: I58e4f951d4a3dd89e0784fd82d8a62dbba374f79 --- ansible/group_vars/all/bifrost | 2 +- ansible/group_vars/all/ipa | 6 +-- ansible/group_vars/all/kolla | 8 +-- .../library/os_ironic_inspector_rule.py | 5 +- .../templates/overcloud-components.j2 | 50 +++++------------ .../templates/overcloud-services.j2 | 54 +++++++++++++++---- dev/functions | 6 +++ .../globals.yml.j2 | 10 ---- .../kayobe-overcloud-upgrade-base/pre.yml | 5 -- .../kayobe-overcloud-upgrade-base/run.yml | 4 +- .../notes/rocky-355875d3f38b0d02.yaml | 4 ++ tox.ini | 8 +-- zuul.d/jobs.yaml | 22 ++++---- zuul.d/project.yaml | 11 +++- 14 files changed, 102 insertions(+), 93 deletions(-) delete mode 100644 playbooks/kayobe-overcloud-upgrade-base/globals.yml.j2 create mode 100644 releasenotes/notes/rocky-355875d3f38b0d02.yaml diff --git a/ansible/group_vars/all/bifrost b/ansible/group_vars/all/bifrost index cb7e1d855..5447b8193 100644 --- a/ansible/group_vars/all/bifrost +++ b/ansible/group_vars/all/bifrost @@ -8,7 +8,7 @@ kolla_bifrost_source_url: "https://git.openstack.org/openstack/bifrost" # Version (branch, tag, etc.) of Bifrost source code repository. -kolla_bifrost_source_version: "stable/queens" +kolla_bifrost_source_version: "stable/rocky" ############################################################################### # Diskimage-builder configuration. diff --git a/ansible/group_vars/all/ipa b/ansible/group_vars/all/ipa index 350d2a6ee..e03b0b47b 100644 --- a/ansible/group_vars/all/ipa +++ b/ansible/group_vars/all/ipa @@ -11,7 +11,7 @@ ipa_build_images: False ipa_build_source_url: "https://git.openstack.org/openstack/ironic-python-agent" # Version of IPA source repository. -ipa_build_source_version: "stable/queens" +ipa_build_source_version: "stable/rocky" # URL of IPA upper constraints file. ipa_build_upper_constraints_file_url: @@ -63,7 +63,7 @@ ipa_build_dib_git_elements: [] ipa_images_kernel_name: "ipa.vmlinuz" # URL of Ironic deployment kernel image to download. -ipa_kernel_upstream_url: "https://tarballs.openstack.org/ironic-python-agent/coreos/files/coreos_production_pxe-stable-queens.vmlinuz" +ipa_kernel_upstream_url: "https://tarballs.openstack.org/ironic-python-agent/coreos/files/coreos_production_pxe-stable-rocky.vmlinuz" # URL of checksum of Ironic deployment kernel image. ipa_kernel_checksum_url: "{{ ipa_kernel_upstream_url }}.{{ ipa_kernel_checksum_algorithm }}" @@ -75,7 +75,7 @@ ipa_kernel_checksum_algorithm: "sha256" ipa_images_ramdisk_name: "ipa.initramfs" # URL of Ironic deployment ramdisk image to download. -ipa_ramdisk_upstream_url: "https://tarballs.openstack.org/ironic-python-agent/coreos/files/coreos_production_pxe_image-oem-stable-queens.cpio.gz" +ipa_ramdisk_upstream_url: "https://tarballs.openstack.org/ironic-python-agent/coreos/files/coreos_production_pxe_image-oem-stable-rocky.cpio.gz" # URL of checksum of Ironic deployment ramdisk image. ipa_ramdisk_checksum_url: "{{ ipa_ramdisk_upstream_url }}.{{ ipa_ramdisk_checksum_algorithm }}" diff --git a/ansible/group_vars/all/kolla b/ansible/group_vars/all/kolla index ca6e198a2..ae336a80f 100644 --- a/ansible/group_vars/all/kolla +++ b/ansible/group_vars/all/kolla @@ -13,7 +13,7 @@ kolla_source_url: "https://git.openstack.org/openstack/kolla" # Version (branch, tag, etc.) of Kolla source code repository if type is # 'source'. -kolla_source_version: "stable/queens" +kolla_source_version: "stable/rocky" # Path to virtualenv in which to install kolla. kolla_venv: "{{ virtualenv_path ~ '/kolla' }}" @@ -35,7 +35,7 @@ kolla_ansible_source_url: "https://git.openstack.org/openstack/kolla-ansible" # Version (branch, tag, etc.) of Kolla Ansible source code repository if type # is 'source'. -kolla_ansible_source_version: "stable/queens" +kolla_ansible_source_version: "stable/rocky" # Path to virtualenv in which to install kolla-ansible. kolla_ansible_venv: "{{ lookup('env', 'KOLLA_VENV_PATH') | default(lookup('env', 'PWD') ~ '/venvs/kolla-ansible', true) }}" @@ -71,7 +71,7 @@ kolla_docker_registry_username: kolla_docker_registry_password: # Kolla OpenStack release version. This should be a Docker image tag. -kolla_openstack_release: "queens" +kolla_openstack_release: "rocky" # Dict mapping names of sources to their definitions for # kolla_install_type=source. See kolla.common.config for details. @@ -315,7 +315,7 @@ kolla_enable_tls_external: "no" kolla_openstack_logging_debug: "False" # Upper constraints file for installation of Kolla. -kolla_upper_constraints_file: "https://raw.githubusercontent.com/openstack/requirements/stable/queens/upper-constraints.txt" +kolla_upper_constraints_file: "https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky" # User account to use for Kolla SSH access. kolla_ansible_user: kolla diff --git a/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py b/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py index 5bcae4c03..717148032 100644 --- a/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py +++ b/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py @@ -80,8 +80,9 @@ def _build_client(module): """Create and return an Ironic inspector client.""" cloud = shade.operator_cloud(**module.params) session = cloud.cloud_config.get_session() - # API 1.12 is the latest API version available in Queens. - api_version = (1, 12) + # Ensure the requested API version is supported. + # API 1.14 is the latest API version available in Rocky. + api_version = (1, 14) client = ironic_inspector_client.v1.ClientV1( inspector_url=module.params['inspector_url'], session=session, region_name=module.params['region_name'], diff --git a/ansible/roles/kolla-ansible/templates/overcloud-components.j2 b/ansible/roles/kolla-ansible/templates/overcloud-components.j2 index 55d313b0d..3ea5275df 100644 --- a/ansible/roles/kolla-ansible/templates/overcloud-components.j2 +++ b/ansible/roles/kolla-ansible/templates/overcloud-components.j2 @@ -37,6 +37,9 @@ compute [influxdb:children] monitoring +[prometheus:children] +monitoring + [kafka:children] control @@ -81,6 +84,12 @@ control [qdrouterd:children] control +[monasca:children] +monitoring + +[storm:children] +monitoring + [mongodb:children] control @@ -128,12 +137,6 @@ control [heat:children] control -[monasca:children] -monitoring - -[storm:children] -monitoring - [murano:children] control @@ -170,35 +173,6 @@ control [panko:children] control -[prometheus:children] -monitoring - -[prometheus-alertmanager:children] -monitoring - -[prometheus-node-exporter:children] -monitoring -control -compute -network -storage - -[prometheus-mysqld-exporter:children] -mariadb - -[prometheus-haproxy-exporter:children] -haproxy - -[prometheus-memcached-exporter:children] -memcached - -[prometheus-cadvisor:children] -monitoring -control -compute -network -storage - [gnocchi:children] control @@ -242,6 +216,9 @@ control [bifrost:children] deployment +[zookeeper:children] +control + [zun:children] control @@ -253,6 +230,3 @@ control [blazar:children] control - -[zookeeper:children] -control diff --git a/ansible/roles/kolla-ansible/templates/overcloud-services.j2 b/ansible/roles/kolla-ansible/templates/overcloud-services.j2 index 6ac4eae4b..c21ee7893 100644 --- a/ansible/roles/kolla-ansible/templates/overcloud-services.j2 +++ b/ansible/roles/kolla-ansible/templates/overcloud-services.j2 @@ -67,10 +67,10 @@ neutron [neutron-metadata-agent:children] neutron -[neutron-vpnaas-agent:children] +[neutron-bgp-dragent:children] neutron -[neutron-bgp-dragent:children] +[neutron-infoblox-ipam-agent:children] neutron [ironic-neutron-agent:children] @@ -119,11 +119,14 @@ cloudkitty [freezer-api:children] freezer +[freezer-scheduler:children] +freezer + # iSCSI [iscsid:children] compute storage -ironic-conductor +ironic [tgtd:children] storage @@ -184,6 +187,13 @@ heat [heat-engine:children] heat +# Murano +[murano-api:children] +murano + +[murano-engine:children] +murano + # Monasca [monasca-api:children] monasca @@ -216,13 +226,6 @@ storm [storm-nimbus:children] storm -# Murano -[murano-api:children] -murano - -[murano-engine:children] -murano - # Ironic [ironic-api:children] ironic @@ -344,6 +347,7 @@ trove # Multipathd [multipathd:children] compute +storage # Watcher [watcher-api:children] @@ -412,6 +416,9 @@ placement [zun-api:children] zun +[zun-wsproxy:children] +zun + [zun-compute:children] compute @@ -452,3 +459,30 @@ blazar [blazar-manager:children] blazar + +# Prometheus +[prometheus-node-exporter:children] +monitoring +control +compute +network +storage + +[prometheus-mysqld-exporter:children] +mariadb + +[prometheus-haproxy-exporter:children] +haproxy + +[prometheus-memcached-exporter:children] +memcached + +[prometheus-cadvisor:children] +monitoring +control +compute +network +storage + +[prometheus-alertmanager:children] +monitoring diff --git a/dev/functions b/dev/functions index dee3a375a..39e0415c2 100644 --- a/dev/functions +++ b/dev/functions @@ -212,6 +212,12 @@ function overcloud_deploy { echo "Configuring the controller host" run_kayobe overcloud host configure + # FIXME(mgoddard): Perform host upgrade workarounds to ensure hostname + # resolves to IP address of API interface for RabbitMQ. This seems to be + # required since https://review.openstack.org/#/c/584427 was merged. + echo "Workaround: upgrading the controller host" + run_kayobe overcloud host upgrade + # Note: This must currently be before host configure, because host # configure runs kolla-ansible.yml, which validates the presence of the # built deploy images. diff --git a/playbooks/kayobe-overcloud-upgrade-base/globals.yml.j2 b/playbooks/kayobe-overcloud-upgrade-base/globals.yml.j2 deleted file mode 100644 index f7201a37a..000000000 --- a/playbooks/kayobe-overcloud-upgrade-base/globals.yml.j2 +++ /dev/null @@ -1,10 +0,0 @@ ---- -# The Queens kayobe configuration uses the fernet token provider. To avoid -# issues during upgrade, set the provider to fernet in the Pike deployment -# also. -keystone_token_provider: 'fernet' - -# Most development environments will use nested virtualisation, and we can't -# guarantee that nested KVM support is available. Use QEMU as a lowest common -# denominator. -nova_compute_virt_type: qemu \ No newline at end of file diff --git a/playbooks/kayobe-overcloud-upgrade-base/pre.yml b/playbooks/kayobe-overcloud-upgrade-base/pre.yml index 7e78ea0f7..ca86117f9 100644 --- a/playbooks/kayobe-overcloud-upgrade-base/pre.yml +++ b/playbooks/kayobe-overcloud-upgrade-base/pre.yml @@ -53,11 +53,6 @@ vars: previous_release: true - - name: Ensure kayobe-config globals.yml config file exists - template: - src: globals.yml.j2 - dest: "{{ previous_kayobe_config_src_dir }}/etc/kayobe/kolla/globals.yml" - # NOTE(mgoddard): The kayobe dev config by default expects a bridge - # breth1 - to exist with an IP address of 192.168.33.3. - name: Ensure all-in-one network bridge interface exists diff --git a/playbooks/kayobe-overcloud-upgrade-base/run.yml b/playbooks/kayobe-overcloud-upgrade-base/run.yml index 8a3413f55..60011eb8b 100644 --- a/playbooks/kayobe-overcloud-upgrade-base/run.yml +++ b/playbooks/kayobe-overcloud-upgrade-base/run.yml @@ -54,9 +54,7 @@ - name: Perform testing of the overcloud prior to upgrade shell: cmd: dev/overcloud-test.sh > {{ logs_dir }}/ansible/overcloud-test-pre-upgrade - # NOTE(mgoddard): Currently need to use the new kayobe repo for - # testing, since the overcloud-test.sh script is not available in Pike. - chdir: "{{ kayobe_src_dir }}" + chdir: "{{ previous_kayobe_src_dir }}" # Upgrade Kayobe, and use it to perform an upgrade of the control plane. diff --git a/releasenotes/notes/rocky-355875d3f38b0d02.yaml b/releasenotes/notes/rocky-355875d3f38b0d02.yaml new file mode 100644 index 000000000..004d6952f --- /dev/null +++ b/releasenotes/notes/rocky-355875d3f38b0d02.yaml @@ -0,0 +1,4 @@ +--- +features: + - | + Updates dependencies to use the OpenStack Rocky release. diff --git a/tox.ini b/tox.ini index d0cef9876..27d8d86ed 100644 --- a/tox.ini +++ b/tox.ini @@ -18,7 +18,7 @@ setenv = OS_STDERR_CAPTURE=1 OS_TEST_TIMEOUT=60 deps = - -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/queens} + -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky} -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt commands = stestr run {posargs} @@ -36,7 +36,7 @@ commands = [testenv:venv] basepython = python3 deps = - -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/queens} + -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky} -r{toxinidir}/test-requirements.txt -r{toxinidir}/doc/requirements.txt commands = {posargs} @@ -108,7 +108,7 @@ commands = [testenv:docs] basepython = python3 deps = - -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/queens} + -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky} -r{toxinidir}/requirements.txt -r{toxinidir}/doc/requirements.txt commands = sphinx-build -W -b html doc/source doc/build/html @@ -120,7 +120,7 @@ commands = oslo_debug_helper {posargs} [testenv:releasenotes] basepython = python3 deps = - -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/queens} + -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky} -r{toxinidir}/requirements.txt -r{toxinidir}/doc/requirements.txt commands = diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml index 30670518c..1a4d694f9 100644 --- a/zuul.d/jobs.yaml +++ b/zuul.d/jobs.yaml @@ -34,7 +34,7 @@ timeout: 3600 required-projects: - name: openstack/requirements - override-checkout: stable/queens + override-checkout: stable/rocky vars: tox_envlist: molecule irrelevant-files: @@ -59,11 +59,11 @@ - name: openstack/kayobe - name: openstack/kayobe-config-dev - name: openstack/kolla - override-checkout: stable/queens + override-checkout: stable/rocky - name: openstack/kolla-ansible - override-checkout: stable/queens + override-checkout: stable/rocky - name: openstack/requirements - override-checkout: stable/queens + override-checkout: stable/rocky irrelevant-files: - ^.*\.rst$ - ^doc/.* @@ -94,14 +94,14 @@ - name: openstack/kayobe - name: openstack/kayobe-config-dev - name: openstack/kolla - override-checkout: stable/queens + override-checkout: stable/rocky - name: openstack/kolla-ansible - override-checkout: stable/queens + override-checkout: stable/rocky - name: openstack/requirements - override-checkout: stable/queens + override-checkout: stable/rocky vars: # Name of the release to upgrade from. - previous_release: pike + previous_release: queens irrelevant-files: - ^.*\.rst$ - ^doc/.* @@ -131,11 +131,11 @@ - name: openstack/kayobe - name: openstack/kayobe-config-dev - name: openstack/kolla - override-checkout: stable/queens + override-checkout: stable/rocky - name: openstack/kolla-ansible - override-checkout: stable/queens + override-checkout: stable/rocky - name: openstack/requirements - override-checkout: stable/queens + override-checkout: stable/rocky irrelevant-files: - ^.*\.rst$ - ^doc/.* diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml index b9a69e8cd..a634ae597 100644 --- a/zuul.d/project.yaml +++ b/zuul.d/project.yaml @@ -16,7 +16,11 @@ - kayobe-tox-molecule - kayobe-overcloud-centos - kayobe-overcloud-upgrade-centos - - kayobe-seed-centos + # TODO(mgoddard): make this voting again when + # https://review.openstack.org/#/c/618740 has merged, been released, + # and the kolla bifrost image uses the new package. + - kayobe-seed-centos: + voting: false gate: queue: kayobe @@ -27,4 +31,7 @@ - kayobe-tox-molecule - kayobe-overcloud-centos - kayobe-overcloud-upgrade-centos - - kayobe-seed-centos + # TODO(mgoddard): make this gating again when + # https://review.openstack.org/#/c/618740 has merged, been released, + # and the kolla bifrost image uses the new package. + # - kayobe-seed-centos