Test Narratio selectors and credential lists
This commit is contained in:
@@ -18,7 +18,10 @@ verify_baseline="$repository_root/tests/verify-baseline.yml"
|
||||
representative="$repository_root/tests/representative.yml"
|
||||
verify_config="$repository_root/tests/verify-config.yml"
|
||||
ansible_playbook="$workspace_venv/bin/ansible-playbook"
|
||||
baseline_args=(-e 'narratio_whisperx_transcribe_url=http://127.0.0.1:8000/transcribe')
|
||||
baseline_args=(
|
||||
-e 'narratio_whisperx_transcribe_url=http://127.0.0.1:8000/transcribe'
|
||||
-e '{"narratio_audita_credentials":null,"narratio_audita_overlay":null,"narratio_audita_proposal_profile":null,"narratio_audita_validation_profile":null,"narratio_notarius_credentials":null,"narratio_notarius_config_overlay":null}'
|
||||
)
|
||||
|
||||
cleanup() {
|
||||
exit_status=$?
|
||||
@@ -86,19 +89,27 @@ require_clean_recap "$recovery_repeat_log"
|
||||
representative_log="$test_tmp/representative.log"
|
||||
"$ansible_playbook" -i "$inventory" "$representative" | tee "$representative_log"
|
||||
synthetic_notarius_api_key=notarius-representative-synthetic-value
|
||||
synthetic_audita_api_key=audita-representative-synthetic-value
|
||||
representative_validation_log="$test_tmp/representative-validation.log"
|
||||
NARRATIO_TEST_NOTARIUS_API_KEY="$synthetic_notarius_api_key" \
|
||||
NARRATIO_TEST_AUDITA_API_KEY="$synthetic_audita_api_key" \
|
||||
"$ansible_playbook" -i "$inventory" "$verify_config" | tee "$representative_validation_log"
|
||||
! grep -Fq "$synthetic_notarius_api_key" "$representative_log" "$representative_validation_log"
|
||||
! grep -Fq "$synthetic_audita_api_key" "$representative_log" "$representative_validation_log"
|
||||
representative_repeat_log="$test_tmp/representative-repeat.log"
|
||||
"$ansible_playbook" -i "$inventory" "$representative" | tee "$representative_repeat_log"
|
||||
require_clean_recap "$representative_repeat_log"
|
||||
|
||||
empty_overlay_log="$test_tmp/empty-overlay.log"
|
||||
empty_inputs='{"narratio_audita_credentials":[],"narratio_notarius_credentials":[],"narratio_audita_overlay":"","narratio_audita_proposal_profile":"","narratio_audita_validation_profile":"","narratio_notarius_config_overlay":""}'
|
||||
empty_expectations='{"narratio_test_audita_credentials":[],"narratio_test_notarius_credentials":[],"narratio_test_audita_overlay":"","narratio_test_audita_proposal_profile":"","narratio_test_audita_validation_profile":"","narratio_test_notarius_config_overlay":""}'
|
||||
"$ansible_playbook" -i "$inventory" \
|
||||
-e '{"narratio_notarius_config_overlay": ""}' \
|
||||
-e "$empty_inputs" \
|
||||
"$representative" | tee "$empty_overlay_log"
|
||||
NARRATIO_TEST_NOTARIUS_API_KEY="$synthetic_notarius_api_key" \
|
||||
"$ansible_playbook" -i "$inventory" \
|
||||
-e '{"narratio_test_notarius_config_overlay": ""}' \
|
||||
"$ansible_playbook" -i "$inventory" \
|
||||
-e "$empty_expectations" \
|
||||
"$verify_config"
|
||||
empty_repeat_log="$test_tmp/empty-repeat.log"
|
||||
"$ansible_playbook" -i "$inventory" -e "$empty_inputs" \
|
||||
"$representative" | tee "$empty_repeat_log"
|
||||
require_clean_recap "$empty_repeat_log"
|
||||
|
||||
@@ -24,6 +24,12 @@
|
||||
narratio_seriatim_coalesce_gap: 0.0
|
||||
narratio_seriatim_report: false
|
||||
narratio_audita_modules: []
|
||||
narratio_audita_credentials:
|
||||
- NARRATIO_TEST_AUDITA_API_KEY
|
||||
- NARRATIO_TEST_NOTARIUS_API_KEY
|
||||
narratio_audita_overlay: representative-audita-overlay
|
||||
narratio_audita_proposal_profile: representative-proposal
|
||||
narratio_audita_validation_profile: representative-validation
|
||||
narratio_notarius_credentials:
|
||||
- NARRATIO_TEST_NOTARIUS_API_KEY
|
||||
narratio_notarius_config_overlay: representative-overlay
|
||||
|
||||
@@ -9,9 +9,10 @@
|
||||
src: /usr/local/etc/narratio/pipeline.yml
|
||||
register: narratio_baseline_pipeline
|
||||
|
||||
- name: Verify null Notarius fields are omitted
|
||||
- name: Verify null downstream fields are omitted
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- "'audita' not in narratio_pipeline"
|
||||
- "'notarius' not in narratio_pipeline"
|
||||
vars:
|
||||
narratio_pipeline: "{{ narratio_baseline_pipeline.content | b64decode | from_yaml }}"
|
||||
|
||||
@@ -24,7 +24,11 @@
|
||||
- narratio_pipeline.seriatim.coalesce_gap == 0.0
|
||||
- narratio_pipeline.seriatim.report == false
|
||||
- narratio_pipeline.audita.modules == []
|
||||
- narratio_pipeline.notarius.credentials == ['NARRATIO_TEST_NOTARIUS_API_KEY']
|
||||
- narratio_pipeline.audita.credentials == narratio_expected_audita_credentials
|
||||
- narratio_pipeline.audita.overlay == narratio_expected_audita_overlay
|
||||
- narratio_pipeline.audita.proposal_profile == narratio_expected_audita_proposal_profile
|
||||
- narratio_pipeline.audita.validation_profile == narratio_expected_audita_validation_profile
|
||||
- narratio_pipeline.notarius.credentials == narratio_expected_notarius_credentials
|
||||
- narratio_pipeline.notarius.config_overlay == narratio_expected_notarius_config_overlay
|
||||
- narratio_pipeline.notarius.resume == false
|
||||
- narratio_pipeline.notarius.chunk_cache == 'auto'
|
||||
@@ -39,6 +43,13 @@
|
||||
- "'normalize' not in narratio_pipeline"
|
||||
vars:
|
||||
narratio_pipeline: "{{ narratio_managed_pipeline.content | b64decode | from_yaml }}"
|
||||
narratio_expected_audita_credentials: >-
|
||||
{{ narratio_test_audita_credentials |
|
||||
default(['NARRATIO_TEST_AUDITA_API_KEY', 'NARRATIO_TEST_NOTARIUS_API_KEY']) }}
|
||||
narratio_expected_audita_overlay: "{{ narratio_test_audita_overlay | default('representative-audita-overlay') }}"
|
||||
narratio_expected_audita_proposal_profile: "{{ narratio_test_audita_proposal_profile | default('representative-proposal') }}"
|
||||
narratio_expected_audita_validation_profile: "{{ narratio_test_audita_validation_profile | default('representative-validation') }}"
|
||||
narratio_expected_notarius_credentials: "{{ narratio_test_notarius_credentials | default(['NARRATIO_TEST_NOTARIUS_API_KEY']) }}"
|
||||
narratio_expected_notarius_config_overlay: "{{ narratio_test_notarius_config_overlay | default('representative-overlay') }}"
|
||||
|
||||
- name: Validate the representative pipeline as the Narratio account
|
||||
@@ -53,4 +64,5 @@
|
||||
- /usr/local/etc/narratio/pipeline.yml
|
||||
environment:
|
||||
NARRATIO_TEST_NOTARIUS_API_KEY: "{{ lookup('ansible.builtin.env', 'NARRATIO_TEST_NOTARIUS_API_KEY') }}"
|
||||
NARRATIO_TEST_AUDITA_API_KEY: "{{ lookup('ansible.builtin.env', 'NARRATIO_TEST_AUDITA_API_KEY') }}"
|
||||
changed_when: false
|
||||
|
||||
Reference in New Issue
Block a user