config

package
v0.15.0 Latest Latest
Warning

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

Go to latest
Published: Nov 13, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultBranch = "refs/heads/master"
	ODSYMLFile    = "ods.yml"
	ODSYAMLFile   = "ods.yaml"
)

Variables

View Source
var ODSFileCandidates = []string{ODSYAMLFile, ODSYMLFile}

Functions

This section is empty.

Types

type ODS

type ODS struct {
	// Repositories specifies the subrepositores, making the current repository
	// an "umbrella" repository.
	Repositories []Repository `json:"repositories,omitempty"`
	// Pipeline allows to define the Tekton pipeline tasks.
	Pipelines []Pipeline `json:"pipelines,omitempty"`
}

ODS represents the ODS pipeline configuration for one repository.

func Read

func Read(body []byte) (*ODS, error)

Read reads an ods config from given byte slice or errors.

func ReadFromDir

func ReadFromDir(dir string) (*ODS, error)

ReadFromDir reads an ods config file from given dir or errors.

func ReadFromFile

func ReadFromFile(filename string) (*ODS, error)

ReadFromFile reads an ods config from given filename or errors.

type Pipeline

type Pipeline struct {
	Triggers     []Trigger                    `json:"triggers,omitempty"`
	Tasks        []tekton.PipelineTask        `json:"tasks,omitempty"`
	Finally      []tekton.PipelineTask        `json:"finally,omitempty"`
	Timeouts     *tekton.TimeoutFields        `json:"timeouts,omitempty"`
	PodTemplate  *pod.PodTemplate             `json:"podTemplate,omitempty"`
	TaskRunSpecs []tekton.PipelineTaskRunSpec `json:"taskRunSpecs,omitempty"`
}

Pipeline represents a Tekton pipeline run.

type Repository

type Repository struct {
	// Name of the Git repository (without host/organisation and trailing .git)
	// Example: "foobar"
	Name string `json:"name"`
	// URL of Git repository (optional). If not given, the repository given by
	// Name is assumed to be under the same organisation than the repository
	// hosting the ods.y(a)ml file.
	// Example: "https://acme.org/foo/bar.git"
	URL string `json:"url"`
	// Branch of Git repository (optional). If none is given, this defaults to
	// the "master" branch. If "tag" is non-empty, it has precedence.
	// Example: "develop"
	Branch string `json:"branch"`
	// Tag of Git repository (optional). If none is given, branch has precedence.
	// Example: "develop"
	Tag string `json:"tag"`
}

Repository represents a Git repository.

type Trigger

type Trigger struct {
	Events         []string       `json:"events,omitempty"`
	Branches       []string       `json:"branches,omitempty"`
	ExceptBranches []string       `json:"exceptBranches,omitempty"`
	Tags           []string       `json:"tags,omitempty"`
	ExceptTags     []string       `json:"exceptTags,omitempty"`
	PrComment      *string        `json:"prComment,omitempty"`
	Pipeline       string         `json:"pipeline,omitempty"`
	Params         []tekton.Param `json:"params,omitempty"`
}

Trigger connects an incoming event with a pipeline.

Jump to

Keyboard shortcuts

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