From d182c96c2eeecf9b2acd22f37005ee6d834311d1 Mon Sep 17 00:00:00 2001 From: Bryan Hundven Date: Mon, 27 Jan 2020 10:18:44 -0800 Subject: [PATCH 1/7] Make AWX compatible with Helm 3.x In issue #5371, AWX has issues with using Helm 3.x. This commit removes the usage tiller. Signed-off-by: Bryan Hundven --- installer/roles/kubernetes/tasks/main.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/installer/roles/kubernetes/tasks/main.yml b/installer/roles/kubernetes/tasks/main.yml index b0b9e18123..689873bea2 100644 --- a/installer/roles/kubernetes/tasks/main.yml +++ b/installer/roles/kubernetes/tasks/main.yml @@ -86,11 +86,11 @@ - name: Deploy and Activate Postgres (Kubernetes) shell: | - helm repo update --tiller-namespace={{ tiller_namespace | default('kube-system') }} - echo {{ pg_values | quote }} | helm upgrade {{ postgresql_service_name }} --install \ + helm repo update + echo {{ pg_values | quote }} | helm upgrade {{ postgresql_service_name }} \ + --install \ --namespace {{ kubernetes_namespace }} \ --version="6.2.1" \ - --tiller-namespace={{ tiller_namespace | default('kube-system') }} \ --values - \ stable/postgresql register: kubernetes_pg_activate From 34d01f02cc21a968d37ba2cf525b3a5e58ec42bf Mon Sep 17 00:00:00 2001 From: Bryan Hundven Date: Mon, 27 Jan 2020 15:08:56 -0800 Subject: [PATCH 2/7] Upgrade stable/postgresql to helm chart to 8.1.5 This updated chart supports Helm 3.x Signed-off-by: Bryan Hundven --- installer/roles/kubernetes/tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/installer/roles/kubernetes/tasks/main.yml b/installer/roles/kubernetes/tasks/main.yml index 689873bea2..f3b02d1be0 100644 --- a/installer/roles/kubernetes/tasks/main.yml +++ b/installer/roles/kubernetes/tasks/main.yml @@ -90,7 +90,7 @@ echo {{ pg_values | quote }} | helm upgrade {{ postgresql_service_name }} \ --install \ --namespace {{ kubernetes_namespace }} \ - --version="6.2.1" \ + --version="8.1.5" \ --values - \ stable/postgresql register: kubernetes_pg_activate From 1c50b8427a3441d41409eeb0ad852d2fa8cbdf25 Mon Sep 17 00:00:00 2001 From: Bryan Hundven Date: Mon, 27 Jan 2020 16:04:13 -0800 Subject: [PATCH 3/7] Put postgresql values in a tempfile, to be loaded by helm cli Helm 3.x does not support passing values via stdin: https://github.com/helm/helm/issues/7002 So setup a tempfile and write the template to the tempfile to be loaded by helm ... --values Signed-off-by: Bryan Hundven --- installer/roles/kubernetes/tasks/main.yml | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/installer/roles/kubernetes/tasks/main.yml b/installer/roles/kubernetes/tasks/main.yml index f3b02d1be0..9ee463defb 100644 --- a/installer/roles/kubernetes/tasks/main.yml +++ b/installer/roles/kubernetes/tasks/main.yml @@ -79,19 +79,26 @@ - name: Deploy PostgreSQL (Kubernetes) block: - - name: Template PostgreSQL Deployment (Kubernetes) - set_fact: - pg_values: "{{ lookup('template', 'postgresql-values.yml.j2') }}" + - name: Create Temporary Values File (Kubernetes) + tempfile: + state: file + suffix: .yml + register: values_file + + - name: Populate Temporary Values File (Kubernetes) + template: + src: postgresql-values.yml.j2 + dest: "{{ values_file.path }}" no_log: true - name: Deploy and Activate Postgres (Kubernetes) shell: | helm repo update - echo {{ pg_values | quote }} | helm upgrade {{ postgresql_service_name }} \ + helm upgrade {{ postgresql_service_name }} \ --install \ --namespace {{ kubernetes_namespace }} \ --version="8.1.5" \ - --values - \ + --values {{ values_file.path }} \ stable/postgresql register: kubernetes_pg_activate no_log: true From 282d705c4337008203a5bef24f56c16bb71f2c89 Mon Sep 17 00:00:00 2001 From: Bryan Hundven Date: Fri, 7 Feb 2020 11:57:34 -0800 Subject: [PATCH 4/7] Remove tiller_namespace from default inventory Signed-off-by: Bryan Hundven --- installer/inventory | 1 - 1 file changed, 1 deletion(-) diff --git a/installer/inventory b/installer/inventory index a07b740e59..81a382053c 100644 --- a/installer/inventory +++ b/installer/inventory @@ -20,7 +20,6 @@ dockerhub_base=ansible # Kubernetes Install # kubernetes_context=test-cluster # kubernetes_namespace=awx -# tiller_namespace=kube-system # Optional Kubernetes Variables # pg_image_registry=docker.io # pg_serviceaccount=awx From a984e5df7a3dd43c0e3c4e617871ef2c83174382 Mon Sep 17 00:00:00 2001 From: Bryan Hundven Date: Fri, 7 Feb 2020 11:58:18 -0800 Subject: [PATCH 5/7] Have helm stable repo before running help repo update It would be nice if the `helm` ansible module allowed you to just manage helm repos, or maybe a `helm_repo` module... but shell with it ;) Signed-off-by: Bryan Hundven --- installer/roles/kubernetes/tasks/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/installer/roles/kubernetes/tasks/main.yml b/installer/roles/kubernetes/tasks/main.yml index 9ee463defb..0ddf229f11 100644 --- a/installer/roles/kubernetes/tasks/main.yml +++ b/installer/roles/kubernetes/tasks/main.yml @@ -93,6 +93,7 @@ - name: Deploy and Activate Postgres (Kubernetes) shell: | + helm repo add stable https://kubernetes-charts.storage.googleapis.com helm repo update helm upgrade {{ postgresql_service_name }} \ --install \ From 76a6f84c700ff476b8e2afba7493d3a285c6bac0 Mon Sep 17 00:00:00 2001 From: Bryan Hundven Date: Fri, 7 Feb 2020 12:04:11 -0800 Subject: [PATCH 6/7] Remove tempfile after running helm Signed-off-by: Bryan Hundven --- installer/roles/kubernetes/tasks/main.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/installer/roles/kubernetes/tasks/main.yml b/installer/roles/kubernetes/tasks/main.yml index 0ddf229f11..7b50c63474 100644 --- a/installer/roles/kubernetes/tasks/main.yml +++ b/installer/roles/kubernetes/tasks/main.yml @@ -103,6 +103,11 @@ stable/postgresql register: kubernetes_pg_activate no_log: true + + - name: Remove tempfile + file: + path: "{{ values_file.path }}" + state: absent when: - pg_hostname is not defined or pg_hostname == '' - postgres_svc_details is defined and postgres_svc_details.rc != 0 From 7d2ed7b76338be48169aefb4f22f064b31125235 Mon Sep 17 00:00:00 2001 From: Bryan Hundven Date: Fri, 7 Feb 2020 15:07:44 -0800 Subject: [PATCH 7/7] Bump stable/postgresql to 8.3.0 https://hub.helm.sh/charts/stable/postgresql/8.3.0 Signed-off-by: Bryan Hundven --- installer/roles/kubernetes/tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/installer/roles/kubernetes/tasks/main.yml b/installer/roles/kubernetes/tasks/main.yml index 7b50c63474..19af5def98 100644 --- a/installer/roles/kubernetes/tasks/main.yml +++ b/installer/roles/kubernetes/tasks/main.yml @@ -98,7 +98,7 @@ helm upgrade {{ postgresql_service_name }} \ --install \ --namespace {{ kubernetes_namespace }} \ - --version="8.1.5" \ + --version="8.3.0" \ --values {{ values_file.path }} \ stable/postgresql register: kubernetes_pg_activate