Fix branchful jobs for collections

Stable branch jobs were using master for deployment

Story: #2008445
Task: #41412

Story: #2008444
Task: #41411

Mark train non-voting, see https://review.opendev.org/766622
Change-Id: I8132ec7cfe3468daaa363efb76c5d0b81bdeab30
This commit is contained in:
Sagi Shnaidman
2020-12-09 20:15:38 +02:00
parent af27a79312
commit 981d268039
7 changed files with 187 additions and 126 deletions

View File

@@ -73,7 +73,7 @@
vars: vars:
tox_envlist: ansible-pip tox_envlist: ansible-pip
# Stable branches # Stable branches tests
- job: - job:
name: ansible-collections-openstack-functional-devstack-victoria-ansible-2.10 name: ansible-collections-openstack-functional-devstack-victoria-ansible-2.10
parent: ansible-collections-openstack-functional-devstack-ansible-devel parent: ansible-collections-openstack-functional-devstack-ansible-devel
@@ -81,13 +81,12 @@
Run openstack collections functional tests against a victoria devstack Run openstack collections functional tests against a victoria devstack
using victoria brach of openstacksdk and stable 2.10 branch of ansible using victoria brach of openstacksdk and stable 2.10 branch of ansible
voting: true voting: true
override-checkout: stable/victoria
required-projects: required-projects:
- name: github.com/ansible/ansible - name: github.com/ansible/ansible
override-checkout: stable-2.10 override-checkout: stable-2.10
- name: openstack/openstacksdk - name: openstack/openstacksdk
override-branch: victoria override-checkout: stable/victoria
- name: openstack/devstack
override-checkout: victoria
vars: vars:
tox_envlist: ansible tox_envlist: ansible
@@ -99,13 +98,14 @@
Run openstack collections functional tests against a ussuri devstack Run openstack collections functional tests against a ussuri devstack
using ussuri brach of openstacksdk and stable 2.10 branch of ansible using ussuri brach of openstacksdk and stable 2.10 branch of ansible
voting: true voting: true
override-checkout: stable/ussuri
required-projects: required-projects:
- name: github.com/ansible/ansible - name: github.com/ansible/ansible
override-checkout: stable-2.10 override-checkout: stable-2.10
- name: openstack/openstacksdk - name: openstack/openstacksdk
override-branch: ussuri override-checkout: stable/ussuri
- name: openstack/devstack - name: openstack/os-client-config
override-checkout: ussuri override-checkout: stable/ussuri
vars: vars:
tox_envlist: ansible tox_envlist: ansible
@@ -115,14 +115,15 @@
description: | description: |
Run openstack collections functional tests against a train devstack Run openstack collections functional tests against a train devstack
using train brach of openstacksdk and stable 2.10 branch of ansible using train brach of openstacksdk and stable 2.10 branch of ansible
voting: true voting: false
override-checkout: stable/train
required-projects: required-projects:
- name: github.com/ansible/ansible - name: github.com/ansible/ansible
override-checkout: stable-2.10 override-checkout: stable-2.10
- name: openstack/openstacksdk - name: openstack/openstacksdk
override-branch: train override-checkout: stable/train
- name: openstack/devstack - name: openstack/os-client-config
override-checkout: train override-checkout: stable/train
vars: vars:
tox_envlist: ansible tox_envlist: ansible
@@ -133,13 +134,14 @@
Run openstack collections functional tests against a stein devstack Run openstack collections functional tests against a stein devstack
using stein brach of openstacksdk and stable 2.10 branch of ansible using stein brach of openstacksdk and stable 2.10 branch of ansible
voting: true voting: true
override-checkout: stable/stein
required-projects: required-projects:
- name: github.com/ansible/ansible - name: github.com/ansible/ansible
override-checkout: stable-2.10 override-checkout: stable-2.10
- name: openstack/openstacksdk - name: openstack/openstacksdk
override-branch: stein override-checkout: stable/stein
- name: openstack/devstack - name: openstack/os-client-config
override-checkout: stein override-checkout: stable/stein
vars: vars:
tox_envlist: ansible tox_envlist: ansible
@@ -150,13 +152,17 @@
Run openstack collections functional tests against a rocky devstack Run openstack collections functional tests against a rocky devstack
using rocky brach of openstacksdk and stable 2.10 branch of ansible using rocky brach of openstacksdk and stable 2.10 branch of ansible
voting: true voting: true
override-checkout: stable/rocky
required-projects: required-projects:
- name: github.com/ansible/ansible - name: github.com/ansible/ansible
override-checkout: stable-2.10 override-checkout: stable-2.10
- name: openstack/openstacksdk - name: openstack/openstacksdk
override-branch: rocky override-checkout: stable/rocky
- name: openstack/devstack - name: openstack/os-client-config
override-checkout: rocky override-checkout: stable/rocky
- name: openstack/shade
override-checkout: stable/rocky
vars: vars:
tox_envlist: ansible tox_envlist: ansible
@@ -167,13 +173,13 @@
Run openstack collections functional tests against a queens devstack Run openstack collections functional tests against a queens devstack
using master branch of openstacksdk and stable 2.10 branch of ansible using master branch of openstacksdk and stable 2.10 branch of ansible
voting: true voting: true
override-checkout: stable/queens
required-projects: required-projects:
- name: github.com/ansible/ansible - name: github.com/ansible/ansible
override-checkout: stable-2.10 override-checkout: stable-2.10
- name: openstack/openstacksdk - name: openstack/openstacksdk
override-branch: master # Run queens with highest possible py2 version of SDK
- name: openstack/devstack override-checkout: stable/train
override-checkout: queens
vars: vars:
tox_envlist: ansible tox_envlist: ansible
@@ -184,13 +190,13 @@
Run openstack collections functional tests against a queens devstack Run openstack collections functional tests against a queens devstack
using master branch of openstacksdk and devel branch of ansible using master branch of openstacksdk and devel branch of ansible
voting: false voting: false
override-checkout: stable/queens
required-projects: required-projects:
- name: github.com/ansible/ansible - name: github.com/ansible/ansible
override-checkout: devel override-checkout: devel
- name: openstack/openstacksdk - name: openstack/openstacksdk
override-branch: master # Run queens with highest possible py2 version of SDK
- name: openstack/devstack override-checkout: stable/train
override-checkout: queens
vars: vars:
tox_envlist: ansible-2.11 tox_envlist: ansible-2.11
@@ -324,7 +330,7 @@
- ansible-collections-openstack-functional-devstack-ansible-pip - ansible-collections-openstack-functional-devstack-ansible-pip
- ansible-collections-openstack-functional-devstack-victoria-ansible-2.10 - ansible-collections-openstack-functional-devstack-victoria-ansible-2.10
- ansible-collections-openstack-functional-devstack-ussuri-ansible-2.10 - ansible-collections-openstack-functional-devstack-ussuri-ansible-2.10
- ansible-collections-openstack-functional-devstack-train-ansible-2.10 # - ansible-collections-openstack-functional-devstack-train-ansible-2.10
- ansible-collections-openstack-functional-devstack-stein-ansible-2.10 - ansible-collections-openstack-functional-devstack-stein-ansible-2.10
- ansible-collections-openstack-functional-devstack-rocky-ansible-2.10 - ansible-collections-openstack-functional-devstack-rocky-ansible-2.10
- ansible-collections-openstack-functional-devstack-queens-ansible-2.10 - ansible-collections-openstack-functional-devstack-queens-ansible-2.10

