Files
ansible-collections-openstack/ci/roles/project/tasks/main.yml
Rafael Castillo 7ec8e4d087 Update project module to be compatible with new sdk
- Change sdk calls to use proxy objects
- Convert return values to dict before updating
- Adds additional test values

Change-Id: I187a27af4a5b8aa7cd4b60a1a876b5e5e6975144
2022-07-12 13:12:08 +00:00

156 lines
3.5 KiB
YAML

---
- name: Ensure project doesn't exist before tests
openstack.cloud.project:
cloud: "{{ cloud }}"
state: absent
name: ansible_project
- block:
- name: Create project
openstack.cloud.project:
cloud: "{{ cloud }}"
state: present
name: ansible_project
description: dummy description
domain: default
enabled: True
register: project
- name: Assert project changed
assert:
that: project is changed
- name: Assert project fields
assert:
that: item in project['project']
loop: "{{ project_fields }}"
- name: Get project
openstack.cloud.project_info:
cloud: "{{ cloud }}"
name: ansible_project
register: project_info
- name: Assert project
assert:
that:
- project_info.openstack_projects | length == 1
- project_info.openstack_projects[0]['name'] == 'ansible_project'
- project_info.openstack_projects[0]['description'] == 'dummy description'
- block:
- name: Create identical project
openstack.cloud.project:
cloud: "{{ cloud }}"
state: present
name: ansible_project
description: dummy description
domain: default
enabled: True
register: project
- name: Assert project not changed
assert:
that: project is not changed
- name: Assert project fields
assert:
that: item in project['project']
loop: "{{ project_fields }}"
- block:
- name: Update project
openstack.cloud.project:
cloud: "{{ cloud }}"
state: present
name: ansible_project
description: new description
properties:
tags:
- example_tag
register: project
- name: Assert project changed
assert:
that: project is changed
- name: Assert project fields
assert:
that: item in project['project']
loop: "{{ project_fields }}"
- name: Get project
openstack.cloud.project_info:
cloud: "{{ cloud }}"
name: ansible_project
register: project_info
- name: Assert project
assert:
that:
- project_info.openstack_projects | length == 1
- project_info.openstack_projects[0]['description'] == 'new description'
- block:
- name: Delete project
openstack.cloud.project:
cloud: "{{ cloud }}"
state: absent
name: ansible_project
register: project
- name: Assert project changed
assert:
that: project is changed
- name: Get project
openstack.cloud.project_info:
cloud: "{{ cloud }}"
name: ansible_project
register: project_info
- name: Assert project deleted
assert:
that:
- project_info.openstack_projects | length == 0
- block:
- name: Delete non existant project
openstack.cloud.project:
cloud: "{{ cloud }}"
state: absent
name: ansible_project
register: project
- name: Assert project not changed
assert:
that: project is not changed
- block:
- name: Create project with properties
openstack.cloud.project:
cloud: "{{ cloud }}"
state: present
name: ansible_project
description: dummy description
domain: default
enabled: True
properties:
dummy_key: dummy_value
register: project
- block:
- name: Update project with properties
openstack.cloud.project:
cloud: "{{ cloud }}"
state: present
name: ansible_project
description: dummy description
domain: default
enabled: True
properties:
dummy_key: other_dummy_value
register: project