177 lines
5.4 KiB
YAML
177 lines
5.4 KiB
YAML
|
# GCP Healthcheck Integration Tests.
|
||
|
######
|
||
|
# ============================================================
|
||
|
- name: param check
|
||
|
# ============================================================
|
||
|
gcp_healthcheck:
|
||
|
service_account_email: "{{ service_account_email }}"
|
||
|
credentials_file: "{{ credentials_file }}"
|
||
|
project_id: "{{ project_id }}"
|
||
|
healthcheck_name: "{{ http_healthcheck }}"
|
||
|
healthcheck_type: HTTP
|
||
|
host_header: my-host
|
||
|
request_path: /hc
|
||
|
check_interval: 10
|
||
|
timeout: 30
|
||
|
unhealthy_threshold: 2
|
||
|
healthy_threshold: 1
|
||
|
state: present
|
||
|
ignore_errors: True
|
||
|
register: result
|
||
|
- name: check interval
|
||
|
assert:
|
||
|
that:
|
||
|
'result.msg == "timeout (30) is greater than check_interval (10)"'
|
||
|
# ============================================================
|
||
|
- name: create "{{ http_healthcheck }}"
|
||
|
# ============================================================
|
||
|
gcp_healthcheck:
|
||
|
service_account_email: "{{ service_account_email }}"
|
||
|
credentials_file: "{{ credentials_file }}"
|
||
|
project_id: "{{ project_id }}"
|
||
|
healthcheck_name: "{{ http_healthcheck }}"
|
||
|
healthcheck_type: HTTP
|
||
|
host_header: my-host
|
||
|
request_path: /hc
|
||
|
check_interval: 5
|
||
|
timeout: 5
|
||
|
unhealthy_threshold: 2
|
||
|
healthy_threshold: 1
|
||
|
state: present
|
||
|
register: result
|
||
|
- name: assert create
|
||
|
assert:
|
||
|
that:
|
||
|
- 'result.state == "present"'
|
||
|
- 'result.changed'
|
||
|
# ============================================================
|
||
|
- name: "update {{ http_healthcheck }}, no change"
|
||
|
# ============================================================
|
||
|
gcp_healthcheck:
|
||
|
service_account_email: "{{ service_account_email }}"
|
||
|
credentials_file: "{{ credentials_file }}"
|
||
|
project_id: "{{ project_id }}"
|
||
|
healthcheck_name: "{{ http_healthcheck }}"
|
||
|
healthcheck_type: HTTP
|
||
|
host_header: my-host
|
||
|
request_path: /hc
|
||
|
check_interval: 5
|
||
|
timeout: 5
|
||
|
unhealthy_threshold: 2
|
||
|
healthy_threshold: 1
|
||
|
state: present
|
||
|
register: result
|
||
|
- name: assert update no change
|
||
|
assert:
|
||
|
that:
|
||
|
- 'result.state == "present"'
|
||
|
- 'not result.changed'
|
||
|
- 'result.port == 80'
|
||
|
# ============================================================
|
||
|
- name: create minimum "{{ https_healthcheck }}"
|
||
|
# ============================================================
|
||
|
gcp_healthcheck:
|
||
|
service_account_email: "{{ service_account_email }}"
|
||
|
credentials_file: "{{ credentials_file }}"
|
||
|
project_id: "{{ project_id }}"
|
||
|
healthcheck_name: "{{ https_healthcheck }}"
|
||
|
healthcheck_type: HTTPS
|
||
|
state: present
|
||
|
register: result
|
||
|
- name: assert create
|
||
|
assert:
|
||
|
that:
|
||
|
- 'result.state == "present"'
|
||
|
- 'result.changed'
|
||
|
# ============================================================
|
||
|
- name: "update {{ https_healthcheck }}, no change"
|
||
|
# ============================================================
|
||
|
gcp_healthcheck:
|
||
|
service_account_email: "{{ service_account_email }}"
|
||
|
credentials_file: "{{ credentials_file }}"
|
||
|
project_id: "{{ project_id }}"
|
||
|
healthcheck_name: "{{ https_healthcheck }}"
|
||
|
healthcheck_type: HTTPS
|
||
|
state: present
|
||
|
register: result
|
||
|
- name: assert not updated
|
||
|
assert:
|
||
|
that:
|
||
|
- 'result.state == "present"'
|
||
|
- 'result.port == 443'
|
||
|
- 'not result.changed'
|
||
|
# ============================================================
|
||
|
- name: update "{{ https_healthcheck }}"
|
||
|
# ============================================================
|
||
|
gcp_healthcheck:
|
||
|
service_account_email: "{{ service_account_email }}"
|
||
|
credentials_file: "{{ credentials_file }}"
|
||
|
project_id: "{{ project_id }}"
|
||
|
healthcheck_name: "{{ https_healthcheck }}"
|
||
|
healthcheck_type: HTTPS
|
||
|
host_header: my-host
|
||
|
request_path: /hc
|
||
|
check_interval: 5
|
||
|
timeout: 5
|
||
|
unhealthy_threshold: 2
|
||
|
healthy_threshold: 1
|
||
|
port: 444
|
||
|
state: present
|
||
|
register: result
|
||
|
- name: assert update "{{ https_healthcheck }}"
|
||
|
assert:
|
||
|
that:
|
||
|
- 'result.state == "present"'
|
||
|
- 'result.changed'
|
||
|
- 'result.port == 444'
|
||
|
# ============================================================
|
||
|
- pause: seconds=5
|
||
|
# ============================================================
|
||
|
- name: delete "{{ http_healthcheck }}"
|
||
|
# ============================================================
|
||
|
gcp_healthcheck:
|
||
|
service_account_email: "{{ service_account_email }}"
|
||
|
credentials_file: "{{ credentials_file }}"
|
||
|
project_id: "{{ project_id }}"
|
||
|
healthcheck_name: "{{ http_healthcheck }}"
|
||
|
healthcheck_type: HTTP
|
||
|
host_header: my-host
|
||
|
request_path: /hc
|
||
|
check_interval: 5
|
||
|
timeout: 5
|
||
|
unhealthy_threshold: 2
|
||
|
healthy_threshold: 1
|
||
|
state: absent
|
||
|
register: result
|
||
|
tags:
|
||
|
- delete
|
||
|
- name: assert absent
|
||
|
assert:
|
||
|
that:
|
||
|
- 'result.state == "absent"'
|
||
|
- 'result.changed'
|
||
|
# ============================================================
|
||
|
- name: delete "{{ https_healthcheck }}"
|
||
|
# ============================================================
|
||
|
gcp_healthcheck:
|
||
|
service_account_email: "{{ service_account_email }}"
|
||
|
credentials_file: "{{ credentials_file }}"
|
||
|
project_id: "{{ project_id }}"
|
||
|
healthcheck_name: "{{ https_healthcheck }}"
|
||
|
healthcheck_type: HTTPS
|
||
|
host_header: my-host
|
||
|
request_path: /hc
|
||
|
check_interval: 5
|
||
|
timeout: 5
|
||
|
unhealthy_threshold: 2
|
||
|
healthy_threshold: 1
|
||
|
state: absent
|
||
|
register: result
|
||
|
tags:
|
||
|
- delete
|
||
|
- name: assert absent
|
||
|
assert:
|
||
|
that:
|
||
|
- 'result.state == "absent"'
|
||
|
- 'result.changed'
|