base

package
v1.79.0 Latest Latest
Warning

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

Go to latest
Published: Aug 4, 2022 License: Apache-2.0 Imports: 62 Imported by: 1

Documentation

Index

Constants

View Source
const NamespaceTemplateConst = "repl{{ Namespace}}"

Variables

View Source
var (
	HelmV3ManifestNameRegex = regexp.MustCompile("^# Source: (.+)")
)

Functions

func AddBundlePart

func AddBundlePart(baseDir string, filename string, content []byte) error

func FindObjectsWithImages

func FindObjectsWithImages(b *Base) []k8sdoc.K8sDoc

func NewConfigContextTemplateBuilder

func NewConfigContextTemplateBuilder(u *upstreamtypes.Upstream, renderOptions *RenderOptions) (*template.Builder, map[string]template.ItemValue, error)

func ParseHelmChart

func ParseHelmChart(content []byte) (*kotsv1beta1.HelmChart, error)

func RenderUpstream

func RenderUpstream(u *upstreamtypes.Upstream, renderOptions *RenderOptions) (base *Base, helmBases []Base, err error)

RenderUpstream is responsible for any conversions or transpilation steps are required to take an upstream and make it a valid kubernetes base

Types

type Base

type Base struct {
	Path            string
	Namespace       string
	Files           []BaseFile
	ErrorFiles      []BaseFile
	AdditionalFiles []BaseFile
	Bases           []Base
}

func RenderHelm

func RenderHelm(u *upstreamtypes.Upstream, renderOptions *RenderOptions) (*Base, error)

func (*Base) DeepCopy

func (in *Base) DeepCopy() *Base

func (*Base) DeepCopyInto

func (in *Base) DeepCopyInto(out *Base)

func (*Base) GetOverlaysDir

func (b *Base) GetOverlaysDir(options WriteOptions) string

func (Base) ListErrorFiles

func (b Base) ListErrorFiles() []BaseFile

func (*Base) SetNamespace

func (b *Base) SetNamespace(namespace string)

func (*Base) WriteBase

func (b *Base) WriteBase(options WriteOptions) error

type BaseFile

type BaseFile struct {
	Path    string
	Content []byte
	Error   error
}

func PrependBaseFilesPath

func PrependBaseFilesPath(files []BaseFile, prefix string) []BaseFile

func (*BaseFile) DeepCopy

func (in *BaseFile) DeepCopy() *BaseFile

func (*BaseFile) DeepCopyInto

func (in *BaseFile) DeepCopyInto(out *BaseFile)

func (BaseFile) IsKotsKind

func (f BaseFile) IsKotsKind() (bool, error)

func (BaseFile) ShouldBeIncludedInBaseKustomization

func (f BaseFile) ShouldBeIncludedInBaseKustomization(excludeKotsKinds bool) (bool, error)

ShouldBeIncludedInBaseKustomization attempts to determine if this is a valid Kubernetes manifest. It accomplished this by trying to unmarshal the YAML and looking for a apiVersion and Kind

type Document

type Document struct {
	APIVersion string `yaml:"apiVersion"`
	Kind       string `yaml:"kind"`
}

type FindPrivateImagesOptions

type FindPrivateImagesOptions struct {
	BaseDir            string
	AppSlug            string
	ReplicatedRegistry registry.RegistryOptions
	DockerHubRegistry  registry.RegistryOptions
	Installation       *kotsv1beta1.Installation
	AllImagesPrivate   bool
	HelmChartPath      string
	UseHelmInstall     map[string]bool
	KotsKindsImages    []string
}

type FindPrivateImagesResult

type FindPrivateImagesResult struct {
	Images        []kustomizeimage.Image          // images to be rewritten
	Docs          []k8sdoc.K8sDoc                 // docs that have rewritten images
	CheckedImages []kotsv1beta1.InstallationImage // all images found in the installation
}

type HelmSubCharts

type HelmSubCharts struct {
	ParentName string
	SubCharts  []string
}

func FindHelmSubChartsFromBase

func FindHelmSubChartsFromBase(baseDir, parentChartName string) (*HelmSubCharts, error)

Returns a list of HelmSubCharts, each of which contains the name of the parent chart and a list of subcharts Each item in the subcharts list is a string of repeating terms the form "charts/<chart name>". The first item is just the top level chart (TODO: this should be removed) For example:

  • top-level-chart
  • charts/top-level-chart
  • charts/top-level-chart/charts/cool-sub-chart

type OverlySimpleGVK

type OverlySimpleGVK struct {
	APIVersion string               `yaml:"apiVersion"`
	Kind       string               `yaml:"kind"`
	Metadata   OverlySimpleMetadata `yaml:"metadata"`
}

func GetGVKWithNameAndNs

func GetGVKWithNameAndNs(content []byte, baseNS string) (string, OverlySimpleGVK)

type OverlySimpleMetadata

type OverlySimpleMetadata struct {
	Name        string                 `yaml:"name"`
	Namespace   string                 `yaml:"namespace"`
	Annotations map[string]interface{} `json:"annotations"`
}

type ParseError

type ParseError struct {
	Err error
}

func (ParseError) Error

func (e ParseError) Error() string

type RenderOptions

type RenderOptions struct {
	SplitMultiDocYAML       bool
	Namespace               string
	HelmVersion             string
	HelmOptions             []string
	HelmValues              map[string]interface{}
	LocalRegistryHost       string
	LocalRegistryNamespace  string
	LocalRegistryUsername   string
	LocalRegistryPassword   string
	LocalRegistryIsReadOnly bool
	ExcludeKotsKinds        bool
	AppSlug                 string
	Sequence                int64
	IsAirgap                bool
	UseHelmInstall          bool
	Log                     *logger.CLILogger
}

type SkippedFile

type SkippedFile struct {
	Path   string `yaml:"path"`
	Reason string `yaml:"reason"`
}

type SkippedFilesIndex

type SkippedFilesIndex struct {
	SkippedFiles []SkippedFile `yaml:"skippedFiles"`
}

type WriteOptions

type WriteOptions struct {
	BaseDir          string
	SkippedDir       string
	Overwrite        bool
	ExcludeKotsKinds bool
	IsHelmBase       bool
}

type WriteUpstreamImageOptions

type WriteUpstreamImageOptions struct {
	BaseDir           string
	AppSlug           string
	SourceRegistry    registry.RegistryOptions
	DestRegistry      registry.RegistryOptions
	DockerHubRegistry registry.RegistryOptions
	CopyImages        bool
	IsAirgap          bool
	Log               *logger.CLILogger
	ReportWriter      io.Writer
	KotsKinds         *kotsutil.KotsKinds
}

type WriteUpstreamImageResult

type WriteUpstreamImageResult struct {
	Images        []kustomizeimage.Image          // images to be rewritten
	CheckedImages []kotsv1beta1.InstallationImage // all images found in the installation
}

Jump to

Keyboard shortcuts

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