pkg/

directory
v0.13.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 30, 2026 License: Apache-2.0

Directories

Path Synopsis
Package action provides types and execution logic for the Actions system.
Package action provides types and execution logic for the Actions system.
api
Package api provides a chi+Huma REST API server for scafctl.
Package api provides a chi+Huma REST API server for scafctl.
Package auth provides authentication handler interfaces and utilities for scafctl.
Package auth provides authentication handler interfaces and utilities for scafctl.
diagnose
Package diagnose provides reusable auth diagnostic checks.
Package diagnose provides reusable auth diagnostic checks.
entra
Package entra provides Microsoft Entra ID (formerly Azure AD) authentication for scafctl using the OAuth 2.0 device authorization flow.
Package entra provides Microsoft Entra ID (formerly Azure AD) authentication for scafctl using the OAuth 2.0 device authorization flow.
gcp
Package gcp provides Google Cloud Platform authentication for scafctl.
Package gcp provides Google Cloud Platform authentication for scafctl.
github
Package github provides GitHub authentication for scafctl.
Package github provides GitHub authentication for scafctl.
oauth
Package oauth provides shared OAuth 2.0 utilities used by multiple auth handlers, including PKCE code generation, browser launching, and local callback servers.
Package oauth provides shared OAuth 2.0 utilities used by multiple auth handlers, including PKCE code generation, browser launching, and local callback servers.
oauth2
Package oauth2 implements a generic configurable OAuth2 auth handler.
Package oauth2 implements a generic configurable OAuth2 auth handler.
Package cache provides domain logic for cache management operations including clearing directories, gathering cache information, and formatting byte sizes.
Package cache provides domain logic for cache management operations including clearing directories, gathering cache information, and formatting byte sizes.
Package catalog provides artifact storage and retrieval for scafctl.
Package catalog provides artifact storage and retrieval for scafctl.
search
Package search provides catalog search and discovery functionality.
Package search provides catalog search and discovery functionality.
detail
Package detail provides functions for building structured output representations of CEL extension functions.
Package detail provides functions for building structured output representations of CEL extension functions.
env
ext
cmd
flags
Package flags provides shared flag helpers for scafctl commands.
Package flags provides shared flag helpers for scafctl commands.
scafctl/auth
Package auth provides CLI commands for authentication management.
Package auth provides CLI commands for authentication management.
scafctl/build
Package build provides the build command for packaging artifacts into the local catalog.
Package build provides the build command for packaging artifacts into the local catalog.
scafctl/bundle
Package bundle provides CLI commands for inspecting, verifying, and extracting solution bundles built by 'scafctl build solution'.
Package bundle provides CLI commands for inspecting, verifying, and extracting solution bundles built by 'scafctl build solution'.
scafctl/cache
Package cache provides commands for managing the scafctl cache.
Package cache provides commands for managing the scafctl cache.
scafctl/catalog
Package catalog provides commands for inspecting and managing the local catalog.
Package catalog provides commands for inspecting and managing the local catalog.
scafctl/config
Package config provides commands for managing scafctl configuration.
Package config provides commands for managing scafctl configuration.
scafctl/credentialhelper
Package credentialhelper implements the scafctl credential-helper CLI commands, exposing scafctl's encrypted credential store via the Docker credential helper protocol.
Package credentialhelper implements the scafctl credential-helper CLI commands, exposing scafctl's encrypted credential store via the Docker credential helper protocol.
scafctl/eval
Package eval provides commands for evaluating and validating CEL expressions and Go templates.
Package eval provides commands for evaluating and validating CEL expressions and Go templates.
scafctl/examples
Package examples provides commands for browsing and retrieving embedded scafctl examples.
Package examples provides commands for browsing and retrieving embedded scafctl examples.
scafctl/explain
Package explain provides the CLI explain commands.
Package explain provides the CLI explain commands.
scafctl/lint
Package lint provides the lint command for validating solutions.
Package lint provides the lint command for validating solutions.
scafctl/new
Package newcmd provides commands for creating new scafctl resources.
Package newcmd provides commands for creating new scafctl resources.
scafctl/plugins
Package plugins provides commands for managing scafctl plugins.
Package plugins provides commands for managing scafctl plugins.
scafctl/run
Package run provides the CLI run commands.
Package run provides the CLI run commands.
scafctl/secrets
Package secrets provides commands for managing scafctl secrets.
Package secrets provides commands for managing scafctl secrets.
scafctl/vendor
Package vendor provides CLI commands for managing vendored solution dependencies.
Package vendor provides CLI commands for managing vendored solution dependencies.
Package cmdinfo collects structured information about CLI commands for kvx-powered discovery and exploration.
Package cmdinfo collects structured information about CLI commands for kvx-powered discovery and exploration.
Package concepts provides a registry of scafctl domain concepts with concise explanations, examples, and cross-references.
Package concepts provides a registry of scafctl domain concepts with concise explanations, examples, and cross-references.
Package config provides application configuration management using Viper.
Package config provides application configuration management using Viper.
Package credentialhelper implements the Docker credential helper protocol, exposing scafctl's encrypted credential store to Docker, Podman, Buildah, and any OCI client.
Package credentialhelper implements the Docker credential helper protocol, exposing scafctl's encrypted credential store to Docker, Podman, Buildah, and any OCI client.
Package dryrun provides structured WhatIf report generation for scafctl solutions.
Package dryrun provides structured WhatIf report generation for scafctl solutions.
Package duration provides a Duration type that supports string-based and numeric YAML/JSON marshalling.
Package duration provides a Duration type that supports string-based and numeric YAML/JSON marshalling.
Package errexplain provides structured error explanation and pattern matching for scafctl errors.
Package errexplain provides structured error explanation and pattern matching for scafctl errors.
Package examples provides access to embedded scafctl example files.
Package examples provides access to embedded scafctl example files.
Package exitcode provides centralized exit codes for CLI commands.
Package exitcode provides centralized exit codes for CLI commands.
example command
Package main provides an example of using pkg/flags for key-value parsing with validation.
Package main provides an example of using pkg/flags for key-value parsing with validation.
resolve
Package resolve provides resolution and fetching of key-value flag values based on URI scheme prefixes.
Package resolve provides resolution and fetching of key-value flag values based on URI scheme prefixes.
validate
Package validate provides validation for key-value flag values based on URI scheme prefixes.
Package validate provides validation for key-value flag values based on URI scheme prefixes.
detail
Package detail provides functions for building structured output representations of Go template extension functions.
Package detail provides functions for building structured output representations of Go template extension functions.
ext
Package ext provides the Go template extension function registry.
Package ext provides the Go template extension function registry.
ext/celeval
Package celeval provides a Go template extension function for evaluating CEL (Common Expression Language) expressions inline within Go templates.
Package celeval provides a Go template extension function for evaluating CEL (Common Expression Language) expressions inline within Go templates.
ext/collections
Package collections provides Go template extension functions for filtering and projecting lists of maps, enabling common data transformation patterns directly within Go templates.
Package collections provides Go template extension functions for filtering and projecting lists of maps, enabling common data transformation patterns directly within Go templates.
ext/dns
Package dns provides Go template extension functions for converting arbitrary strings into DNS-safe label format (RFC 1123).
Package dns provides Go template extension functions for converting arbitrary strings into DNS-safe label format (RFC 1123).
ext/hcl
Package hcl provides a Go template extension function for converting Go objects into HCL (HashiCorp Configuration Language) format.
Package hcl provides a Go template extension function for converting Go objects into HCL (HashiCorp Configuration Language) format.
ext/yaml
Package yaml provides Go template extension functions for YAML serialization and deserialization.
Package yaml provides Go template extension functions for YAML serialization and deserialization.
Package httpc is a thin adapter over the standalone github.com/oakwood-commons/httpc library, adding scafctl-specific defaults (XDG cache paths, app-name-based cache key prefix) and bridging application-level concerns (OTel metrics, config.FromContext, etc.).
Package httpc is a thin adapter over the standalone github.com/oakwood-commons/httpc library, adding scafctl-specific defaults (XDG cache paths, app-name-based cache key prefix) and bridging application-level concerns (OTel metrics, config.FromContext, etc.).
Package lint provides business logic for validating solution files.
Package lint provides business logic for validating solution files.
Package metrics provides OpenTelemetry metric instruments for the scafctl application.
Package metrics provides OpenTelemetry metric instruments for the scafctl application.
Package paths provides centralized path resolution for scafctl using the XDG Base Directory Specification (https://specifications.freedesktop.org/basedir/latest/).
Package paths provides centralized path resolution for scafctl using the XDG Base Directory Specification (https://specifications.freedesktop.org/basedir/latest/).
builtin/githubprovider
Package githubprovider implements a provider for GitHub API operations.
Package githubprovider implements a provider for GitHub API operations.
builtin/identityprovider
Package identityprovider provides authentication identity information from auth handlers.
Package identityprovider provides authentication identity information from auth handlers.
builtin/secretprovider
Package secretprovider implements a resolver provider for accessing encrypted secrets.
Package secretprovider implements a resolver provider for accessing encrypted secrets.
detail
Package detail provides shared business logic for building structured provider information.
Package detail provides shared business logic for building structured provider information.
schemahelper
Package schemahelper provides ergonomic builder functions for constructing jsonschema.Schema objects used in provider descriptors.
Package schemahelper provides ergonomic builder functions for constructing jsonschema.Schema objects used in provider descriptors.
Package resolver provides type coercion utilities.
Package resolver provides type coercion utilities.
refs
Package refs provides functions for extracting resolver references from Go templates and CEL expressions.
Package refs provides functions for extracting resolver references from Go templates and CEL expressions.
Package sbom generates SPDX SBOM documents for scafctl catalog artifacts.
Package sbom generates SPDX SBOM documents for scafctl catalog artifacts.
Package scaffold provides solution scaffolding logic for generating skeleton solution YAML files from parameters.
Package scaffold provides solution scaffolding logic for generating skeleton solution YAML files from parameters.
Package schema provides reflection-based struct introspection for generating kubectl explain-style documentation from Go struct tags.
Package schema provides reflection-based struct introspection for generating kubectl explain-style documentation from Go struct tags.
Package secrets provides secure secret storage operations using AES-256-GCM encryption with OS keychain integration for master key management.
Package secrets provides secure secret storage operations using AES-256-GCM encryption with OS keychain integration for master key management.
secretcrypto
Package secretcrypto provides password-based encryption and decryption for secret export/import operations using PBKDF2 key derivation and AES-256-GCM.
Package secretcrypto provides password-based encryption and decryption for secret export/import operations using PBKDF2 key derivation and AES-256-GCM.
Package shellexec provides cross-platform shell command execution.
Package shellexec provides cross-platform shell command execution.
Package soldiff provides structural comparison of two solutions.
Package soldiff provides structural comparison of two solutions.
builder
Package builder provides the build pipeline for composing, discovering, vendoring, and bundling solution artifacts.
Package builder provides the build pipeline for composing, discovering, vendoring, and bundling solution artifacts.
execute
Package execute provides business logic for validating and executing solutions.
Package execute provides business logic for validating and executing solutions.
get
inspect
Package inspect provides business logic for inspecting and explaining solutions.
Package inspect provides business logic for inspecting and explaining solutions.
prepare
Package prepare provides a standalone function for loading and preparing a solution for execution.
Package prepare provides a standalone function for loading and preparing a solution for execution.
render
Package render provides domain logic for rendering solutions, including resolver execution, registry adapters, and configuration merging.
Package render provides domain logic for rendering solutions, including resolver execution, registry adapters, and configuration merging.
soltesting
Package soltesting provides types and utilities for functional testing of solutions.
Package soltesting provides types and utilities for functional testing of solutions.
soltesting/mockexec
Package mockexec provides a configurable mock for shell command execution in functional tests.
Package mockexec provides a configurable mock for shell command execution in functional tests.
soltesting/mockserver
Package mockserver provides a configurable HTTP mock server for functional testing.
Package mockserver provides a configurable HTTP mock server for functional testing.
walk
Package walk provides a visitor/walker pattern for traversing solution structures.
Package walk provides a visitor/walker pattern for traversing solution structures.
Package sourcepos provides source-location-aware parsing for YAML files.
Package sourcepos provides source-location-aware parsing for YAML files.
Package telemetry owns all OpenTelemetry provider construction and is the single place in the binary that imports otel/sdk/* packages.
Package telemetry owns all OpenTelemetry provider construction and is the single place in the binary that imports otel/sdk/* packages.
format
Package format provides human-readable formatting utilities for bytes and durations.
Package format provides human-readable formatting utilities for bytes and durations.
input
Package input provides interactive user input functionality for the terminal.
Package input provides interactive user input functionality for the terminal.
kvx
Package kvx provides integration with the kvx data viewer library for scafctl.
Package kvx provides integration with the kvx data viewer library for scafctl.
output
Package output provides output formatting utilities for scafctl commands.
Package output provides output formatting utilities for scafctl commands.
writer
Package writer provides a centralized CLI output writer for scafctl.
Package writer provides a centralized CLI output writer for scafctl.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL