From a6d248627dfbc11ed1dca17831830a632fe23d1d Mon Sep 17 00:00:00 2001 From: Jeff Geerling Date: Fri, 15 Nov 2019 11:48:38 -0600 Subject: [PATCH 1/3] Use k8s_info module instead of deprecated k8s_facts in molecule scaffold (#2168) --- CHANGELOG.md | 1 + doc/ansible/dev/retroactively-owned-resources.md | 2 +- internal/scaffold/ansible/molecule_default_asserts.go | 2 +- internal/scaffold/ansible/molecule_test_cluster_playbook.go | 2 +- internal/scaffold/ansible/molecule_test_local_playbook.go | 4 ++-- test/ansible-inventory/molecule/test-local/playbook.yml | 4 ++-- test/ansible-memcached/asserts.yml | 2 +- 7 files changed, 9 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0e98432995..ac40cd7cd5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ - Upgrade Helm version from `v2.15.0` to `v2.16.1`. ([#2145](https://github.com/operator-framework/operator-sdk/pull/2145)) - Upgrade [`controller-runtime`](https://github.com/kubernetes-sigs/controller-runtime) version from `v0.3.0` to [`v0.4.0`](https://github.com/kubernetes-sigs/controller-runtime/releases/tag/v0.4.0). ([#2145](https://github.com/operator-framework/operator-sdk/pull/2145)) - Updated `pkg/test/e2eutil.WaitForDeployment()` and `pkg/test/e2eutil.WaitForOperatorDeployment()` to successfully complete waiting when the available replica count is _at least_ (rather than exactly) the minimum replica count required. ([#2248](https://github.com/operator-framework/operator-sdk/pull/2248)) +- Use `k8s_info` module instead of deprecated `k8s_facts` module in molecule test scaffold. ([#2168](https://github.com/operator-framework/operator-sdk/issues/2168)) ### Deprecated diff --git a/doc/ansible/dev/retroactively-owned-resources.md b/doc/ansible/dev/retroactively-owned-resources.md index 25c03ab154..5160c90f3c 100644 --- a/doc/ansible/dev/retroactively-owned-resources.md +++ b/doc/ansible/dev/retroactively-owned-resources.md @@ -133,7 +133,7 @@ This file can be used as-is without user adjustments. - name: Import user variables include_vars: vars.yml - name: Retrieve owning resource - k8s_facts: + k8s_info: api_version: "{{ owning_resource.apiVersion }}" kind: "{{ owning_resource.kind }}" name: "{{ owning_resource.name }}" diff --git a/internal/scaffold/ansible/molecule_default_asserts.go b/internal/scaffold/ansible/molecule_default_asserts.go index 793ff7cb60..facb42edf6 100644 --- a/internal/scaffold/ansible/molecule_default_asserts.go +++ b/internal/scaffold/ansible/molecule_default_asserts.go @@ -46,7 +46,7 @@ const moleculeDefaultAssertsAnsibleTmpl = `--- ansible_python_interpreter: '{{ ansible_playbook_python }}' tasks: - name: Get all pods in {{ namespace }} - k8s_facts: + k8s_info: api_version: v1 kind: Pod namespace: '{{ namespace }}' diff --git a/internal/scaffold/ansible/molecule_test_cluster_playbook.go b/internal/scaffold/ansible/molecule_test_cluster_playbook.go index e777c7460e..d030b45f2a 100644 --- a/internal/scaffold/ansible/molecule_test_cluster_playbook.go +++ b/internal/scaffold/ansible/molecule_test_cluster_playbook.go @@ -60,7 +60,7 @@ const moleculeTestClusterPlaybookAnsibleTmpl = `--- msg: "{{ lookup('k8s', group='[[.Resource.FullGroup]]', api_version='[[.Resource.Version]]', kind='[[.Resource.Kind]]', namespace=namespace, resource_name=custom_resource.metadata.name) }}" - name: Wait 2m for reconciliation to run - k8s_facts: + k8s_info: api_version: '[[.Resource.Version]]' kind: '[[.Resource.Kind]]' namespace: '{{ namespace }}' diff --git a/internal/scaffold/ansible/molecule_test_local_playbook.go b/internal/scaffold/ansible/molecule_test_local_playbook.go index e3200dfe4c..78a9366f79 100644 --- a/internal/scaffold/ansible/molecule_test_local_playbook.go +++ b/internal/scaffold/ansible/molecule_test_local_playbook.go @@ -77,7 +77,7 @@ const moleculeTestLocalPlaybookAnsibleTmpl = `--- when: hostvars[groups.k8s.0].build_cmd.changed - name: Wait 30s for Operator Deployment to terminate - k8s_facts: + k8s_info: api_version: '{{ definition.apiVersion }}' kind: '{{ definition.kind }}' namespace: '{{ namespace }}' @@ -102,7 +102,7 @@ const moleculeTestLocalPlaybookAnsibleTmpl = `--- definition: '{{ custom_resource }}' - name: Wait 2m for reconciliation to run - k8s_facts: + k8s_info: api_version: '{{ custom_resource.apiVersion }}' kind: '{{ custom_resource.kind }}' namespace: '{{ namespace }}' diff --git a/test/ansible-inventory/molecule/test-local/playbook.yml b/test/ansible-inventory/molecule/test-local/playbook.yml index d4fea3aad8..8aeaa267ec 100644 --- a/test/ansible-inventory/molecule/test-local/playbook.yml +++ b/test/ansible-inventory/molecule/test-local/playbook.yml @@ -35,7 +35,7 @@ when: hostvars[groups.k8s.0].build_cmd.changed - name: Wait 30s for Operator Deployment to terminate - k8s_facts: + k8s_info: api_version: '{{ definition.apiVersion }}' kind: '{{ definition.kind }}' namespace: '{{ namespace }}' @@ -60,7 +60,7 @@ definition: "{{ custom_resource }}" - name: Wait 2m for reconciliation to run - k8s_facts: + k8s_info: api_version: '{{ custom_resource.apiVersion }}' kind: '{{ custom_resource.kind }}' namespace: '{{ namespace }}' diff --git a/test/ansible-memcached/asserts.yml b/test/ansible-memcached/asserts.yml index 6e197b0a5c..d635f83db1 100644 --- a/test/ansible-memcached/asserts.yml +++ b/test/ansible-memcached/asserts.yml @@ -135,7 +135,7 @@ definition: '{{ custom_resource }}' - name: Wait for the custom resource to be deleted - k8s_facts: + k8s_info: api_version: '{{ custom_resource.apiVersion }}' kind: '{{ custom_resource.kind }}' namespace: '{{ namespace }}' From 62a1e1156812a8dec78c5da1712e07270d25ee30 Mon Sep 17 00:00:00 2001 From: Jeff Geerling Date: Fri, 15 Nov 2019 12:39:44 -0600 Subject: [PATCH 2/3] Update Ansible minimum version to 2.9 in various Dockerfiles (#2203) --- ci/dockerfiles/ansible-e2e-hybrid.Dockerfile | 2 +- ci/dockerfiles/ansible.Dockerfile | 2 +- internal/scaffold/ansible/dockerfilehybrid.go | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/ci/dockerfiles/ansible-e2e-hybrid.Dockerfile b/ci/dockerfiles/ansible-e2e-hybrid.Dockerfile index 572d849c93..52cbcb4728 100644 --- a/ci/dockerfiles/ansible-e2e-hybrid.Dockerfile +++ b/ci/dockerfiles/ansible-e2e-hybrid.Dockerfile @@ -31,7 +31,7 @@ RUN yum clean all && rm -rf /var/cache/yum/* \ ansible-runner==1.3.4 \ ansible-runner-http==1.0.0 \ openshift==0.8.9 \ - ansible~=2.8 \ + ansible~=2.9 \ jmespath \ && yum remove -y gcc python36-devel \ && yum clean all \ diff --git a/ci/dockerfiles/ansible.Dockerfile b/ci/dockerfiles/ansible.Dockerfile index 8c8f6eda61..f072556be3 100644 --- a/ci/dockerfiles/ansible.Dockerfile +++ b/ci/dockerfiles/ansible.Dockerfile @@ -30,7 +30,7 @@ RUN yum clean all && rm -rf /var/cache/yum/* \ ansible-runner==1.3.4 \ ansible-runner-http==1.0.0 \ openshift==0.8.9 \ - ansible~=2.8 \ + ansible~=2.9 \ jmespath \ && yum remove -y gcc python36-devel \ && yum clean all \ diff --git a/internal/scaffold/ansible/dockerfilehybrid.go b/internal/scaffold/ansible/dockerfilehybrid.go index f5cce6e616..b8f8e71f38 100644 --- a/internal/scaffold/ansible/dockerfilehybrid.go +++ b/internal/scaffold/ansible/dockerfilehybrid.go @@ -70,8 +70,9 @@ RUN yum clean all && rm -rf /var/cache/yum/* \ ansible-runner==1.3.4 \ ansible-runner-http==1.0.0 \ openshift==0.8.9 \ - ansible~=2.8 \ + ansible~=2.9 \ jmespath \ +>>>>>>> Update Ansible minimum version to 2.9 in various Dockerfiles (#2203) && yum remove -y gcc python36-devel \ && yum clean all \ && rm -rf /var/cache/yum From cbc0fe5813c290f3ab2c35ca4a97f8af62cb15e9 Mon Sep 17 00:00:00 2001 From: Jeff Geerling Date: Thu, 21 Nov 2019 09:07:48 -0600 Subject: [PATCH 3/3] CHANGELOG updates for Ansible test scaffold changes (#2203) --- CHANGELOG.md | 3 ++- internal/scaffold/ansible/dockerfilehybrid.go | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ac40cd7cd5..31afde56d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,8 @@ - Upgrade Helm version from `v2.15.0` to `v2.16.1`. ([#2145](https://github.com/operator-framework/operator-sdk/pull/2145)) - Upgrade [`controller-runtime`](https://github.com/kubernetes-sigs/controller-runtime) version from `v0.3.0` to [`v0.4.0`](https://github.com/kubernetes-sigs/controller-runtime/releases/tag/v0.4.0). ([#2145](https://github.com/operator-framework/operator-sdk/pull/2145)) - Updated `pkg/test/e2eutil.WaitForDeployment()` and `pkg/test/e2eutil.WaitForOperatorDeployment()` to successfully complete waiting when the available replica count is _at least_ (rather than exactly) the minimum replica count required. ([#2248](https://github.com/operator-framework/operator-sdk/pull/2248)) -- Use `k8s_info` module instead of deprecated `k8s_facts` module in molecule test scaffold. ([#2168](https://github.com/operator-framework/operator-sdk/issues/2168)) +- Replace in the Ansible based operators module tests `k8s_info` for `k8s_facts` which is deprecated. ([#2168](https://github.com/operator-framework/operator-sdk/issues/2168)) +- Upgrade the Ansible version from `2.8` to `2.9` on the Ansible based operators image. ([#2168](https://github.com/operator-framework/operator-sdk/issues/2168)) ### Deprecated diff --git a/internal/scaffold/ansible/dockerfilehybrid.go b/internal/scaffold/ansible/dockerfilehybrid.go index b8f8e71f38..b26f018556 100644 --- a/internal/scaffold/ansible/dockerfilehybrid.go +++ b/internal/scaffold/ansible/dockerfilehybrid.go @@ -72,7 +72,6 @@ RUN yum clean all && rm -rf /var/cache/yum/* \ openshift==0.8.9 \ ansible~=2.9 \ jmespath \ ->>>>>>> Update Ansible minimum version to 2.9 in various Dockerfiles (#2203) && yum remove -y gcc python36-devel \ && yum clean all \ && rm -rf /var/cache/yum