Documentation
Installable overlays for domain logic.
Packs extend Cordum without core code changes. Installation is declarative and safe—it does not execute code. Workers are deployed separately.
Design Goals
- API-native installs via gateway
- No arbitrary code execution during install
- Namespaced resources avoid collisions
- Soft uninstall by default
Directory Layout
my-pack/
├── pack.yaml
├── workflows/
├── schemas/
├── overlays/
└── deploy/ // Informational only
├── pack.yaml
├── workflows/
├── schemas/
├── overlays/
└── deploy/ // Informational only
Pack Definition Example
pack.yaml
apiVersion: cordum.io/v1alpha1
kind: Pack
metadata:
id: sre-investigator
version: 0.3.1
title: SRE Investigator
compatibility:
protocolVersion: 1
minCoreVersion: 0.6.0
resources:
schemas:
- id: sre-investigator/IncidentContext
path: schemas/IncidentContext.json
workflows:
- id: sre-investigator.triage
path: workflows/triage.yaml
overlays:
config:
- name: pools
scope: system
key: pools
strategy: json_merge_patch
path: overlays/pools.patch.yaml
policy:
- name: safety
strategy: bundle_fragment
path: overlays/policy.fragment.yamlInstallation Logic
- 1Validate pack.yaml and namespacing
- 2Register schemas and workflows
- 3Apply config overlays (json merge patch)
- 4Apply policy fragments into bundles
- 5Write pack registry record
CLI Operations
terminal
cordumctl pack install ./my-pack cordumctl pack verify my-pack cordumctl pack uninstall my-pack
Note: Uninstall disables routing and policy but preserves data. Use --purge to delete assets.