From eda8246b7ba0512774f8988b7dc96fb5a5c3578b Mon Sep 17 00:00:00 2001 From: Mark Goddard Date: Wed, 18 Apr 2018 19:05:08 +0100 Subject: [PATCH] Use master version of dependencies Use master branch of: * Kolla * Kolla ansible * Bifrost * IPA * OpenStack services * Requirements Also, use the infra docker registry mirror at port 8082 which does not have any path component in its URL, and so works with Docker CE. Depends-On: https://review.openstack.org/#/c/651254/ Change-Id: Icdb62aa0083d9272a08421138719cf5f6b52ec5a Story: 2001864 Task: 14316 --- ansible/group_vars/all/bifrost | 2 +- ansible/group_vars/all/ipa | 6 +-- ansible/group_vars/all/kolla | 10 ++-- .../templates/overcloud-components.j2 | 12 ++++- .../templates/overcloud-services.j2 | 46 ++++++++++++++++--- .../templates/overcloud-top-level.j2 | 4 -- .../kayobe-overcloud-base/overrides.yml.j2 | 2 +- .../overrides.yml.j2 | 2 +- .../kayobe-overcloud-upgrade-base/run.yml | 12 +---- playbooks/kayobe-seed-base/overrides.yml.j2 | 2 +- .../kayobe-seed-upgrade-base/overrides.yml.j2 | 17 ++----- playbooks/kayobe-seed-upgrade-base/pre.yml | 13 ------ tox.ini | 15 ++++-- zuul.d/jobs.yaml | 19 ++------ 14 files changed, 84 insertions(+), 78 deletions(-) diff --git a/ansible/group_vars/all/bifrost b/ansible/group_vars/all/bifrost index 5447b8193..fe95cc225 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/rocky" +kolla_bifrost_source_version: "master" ############################################################################### # Diskimage-builder configuration. diff --git a/ansible/group_vars/all/ipa b/ansible/group_vars/all/ipa index e03b0b47b..7a473e39c 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/rocky" +ipa_build_source_version: "master" # 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-rocky.vmlinuz" +ipa_kernel_upstream_url: "https://tarballs.openstack.org/ironic-python-agent/coreos/files/coreos_production_pxe.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-rocky.cpio.gz" +ipa_ramdisk_upstream_url: "https://tarballs.openstack.org/ironic-python-agent/coreos/files/coreos_production_pxe_image-oem.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 126a8a63b..0604593c8 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/rocky" +kolla_source_version: "master" # 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/rocky" +kolla_ansible_source_version: "master" # 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: "rocky" +kolla_openstack_release: "master" # Dict mapping names of sources to their definitions for # kolla_install_type=source. See kolla.common.config for details. @@ -291,8 +291,6 @@ kolla_overcloud_inventory_top_level_group_map: kolla_overcloud_inventory_kolla_top_level_groups: - "control" - "network" - - "inner-compute" - - "external-compute" - "compute" - "monitoring" - "storage" @@ -315,7 +313,7 @@ kolla_enable_tls_external: "no" kolla_openstack_logging_debug: "False" # Upper constraints file for installation of Kolla. -kolla_upper_constraints_file: "https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky" +kolla_upper_constraints_file: "https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt" # User account to use for Kolla SSH access. kolla_ansible_user: kolla diff --git a/ansible/roles/kolla-ansible/templates/overcloud-components.j2 b/ansible/roles/kolla-ansible/templates/overcloud-components.j2 index 3ea5275df..a3434f329 100644 --- a/ansible/roles/kolla-ansible/templates/overcloud-components.j2 +++ b/ansible/roles/kolla-ansible/templates/overcloud-components.j2 @@ -32,7 +32,6 @@ monitoring [etcd:children] control -compute [influxdb:children] monitoring @@ -84,6 +83,13 @@ control [qdrouterd:children] control +[monasca-agent:children] +compute +control +monitoring +network +storage + [monasca:children] monitoring @@ -167,6 +173,10 @@ control [aodh:children] control +[cyborg:children] +control +compute + [congress:children] control diff --git a/ansible/roles/kolla-ansible/templates/overcloud-services.j2 b/ansible/roles/kolla-ansible/templates/overcloud-services.j2 index 1e1562286..c03e30266 100644 --- a/ansible/roles/kolla-ansible/templates/overcloud-services.j2 +++ b/ansible/roles/kolla-ansible/templates/overcloud-services.j2 @@ -15,9 +15,6 @@ [glance-api:children] glance -[glance-registry:children] -glance - # Nova [nova-api:children] nova @@ -73,6 +70,9 @@ neutron [neutron-infoblox-ipam-agent:children] neutron +[neutron-metering-agent:children] +neutron + [ironic-neutron-agent:children] neutron @@ -195,9 +195,21 @@ murano murano # Monasca +[monasca-agent-collector:children] +monasca-agent + +[monasca-agent-forwarder:children] +monasca-agent + +[monasca-agent-statsd:children] +monasca-agent + [monasca-api:children] monasca +[monasca-grafana:children] +monasca + [monasca-log-api:children] monasca @@ -277,6 +289,12 @@ solum [solum-conductor:children] solum +[solum-application-deployment:children] +solum + +[solum-image-builder:children] +solum + # Mistral [mistral-api:children] mistral @@ -287,6 +305,9 @@ mistral [mistral-engine:children] mistral +[mistral-event-engine:children] +mistral + # Ceilometer [ceilometer-central:children] ceilometer @@ -297,6 +318,9 @@ ceilometer [ceilometer-compute:children] compute +[ceilometer-ipmi:children] +compute + # Aodh [aodh-api:children] aodh @@ -310,6 +334,16 @@ aodh [aodh-notifier:children] aodh +# Cyborg +[cyborg-api:children] +cyborg + +[cyborg-agent:children] +compute + +[cyborg-conductor:children] +cyborg + # Congress [congress-api:children] congress @@ -447,9 +481,6 @@ vitrage [vitrage-graph:children] vitrage -[vitrage-collector:children] -vitrage - [vitrage-ml:children] vitrage @@ -489,3 +520,6 @@ monitoring [prometheus-openstack-exporter:children] monitoring + +[prometheus-elasticsearch-exporter:children] +elasticsearch diff --git a/ansible/roles/kolla-ansible/templates/overcloud-top-level.j2 b/ansible/roles/kolla-ansible/templates/overcloud-top-level.j2 index ab736c1b8..da8fcd668 100644 --- a/ansible/roles/kolla-ansible/templates/overcloud-top-level.j2 +++ b/ansible/roles/kolla-ansible/templates/overcloud-top-level.j2 @@ -59,7 +59,3 @@ ansible_python_interpreter={{ kolla_ansible_target_venv }}/bin/python {% endif %} {% endfor %} - -[compute:children] -inner-compute -external-compute diff --git a/playbooks/kayobe-overcloud-base/overrides.yml.j2 b/playbooks/kayobe-overcloud-base/overrides.yml.j2 index 2d5755227..80b90c8b6 100644 --- a/playbooks/kayobe-overcloud-base/overrides.yml.j2 +++ b/playbooks/kayobe-overcloud-base/overrides.yml.j2 @@ -5,7 +5,7 @@ disable_selinux_do_reboot: false # Use the OpenStack infra's Dockerhub mirror. docker_registry_mirrors: - - "http://{{ zuul_site_mirror_fqdn }}:8081/registry-1.docker/" + - "http://{{ zuul_site_mirror_fqdn }}:8082/" kolla_source_url: "{{ ansible_env.PWD ~ '/' ~ zuul.projects['git.openstack.org/openstack/kolla'].src_dir }}" kolla_source_version: "{{ zuul.projects['git.openstack.org/openstack/kolla'].checkout }}" diff --git a/playbooks/kayobe-overcloud-upgrade-base/overrides.yml.j2 b/playbooks/kayobe-overcloud-upgrade-base/overrides.yml.j2 index bbc149bab..70c9ed73e 100644 --- a/playbooks/kayobe-overcloud-upgrade-base/overrides.yml.j2 +++ b/playbooks/kayobe-overcloud-upgrade-base/overrides.yml.j2 @@ -5,7 +5,7 @@ disable_selinux_do_reboot: false # Use the OpenStack infra's Dockerhub mirror. docker_registry_mirrors: - - "http://{{ zuul_site_mirror_fqdn }}:8081/registry-1.docker/" + - "http://{{ zuul_site_mirror_fqdn }}:8082/" {% if not is_previous_release | default(false) %} kolla_source_url: "{{ ansible_env.PWD ~ '/' ~ zuul.projects['git.openstack.org/openstack/kolla'].src_dir }}" diff --git a/playbooks/kayobe-overcloud-upgrade-base/run.yml b/playbooks/kayobe-overcloud-upgrade-base/run.yml index 111f563e5..b2cc7755d 100644 --- a/playbooks/kayobe-overcloud-upgrade-base/run.yml +++ b/playbooks/kayobe-overcloud-upgrade-base/run.yml @@ -71,13 +71,13 @@ - block: - name: Perform testing of the VMs in the overcloud prior to upgrade shell: - cmd: dev/overcloud-test.sh > {{ logs_dir }}/ansible/overcloud-test-vm-pre-upgrade + cmd: dev/overcloud-test-vm.sh > {{ logs_dir }}/ansible/overcloud-test-vm-pre-upgrade chdir: "{{ previous_kayobe_src_dir }}" - name: Perform testing of the baremetal machines in the overcloud prior to upgrade shell: cmd: dev/overcloud-test-baremetal.sh > {{ logs_dir }}/ansible/overcloud-test-bm-pre-upgrade - chdir: "{{ kayobe_src_dir }}" + chdir: "{{ previous_kayobe_src_dir }}" # Upgrade Kayobe, and use it to perform an upgrade of the control plane. @@ -85,14 +85,6 @@ shell: cmd: "{{ kayobe_src_dir }}/dev/overcloud-upgrade.sh > {{ logs_dir }}/ansible/overcloud-upgrade" - # FIXME(mgoddard): The nova-compute service does not seem to be correctly - # handling the SIGHUP after being upgraded, leading to "In shutdown, no new - # events can be scheduled" errors when booting an instance. - - name: Workaround for SIGHUP issue - restart nova-compute service - shell: - cmd: docker restart nova_compute - become: true - # Perform a smoke test against the upgraded current release. - name: Perform testing of VMs in the upgraded overcloud diff --git a/playbooks/kayobe-seed-base/overrides.yml.j2 b/playbooks/kayobe-seed-base/overrides.yml.j2 index 4212a73fc..2aca231e1 100644 --- a/playbooks/kayobe-seed-base/overrides.yml.j2 +++ b/playbooks/kayobe-seed-base/overrides.yml.j2 @@ -5,7 +5,7 @@ disable_selinux_do_reboot: false # Use the OpenStack infra's Dockerhub mirror. docker_registry_mirrors: - - "http://{{ zuul_site_mirror_fqdn }}:8081/registry-1.docker/" + - "http://{{ zuul_site_mirror_fqdn }}:8082/" kolla_source_url: "{{ ansible_env.PWD ~ '/' ~ zuul.projects['git.openstack.org/openstack/kolla'].src_dir }}" kolla_source_version: "{{ zuul.projects['git.openstack.org/openstack/kolla'].checkout }}" diff --git a/playbooks/kayobe-seed-upgrade-base/overrides.yml.j2 b/playbooks/kayobe-seed-upgrade-base/overrides.yml.j2 index a9dd6ea76..41e6128f8 100644 --- a/playbooks/kayobe-seed-upgrade-base/overrides.yml.j2 +++ b/playbooks/kayobe-seed-upgrade-base/overrides.yml.j2 @@ -3,6 +3,10 @@ # Ansible is run directly on the controller. disable_selinux_do_reboot: false +# Use the OpenStack infra's Dockerhub mirror. +docker_registry_mirrors: + - "http://{{ zuul_site_mirror_fqdn }}:8082/" + {% if not is_previous_release | default(false) %} kolla_source_url: "{{ ansible_env.PWD ~ '/' ~ zuul.projects['git.openstack.org/openstack/kolla'].src_dir }}" kolla_source_version: "{{ zuul.projects['git.openstack.org/openstack/kolla'].checkout }}" @@ -18,16 +22,3 @@ overcloud_host_image_workaround_resolv_enabled: false # Use the CI infra's PyPI mirror. pip_local_mirror: true pip_index_url: "http://{{ zuul_site_mirror_fqdn }}/pypi/simple" - -{% if previous_release == "pike" %} -# kayobe-config-dev in queens changed to use overlay by default. Specify -# devicemapper explicitly to avoid changing. -docker_storage_driver: devicemapper -docker_storage_volume_thinpool_size: 45%VG - -# NOTE(mgoddard): Use a loopback-mounted LVM volume for docker storage since -# the overlay driver doesn't work with the ansible template module until -# ansible 2.4.0, and this is required by bifrost. -seed_lvm_group_data_disks: - - /dev/loop0 -{% endif %} diff --git a/playbooks/kayobe-seed-upgrade-base/pre.yml b/playbooks/kayobe-seed-upgrade-base/pre.yml index dc472ab4b..9d225444f 100644 --- a/playbooks/kayobe-seed-upgrade-base/pre.yml +++ b/playbooks/kayobe-seed-upgrade-base/pre.yml @@ -61,19 +61,6 @@ src: bifrost-overrides.yml.j2 dest: "{{ previous_kayobe_config_src_dir }}/etc/kayobe/kolla/config/bifrost/bifrost.yml" - - block: - # NOTE(mgoddard): Create a loopback device backed by a file for docker - # storage. We do this since the overlay driver doesn't work with the - # ansible template module until ansible 2.4.0, and this is required by - # bifrost. - - name: Ensure a docker storage backing file exists - command: truncate -s 20G /tmp/docker-storage - - - name: Ensure the docker storage loopback device is created - command: losetup /dev/loop0 /tmp/docker-storage - become: true - when: previous_release == "pike" - # NOTE(mgoddard): The kayobe dev config by default expects a bridge - # breth1 - to exist on the seed with an IP address of 192.168.33.5. - name: Ensure all-in-one network bridge interface exists diff --git a/tox.ini b/tox.ini index 450fac121..043d2533f 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/rocky} + -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt commands = stestr run {posargs} @@ -37,7 +37,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/rocky} + -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} -r{toxinidir}/test-requirements.txt -r{toxinidir}/doc/requirements.txt commands = {posargs} @@ -59,6 +59,13 @@ commands = [testenv:molecule] # Molecule only supports python 2.7 and 3.6. basepython = python2 +# Use stable/rocky upper-constraints for molecule since pytest 3.10 fails with +# the following error: +# AttributeError: 'Config' object has no attribute 'cache' +deps = + -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 whitelist_externals = bash commands = @@ -109,7 +116,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/rocky} + -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} -r{toxinidir}/requirements.txt -r{toxinidir}/doc/requirements.txt commands = sphinx-build -W -b html doc/source doc/build/html @@ -121,7 +128,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/rocky} + -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} -r{toxinidir}/requirements.txt -r{toxinidir}/doc/requirements.txt commands = diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml index 23fb52e11..68a48af7e 100644 --- a/zuul.d/jobs.yaml +++ b/zuul.d/jobs.yaml @@ -33,6 +33,9 @@ pre-run: playbooks/kayobe-tox-molecule/pre.yml timeout: 3600 required-projects: + # Use stable/rocky upper-constraints for molecule since pytest 3.10 fails + # with the following error: + # AttributeError: 'Config' object has no attribute 'cache' - name: openstack/requirements override-checkout: stable/rocky vars: @@ -59,11 +62,8 @@ - name: openstack/kayobe - name: openstack/kayobe-config-dev - name: openstack/kolla - override-checkout: stable/rocky - name: openstack/kolla-ansible - override-checkout: stable/rocky - name: openstack/requirements - override-checkout: stable/rocky - name: openstack/tenks irrelevant-files: - ^.*\.rst$ @@ -95,15 +95,12 @@ - name: openstack/kayobe - name: openstack/kayobe-config-dev - name: openstack/kolla - override-checkout: stable/rocky - name: openstack/kolla-ansible - override-checkout: stable/rocky - name: openstack/requirements - override-checkout: stable/rocky - name: openstack/tenks vars: # Name of the release to upgrade from. - previous_release: queens + previous_release: rocky irrelevant-files: - ^.*\.rst$ - ^doc/.* @@ -133,11 +130,8 @@ - name: openstack/kayobe - name: openstack/kayobe-config-dev - name: openstack/kolla - override-checkout: stable/rocky - name: openstack/kolla-ansible - override-checkout: stable/rocky - name: openstack/requirements - override-checkout: stable/rocky irrelevant-files: - ^.*\.rst$ - ^doc/.* @@ -168,14 +162,11 @@ - name: openstack/kayobe - name: openstack/kayobe-config-dev - name: openstack/kolla - override-checkout: stable/queens - name: openstack/kolla-ansible - override-checkout: stable/queens - name: openstack/requirements - override-checkout: stable/queens vars: # Name of the release to upgrade from. - previous_release: pike + previous_release: rocky irrelevant-files: - ^.*\.rst$ - ^doc/.*