pipe

package
v0.6.20 Latest Latest
Warning

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

Go to latest
Published: Nov 21, 2025 License: AGPL-3.0 Imports: 4 Imported by: 0

Documentation

Overview

Package pipe provides generic errors for pipes to use.

Index

Constants

This section is empty.

Variables

View Source
var ErrSkipAnnounceEnabled = Skip("announcing is disabled")

ErrSkipAnnounceEnabled happens if --skip=announce is set.

View Source
var ErrSkipPublishEnabled = Skip("publishing is disabled")

ErrSkipPublishEnabled happens if --skip=publish is set. It means that the part of a Piper that publishes its artifacts was not run.

View Source
var ErrSkipSignEnabled = Skip("artifact signing is disabled")

ErrSkipSignEnabled happens if --skip=sign is set. It means that the part of a Piper that signs some things was not run.

View Source
var ErrSkipValidateEnabled = Skip("validation is disabled")

ErrSkipValidateEnabled happens if --skip=validate is set. It means that the part of a Piper that validates some things was not run.

View Source
var ErrSnapshotEnabled = Skip("disabled during snapshot mode")

ErrSnapshotEnabled happens when kmdo is running in snapshot mode. It usually means that publishing and maybe some validations were skipped.

Functions

func IsSkip

func IsSkip(err error) bool

IsSkip returns true if the error is an ErrSkip.

Types

type ErrSkip

type ErrSkip struct {
	// contains filtered or unexported fields
}

ErrSkip occurs when a pipe is skipped for some reason.

func Skip

func Skip(reason string) ErrSkip

Skip skips this pipe with the given reason.

func Skipf

func Skipf(format string, a ...any) ErrSkip

Skipf skips this pipe with the given reason.

func (ErrSkip) Error

func (e ErrSkip) Error() string

Error implements the error interface. returns the reason the pipe was skipped.

type SkipMemento

type SkipMemento struct {
	// contains filtered or unexported fields
}

SkipMemento remembers previous skip errors so you can return them all at once later.

func (*SkipMemento) Evaluate

func (e *SkipMemento) Evaluate() error

Evaluate return a skip error with all previous skips, or nil if none happened.

func (*SkipMemento) Remember

func (e *SkipMemento) Remember(err error)

Remember a skip.

Directories