View File

@@ -200,7 +200,10 @@
that: that:
- info10.openstack_servers.0.status == 'ACTIVE' - info10.openstack_servers.0.status == 'ACTIVE'
# not in all versions 'locked' is supported # not in all versions 'locked' is supported
- info10.openstack_servers.0.locked in (None, True) - >-
(info10.openstack_server[0]['locked'] is defined and
info10.openstack_server[0]['locked']|bool) or
(info10.openstack_server[0]['locked'] is not defined)
- server is changed - server is changed
- name: Lock server again - name: Lock server again
@@ -222,7 +225,10 @@
that: that:
- info11.openstack_servers.0.status == 'ACTIVE' - info11.openstack_servers.0.status == 'ACTIVE'
# not in all versions 'locked' is supported # not in all versions 'locked' is supported
- info11.openstack_servers.0.locked in (None, True) - >-
(info11.openstack_server[0]['locked'] is defined and
info11.openstack_server[0]['locked']|bool) or
(info11.openstack_server[0]['locked'] is not defined)
- server is changed # no support for lock idempotency - server is changed # no support for lock idempotency
- name: Unock server - name: Unock server
@@ -244,7 +250,10 @@
that: that:
- info12.openstack_servers.0.status == 'ACTIVE' - info12.openstack_servers.0.status == 'ACTIVE'
# not in all versions 'locked' is supported # not in all versions 'locked' is supported
- info12.openstack_servers.0.locked in (None, False) - >-
(info12.openstack_server[0]['locked'] is defined and
not info12.openstack_server[0]['locked']|bool) or
(info12.openstack_server[0]['locked'] is not defined)
- server is changed - server is changed
- name: Unlock server again - name: Unlock server again
@@ -267,7 +276,10 @@
- info13.openstack_servers.0.status == 'ACTIVE' - info13.openstack_servers.0.status == 'ACTIVE'
- server is changed # no support for unlock idempotency - server is changed # no support for unlock idempotency
# not in all versions 'locked' is supported # not in all versions 'locked' is supported
- info13.openstack_servers.0.locked in (None, False) - >-
(info13.openstack_server[0]['locked'] is defined and
not info13.openstack_server[0]['locked']|bool) or
(info13.openstack_server[0]['locked'] is not defined)
- name: Suspend server - name: Suspend server
openstack.cloud.server_action: openstack.cloud.server_action:

