Skip to content

Manage Test Data

Manage Test Data #7

name: Manage Test Data
on:
workflow_dispatch:
inputs:
operation:
description: "Operation to perform"
required: true
type: choice
options:
- clear-and-load-aucore
- clear-and-expunge
target_node:
description: "Target node (only for clear-and-expunge operation)"
required: false
type: choice
default: "aucore"
options:
- aucore
exclude_patterns:
description: "Directory patterns to exclude from the load"
required: false
# au-erequesting is excluded by default: every file in it claims an
# au-erequesting profile, and hl7.fhir.au.ereq is seeded only on the
# decommissioned ereq node, so aucore rejects all 46 with
# VALIDATION_VAL_PROFILE_UNKNOWN_NOT_POLICY. Attempting them turns a
# clean load into 46 failures that hide any real one. Clear this input to
# load them once aucore carries the package.
default: "vendor-demonstrator,au-erequesting"
type: string
dry_run:
description: "Dry run (preview without making changes)"
required: false
default: false
type: boolean
issue_number:
description: "Issue number to post results to (optional)"
required: false
type: number
permissions:
contents: read
issues: write
id-token: write # required by the called clear/load workflows for ECR OIDC login
# ============================================================================
# Clear and Load AU Core
# ============================================================================
jobs:
clear-aucore:
name: Clear aucore
if: inputs.operation == 'clear-and-load-aucore'
uses: ./.github/workflows/clear-test-data.yml
with:
delete_mode: wipe-all
target_node: aucore
expunge: true
dry_run: ${{ inputs.dry_run }}
issue_number: ${{ inputs.issue_number && fromJSON(inputs.issue_number) || 0 }}
secrets:
CSIRO_FHIR_AUTH_64: ${{ secrets.CSIRO_FHIR_AUTH_64 }}
load-aucore:
name: Load aucore
needs: clear-aucore
if: inputs.operation == 'clear-and-load-aucore'
uses: ./.github/workflows/load-test-data.yml
with:
upload_method: direct
target_node: aucore
exclude_patterns: ${{ inputs.exclude_patterns }}
dry_run: ${{ inputs.dry_run }}
continue_on_error: true
issue_number: ${{ inputs.issue_number && fromJSON(inputs.issue_number) || 0 }}
secrets:
CSIRO_FHIR_AUTH_64: ${{ secrets.CSIRO_FHIR_AUTH_64 }}
# The ereq clear/load jobs were removed with the ereq node decommission
# (2026-08-02, issue #85). aucore is the only node.
# ============================================================================
# Clear and Expunge (any node)
# ============================================================================
clear-and-expunge:
name: Clear and expunge
if: inputs.operation == 'clear-and-expunge'
uses: ./.github/workflows/clear-test-data.yml
with:
delete_mode: wipe-all
target_node: ${{ inputs.target_node }}
expunge: true
dry_run: ${{ inputs.dry_run }}
issue_number: ${{ inputs.issue_number && fromJSON(inputs.issue_number) || 0 }}
secrets:
CSIRO_FHIR_AUTH_64: ${{ secrets.CSIRO_FHIR_AUTH_64 }}