Path Synopsis
Package announce contains the announcing pipe.
Package announce contains the announcing pipe.
Package archive implements the pipe interface with the intent of archiving and compressing the binaries, readme, and other artifacts.
Package archive implements the pipe interface with the intent of archiving and compressing the binaries, readme, and other artifacts.
Package artifactory provides a Pipe that push to artifactory
Package artifactory provides a Pipe that push to artifactory
Package aur provides the Arch User Repository (AUR) integration to Kmdo.
Package aur provides the Arch User Repository (AUR) integration to Kmdo.
Package aursources provides the Arch User Repository (AUR) integration to Kmdo.
Package aursources provides the Arch User Repository (AUR) integration to Kmdo.
Package before provides the pipe implementation that runs before all other pipes.
Package before provides the pipe implementation that runs before all other pipes.
Package blob provides the pipe implementation that uploads files to "blob" providers, such as s3, gcs and azure.
Package blob provides the pipe implementation that uploads files to "blob" providers, such as s3, gcs and azure.
Package bluesky announces to bluesky.social.
Package bluesky announces to bluesky.social.
Package brew implements the Pipe, providing formula generation and uploading it to a configured repo.
Package brew implements the Pipe, providing formula generation and uploading it to a configured repo.
Package build provides a pipe that can build binaries for several languages.
Package build provides a pipe that can build binaries for several languages.
Package cask implements Pipe, providing cask generation and uploading it to a configured repo.
Package cask implements Pipe, providing cask generation and uploading it to a configured repo.
Package changelog provides the release changelog to kmdo.
Package changelog provides the release changelog to kmdo.
Package checksums provides a Pipe that creates .checksums files for each artifact.
Package checksums provides a Pipe that creates .checksums files for each artifact.
Package chocolatey publishes chocolatey packages.
Package chocolatey publishes chocolatey packages.
Package custompublishers provides a Pipe that executes a custom publisher
Package custompublishers provides a Pipe that executes a custom publisher
Package defaults implements the Pipe interface providing default values for missing configuration.
Package defaults implements the Pipe interface providing default values for missing configuration.
Package discord announces releases to Discord.
Package discord announces releases to Discord.
Package dist provides checks to make sure the dist directory is always empty.
Package dist provides checks to make sure the dist directory is always empty.
Package docker provides a Pipe that creates and pushes Docker images and manifests.
Package docker provides a Pipe that creates and pushes Docker images and manifests.
v2
Package docker provides the v2 of Kmdo's docker pipe.
Package docker provides the v2 of Kmdo's docker pipe.
Package dockerdigest provides a pipe to generate a file with docker image digests.
Package dockerdigest provides a pipe to generate a file with docker image digests.
Package effectiveconfig writes the effective config file to dist.
Package effectiveconfig writes the effective config file to dist.
Package env implements the Pipe interface providing validation of missing environment variables needed by the release process.
Package env implements the Pipe interface providing validation of missing environment variables needed by the release process.
Package git implements the Pipe interface getting and validating the current git repository state
Package git implements the Pipe interface getting and validating the current git repository state
Package gomod provides go modules utilities, such as template variables and the ability to proxy the module from proxy.golang.org.
Package gomod provides go modules utilities, such as template variables and the ability to proxy the module from proxy.golang.org.
Package ko implements the pipe interface with the intent of building OCI compliant images with ko.
Package ko implements the pipe interface with the intent of building OCI compliant images with ko.
Package krew implements Piper and Publisher, providing krew plugin manifest creation and upload to a repository (aka krew plugin index).
Package krew implements Piper and Publisher, providing krew plugin manifest creation and upload to a repository (aka krew plugin index).
Package linkedin announces releases on LinkedIn.
Package linkedin announces releases on LinkedIn.
Package makeself implements the Pipe interface providing makeself self-extracting archive support.
Package makeself implements the Pipe interface providing makeself self-extracting archive support.
Package mastodon announces releases on Mastodon.
Package mastodon announces releases on Mastodon.
Package mattermost announces releases to Mattermost.
Package mattermost announces releases to Mattermost.
Package metadata provides the pipe implementation that creates an artifacts.json file in the dist folder.
Package metadata provides the pipe implementation that creates an artifacts.json file in the dist folder.
Package milestone implements Pipe and manages VCS milestones.
Package milestone implements Pipe and manages VCS milestones.
Package nfpm implements the Pipe interface providing nFPM bindings.
Package nfpm implements the Pipe interface providing nFPM bindings.
Package nix creates nix packages.
Package nix creates nix packages.
Package notary provides the kmdo notarization pipes.
Package notary provides the kmdo notarization pipes.
Package opencollective announces the release to Open Collective.
Package opencollective announces the release to Open Collective.
Package partial handles the partial builds.
Package partial handles the partial builds.
Package prebuild provides a pipe that runs before the build and gomod pipes, mainly to resolve common templates.
Package prebuild provides a pipe that runs before the build and gomod pipes, mainly to resolve common templates.
Package project sets "high level" defaults related to the project.
Package project sets "high level" defaults related to the project.
Package publish contains the publishing pipe.
Package publish contains the publishing pipe.
Package reddit announces the release on Reddit.
Package reddit announces the release on Reddit.
Package release implements Pipe and manages github releases and its artifacts.
Package release implements Pipe and manages github releases and its artifacts.
Package reportsizes reports the sizes of the artifacts.
Package reportsizes reports the sizes of the artifacts.
Package sbom creates a Software Bill of Materials (SBOM) for each artifact.
Package sbom creates a Software Bill of Materials (SBOM) for each artifact.
Package scoop provides a Pipe that generates a scoop.sh App Manifest and pushes it to a bucket.
Package scoop provides a Pipe that generates a scoop.sh App Manifest and pushes it to a bucket.
Package semver handles semver parsing.
Package semver handles semver parsing.
Package sign handles signing artifacts.
Package sign handles signing artifacts.
Package slack announces releases to Slack.
Package slack announces releases to Slack.
Package smtp announces releases via SMTP.
Package smtp announces releases via SMTP.
Package snapcraft implements the Pipe interface providing Snapcraft bindings.
Package snapcraft implements the Pipe interface providing Snapcraft bindings.
Package snapshot provides the snapshotting functionality to kmdo.
Package snapshot provides the snapshotting functionality to kmdo.
Package sourcearchive archives the source of the project using git-archive.
Package sourcearchive archives the source of the project using git-archive.
Package teams announces new releases to Microsoft Teams.
Package teams announces new releases to Microsoft Teams.
Package telegram announces releases to Telegram.
Package telegram announces releases to Telegram.
Package twitter announces releases on Twitter.
Package twitter announces releases on Twitter.
Package universalbinary can join multiple darwin binaries into a single universal binary.
Package universalbinary can join multiple darwin binaries into a single universal binary.
Package upload provides a Pipe that push using HTTP.
Package upload provides a Pipe that push using HTTP.
Package upx compresses binaries using upx.
Package upx compresses binaries using upx.
Package webhook announces the new release by sending a webhook.
Package webhook announces the new release by sending a webhook.
Package winget creates winget manifests.
Package winget creates winget manifests.

Jump to

Keyboard shortcuts

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