<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>API Reference :: Go Kure — Launcher</title><link>https://www.gokure.dev/launcher/dev/api-reference/index.html</link><description>Reference documentation for launcher’s public Go packages. Each page below is auto-synced from the package README.md.
For the full Go API, see pkg.go.dev/github.com/go-kure/launcher.
CLI Package Description Reference kurel CLI kurel command tree, flags, and usage pkg.go.dev OAM Package Description Reference OAM Model OAM data model, parser, and transform pipeline pkg.go.dev Component Handlers Built-in component types (webservice, worker, cronjob, helmchart, …) pkg.go.dev Trait Handlers Built-in traits (ingress, certificate, scaler, externalsecret, …) pkg.go.dev Libraries Package Description Reference Errors Structured error types and wrapping helpers pkg.go.dev Patch Engine Declarative JSONPath patching (TOML/YAML, strategic merge) pkg.go.dev</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://www.gokure.dev/launcher/dev/api-reference/index.xml" rel="self" type="application/rss+xml"/><item><title>kurel CLI</title><link>https://www.gokure.dev/launcher/dev/api-reference/kurel-cli/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.gokure.dev/launcher/dev/api-reference/kurel-cli/index.html</guid><description>kurel CLI Reference kurel is an OAM-native package manager for Kubernetes. Packages are described with a launcher Application document (app.yaml) and an optional parameter schema (kurel.yaml); build-time parameter substitution produces static, GitOps-ready Kubernetes manifests.
This package defines the kurel command tree (NewKurelCommand) and entry point (Execute). The completion and version subcommands are provided by pkg/cmd/shared.</description></item><item><title>OAM Model</title><link>https://www.gokure.dev/launcher/dev/api-reference/oam/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.gokure.dev/launcher/dev/api-reference/oam/index.html</guid><description>OAM Model, Parser &amp; Transformer Package oam is launcher’s core: the OAM data model, YAML parser, semantic validator, and the transform pipeline that turns an Application + ClusterProfile into Kubernetes manifests. All documents use apiVersion: launcher.gokure.dev/v1alpha1.
Document kinds Kind Type Purpose Application Application The app: components[] (each with type + properties) and traits[]. Package Package A parameterized, distributable unit: app.yaml + a kurel.yaml parameter schema (ParameterDecl). ClusterProfile ClusterProfile Platform choices (trait implementations, capabilities) supplied at build time. CapabilityDefinition CapabilityDefinition Declares a capability’s rendering/property schema for validation. Pipeline parse → resolve parameters → transform (component + trait handlers) → manifests Parse an Application/Package/ClusterProfile from YAML. Resolve parameters (ResolveParameters) — apply kurel.yaml declarations, values files, and --set overrides via ${var} substitution. Transform (Transformer) — dispatch each component to its ComponentHandler and each trait to its TraitHandler, merging the ClusterProfile’s capability choices. Parsing Function Purpose Parse / ParseMulti / MustParse Parse one / many Application documents. ParsePackage Parse a Package (app + parameter schema). ParseClusterProfile Parse a ClusterProfile. LoadCapabilityDefinitions Load CapabilityDefinitions for capability validation. ParseWithExtraTraitTypes Parse allowing additional (custom) trait types. Transform &amp; extension NewTransformer(...) builds a transformer from maps of component/trait handlers; pkg/cmd/kurel registers the built-ins. Extend the system by implementing:</description></item><item><title>Component Handlers</title><link>https://www.gokure.dev/launcher/dev/api-reference/oam-components/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.gokure.dev/launcher/dev/api-reference/oam-components/index.html</guid><description>OAM Built-in Component Handlers Package components implements oam.ComponentHandler for the built-in component types. Each handler parses a typed config from a component’s properties and produces the corresponding Kubernetes resources via kure’s builders. Handlers are registered with the transformer in pkg/cmd/kurel (newBuiltinTransformer), each mapping a component type string to a handler implementing CanHandle + ToApplicationConfig.</description></item><item><title>Trait Handlers</title><link>https://www.gokure.dev/launcher/dev/api-reference/oam-traits/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.gokure.dev/launcher/dev/api-reference/oam-traits/index.html</guid><description>OAM Built-in Trait Handlers Package traits implements oam.TraitHandler for the built-in trait types. A trait decorates or augments a component — adding networking, security, storage, scaling, or operational behavior. Handlers are registered with the transformer in pkg/cmd/kurel via RegisterBuiltinTrait(type, handler); each implements CanHandle + Apply. Some traits are capability-aware (CapabilityRequired) and draw platform choices (issuer, gateway, secret store) from the ClusterProfile.</description></item><item><title>Errors</title><link>https://www.gokure.dev/launcher/dev/api-reference/errors/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.gokure.dev/launcher/dev/api-reference/errors/index.html</guid><description>Errors The errors package provides structured error types and thin wrapping helpers used across launcher. Application code uses these helpers instead of calling fmt.Errorf directly, so that error wrapping is consistent and machine-inspectable.
Structured error types ValidationError is returned when a semantic constraint is violated. It serves two shapes:</description></item><item><title>Patch Engine</title><link>https://www.gokure.dev/launcher/dev/api-reference/patch/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.gokure.dev/launcher/dev/api-reference/patch/index.html</guid><description>Patch - Declarative Resource Patching The patch package provides a JSONPath-based system for declaratively modifying Kubernetes resources. It supports both TOML and YAML patch file formats with structure-preserving modifications and variable substitution.
Overview Patches allow you to modify Kubernetes manifests without rewriting them. The system uses JSONPath expressions to target specific fields and applies changes while preserving the original YAML structure (comments, ordering, formatting).</description></item></channel></rss>