Remove Helm 2 support and add tests for helm_cli_info

This commit is contained in:
LucasBoisserie
2020-04-21 11:00:56 +02:00
parent 2e1b0f6817
commit 438a30bd8e
7 changed files with 112 additions and 328 deletions

View File

@@ -4,5 +4,4 @@
loop_control:
loop_var: helm_version
with_items:
- "v2.16.0"
- "v3.1.2"

View File

@@ -12,14 +12,6 @@
- name: "Install {{ helm_version }}"
include_tasks: install.yml
- name: Check if failed when tiller is not installed
include_tasks: test_missing_tiller.yml
when: "helm_version.startswith('v2')"
- name: Install tiller
include_tasks: tiller.yml
when: "helm_version.startswith('v2')"
- name: Deploy charts
include_tasks: "tests_chart/{{ test_chart_type }}.yml"
loop_control:
@@ -29,12 +21,6 @@
- from_repository
- from_url
- name: Clean tiller
include_tasks: tiller.yml
vars:
status: absent
when: "helm_version.startswith('v2')"
- name: Clean helm install
file:
path: "{{ item }}"

View File

@@ -1,16 +0,0 @@
---
- name: Failed test when tiller is missing
helm_cli:
binary_path: "{{ helm_binary}}"
name: test
chart_ref: "{{ chart_test }}"
namespace: "{{ helm_namespace }}"
tiller_namespace: helm
ignore_errors: yes
register: missing_tiller
- name: Assert that tiller is missing
assert:
that:
- missing_tiller is failed
- "'could not find tiller' in missing_tiller.msg"

View File

@@ -6,6 +6,18 @@
name: "{{ helm_namespace }}"
wait: true
- name: Check helm_cli_info empty
helm_cli_info:
binary_path: "{{ helm_binary}}"
name: test
namespace: "{{ helm_namespace }}"
register: empty_info
- name: "Assert that no chart are installed with helm_cli_info"
assert:
that:
- empty_info.status is undefined
- name: "Install {{ chart_test }} from {{ source }}"
helm_cli:
binary_path: "{{ helm_binary}}"
@@ -13,7 +25,6 @@
chart_ref: "{{ chart_source }}"
chart_version: "{{ chart_source_version | default(omit)}}"
namespace: "{{ helm_namespace }}"
tiller_namespace: "{{ tiller_namespace }}"
register: install
- name: "Assert that {{ chart_test }} chart is installed from {{ source }}"
@@ -23,6 +34,19 @@
- install.status.chart == "{{ chart_test }}-{{ chart_test_version }}"
- install.status.status | lower == 'deployed'
- name: Check helm_cli_info content
helm_cli_info:
binary_path: "{{ helm_binary}}"
name: test
namespace: "{{ helm_namespace }}"
register: content_info
- name: "Assert that {{ chart_test }} is installed from {{ source }} with helm_cli_info"
assert:
that:
- content_info.status.chart == "{{ chart_test }}-{{ chart_test_version }}"
- content_info.status.status | lower == 'deployed'
- name: Check idempotency
helm_cli:
binary_path: "{{ helm_binary}}"
@@ -30,7 +54,6 @@
chart_ref: "{{ chart_source }}"
chart_version: "{{ chart_source_version | default(omit)}}"
namespace: "{{ helm_namespace }}"
tiller_namespace: "{{ tiller_namespace }}"
register: install
- name: Assert idempotency
@@ -47,7 +70,6 @@
chart_ref: "{{ chart_source }}"
chart_version: "{{ chart_source_version | default(omit)}}"
namespace: "{{ helm_namespace }}"
tiller_namespace: "{{ tiller_namespace }}"
values: "{{ chart_test_values }}"
register: install
@@ -66,7 +88,6 @@
chart_ref: "{{ chart_source }}"
chart_version: "{{ chart_source_version | default(omit)}}"
namespace: "{{ helm_namespace }}"
tiller_namespace: "{{ tiller_namespace }}"
values: "{{ chart_test_values }}"
register: install
@@ -85,7 +106,6 @@
chart_ref: "{{ chart_source }}"
chart_version: "{{ chart_source_version | default(omit)}}"
namespace: "{{ helm_namespace }}"
tiller_namespace: "{{ tiller_namespace }}"
register: install
- name: "Assert that {{ chart_test }} chart is upgraded with new var from {{ source }}"
@@ -103,7 +123,6 @@
chart_ref: "{{ chart_source }}"
chart_version: "{{ chart_source_version | default(omit)}}"
namespace: "{{ helm_namespace }}"
tiller_namespace: "{{ tiller_namespace }}"
register: install
- name: Assert idempotency after remove vars
@@ -121,7 +140,6 @@
chart_ref: "{{ chart_source_upgrade | default(chart_source) }}"
chart_version: "{{ chart_source_version_upgrade | default(omit)}}"
namespace: "{{ helm_namespace }}"
tiller_namespace: "{{ tiller_namespace }}"
register: install
- name: "Assert that {{ chart_test }} chart is upgraded with new version from {{ source }}"
@@ -138,7 +156,6 @@
chart_ref: "{{ chart_source_upgrade | default(chart_source) }}"
chart_version: "{{ chart_source_version_upgrade | default(omit)}}"
namespace: "{{ helm_namespace }}"
tiller_namespace: "{{ tiller_namespace }}"
register: install
- name: Assert idempotency after upgrade
@@ -154,7 +171,6 @@
state: absent
name: test
namespace: "{{ helm_namespace }}"
tiller_namespace: "{{ tiller_namespace }}"
register: install
- name: "Assert that {{ chart_test }} chart is remove from {{ source }}"
@@ -168,7 +184,6 @@
state: absent
name: test
namespace: "{{ helm_namespace }}"
tiller_namespace: "{{ tiller_namespace }}"
register: install
- name: Assert idempotency

View File

@@ -1,22 +0,0 @@
---
- name: Tiller namespace
k8s:
api_version: v1
kind: Namespace
name: "{{ tiller_namespace }}"
state: "{{ status | default('present') }}"
wait: true
- name: Tiller requirements
k8s:
state: "{{ status | default('present') }}"
resource_definition: "{{ lookup('template', item) | from_yaml }}"
wait: true
with_fileglob:
- ../templates/*.yml
- name: deploy tiller
shell: "{{ helm_binary }} init --wait --service-account tiller --tiller-namespace {{ tiller_namespace }}"
environment:
ignore_errors: yes
when: "status | default('present') == 'present'"