diff --git a/playbooks/ci/upgrade.yaml b/playbooks/ci/upgrade.yaml new file mode 100644 index 000000000..1f653435e --- /dev/null +++ b/playbooks/ci/upgrade.yaml @@ -0,0 +1,30 @@ +- hosts: all + tasks: + - command: git checkout {{ upgrade_from }} + args: + chdir: "{{ ansible_user_dir }}/{{ item.src_dir }}" + loop: "{{ zuul.projects.values() | list }}" + when: item.name not in skip_upgrade + - command: bash scripts/test-bifrost.sh + args: + chdir: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/bifrost'].src_dir }}" + environment: + ENABLE_KEYSTONE: "{{ enable_keystone | default(false) | bool | lower }}" + LOG_LOCATION: "{{ ansible_user_dir }}/logs" + UPPER_CONSTRAINTS_FILE: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/requirements'].src_dir }}/upper-constraints.txt" + WORKSPACE: "{{ ansible_user_dir }}/src/opendev.org" + ZUUL_BRANCH: "{{ upgrade_from }}" + - command: git checkout - + args: + chdir: "{{ ansible_user_dir }}/{{ item.src_dir }}" + loop: "{{ zuul.projects.values() | list }}" + when: item.name not in skip_upgrade + - command: bash scripts/test-bifrost.sh + args: + chdir: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/bifrost'].src_dir }}" + environment: + ENABLE_KEYSTONE: "{{ enable_keystone | default(false) | bool | lower }}" + LOG_LOCATION: "{{ ansible_user_dir }}/logs" + UPPER_CONSTRAINTS_FILE: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/requirements'].src_dir }}/upper-constraints.txt" + WORKSPACE: "{{ ansible_user_dir }}/src/opendev.org" + ZUUL_BRANCH: "{{ zuul.branch }}" diff --git a/zuul.d/bifrost-jobs.yaml b/zuul.d/bifrost-jobs.yaml index fbf709592..589bee324 100644 --- a/zuul.d/bifrost-jobs.yaml +++ b/zuul.d/bifrost-jobs.yaml @@ -176,3 +176,29 @@ parent: openstack-tox-linters required-projects: - openstack/ansible-collections-openstack + +- job: + name: bifrost-upgrade + parent: bifrost-base + run: playbooks/ci/upgrade.yaml + timeout: 9600 + vars: + upgrade_from: stable/victoria + skip_upgrade: + - openstack/diskimage-builder + - openstack/ironic-python-agent-builder + +- job: + name: bifrost-upgrade-ubuntu-focal + parent: bifrost-upgrade + nodeset: ubuntu-focal + +- job: + name: bifrost-upgrade-keystone-centos8 + parent: bifrost-upgrade + nodeset: centos-8-stream + required-projects: + - openstack/keystone + vars: + enable_keystone: true + noauth_mode: false diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml index d6e6ddc8f..e250161bb 100644 --- a/zuul.d/project.yaml +++ b/zuul.d/project.yaml @@ -13,6 +13,8 @@ - bifrost-integration-tinyipa-keystone-centos-8 - bifrost-integration-redfish-vmedia-uefi-ubuntu-focal - bifrost-integration-redfish-vmedia-uefi-centos-8 + - bifrost-upgrade-ubuntu-focal + - bifrost-upgrade-keystone-centos8 # Non-voting jobs - bifrost-integration-tinyipa-ubuntu-bionic: voting: false @@ -59,3 +61,5 @@ - bifrost-integration-tinyipa-centos-8 - bifrost-integration-tinyipa-keystone-ubuntu-focal - bifrost-integration-tinyipa-keystone-centos-8 + - bifrost-upgrade-ubuntu-focal + - bifrost-upgrade-keystone-centos8