Files
proxmox/.github/workflows/validate-config.yml
defiQUG 0322ab019e ci(validate-config): ShellCheck PMM soak operator shell scripts
Run shellcheck on fund-grid, complete-grid orchestrator, full-grid tranches,
mirror-USDC mint shortfall, pmm-soak-dotenv-override, and pmm-soak-pools.

Made-with: Cursor
2026-04-12 03:20:16 -07:00

135 lines
6.1 KiB
YAML

# R14: Config and validation in pipeline. Run when config/ or scripts/validation/ or scripts/verify/ change.
name: Validate Config
on:
pull_request:
paths:
- 'config/**'
- 'scripts/validation/**'
- 'scripts/jvmtm/**'
- 'scripts/omnl/build-omnl-e2e-settlement-audit-archive.sh'
- 'scripts/verify/sync-blockscout-address-labels-from-registry.sh'
- 'explorer-monorepo/scripts/generate-topology-graph.sh'
- 'explorer-monorepo/frontend/public/config/topology-graph.json'
- 'scripts/verify/run-all-validation.sh'
- 'scripts/verify/verify-end-to-end-routing.sh'
- 'scripts/run-completable-tasks-from-anywhere.sh'
- 'scripts/run-operator-tasks-from-lan.sh'
- 'scripts/run-all-operator-tasks-from-lan.sh'
- 'scripts/run-full-operator-completion-from-lan.sh'
- 'scripts/verify/check-info-defi-oracle-public.sh'
- 'scripts/verify/check-completion-status.sh'
- 'scripts/verify/check-chain138-rpc-health.sh'
- 'scripts/verify/check-chain138-rpc-nonce-gas-parity.sh'
- 'scripts/verify/self-test-chain138-rpc-verify.sh'
- 'scripts/lib/chain138-lan-rpc-inventory.sh'
- 'scripts/monitoring/monitor-blockchain-health.sh'
- 'scripts/clear-all-transaction-pools.sh'
- '.github/workflows/validate-config.yml'
- '.github/workflows/verify-info-defi-oracle-public.yml'
- 'token-lists/**'
- 'explorer-monorepo/backend/api/rest/config/metamask/**'
- 'docs/03-deployment/OMNL_DBIS_CORE_CHAIN138_SMART_VAULT_RTGS_RUNBOOK.md'
- 'docs/03-deployment/OJK_BI_AUDIT_JVMTM_REMEDIATION_AND_UETR_POLICY.md'
- 'config/jvmtm-regulatory-closure/INAAUDJVMTM_2025_AUDIT_CLOSURE_MATRIX.md'
- 'docs/04-configuration/SMART_CONTRACTS_ISO20022_FIN_METHODOLOGY.md'
- 'docs/dbis-rail/ISO_GATEWAY_AND_RELAYER_SPEC.md'
- 'scripts/deployment/pmm-soak*.sh'
- 'scripts/deployment/chain138-pmm*.sh'
- 'scripts/lib/pmm-soak*.sh'
- 'scripts/deployment/pmm-soak-export-wallet-grid.py'
- '.github/workflows/pmm-soak-grid-smoke.yml'
- 'docs/11-references/CHAIN138_GRID_6534_WALLET_FUNDING_PLAN.md'
push:
branches: [master, main]
paths:
- 'config/**'
- 'scripts/validation/**'
- 'scripts/jvmtm/**'
- 'scripts/omnl/build-omnl-e2e-settlement-audit-archive.sh'
- 'scripts/verify/sync-blockscout-address-labels-from-registry.sh'
- 'explorer-monorepo/scripts/generate-topology-graph.sh'
- 'explorer-monorepo/frontend/public/config/topology-graph.json'
- 'scripts/verify/run-all-validation.sh'
- 'scripts/verify/verify-end-to-end-routing.sh'
- 'scripts/run-completable-tasks-from-anywhere.sh'
- 'scripts/run-operator-tasks-from-lan.sh'
- 'scripts/run-all-operator-tasks-from-lan.sh'
- 'scripts/run-full-operator-completion-from-lan.sh'
- 'scripts/verify/check-info-defi-oracle-public.sh'
- 'scripts/verify/check-completion-status.sh'
- 'scripts/verify/check-chain138-rpc-health.sh'
- 'scripts/verify/check-chain138-rpc-nonce-gas-parity.sh'
- 'scripts/verify/self-test-chain138-rpc-verify.sh'
- 'scripts/lib/chain138-lan-rpc-inventory.sh'
- 'scripts/monitoring/monitor-blockchain-health.sh'
- 'scripts/clear-all-transaction-pools.sh'
- '.github/workflows/validate-config.yml'
- '.github/workflows/verify-info-defi-oracle-public.yml'
- 'token-lists/**'
- 'explorer-monorepo/backend/api/rest/config/metamask/**'
- 'docs/03-deployment/OMNL_DBIS_CORE_CHAIN138_SMART_VAULT_RTGS_RUNBOOK.md'
- 'docs/03-deployment/OJK_BI_AUDIT_JVMTM_REMEDIATION_AND_UETR_POLICY.md'
- 'config/jvmtm-regulatory-closure/INAAUDJVMTM_2025_AUDIT_CLOSURE_MATRIX.md'
- 'docs/04-configuration/SMART_CONTRACTS_ISO20022_FIN_METHODOLOGY.md'
- 'docs/dbis-rail/ISO_GATEWAY_AND_RELAYER_SPEC.md'
- 'scripts/deployment/pmm-soak*.sh'
- 'scripts/deployment/chain138-pmm*.sh'
- 'scripts/lib/pmm-soak*.sh'
- 'scripts/deployment/pmm-soak-export-wallet-grid.py'
- '.github/workflows/pmm-soak-grid-smoke.yml'
- 'docs/11-references/CHAIN138_GRID_6534_WALLET_FUNDING_PLAN.md'
jobs:
validate:
name: Config & validation
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Config validation
run: bash scripts/validation/validate-config-files.sh
- name: DBIS institutional JSON Schemas
run: |
python3 -m pip install check-jsonschema
SCHEMA_STRICT=1 bash scripts/validation/validate-dbis-institutional-schemas.sh
- name: JVMTM regulatory closure JSON Schemas
run: |
python3 -m pip install check-jsonschema
SCHEMA_STRICT=1 bash scripts/validation/validate-jvmtm-regulatory-closure-schemas.sh
- name: Reserve provenance package (3FR attestation JSON)
run: |
python3 -m pip install check-jsonschema
SCHEMA_STRICT=1 bash scripts/validation/validate-reserve-provenance-package.sh
- name: Completable tasks (dry-run)
run: bash scripts/run-completable-tasks-from-anywhere.sh --dry-run
- name: Chain 138 RPC verify scripts (syntax + offline parity)
run: bash scripts/verify/self-test-chain138-rpc-verify.sh
- name: Explorer topology graph (regenerate + diff check)
run: |
bash explorer-monorepo/scripts/generate-topology-graph.sh
git diff --exit-code explorer-monorepo/frontend/public/config/topology-graph.json
- name: ShellCheck (PMM soak grid operator scripts)
run: |
sudo apt-get update -qq
sudo apt-get install -y shellcheck
set -euo pipefail
shellcheck -x \
scripts/deployment/pmm-soak-operator-fund-grid.sh \
scripts/deployment/pmm-soak-complete-grid-funding-operator.sh \
scripts/deployment/pmm-soak-operator-fund-full-grid-tranches.sh \
scripts/deployment/pmm-soak-mint-mirror-usdc-deployer-shortfall.sh \
scripts/lib/pmm-soak-dotenv-override.sh \
scripts/lib/pmm-soak-pools.sh
- name: Shellcheck (optional)
run: bash scripts/verify/run-shellcheck.sh --optional