base

import "github.com/analog-substance/carbon/pkg/providers/base"

Index

Constants

const CloudInitDir = "cloud-init"

const ISOVarUsage = "var.iso_url"

const PackerFileIsoVars = "iso-variables.pkr.hcl"

const PackerFileLocalVars = "local-variables.pkr.hcl"

const PackerFilePacker = "packer.pkr.hcl"

const PackerFilePrivateVarsExample = "private.auto.pkrvars.hcl.example"

const PackerFileSuffixAnsible = "-ansible.pkr.hcl"

const PackerFileSuffixCloudInit = "-cloud-init.pkr.hcl"

const PackerFileSuffixVariables = "-variables.pkr.hcl"

func DestroyImageForFileBasedProvider

func DestroyImageForFileBasedProvider(imageID string) error

func GetImagesForFileBasedProvider

func GetImagesForFileBasedProvider(providerType string, e types.Environment) ([]types.Image, error)

func New

func New() types.Provider

func NewProfile

func NewProfile(name string, providerInstance types.Provider, config common.ProfileConfig) types.Profile

func NewWithName

func NewWithName(name string) types.Provider

type Environment

type Environment struct {
    // contains filtered or unexported fields
}

func (*Environment) CreateVM

func (e *Environment) CreateVM(options types.MachineLaunchOptions) error

func (*Environment) DestroyImage

func (e *Environment) DestroyImage(imageID string) error

func (*Environment) DestroyVM

func (e *Environment) DestroyVM(id string) error

func (*Environment) ImageBuilds

func (e *Environment) ImageBuilds() ([]types.ImageBuild, error)

func (*Environment) Images

func (e *Environment) Images() ([]types.Image, error)

func (*Environment) Name

func (e *Environment) Name() string

func (*Environment) Profile

func (e *Environment) Profile() types.Profile

func (*Environment) RestartVM

func (e *Environment) RestartVM(id string) error

func (*Environment) StartVM

func (e *Environment) StartVM(id string) error

func (*Environment) StopVM

func (e *Environment) StopVM(id string) error

func (*Environment) VMs

func (e *Environment) VMs() []types.VM

type ImageBuildDate

type ImageBuildDate struct {
    Name string
}

type Profile

type Profile struct {
    // contains filtered or unexported fields
}

func (*Profile) Environments

func (p *Profile) Environments() []types.Environment

func (*Profile) GetConfig

func (p *Profile) GetConfig() common.ProfileConfig

func (*Profile) Name

func (p *Profile) Name() string

func (*Profile) Provider

func (p *Profile) Provider() types.Provider

func (*Profile) SetConfig

func (p *Profile) SetConfig(config common.ProfileConfig)

func (*Profile) ShouldIncludeEnvironment

func (p *Profile) ShouldIncludeEnvironment(envName string) bool

type Provider

type Provider struct {
    // contains filtered or unexported fields
}

func (*Provider) GetConfig

func (p *Provider) GetConfig() common.ProviderConfig

func (*Provider) IsAvailable

func (p *Provider) IsAvailable() bool

func (*Provider) Name

func (p *Provider) Name() string

func (*Provider) NewImageBuild

func (p *Provider) NewImageBuild(name, tplDir string) (types.ImageBuild, error)

func (*Provider) NewProject

func (p *Provider) NewProject(name string, force bool) (types.Project, error)

func (*Provider) Profiles

func (p *Provider) Profiles() []types.Profile

func (*Provider) SetConfig

func (p *Provider) SetConfig(config common.ProviderConfig)

func (*Provider) Type

func (p *Provider) Type() string
Last modified March 27, 2025: Add GCP Support (#88) (dccf344)