1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-02-03 13:11:48 +02:00
goreleaser/pkg/healthcheck/healthcheck.go
Carlos A Becker a459911f45
fix: many linting issues
refs #3874

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2023-03-19 22:17:18 -03:00

41 lines
1.1 KiB
Go

// Package healthcheck checks for missing binaries that the user needs to
// install.
package healthcheck
import (
"fmt"
"github.com/goreleaser/goreleaser/internal/pipe/chocolatey"
"github.com/goreleaser/goreleaser/internal/pipe/docker"
"github.com/goreleaser/goreleaser/internal/pipe/sbom"
"github.com/goreleaser/goreleaser/internal/pipe/sign"
"github.com/goreleaser/goreleaser/internal/pipe/snapcraft"
"github.com/goreleaser/goreleaser/pkg/context"
)
// Healthchecker should be implemented by pipes that want checks.
type Healthchecker interface {
fmt.Stringer
// Dependencies return the binaries of the dependencies needed.
Dependencies(ctx *context.Context) []string
}
// Healthcheckers is the list of healthchekers.
// nolint: gochecknoglobals
var Healthcheckers = []Healthchecker{
system{},
snapcraft.Pipe{},
sign.Pipe{},
sign.DockerPipe{},
sbom.Pipe{},
docker.Pipe{},
docker.ManifestPipe{},
chocolatey.Pipe{},
}
type system struct{}
func (system) String() string { return "system" }
func (system) Dependencies(_ *context.Context) []string { return []string{"git", "go"} }