Skip to content

plugin-example-lifecycle

Placement runtime (out-of-process over gRPC)
Source github.com/opencharly/charly/candy/plugin-example-lifecycle
Version 2026.181.0001
Candy plugin-example-lifecycle

This plugin is not listed in charly/charly.yml’s compiled_plugins:. It is not part of the shipped binary: charly builds and loads it out-of-process over gRPC when a plan references one of its words (the coexist path).

The reserved words this plugin serves:

  • examplelifecycle — deploy class

Reference OUT-OF-TREE charly deploy-substrate plugin (F6) that brings its OWN host-side venue LIFECYCLE over the wire. Beyond the deploy walk (OpExecute) it serves the F6 substrate-lifecycle Ops on Provider.Invoke: OpPrepareVenue returns a self-contained VenueDescriptor the HOST re-materializes into a real DeployExecutor (a host-local ShellExecutor here) — the live executor never crosses the wire — plus Start/Stop/Status/ PostApply/PostTeardown/Rebuild and the generalized OpPreresolve. NOT in compiled_plugins (out-of-process only); the host→plugin lifecycle channel M4 reuses to externalize the pod/vm substrate lifecycles.

The CUE schema below is the authoritative grammar for this plugin’s input. It is the same single source that generates the plugin’s Go parameter types and answers the runtime Describe RPC, so this page cannot disagree with either.

// schema/examplelifecycle.cue — the SELF-CONTAINED CUE def validating the example lifecycle deploy
// substrate's deploy input. References no base def so it compiles standalone (BuildCapabilities
// compiles it alone, failing loudly if broken).
#ExamplelifecycleInput: {
// marker is an optional opaque field — the example substrate carries no real config; it exists
// so a deploy authoring `examplelifecycle: { ... }` validates against a real def.
marker?: string
}

See also the candy reference for this candy’s install surface.