View File

@@ -21,6 +21,7 @@
cloud: "{{ cloud }}" cloud: "{{ cloud }}"
name: ansible_volume_snapshot name: ansible_volume_snapshot
register: snap_info register: snap_info
ignore_errors: sdk_version is version(0.49, '<')
- name: Create volume backup - name: Create volume backup
openstack.cloud.volume_backup: openstack.cloud.volume_backup:
@@ -29,12 +30,14 @@
display_name: ansible_volume_backup display_name: ansible_volume_backup
volume: ansible_volume volume: ansible_volume
register: vol_backup register: vol_backup
ignore_errors: sdk_version is version(0.49, '<')
- name: Get backup info - name: Get backup info
openstack.cloud.volume_backup_info: openstack.cloud.volume_backup_info:
cloud: "{{ cloud }}" cloud: "{{ cloud }}"
name: ansible_volume_backup name: ansible_volume_backup
register: backup_info register: backup_info
ignore_errors: sdk_version is version(0.49, '<')
- debug: var=vol - debug: var=vol
@@ -49,6 +52,7 @@
cloud: "{{ cloud }}" cloud: "{{ cloud }}"
display_name: ansible_volume_backup display_name: ansible_volume_backup
state: absent state: absent
ignore_errors: sdk_version is version(0.49, '<')
- name: Delete volume snapshot - name: Delete volume snapshot
openstack.cloud.volume_snapshot: openstack.cloud.volume_snapshot:

View File

@@ -1,3 +1,36 @@
- name: Get info about volumes and all projects for all SDK
openstack.cloud.volume_info:
cloud: "{{ cloud }}"
details: true
all_projects: true
register: all_sdk
ignore_errors: true
- name: Check info for all projects
assert:
that:
# Rocky SDK doesn't have all_projects attribute
- >-
(all_sdk is failed and sdk_version is version(0.19, '<')) or
all_sdk is success
- name: Get info about volumes for all SDK
openstack.cloud.volume_info:
cloud: "{{ cloud }}"
details: true
register: all_sdk1
ignore_errors: true
- name: Check info for all SDK
assert:
that:
- all_sdk1 is success
- all_sdk1.volumes is defined
- name: Run tests for SDK > 0.28 (from train)
when: sdk_version is version(0.28, '>')
block:
- name: Get info about volumes - name: Get info about volumes
openstack.cloud.volume_info: openstack.cloud.volume_info:
cloud: "{{ cloud }}" cloud: "{{ cloud }}"

View File

@@ -98,6 +98,8 @@ from ansible_collections.openstack.cloud.plugins.module_utils.openstack import O
class VolumeBackupModule(OpenStackModule): class VolumeBackupModule(OpenStackModule):
module_min_sdk_version = '0.49.0'
argument_spec = dict( argument_spec = dict(
display_name=dict(required=True, aliases=['name'], type='str'), display_name=dict(required=True, aliases=['name'], type='str'),
display_description=dict(required=False, aliases=['description'], display_description=dict(required=False, aliases=['description'],

View File

@@ -84,6 +84,8 @@ from ansible_collections.openstack.cloud.plugins.module_utils.openstack import O
class VolumeBackupInfoModule(OpenStackModule): class VolumeBackupInfoModule(OpenStackModule):
module_min_sdk_version = '0.49.0'
argument_spec = dict( argument_spec = dict(
name=dict(required=False, type='str'), name=dict(required=False, type='str'),
volume=dict(required=False, type='str') volume=dict(required=False, type='str')

View File

@@ -85,6 +85,8 @@ from ansible_collections.openstack.cloud.plugins.module_utils.openstack import O
class VolumeSnapshotInfoModule(OpenStackModule): class VolumeSnapshotInfoModule(OpenStackModule):
module_min_sdk_version = '0.49.0'
argument_spec = dict( argument_spec = dict(
details=dict(default=True, type='bool'), details=dict(default=True, type='bool'),
name=dict(required=False, type='str'), name=dict(required=False, type='str'),