v0.6.0 Latest Latest

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

Go to latest
Published: Mar 15, 2019 License: Apache-2.0 Imports: 23 Imported by: 0




View Source
const (
	CSVYamlFileExt    = ".clusterserviceversion.yaml"
	CSVConfigYamlFile = "csv-config.yaml"


View Source
var ErrNoCSVVersion = errors.New("no CSV version supplied")


func NewUpdaterStore

func NewUpdaterStore() *updaterStore


type CSV

type CSV struct {

	// ConfigFilePath is the location of a configuration file path for this
	// projects' CSV file.
	ConfigFilePath string
	// CSVVersion is the CSV current version.
	CSVVersion string
	// FromVersion is the CSV version from which to build a new CSV. A CSV
	// manifest with this version should exist at:
	// deploy/olm-catalog/{from_version}/operator-name.v{from_version}.{CSVYamlFileExt}
	FromVersion string
	// contains filtered or unexported fields

func (*CSV) CustomRender

func (s *CSV) CustomRender() ([]byte, error)

CustomRender allows a CSV to be written by marshalling olmapiv1alpha1.ClusterServiceVersion instead of writing to a template.

func (*CSV) GetInput

func (s *CSV) GetInput() (input.Input, error)

func (*CSV) SetFS added in v0.6.0

func (s *CSV) SetFS(fs afero.Fs)

type CSVConfig

type CSVConfig struct {
	// The operator manifest file path. Defaults to deploy/operator.yaml.
	OperatorPath string `json:"operator-path,omitempty"`
	// The RBAC role manifest file path. Defaults to deploy/role.yaml.
	RolePath string `json:"role-path,omitempty"`
	// A list of CRD and CR manifest file paths. Defaults to deploy/crds.
	CRDCRPaths []string `json:"crd-cr-paths,omitempty"`

CSVConfig is a configuration file for CSV composition. Its fields contain file path information.

func GetCSVConfig added in v0.6.0

func GetCSVConfig(cfgFile string) (*CSVConfig, error)

TODO: discuss case of no config file at default path: write new file or not.

type CSVCustomResourceDefinitionsUpdate

type CSVCustomResourceDefinitionsUpdate struct {

func (*CSVCustomResourceDefinitionsUpdate) Apply

Apply updates csv's "owned" CRDDescriptions. "required" CRDDescriptions are left as-is, since they are user-defined values.

type CSVInstallStrategyUpdate

type CSVInstallStrategyUpdate struct {

func (*CSVInstallStrategyUpdate) Apply

type CSVUpdater

type CSVUpdater interface {
	// Apply applies a data update to a CSV argument.
	Apply(*olmapiv1alpha1.ClusterServiceVersion) error

CSVUpdater is an interface for any data that can be in a CSV, which will be set to the corresponding field on Apply().

Jump to

Keyboard shortcuts

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