- Remove KCL ecosystem (~220 files deleted) - Migrate all infrastructure to Nickel schema system - Consolidate documentation: legacy docs → provisioning/docs/src/ - Add CI/CD workflows (.github/) and Rust build config (.cargo/) - Update core system for Nickel schema parsing - Update README.md and CHANGES.md for v5.0.0 release - Fix pre-commit hooks: end-of-file, trailing-whitespace - Breaking changes: KCL workspaces require migration - Migration bridge available in docs/src/development/
118 lines
2.7 KiB
Plaintext
118 lines
2.7 KiB
Plaintext
# | Batch workflow contracts (schema definitions)
|
|
# | Migrated from: provisioning/kcl/workflows.k
|
|
# | Pattern: Pure schema definitions using Nickel contracts
|
|
|
|
{
|
|
DependencyDef = {
|
|
target_operation_id | String,
|
|
dependency_type | String,
|
|
conditions,
|
|
timeout | Number,
|
|
fail_on_dependency_error | Bool,
|
|
},
|
|
|
|
RetryPolicy = {
|
|
max_attempts | Number,
|
|
initial_delay | Number,
|
|
max_delay | Number,
|
|
backoff_multiplier | Number,
|
|
retry_on_errors,
|
|
retry_on_any_error | Bool,
|
|
},
|
|
|
|
RollbackStrategy = {
|
|
enabled | Bool,
|
|
strategy | String,
|
|
preserve_partial_state | Bool,
|
|
custom_rollback_operations,
|
|
rollback_timeout | Number,
|
|
},
|
|
|
|
MonitoringConfig = {
|
|
enabled | Bool,
|
|
backend | String,
|
|
collection_interval | Number,
|
|
enable_tracing | Bool,
|
|
log_level | String,
|
|
enable_notifications | Bool,
|
|
notification_channels,
|
|
endpoint | String | optional,
|
|
},
|
|
|
|
StorageConfig = {
|
|
backend | String,
|
|
connection_config,
|
|
base_path | String,
|
|
enable_persistence | Bool,
|
|
retention_hours | Number,
|
|
enable_compression | Bool,
|
|
encryption | Dyn | optional,
|
|
},
|
|
|
|
BatchOperation = {
|
|
operation_id | String,
|
|
name | String,
|
|
operation_type | String,
|
|
action | String,
|
|
parameters,
|
|
dependencies,
|
|
timeout | Number,
|
|
allow_parallel | Bool,
|
|
priority | Number,
|
|
validation_rules,
|
|
success_conditions,
|
|
provider | String | optional,
|
|
retry_policy | Dyn | optional,
|
|
rollback_strategy | Dyn | optional,
|
|
},
|
|
|
|
BatchWorkflow = {
|
|
workflow_id | String,
|
|
name | String,
|
|
description | String,
|
|
version | String,
|
|
operations,
|
|
max_parallel_operations | Number,
|
|
global_timeout | Number,
|
|
fail_fast | Bool,
|
|
execution_context,
|
|
pre_workflow_hooks,
|
|
post_workflow_hooks,
|
|
created_at | String | optional,
|
|
modified_at | String | optional,
|
|
storage | Dyn | optional,
|
|
monitoring | Dyn | optional,
|
|
default_retry_policy | Dyn | optional,
|
|
default_rollback_strategy | Dyn | optional,
|
|
notifications | Dyn | optional,
|
|
},
|
|
|
|
WorkflowExecution = {
|
|
workflow_id | String,
|
|
execution_id | String,
|
|
status | String,
|
|
operation_states,
|
|
results,
|
|
errors,
|
|
resource_usage,
|
|
rollback_history,
|
|
started_at | String | optional,
|
|
completed_at | String | optional,
|
|
duration | String | optional,
|
|
},
|
|
|
|
WorkflowTemplate = {
|
|
template_id | String,
|
|
name | String,
|
|
description | String,
|
|
category | String,
|
|
parameters,
|
|
required_parameters,
|
|
version | String,
|
|
examples,
|
|
workflow_template | Dyn | optional,
|
|
min_provisioning_version | String | optional,
|
|
documentation_url | String | optional,
|
|
},
|
|
}
|