Documentation
¶
Index ¶
- Variables
- func CompileFilter(pattern string) (*regexp.Regexp, error)
- type Artifact
- type ArtifactKind
- type Engine
- type EngineOption
- type Fetcher
- type GitHubReleaseFetcher
- type GitHubReleaseVersionSource
- type GitHubTagFetcher
- type GitHubTagVersionSource
- type HTTPFetcher
- type OCIFetcher
- type Platform
- type Verify
- type VersionsFrom
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrGhAssetNotFound = errors.New("github asset not found")
View Source
var ErrListVersionsUnsupported = errors.New("fetcher does not support listing versions")
Functions ¶
Types ¶
type ArtifactKind ¶ added in v0.3.0
type ArtifactKind int
const ( ArchiveKind ArtifactKind = iota SourceKind )
type Engine ¶
type Engine struct {
// contains filtered or unexported fields
}
func (*Engine) ListVersions ¶
func (*Engine) OCIClient ¶ added in v0.3.0
OCIClient returns the engine's OCI client, sharing its keychain with an OCI catalog Source.
func (*Engine) OpenArtifact ¶
type EngineOption ¶ added in v0.3.0
type EngineOption func(*Engine)
EngineOption customizes an Engine built by NewEngine.
func WithOCIClient ¶ added in v0.3.0
func WithOCIClient(c oci.Client) EngineOption
WithOCIClient overrides the engine's OCI client (used to inject a fake in tests).
type Fetcher ¶
type Fetcher struct {
GitHubRelease *GitHubReleaseFetcher `yaml:"github_release,omitempty"`
GitHubTag *GitHubTagFetcher `yaml:"github_tag,omitempty"`
HTTP *HTTPFetcher `yaml:"http,omitempty"`
OCI *OCIFetcher `yaml:"oci,omitempty"`
}
type GitHubReleaseFetcher ¶
type GitHubReleaseFetcher struct {
Repo string `yaml:"repo"`
AssetName string `yaml:"assetName"`
TemplateOverrides map[string]string `yaml:"templateOverrides,omitempty"`
ReleaseFilter string `yaml:"releaseFilter,omitempty"`
VersionTemplate string `yaml:"versionTemplate,omitempty"`
ReleaseTemplate string `yaml:"releaseTemplate,omitempty"`
}
func (*GitHubReleaseFetcher) Validate ¶
func (f *GitHubReleaseFetcher) Validate() error
type GitHubTagFetcher ¶
type GitHubTagFetcher struct {
Repo string `yaml:"repo"`
TagTemplate string `yaml:"tagTemplate,omitempty"`
TagFilter string `yaml:"tagFilter,omitempty"`
VersionTemplate string `yaml:"versionTemplate,omitempty"`
}
func (*GitHubTagFetcher) RenderTag ¶
func (f *GitHubTagFetcher) RenderTag(version string) (string, error)
func (*GitHubTagFetcher) Validate ¶
func (f *GitHubTagFetcher) Validate() error
type GitHubTagVersionSource ¶
type HTTPFetcher ¶
type HTTPFetcher struct {
URL string `yaml:"url"`
TemplateOverrides map[string]string `yaml:"templateOverrides,omitempty"`
VersionsFrom *VersionsFrom `yaml:"versionsFrom,omitempty"`
}
type OCIFetcher ¶ added in v0.3.0
type OCIFetcher struct {
Ref string `yaml:"ref,omitempty"`
TemplateOverrides map[string]string `yaml:"templateOverrides,omitempty"`
}
func (*OCIFetcher) Validate ¶ added in v0.3.0
func (f *OCIFetcher) Validate() error
type Platform ¶
func CurrentPlatform ¶
func CurrentPlatform() Platform
type Verify ¶
type VersionsFrom ¶
type VersionsFrom struct {
GitHubRelease *GitHubReleaseVersionSource `yaml:"github_release,omitempty"`
GitHubTag *GitHubTagVersionSource `yaml:"github_tag,omitempty"`
}
func (VersionsFrom) Validate ¶
func (v VersionsFrom) Validate() error
Click to show internal directories.
Click to hide internal directories.