Files
ansible-role-wikideck/tests/invalid_case.yml
T
2026-10-19 16:40:42 -04:00

38 lines
2.0 KiB
YAML

---
- name: Reset validation result
ansible.builtin.set_fact:
wikideck_test_invalid_accepted: false
- name: Try invalid deployment settings
vars:
wikideck_image: "{{ invalid_case.image | default('registry.example.com/wikideck:1.0.0') }}"
wikideck_name: "{{ invalid_case.name | default('wikideck') }}"
wikideck_storage_access_modes: "{{ invalid_case.access_modes | default(['ReadWriteOnce']) }}"
wikideck_ingress_enabled: "{{ invalid_case.ingress | default(false) }}"
wikideck_ingress_host: "{{ invalid_case.host | default('wikideck.example.com') }}"
wikideck_public_origin: "{{ invalid_case.origin | default('') }}"
wikideck_resources: "{{ invalid_case.resources | default({'requests': {'cpu': '100m', 'memory': '128Mi'}, 'limits': {'cpu': '1', 'memory': '512Mi'}}) }}"
wikideck_peers: "{{ invalid_case.peers | default([]) }}"
wikideck_allow_private_peers: "{{ invalid_case.allow_private | default(false) }}"
wikideck_startup_probe_failure_threshold: "{{ invalid_case.startup_threshold | default(180) }}"
wikideck_network_policy_https_ports: "{{ invalid_case.https_ports | default([443]) }}"
wikideck_network_policy_peer_egress: "{{ invalid_case.peer_egress | default([]) }}"
wikideck_image_pull_secrets: "{{ invalid_case.pull_secrets | default([]) }}"
wikideck_network_policy_ingress_from: "{{ invalid_case.ingress_from | default([{'podSelector': {}}]) }}"
block:
- name: Run role input validation
ansible.builtin.include_tasks: ../tasks/validate.yml
- name: Record unexpectedly accepted inputs
ansible.builtin.set_fact:
wikideck_test_invalid_accepted: true
rescue:
- name: Confirm invalid inputs failed validation
ansible.builtin.debug:
msg: "Rejected invalid settings: {{ invalid_case.label }}"
- name: Assert invalid configuration was rejected
ansible.builtin.assert:
that: not wikideck_test_invalid_accepted
fail_msg: "Validation incorrectly accepted {{ invalid_case.label }}"