debian-forge-composer/internal/osbuild/input.go
2022-07-14 16:54:00 +02:00

33 lines
675 B
Go

package osbuild
// Collection of Inputs for a Stage
type Inputs interface {
isStageInputs()
}
// Single Input for a Stage
type Input interface {
isInput()
}
// TODO: define these using type aliases
const (
InputOriginSource string = "org.osbuild.source"
InputOriginPipeline string = "org.osbuild.pipeline"
)
// Fields shared between all Input types (should be embedded in each instance)
type inputCommon struct {
// osbuild input type
Type string `json:"type"`
// Origin should be either 'org.osbuild.source' or 'org.osbuild.pipeline'
Origin string `json:"origin"`
}
type StageInput interface {
isStageInput()
}
type References interface {
isReferences()
}