pipeline

package
v0.4.2 Latest Latest
Warning

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

Go to latest
Published: Mar 7, 2022 License: Apache-2.0 Imports: 15 Imported by: 5

Documentation

Index

Constants

View Source
const GenStatement = "// Code generated by terrajet. DO NOT EDIT."

GenStatement is printed on every generated file.

Variables

This section is empty.

Functions

func Run

func Run(pc *config.Provider, rootDir string)

Run runs the Terrajet code generation pipelines.

Types

type CRDGenerator

type CRDGenerator struct {
	LocalDirectoryPath string
	Group              string
	ProviderShortName  string
	LicenseHeaderPath  string
	// contains filtered or unexported fields
}

CRDGenerator takes certain information referencing Terraform resource definition and writes kubebuilder CRD file.

func NewCRDGenerator

func NewCRDGenerator(pkg *types.Package, rootDir, providerShortName, group, version string) *CRDGenerator

NewCRDGenerator returns a new CRDGenerator.

func (*CRDGenerator) Generate

func (cg *CRDGenerator) Generate(cfg *config.Resource) (string, error)

Generate builds and writes a new CRD out of Terraform resource definition.

type ControllerGenerator

type ControllerGenerator struct {
	Group              string
	ControllerGroupDir string
	ModulePath         string
	LicenseHeaderPath  string
}

ControllerGenerator generates controller setup functions.

func NewControllerGenerator

func NewControllerGenerator(rootDir, modulePath, group string) *ControllerGenerator

NewControllerGenerator returns a new ControllerGenerator.

func (*ControllerGenerator) Generate

func (cg *ControllerGenerator) Generate(cfg *config.Resource, typesPkgPath string) (pkgPath string, err error)

Generate writes controller setup functions.

type RegisterGenerator

type RegisterGenerator struct {
	LocalDirectoryPath string
	ModulePath         string
	LicenseHeaderPath  string
}

RegisterGenerator generates scheme registration file.

func NewRegisterGenerator

func NewRegisterGenerator(rootDir, modulePath string) *RegisterGenerator

NewRegisterGenerator returns a new RegisterGenerator.

func (*RegisterGenerator) Generate

func (rg *RegisterGenerator) Generate(versionPkgList []string) error

Generate writes the register file with the content produced using given list of version packages.

type SetupGenerator

type SetupGenerator struct {
	LocalDirectoryPath string
	LicenseHeaderPath  string
	ModulePath         string
}

SetupGenerator generates controller setup file.

func NewSetupGenerator

func NewSetupGenerator(rootDir, modulePath string) *SetupGenerator

NewSetupGenerator returns a new SetupGenerator.

func (*SetupGenerator) Generate

func (sg *SetupGenerator) Generate(versionPkgList []string) error

Generate writes the setup file with the content produced using given list of version packages.

type TerraformedGenerator

type TerraformedGenerator struct {
	LocalDirectoryPath string
	LicenseHeaderPath  string
	// contains filtered or unexported fields
}

TerraformedGenerator generates conversion methods implementing Terraformed interface on CRD structs.

func NewTerraformedGenerator

func NewTerraformedGenerator(pkg *types.Package, rootDir, group, version string) *TerraformedGenerator

NewTerraformedGenerator returns a new TerraformedGenerator.

func (*TerraformedGenerator) Generate

func (tg *TerraformedGenerator) Generate(cfg *config.Resource, parametersTypeName string) error

Generate writes generated Terraformed interface functions

type VersionGenerator

type VersionGenerator struct {
	Group             string
	Version           string
	DirectoryPath     string
	LicenseHeaderPath string
	// contains filtered or unexported fields
}

VersionGenerator generates files for a version of a specific group.

func NewVersionGenerator

func NewVersionGenerator(rootDir, modulePath, group, version string) *VersionGenerator

NewVersionGenerator returns a new VersionGenerator.

func (*VersionGenerator) Generate

func (vg *VersionGenerator) Generate() error

Generate writes doc and group version info files to the disk.

func (*VersionGenerator) Package

func (vg *VersionGenerator) Package() *types.Package

Package returns the package of the version that will be generated.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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