mirror of
https://github.com/openshift/community.okd.git
synced 2026-03-26 19:03:14 +00:00
* Upgrade Ansible and OKD versions for CI * Use ubi9 and fix sanity * Use correct pip install * Try using quotes * Ensure python3.9 * Upgrade ansible and molecule versions * Remove DeploymentConfig DeploymentConfigs are deprecated and seem to now be causing idempotence problems. Replacing them with Deployments fixes it. * Attempt to fix ldap integration tests Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Move sanity and unit tests to GH actions Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Firt round of sanity fixes Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Add kubernetes.core collection as sanity requirement Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Add ignore-2.16.txt Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Attempt to fix units Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Add ignore-2.17 Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Attempt to fix unit tests Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Add pytest-ansible to test-requirements.txt Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Add changelog fragment Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Add workflow for ansible-lint Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Apply black Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Fix linters Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Add # fmt: skip Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Yet another round of linting Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Yet another round of linting Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Remove setup.cfg Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Revert #fmt Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Use ansible-core 2.14 Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Cleanup ansible-lint ignores Signed-off-by: Alina Buzachis <abuzachis@redhat.com> * Try using service instead of pod IP * Fix typo * Actually use the correct port * See if NetworkPolicy is preventing connection * using Pod internal IP * fix adm prune auth roles syntax * adding some retry steps * fix: openshift_builds target * add flag --force-with-deps when building downstream collection * Remove yamllint from tox linters, bump minimum python supported version to 3.9, Remove support for ansible-core < 2.14 --------- Signed-off-by: Alina Buzachis <abuzachis@redhat.com> Co-authored-by: Mike Graves <mgraves@redhat.com> Co-authored-by: Alina Buzachis <abuzachis@redhat.com>
181 lines
5.2 KiB
YAML
181 lines
5.2 KiB
YAML
---
|
|
- name: Openshift import image testing
|
|
block:
|
|
|
|
- set_fact:
|
|
test_ns: "import-images"
|
|
|
|
- name: Ensure namespace
|
|
community.okd.k8s:
|
|
kind: Namespace
|
|
name: '{{ test_ns }}'
|
|
|
|
- name: Import image using tag (should import latest tag only)
|
|
community.okd.openshift_import_image:
|
|
namespace: "{{ test_ns }}"
|
|
name: "ansible/awx"
|
|
check_mode: yes
|
|
register: import_tag
|
|
|
|
- name: Assert only latest was imported
|
|
assert:
|
|
that:
|
|
- import_tag is changed
|
|
- import_tag.result | length == 1
|
|
- import_tag.result.0.spec.import
|
|
- import_tag.result.0.spec.images.0.from.kind == "DockerImage"
|
|
- import_tag.result.0.spec.images.0.from.name == "ansible/awx"
|
|
|
|
- name: check image stream
|
|
kubernetes.core.k8s_info:
|
|
kind: ImageStream
|
|
namespace: "{{ test_ns }}"
|
|
name: awx
|
|
register: resource
|
|
|
|
- name: assert that image stream is not created when using check_mode=yes
|
|
assert:
|
|
that:
|
|
- resource.resources == []
|
|
|
|
- name: Import image using tag (should import latest tag only)
|
|
community.okd.openshift_import_image:
|
|
namespace: "{{ test_ns }}"
|
|
name: "ansible/awx"
|
|
register: import_tag
|
|
|
|
- name: Assert only latest was imported
|
|
assert:
|
|
that:
|
|
- import_tag is changed
|
|
|
|
- name: check image stream
|
|
kubernetes.core.k8s_info:
|
|
kind: ImageStream
|
|
namespace: "{{ test_ns }}"
|
|
name: awx
|
|
register: resource
|
|
|
|
- name: assert that image stream contains only tag latest
|
|
assert:
|
|
that:
|
|
- resource.resources | length == 1
|
|
- resource.resources.0.status.tags.0.tag == 'latest'
|
|
|
|
- name: Import once again the latest tag
|
|
community.okd.openshift_import_image:
|
|
namespace: "{{ test_ns }}"
|
|
name: "ansible/awx"
|
|
register: import_tag
|
|
|
|
- name: assert change was performed
|
|
assert:
|
|
that:
|
|
- import_tag is changed
|
|
|
|
- name: check image stream
|
|
kubernetes.core.k8s_info:
|
|
kind: ImageStream
|
|
version: image.openshift.io/v1
|
|
namespace: "{{ test_ns }}"
|
|
name: awx
|
|
register: resource
|
|
|
|
- name: assert that image stream still contains unique tag
|
|
assert:
|
|
that:
|
|
- resource.resources | length == 1
|
|
- resource.resources.0.status.tags.0.tag == 'latest'
|
|
|
|
- name: Import another tags
|
|
community.okd.openshift_import_image:
|
|
namespace: "{{ test_ns }}"
|
|
name: "ansible/awx:17.1.0"
|
|
register: import_another_tag
|
|
ignore_errors: yes
|
|
|
|
- name: assert that another tag was imported
|
|
assert:
|
|
that:
|
|
- import_another_tag is failed
|
|
- '"the tag 17.1.0 does not exist on the image stream" in import_another_tag.msg'
|
|
|
|
- name: Create simple ImageStream (without docker external container)
|
|
community.okd.k8s:
|
|
namespace: "{{ test_ns }}"
|
|
name: "local-is"
|
|
definition:
|
|
apiVersion: image.openshift.io/v1
|
|
kind: ImageStream
|
|
spec:
|
|
lookupPolicy:
|
|
local: false
|
|
tags: []
|
|
|
|
- name: Import all tag for image stream not pointing on external container image should failed
|
|
community.okd.openshift_import_image:
|
|
namespace: "{{ test_ns }}"
|
|
name: "local-is"
|
|
all: true
|
|
register: error_tag
|
|
ignore_errors: true
|
|
check_mode: yes
|
|
|
|
- name: Assert module cannot import from non-existing tag from ImageStream
|
|
assert:
|
|
that:
|
|
- error_tag is failed
|
|
- 'error_tag.msg == "image stream {{ test_ns }}/local-is does not have tags pointing to external container images"'
|
|
|
|
- name: import all tags for container image ibmcom/pause and specific tag for redhat/ubi8-micro
|
|
community.okd.openshift_import_image:
|
|
namespace: "{{ test_ns }}"
|
|
name:
|
|
- "ibmcom/pause"
|
|
- "redhat/ubi8-micro:8.5-437"
|
|
all: true
|
|
register: multiple_import
|
|
|
|
- name: Assert that import succeed
|
|
assert:
|
|
that:
|
|
- multiple_import is changed
|
|
- multiple_import.result | length == 2
|
|
|
|
- name: Read ibmcom/pause ImageStream
|
|
kubernetes.core.k8s_info:
|
|
version: image.openshift.io/v1
|
|
kind: ImageStream
|
|
namespace: "{{ test_ns }}"
|
|
name: pause
|
|
register: pause
|
|
|
|
- name: assert that ibmcom/pause has multiple tags
|
|
assert:
|
|
that:
|
|
- pause.resources | length == 1
|
|
- pause.resources.0.status.tags | length > 1
|
|
|
|
- name: Read redhat/ubi8-micro ImageStream
|
|
kubernetes.core.k8s_info:
|
|
version: image.openshift.io/v1
|
|
kind: ImageStream
|
|
namespace: "{{ test_ns }}"
|
|
name: ubi8-micro
|
|
register: resource
|
|
|
|
- name: assert that redhat/ubi8-micro has only one tag
|
|
assert:
|
|
that:
|
|
- resource.resources | length == 1
|
|
- resource.resources.0.status.tags | length == 1
|
|
- 'resource.resources.0.status.tags.0.tag == "8.5-437"'
|
|
|
|
always:
|
|
- name: Delete testing namespace
|
|
community.okd.k8s:
|
|
state: absent
|
|
kind: Namespace
|
|
name: "{{ test_ns }}"
|
|
ignore_errors: yes
|