converters

package
v0.1.1092-mattc-increm... Latest Latest
Warning

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

Go to latest
Published: Apr 8, 2024 License: Apache-2.0, MIT Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FilterSteps added in v0.1.961

func FilterSteps(steps []octopus.Step, IgnoreInvalidExcludeExcept bool, Excluder ExcludeByName, ExcludeAllSteps bool, ExcludeSteps args.StringSliceArgs, ExcludeStepsRegex args.StringSliceArgs, ExcludeStepsExcept args.StringSliceArgs) []octopus.Step

FilterSteps removes any actions tha the terraform provider does not support (yet), and removes any empty steps that result from this filtering process.

func LimitAttributeLength added in v0.1.1037

func LimitAttributeLength(length int, retainVariables bool, input string) string

Types

type AccountConverter

type AccountConverter struct {
	Client                    client.OctopusClient
	EnvironmentConverter      ConverterById
	TenantConverter           ConverterById
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ExcludeTenantTags         args.StringSliceArgs
	ExcludeTenantTagSets      args.StringSliceArgs
	Excluder                  ExcludeByName
	TagSetConverter           ConvertToHclByResource[octopus.TagSet]
	ErrGroup                  *errgroup.Group
	ExcludeAccounts           args.StringSliceArgs
	ExcludeAccountsRegex      args.StringSliceArgs
	ExcludeAccountsExcept     args.StringSliceArgs
	ExcludeAllAccounts        bool
	IncludeIds                bool
	LimitResourceCount        int
	IncludeSpaceInPopulation  bool
}

func (AccountConverter) AllToHcl added in v0.1.874

func (c AccountConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (AccountConverter) AllToStatelessHcl added in v0.1.874

func (c AccountConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (AccountConverter) GetResourceType

func (c AccountConverter) GetResourceType() string

func (AccountConverter) ToHclById

func (c AccountConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (AccountConverter) ToHclLookupById

func (c AccountConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (AccountConverter) ToHclStatelessById added in v0.1.956

func (c AccountConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type AzureCloudServiceTargetConverter

type AzureCloudServiceTargetConverter struct {
	TargetConverter

	MachinePolicyConverter   ConverterWithStatelessById
	AccountConverter         ConverterAndLookupWithStatelessById
	EnvironmentConverter     ConverterAndLookupWithStatelessById
	ExcludeAllTargets        bool
	ExcludeTargets           args.StringSliceArgs
	ExcludeTargetsRegex      args.StringSliceArgs
	ExcludeTargetsExcept     args.StringSliceArgs
	ExcludeTenantTags        args.StringSliceArgs
	ExcludeTenantTagSets     args.StringSliceArgs
	TagSetConverter          ConvertToHclByResource[octopus.TagSet]
	ErrGroup                 *errgroup.Group
	IncludeIds               bool
	LimitResourceCount       int
	IncludeSpaceInPopulation bool
}

func (AzureCloudServiceTargetConverter) AllToHcl added in v0.1.874

func (AzureCloudServiceTargetConverter) AllToStatelessHcl added in v0.1.874

func (c AzureCloudServiceTargetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (AzureCloudServiceTargetConverter) GetResourceType

func (c AzureCloudServiceTargetConverter) GetResourceType() string

func (AzureCloudServiceTargetConverter) ToHclById

func (AzureCloudServiceTargetConverter) ToHclLookupById

func (c AzureCloudServiceTargetConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (AzureCloudServiceTargetConverter) ToHclStatelessById added in v0.1.956

func (c AzureCloudServiceTargetConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type AzureServiceFabricTargetConverter

type AzureServiceFabricTargetConverter struct {
	TargetConverter

	MachinePolicyConverter    ConverterWithStatelessById
	EnvironmentConverter      ConverterAndLookupWithStatelessById
	ExcludeAllTargets         bool
	ExcludeTargets            args.StringSliceArgs
	ExcludeTargetsRegex       args.StringSliceArgs
	ExcludeTargetsExcept      args.StringSliceArgs
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ExcludeTenantTags         args.StringSliceArgs
	ExcludeTenantTagSets      args.StringSliceArgs
	TagSetConverter           ConvertToHclByResource[octopus.TagSet]
	ErrGroup                  *errgroup.Group
	IncludeIds                bool
	LimitResourceCount        int
	IncludeSpaceInPopulation  bool
}

func (AzureServiceFabricTargetConverter) AllToHcl added in v0.1.874

func (AzureServiceFabricTargetConverter) AllToStatelessHcl added in v0.1.874

func (c AzureServiceFabricTargetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (AzureServiceFabricTargetConverter) GetResourceType

func (c AzureServiceFabricTargetConverter) GetResourceType() string

func (AzureServiceFabricTargetConverter) ToHclById

func (AzureServiceFabricTargetConverter) ToHclLookupById

func (c AzureServiceFabricTargetConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (AzureServiceFabricTargetConverter) ToHclStatelessById added in v0.1.956

func (c AzureServiceFabricTargetConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type AzureWebAppTargetConverter

type AzureWebAppTargetConverter struct {
	TargetConverter

	MachinePolicyConverter   ConverterWithStatelessById
	AccountConverter         ConverterAndLookupWithStatelessById
	EnvironmentConverter     ConverterAndLookupWithStatelessById
	ExcludeAllTargets        bool
	ExcludeTargets           args.StringSliceArgs
	ExcludeTargetsRegex      args.StringSliceArgs
	ExcludeTargetsExcept     args.StringSliceArgs
	ExcludeTenantTags        args.StringSliceArgs
	ExcludeTenantTagSets     args.StringSliceArgs
	TagSetConverter          ConvertToHclByResource[octopus.TagSet]
	ErrGroup                 *errgroup.Group
	IncludeIds               bool
	LimitResourceCount       int
	IncludeSpaceInPopulation bool
}

func (AzureWebAppTargetConverter) AllToHcl added in v0.1.874

func (c AzureWebAppTargetConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (AzureWebAppTargetConverter) AllToStatelessHcl added in v0.1.874

func (c AzureWebAppTargetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (AzureWebAppTargetConverter) GetResourceType

func (c AzureWebAppTargetConverter) GetResourceType() string

func (AzureWebAppTargetConverter) ToHclById

func (c AzureWebAppTargetConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (AzureWebAppTargetConverter) ToHclLookupById

func (c AzureWebAppTargetConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (AzureWebAppTargetConverter) ToHclStatelessById added in v0.1.956

func (c AzureWebAppTargetConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type CertificateConverter

type CertificateConverter struct {
	Client                    client.OctopusClient
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ExcludeTenantTags         args.StringSliceArgs
	ExcludeTenantTagSets      args.StringSliceArgs
	Excluder                  ExcludeByName
	TagSetConverter           ConvertToHclByResource[octopus.TagSet]
	ErrGroup                  *errgroup.Group
	ExcludeCertificates       args.StringSliceArgs
	ExcludeCertificatesRegex  args.StringSliceArgs
	ExcludeCertificatesExcept args.StringSliceArgs
	ExcludeAllCertificates    bool
	LimitResourceCount        int
	IncludeIds                bool
	IncludeSpaceInPopulation  bool
}

func (CertificateConverter) AllToHcl added in v0.1.874

func (c CertificateConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (CertificateConverter) AllToStatelessHcl added in v0.1.874

func (c CertificateConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (CertificateConverter) GetResourceType

func (c CertificateConverter) GetResourceType() string

func (CertificateConverter) ToHclById

func (c CertificateConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (CertificateConverter) ToHclLookupById

func (c CertificateConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (CertificateConverter) ToHclStatelessById added in v0.1.956

func (c CertificateConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type ChannelConverter

type ChannelConverter struct {
	Client                   client.OctopusClient
	LifecycleConverter       ConverterAndLookupWithStatelessById
	ExcludeTenantTags        args.StringSliceArgs
	ExcludeTenantTagSets     args.StringSliceArgs
	Excluder                 ExcludeByName
	ErrGroup                 *errgroup.Group
	IncludeIds               bool
	LimitResourceCount       int
	IncludeDefaultChannel    bool
	IncludeSpaceInPopulation bool
}

func (ChannelConverter) GetGroupResourceType

func (c ChannelConverter) GetGroupResourceType(projectId string) string

func (ChannelConverter) GetResourceType

func (c ChannelConverter) GetResourceType() string

func (ChannelConverter) ToHclByProjectIdWithTerraDependencies

func (c ChannelConverter) ToHclByProjectIdWithTerraDependencies(projectId string, terraformDependencies map[string]string, dependencies *data.ResourceDetailsCollection) error

func (ChannelConverter) ToHclLookupByProjectIdWithTerraDependencies

func (c ChannelConverter) ToHclLookupByProjectIdWithTerraDependencies(projectId string, terraformDependencies map[string]string, dependencies *data.ResourceDetailsCollection) error

ToHclLookupByProjectIdWithTerraDependencies exports the channel set as a complete resource, but will reference external resources like lifecycles as data source lookups.

func (ChannelConverter) ToHclStatelessByProjectIdWithTerraDependencies added in v0.1.1041

func (c ChannelConverter) ToHclStatelessByProjectIdWithTerraDependencies(projectId string, terraformDependencies map[string]string, dependencies *data.ResourceDetailsCollection) error

type CloudRegionTargetConverter

type CloudRegionTargetConverter struct {
	TargetConverter

	MachinePolicyConverter   ConverterWithStatelessById
	EnvironmentConverter     ConverterAndLookupWithStatelessById
	ExcludeAllTargets        bool
	ExcludeTargets           args.StringSliceArgs
	ExcludeTargetsRegex      args.StringSliceArgs
	ExcludeTargetsExcept     args.StringSliceArgs
	ExcludeTenantTags        args.StringSliceArgs
	ExcludeTenantTagSets     args.StringSliceArgs
	TagSetConverter          ConvertToHclByResource[octopus.TagSet]
	ErrGroup                 *errgroup.Group
	IncludeIds               bool
	LimitResourceCount       int
	IncludeSpaceInPopulation bool
}

func (CloudRegionTargetConverter) AllToHcl added in v0.1.874

func (c CloudRegionTargetConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (CloudRegionTargetConverter) AllToStatelessHcl added in v0.1.874

func (c CloudRegionTargetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (CloudRegionTargetConverter) GetResourceType

func (c CloudRegionTargetConverter) GetResourceType() string

func (CloudRegionTargetConverter) ToHclById

func (c CloudRegionTargetConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (CloudRegionTargetConverter) ToHclLookupById

func (c CloudRegionTargetConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (CloudRegionTargetConverter) ToHclStatelessById added in v0.1.956

func (c CloudRegionTargetConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type ConvertToHclByResource

type ConvertToHclByResource[C any] interface {
	ToHclByResource(resource C, dependencies *data.ResourceDetailsCollection) error
}

ConvertToHclByResource converts objects directly

type ConvertToHclLookupByResource added in v0.1.565

type ConvertToHclLookupByResource[C any] interface {
	ToHclLookupByResource(resource C, dependencies *data.ResourceDetailsCollection) error
}

ConvertToHclLookupByResource creates a data lookup from the objects

type Converter

type Converter interface {
	// AllToHcl converts all the resources of a given type to HCL. This is used when converting a space.
	AllToHcl(dependencies *data.ResourceDetailsCollection)
	// AllToStatelessHcl converts all the resources of a given type to a stateless HCL module suitable for a step template.
	AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)
}

Converter converts all objects in bulk

type ConverterAndLookupById

type ConverterAndLookupById interface {
	ConverterById
	ConverterLookupById
}

ConverterAndLookupById converts an individual resource by ID to HCL and to a data lookup

type ConverterAndLookupByIdAndName

type ConverterAndLookupByIdAndName interface {
	ConverterByIdWithName
	ConverterLookupByIdWithName
}

ConverterAndLookupByIdAndName converts an individual resource by ID to HCL and to a data lookup

type ConverterAndLookupByIdAndNameOrBranch added in v0.1.921

type ConverterAndLookupByIdAndNameOrBranch interface {
	ConverterByIdWithName
	ConverterLookupByIdWithName
	ConverterLookupByIdWithBranch
}

ConverterAndLookupByIdAndNameOrBranch converts an individual resource by ID or git branch to HCL and to a data lookup

type ConverterAndLookupByIdWithNameAndParent

type ConverterAndLookupByIdWithNameAndParent interface {
	ConverterByIdWithNameAndParent
	ConverterLookupByIdWithNameAndParent
}

ConverterAndLookupByIdWithNameAndParent converts a resource by its ID, uses the supplied name, and has a reference to its parent, and can also reference external resources via data source lookups

type ConverterAndLookupByProjectId

type ConverterAndLookupByProjectId interface {
	ConverterByProjectId
	ConverterToStatelessByProjectId
	ConverterLookupByProjectId
}

ConverterAndLookupByProjectId converts objects to HCL and data lookups based on their relationship to a project

type ConverterAndLookupByProjectIdAndName

ConverterAndLookupByProjectIdAndName converts objects to HCL and data lookups based on their relationship to a project

type ConverterAndLookupByProjectIdWithTerraDependencies

type ConverterAndLookupByProjectIdWithTerraDependencies interface {
	ConverterByProjectIdWithTerraDependencies
	ConverterLookupByProjectIdWithTerraDependencies
}

ConverterAndLookupByProjectIdWithTerraDependencies converts objects to HCL and data lookups based on their relationship to a project

type ConverterAndLookupWithStatelessById added in v0.1.945

type ConverterAndLookupWithStatelessById interface {
	ConverterById
	ConverterLookupById
	ConverterToStatelessById
}

ConverterAndLookupWithStatelessById converts an individual resource by ID to HCL and to a data lookup

type ConverterAndWithLookupsById added in v0.1.714

ConverterAndWithLookupsById converts an individual resource by ID to HCL, either exporting all dependencies, or looking up all dependencies

type ConverterById

type ConverterById interface {
	// ToHclById converts a single resource by its ID. This is used when converting a single project,
	// and then converting anything that the project references (like feeds, accounts, environments etc).
	ToHclById(id string, dependencies *data.ResourceDetailsCollection) error
}

ConverterById converts an individual resource by its ID

type ConverterByIdWithLookups added in v0.1.714

type ConverterByIdWithLookups interface {
	// ToHclByIdWithLookups converts a single resource by its ID. This is used when converting a single project,
	// and then referencing all other resources by lookup (like feeds, accounts, environments etc).
	ToHclByIdWithLookups(id string, dependencies *data.ResourceDetailsCollection) error
}

ConverterByIdWithLookups converts an individual resource by its ID, with all external resources referenced as lookups

type ConverterByIdWithName

type ConverterByIdWithName interface {
	ToHclByIdAndName(id string, name string, recursive bool, dependencies *data.ResourceDetailsCollection) error
	ToHclStatelessByIdAndName(id string, name string, dependencies *data.ResourceDetailsCollection) error
}

ConverterByIdWithName converts an individual resource by its ID, and uses the supplied name for the Terraform resource

type ConverterByIdWithNameAndParent

type ConverterByIdWithNameAndParent interface {
	// ToHclByIdAndName converts a resource with a reference to a parent object
	// id is the ID of the resource to convert.
	// recursive indicates if the dependencies of this resource should also be exported.
	// name is the name of the resource to convert.
	// parentLookup is an HCL interpolation that resolves the parents ID.
	// parentCount is an HCL interpolation that resolves to 1 or 0 based on whether the parent is created or not in a stateless module.
	// dependencies is the collection of exported resources.
	ToHclByIdAndName(id string, recursive bool, name string, parentLookup string, parentCount *string, dependencies *data.ResourceDetailsCollection) error
	// ToHclStatelessByIdAndName converts a resource with a reference to a parent object
	// id is the ID of the resource to convert.
	// recursive indicates if the dependencies of this resource should also be exported.
	// name is the name of the resource to convert.
	// parentLookup is an HCL interpolation that resolves the parents ID.
	// parentCount is an HCL interpolation that resolves to 1 or 0 based on whether the parent is created or not in a stateless module.
	// dependencies is the collection of exported resources.
	ToHclStatelessByIdAndName(id string, recursive bool, name string, parentLookup string, parentCount *string, dependencies *data.ResourceDetailsCollection) error
}

ConverterByIdWithNameAndParent converts a resource by its ID, uses the supplied name, and has a reference to its parent

type ConverterByProjectId

type ConverterByProjectId interface {
	ToHclByProjectId(projectId string, dependencies *data.ResourceDetailsCollection) error
}

ConverterByProjectId converts objects based on their relationship to a project

type ConverterByProjectIdAndName

type ConverterByProjectIdAndName interface {
	ToHclByProjectIdAndName(projectId string, parentName string, parentLookup string, parentCount *string, recursive bool, dependencies *data.ResourceDetailsCollection) error
}

ConverterByProjectIdAndName converts objects based on their relationship to a project, with the ability to reference the parent

type ConverterByProjectIdBranchAndName added in v0.1.927

type ConverterByProjectIdBranchAndName interface {
	ToHclByProjectIdBranchAndName(projectId string, branch string, parentName string, parentLookup string, parentCount *string, recursive bool, dependencies *data.ResourceDetailsCollection) error
	ToHclStatelessByProjectIdBranchAndName(projectId string, branch string, parentName string, parentLookup string, parentCount *string, recursive bool, dependencies *data.ResourceDetailsCollection) error
}

ConverterByProjectIdBranchAndName converts objects based on their relationship to a project branch, with the ability to reference the parent

type ConverterByProjectIdWithName

type ConverterByProjectIdWithName interface {
	ToHclByProjectIdAndName(id string, name string, dependencies *data.ResourceDetailsCollection) error
}

ConverterByProjectIdWithName converts objects based on their relationship to a project, and uses the supplied name for the Terraform resource

type ConverterByProjectIdWithTerraDependencies

type ConverterByProjectIdWithTerraDependencies interface {
	ToHclByProjectIdWithTerraDependencies(projectId string, terraformDependencies map[string]string, dependencies *data.ResourceDetailsCollection) error
	ToHclStatelessByProjectIdWithTerraDependencies(projectId string, terraformDependencies map[string]string, dependencies *data.ResourceDetailsCollection) error
}

ConverterByProjectIdWithTerraDependencies converts objects based on their relationship to a project, with manual terraform dependencies

type ConverterByTenantId

type ConverterByTenantId interface {
	ToHclByTenantId(projectId string, dependencies *data.ResourceDetailsCollection) error
}

ConverterByTenantId converts objects based on the relationship to a tenant

type ConverterLookupById

type ConverterLookupById interface {
	// ToHclLookupById is used to create a data resource that queries a space for an existing resource. This
	// is used when converting a project with the -lookupProjectDependencies argument specified. It allows a project
	// to reference existing resources like accounts, feeds, environments etc in the space in which the project
	// is imported.
	ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error
}

ConverterLookupById converts an individual resource by its ID to a data lookup

type ConverterLookupByIdWithBranch added in v0.1.921

type ConverterLookupByIdWithBranch interface {
	ToHclLookupByIdAndBranch(parentId string, branch string, dependencies *data.ResourceDetailsCollection) error
	ToHclByIdAndBranch(parentId string, branch string, recursive bool, dependencies *data.ResourceDetailsCollection) error
	ToHclStatelessByIdAndBranch(parentId string, branch string, dependencies *data.ResourceDetailsCollection) error
}

ConverterLookupByIdWithBranch converts an individual resource by its git branch, uses the supplied name for the Terraform resource, and references external resources via a data source lookup

type ConverterLookupByIdWithName

type ConverterLookupByIdWithName interface {
	ToHclLookupByIdAndName(id string, name string, dependencies *data.ResourceDetailsCollection) error
}

ConverterLookupByIdWithName converts an individual resource by its ID, uses the supplied name for the Terraform resource, and references external resources via a data source lookup

type ConverterLookupByIdWithNameAndParent

type ConverterLookupByIdWithNameAndParent interface {
	ToHclLookupByIdAndName(id string, name string, parentLookup string, dependencies *data.ResourceDetailsCollection) error
}

ConverterLookupByIdWithNameAndParent converts a resource by its ID, uses the supplied name, and has a reference to its parent, and references external resources via data source lookups

type ConverterLookupByProjectId

type ConverterLookupByProjectId interface {
	ToHclLookupByProjectId(projectId string, dependencies *data.ResourceDetailsCollection) error
}

ConverterLookupByProjectId converts objects to data lookups based on their relationship to a project

type ConverterLookupByProjectIdAndName

type ConverterLookupByProjectIdAndName interface {
	ToHclLookupByProjectIdAndName(projectId string, parentName string, parentLookup string, dependencies *data.ResourceDetailsCollection) error
}

ConverterLookupByProjectIdAndName converts objects to data lookups based on their relationship to a project branch, with the ability to reference the parent

type ConverterLookupByProjectIdBranchAndName added in v0.1.927

type ConverterLookupByProjectIdBranchAndName interface {
	ToHclLookupByProjectIdBranchAndName(projectId string, branch string, parentName string, parentLookup string, dependencies *data.ResourceDetailsCollection) error
}

ConverterLookupByProjectIdBranchAndName converts objects to data lookups based on their relationship to a project, with the ability to reference the parent

type ConverterLookupByProjectIdWithTerraDependencies

type ConverterLookupByProjectIdWithTerraDependencies interface {
	ToHclLookupByProjectIdWithTerraDependencies(projectId string, terraformDependencies map[string]string, dependencies *data.ResourceDetailsCollection) error
}

ConverterLookupByProjectIdWithTerraDependencies converts objects based on their relationship to a project, with manual terraform dependencies, and using a lookup for dependencies

type ConverterToStatelessById added in v0.1.931

type ConverterToStatelessById interface {
	// ToHclStatelessById converts a single resource to a stateless representation by its ID. This is used when
	// converting a single project, and then converting anything that the project references (like feeds, accounts,
	// environments etc).
	ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error
}

ConverterToStatelessById converts an individual resource by its ID

type ConverterToStatelessByProjectId added in v0.1.945

type ConverterToStatelessByProjectId interface {
	ToHclStatelessByProjectId(projectId string, dependencies *data.ResourceDetailsCollection) error
}

ConverterToStatelessByProjectId converts objects to stateless representations based on their relationship to a project

type ConverterWithStatelessById added in v0.1.956

type ConverterWithStatelessById interface {
	ConverterById
	ConverterToStatelessById
}

ConverterWithStatelessById converts an individual resource by ID to HCL, either stateless or normal

type DefaultExcluder added in v0.1.548

type DefaultExcluder struct {
}

func (DefaultExcluder) FilteredTenantTags added in v0.1.671

func (e DefaultExcluder) FilteredTenantTags(tenantTags []string, excludeTenantTags args.StringSliceArgs, excludeTenantTagSets args.StringSliceArgs) []string

func (DefaultExcluder) IsResourceExcluded added in v0.1.548

func (e DefaultExcluder) IsResourceExcluded(resourceName string, excludeAll bool, excludeThese []string, excludeAllButThese []string) bool

func (DefaultExcluder) IsResourceExcludedWithRegex added in v0.1.743

func (e DefaultExcluder) IsResourceExcludedWithRegex(resourceName string, excludeAll bool, excludeThese []string, excludeTheseRegexes []string, excludeAllButThese []string) bool

type DeploymentProcessConverter

type DeploymentProcessConverter struct {
	Client                     client.OctopusClient
	OctopusActionProcessor     OctopusActionProcessor
	IgnoreProjectChanges       bool
	WorkerPoolProcessor        OctopusWorkerPoolProcessor
	ExcludeTenantTags          args.StringSliceArgs
	ExcludeTenantTagSets       args.StringSliceArgs
	Excluder                   ExcludeByName
	TagSetConverter            ConvertToHclByResource[octopus.TagSet]
	LimitAttributeLength       int
	ExcludeTerraformVariables  bool
	ExcludeAllSteps            bool
	ExcludeSteps               args.StringSliceArgs
	ExcludeStepsRegex          args.StringSliceArgs
	ExcludeStepsExcept         args.StringSliceArgs
	IgnoreInvalidExcludeExcept bool
}

func (DeploymentProcessConverter) GetResourceType

func (c DeploymentProcessConverter) GetResourceType() string

func (DeploymentProcessConverter) ToHclByIdAndBranch added in v0.1.922

func (c DeploymentProcessConverter) ToHclByIdAndBranch(parentId string, branch string, recursive bool, dependencies *data.ResourceDetailsCollection) error

func (DeploymentProcessConverter) ToHclByIdAndName

func (c DeploymentProcessConverter) ToHclByIdAndName(id string, _ string, recursive bool, dependencies *data.ResourceDetailsCollection) error

func (DeploymentProcessConverter) ToHclLookupByIdAndBranch added in v0.1.921

func (c DeploymentProcessConverter) ToHclLookupByIdAndBranch(parentId string, branch string, dependencies *data.ResourceDetailsCollection) error

func (DeploymentProcessConverter) ToHclLookupByIdAndName

func (c DeploymentProcessConverter) ToHclLookupByIdAndName(id string, _ string, dependencies *data.ResourceDetailsCollection) error

func (DeploymentProcessConverter) ToHclStatelessByIdAndBranch added in v0.1.956

func (c DeploymentProcessConverter) ToHclStatelessByIdAndBranch(parentId string, branch string, dependencies *data.ResourceDetailsCollection) error

func (DeploymentProcessConverter) ToHclStatelessByIdAndName added in v0.1.956

func (c DeploymentProcessConverter) ToHclStatelessByIdAndName(id string, _ string, dependencies *data.ResourceDetailsCollection) error

type DummySecret added in v0.1.641

type DummySecret struct {
}

DummySecret is a simple service that returns the dummy value to use in place of a secret. This is required because the Octopus API never exports secrets, so octoterra can not include secrets in the exported Terraform module. It can be useful, however, to create resources that depend on secret values and update those secrets later. To do this, octoterra can optionally default secret values to dummy values.

func (DummySecret) GetDummyCertificate added in v0.1.642

func (e DummySecret) GetDummyCertificate() *string

func (DummySecret) GetDummyCertificateBase64 added in v0.1.766

func (e DummySecret) GetDummyCertificateBase64() *string

func (DummySecret) GetDummyCertificateNoPass added in v0.1.766

func (e DummySecret) GetDummyCertificateNoPass() *string

func (DummySecret) GetDummyCertificatePassword added in v0.1.642

func (e DummySecret) GetDummyCertificatePassword() *string

func (DummySecret) GetDummySecret added in v0.1.641

func (e DummySecret) GetDummySecret() *string

type DummySecretGenerator added in v0.1.641

type DummySecretGenerator interface {
	GetDummySecret() *string
	GetDummyCertificate() *string
	GetDummyCertificateNoPass() *string
	GetDummyCertificateBase64() *string
	GetDummyCertificatePassword() *string
}

DummySecretGenerator defines the service used to generate dummy secret values

type EnvironmentConverter

type EnvironmentConverter struct {
	Client                    client.OctopusClient
	ErrGroup                  *errgroup.Group
	ExcludeEnvironments       args.StringSliceArgs
	ExcludeEnvironmentsRegex  args.StringSliceArgs
	ExcludeEnvironmentsExcept args.StringSliceArgs
	ExcludeAllEnvironments    bool
	Excluder                  ExcludeByName
	IncludeIds                bool
	LimitResourceCount        int
	IncludeSpaceInPopulation  bool
}

func (EnvironmentConverter) AllToHcl added in v0.1.874

func (c EnvironmentConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (EnvironmentConverter) AllToStatelessHcl added in v0.1.874

func (c EnvironmentConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (EnvironmentConverter) GetResourceType

func (c EnvironmentConverter) GetResourceType() string

func (EnvironmentConverter) ToHclById

func (c EnvironmentConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (EnvironmentConverter) ToHclLookupById

func (c EnvironmentConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (EnvironmentConverter) ToHclStatelessById added in v0.1.956

func (c EnvironmentConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type ExcludeByName added in v0.1.548

type ExcludeByName interface {
	IsResourceExcluded(resourceName string, excludeAll bool, excludeThese []string, excludeAllButThese []string) bool
	IsResourceExcludedWithRegex(resourceName string, excludeAll bool, excludeThese []string, excludeTheseRegexes []string, excludeAllButThese []string) bool
	FilteredTenantTags(tenantTags []string, excludeTenantTags args.StringSliceArgs, excludeTenantTagSets args.StringSliceArgs) []string
}

ExcludeByName has logic for excluding resources based on some filters. Excluded resources are typically supplied from the command line.

type FeedConverter

type FeedConverter struct {
	Client                    client.OctopusClient
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ErrGroup                  *errgroup.Group
	ExcludeFeeds              args.StringSliceArgs
	ExcludeFeedsRegex         args.StringSliceArgs
	ExcludeFeedsExcept        args.StringSliceArgs
	ExcludeAllFeeds           bool
	Excluder                  ExcludeByName
	IncludeIds                bool
	LimitResourceCount        int
	IncludeSpaceInPopulation  bool
}

func (FeedConverter) AllToHcl added in v0.1.874

func (c FeedConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (FeedConverter) AllToStatelessHcl added in v0.1.874

func (c FeedConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (FeedConverter) GetResourceType

func (c FeedConverter) GetResourceType() string

func (FeedConverter) ToHclById

func (c FeedConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (FeedConverter) ToHclLookupById

func (c FeedConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (FeedConverter) ToHclStatelessById added in v0.1.956

func (c FeedConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type GitCredentialsConverter

type GitCredentialsConverter struct {
	Client                    client.OctopusClient
	SpaceResourceName         string
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ExcludeAllGitCredentials  bool
	ErrGroup                  *errgroup.Group
	IncludeIds                bool
	LimitResourceCount        int
	IncludeSpaceInPopulation  bool
}

func (GitCredentialsConverter) AllToHcl added in v0.1.874

func (c GitCredentialsConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (GitCredentialsConverter) AllToStatelessHcl added in v0.1.874

func (c GitCredentialsConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (GitCredentialsConverter) GetResourceType

func (c GitCredentialsConverter) GetResourceType() string

func (GitCredentialsConverter) ToHclById

func (c GitCredentialsConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (GitCredentialsConverter) ToHclLookupById

func (c GitCredentialsConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (GitCredentialsConverter) ToHclStatelessById added in v0.1.945

func (c GitCredentialsConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type KubernetesTargetConverter

type KubernetesTargetConverter struct {
	TargetConverter

	MachinePolicyConverter   ConverterWithStatelessById
	AccountConverter         ConverterAndLookupWithStatelessById
	EnvironmentConverter     ConverterAndLookupWithStatelessById
	CertificateConverter     ConverterAndLookupWithStatelessById
	ExcludeAllTargets        bool
	ExcludeTargets           args.StringSliceArgs
	ExcludeTargetsRegex      args.StringSliceArgs
	ExcludeTargetsExcept     args.StringSliceArgs
	ExcludeTenantTags        args.StringSliceArgs
	ExcludeTenantTagSets     args.StringSliceArgs
	TagSetConverter          ConvertToHclByResource[octopus.TagSet]
	ErrGroup                 *errgroup.Group
	LimitResourceCount       int
	IncludeSpaceInPopulation bool
	IncludeIds               bool
}

func (KubernetesTargetConverter) AllToHcl added in v0.1.874

func (c KubernetesTargetConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (KubernetesTargetConverter) AllToStatelessHcl added in v0.1.874

func (c KubernetesTargetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (KubernetesTargetConverter) GetResourceType

func (c KubernetesTargetConverter) GetResourceType() string

func (KubernetesTargetConverter) ToHclById

func (c KubernetesTargetConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (KubernetesTargetConverter) ToHclLookupById

func (c KubernetesTargetConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (KubernetesTargetConverter) ToHclStatelessById added in v0.1.956

func (c KubernetesTargetConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type LibraryVariableSetConverter

type LibraryVariableSetConverter struct {
	Client                           client.OctopusClient
	VariableSetConverter             ConverterByIdWithNameAndParent
	Excluded                         args.StringSliceArgs
	ExcludeLibraryVariableSetsRegex  args.StringSliceArgs
	ExcludeLibraryVariableSetsExcept args.StringSliceArgs
	ExcludeAllLibraryVariableSets    bool

	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	Excluder                  ExcludeByName
	ErrGroup                  *errgroup.Group
	LimitResourceCount        int
	// contains filtered or unexported fields
}

func (*LibraryVariableSetConverter) AllToHcl added in v0.1.874

func (c *LibraryVariableSetConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (*LibraryVariableSetConverter) AllToStatelessHcl added in v0.1.874

func (c *LibraryVariableSetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (*LibraryVariableSetConverter) GetResourceType

func (c *LibraryVariableSetConverter) GetResourceType() string

func (*LibraryVariableSetConverter) ToHclById

func (c *LibraryVariableSetConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (*LibraryVariableSetConverter) ToHclLookupById

func (c *LibraryVariableSetConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (*LibraryVariableSetConverter) ToHclStatelessById added in v0.1.945

func (c *LibraryVariableSetConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type LifecycleConverter

type LifecycleConverter struct {
	Client                   client.OctopusClient
	EnvironmentConverter     ConverterAndLookupWithStatelessById
	ErrGroup                 *errgroup.Group
	ExcludeLifecycles        args.StringSliceArgs
	ExcludeLifecyclesRegex   args.StringSliceArgs
	ExcludeLifecyclesExcept  args.StringSliceArgs
	ExcludeAllLifecycles     bool
	Excluder                 ExcludeByName
	LimitResourceCount       int
	IncludeSpaceInPopulation bool
	IncludeIds               bool
}

func (LifecycleConverter) AllToHcl added in v0.1.874

func (c LifecycleConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (LifecycleConverter) AllToStatelessHcl added in v0.1.874

func (c LifecycleConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (LifecycleConverter) GetResourceType

func (c LifecycleConverter) GetResourceType() string

func (LifecycleConverter) ToHclById

func (c LifecycleConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (LifecycleConverter) ToHclLookupById

func (c LifecycleConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (LifecycleConverter) ToHclStatelessById added in v0.1.945

func (c LifecycleConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type ListeningTargetConverter

type ListeningTargetConverter struct {
	TargetConverter

	MachinePolicyConverter   ConverterWithStatelessById
	EnvironmentConverter     ConverterAndLookupWithStatelessById
	ExcludeAllTargets        bool
	ExcludeTargets           args.StringSliceArgs
	ExcludeTargetsRegex      args.StringSliceArgs
	ExcludeTargetsExcept     args.StringSliceArgs
	ExcludeTenantTags        args.StringSliceArgs
	ExcludeTenantTagSets     args.StringSliceArgs
	TagSetConverter          ConvertToHclByResource[octopus.TagSet]
	ErrGroup                 *errgroup.Group
	LimitResourceCount       int
	IncludeIds               bool
	IncludeSpaceInPopulation bool
}

func (ListeningTargetConverter) AllToHcl added in v0.1.874

func (c ListeningTargetConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (ListeningTargetConverter) AllToStatelessHcl added in v0.1.874

func (c ListeningTargetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (ListeningTargetConverter) GetResourceType

func (c ListeningTargetConverter) GetResourceType() string

func (ListeningTargetConverter) ToHclById

func (c ListeningTargetConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (ListeningTargetConverter) ToHclLookupById

func (c ListeningTargetConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (ListeningTargetConverter) ToHclStatelessById added in v0.1.956

func (c ListeningTargetConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type MachinePolicyConverter

type MachinePolicyConverter struct {
	Client                       client.OctopusClient
	ErrGroup                     *errgroup.Group
	ExcludeMachinePolicies       args.StringSliceArgs
	ExcludeMachinePoliciesRegex  args.StringSliceArgs
	ExcludeMachinePoliciesExcept args.StringSliceArgs
	ExcludeAllMachinePolicies    bool
	Excluder                     ExcludeByName
	LimitResourceCount           int
	IncludeIds                   bool
	IncludeSpaceInPopulation     bool
}

func (MachinePolicyConverter) AllToHcl added in v0.1.874

func (c MachinePolicyConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (MachinePolicyConverter) AllToStatelessHcl added in v0.1.874

func (c MachinePolicyConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (MachinePolicyConverter) GetResourceType

func (c MachinePolicyConverter) GetResourceType() string

func (MachinePolicyConverter) ToHclById

func (c MachinePolicyConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (MachinePolicyConverter) ToHclStatelessById added in v0.1.956

func (c MachinePolicyConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type OctopusActionProcessor

type OctopusActionProcessor struct {
	FeedConverter           ConverterAndLookupWithStatelessById
	AccountConverter        ConverterAndLookupWithStatelessById
	WorkerPoolConverter     ConverterAndLookupWithStatelessById
	EnvironmentConverter    ConverterAndLookupWithStatelessById
	GitCredentialsConverter ConverterAndLookupWithStatelessById
	DetachProjectTemplates  bool
	WorkerPoolProcessor     OctopusWorkerPoolProcessor
}

OctopusActionProcessor exposes a bunch of common functions for exporting the processes associated with projects and runbooks.

func (OctopusActionProcessor) ConvertContainer

func (OctopusActionProcessor) DetachStepTemplates

func (c OctopusActionProcessor) DetachStepTemplates(properties map[string]string) map[string]string

DetachStepTemplates detaches step templates, which is achieved by removing the template properties

func (OctopusActionProcessor) EscapeDollars

func (c OctopusActionProcessor) EscapeDollars(properties map[string]string) map[string]string

EscapeDollars escapes variable interpolation https://developer.hashicorp.com/terraform/language/expressions/strings#escape-sequences

func (OctopusActionProcessor) EscapePercents

func (c OctopusActionProcessor) EscapePercents(properties map[string]string) map[string]string

EscapePercents escapes variable interpolation https://developer.hashicorp.com/terraform/language/expressions/strings#escape-sequences

func (OctopusActionProcessor) ExportAccounts

func (c OctopusActionProcessor) ExportAccounts(recursive bool, lookup bool, stateless bool, steps []octopus.Step, dependencies *data.ResourceDetailsCollection) error

func (OctopusActionProcessor) ExportEnvironments

func (c OctopusActionProcessor) ExportEnvironments(recursive bool, lookup bool, stateless bool, steps []octopus.Step, dependencies *data.ResourceDetailsCollection) error

func (OctopusActionProcessor) ExportFeeds

func (c OctopusActionProcessor) ExportFeeds(recursive bool, lookup bool, stateless bool, steps []octopus.Step, dependencies *data.ResourceDetailsCollection) error

func (OctopusActionProcessor) ExportWorkerPools

func (c OctopusActionProcessor) ExportWorkerPools(recursive bool, lookup bool, stateless bool, steps []octopus.Step, dependencies *data.ResourceDetailsCollection) error

func (OctopusActionProcessor) GetFeatures

func (c OctopusActionProcessor) GetFeatures(properties map[string]any) []string

func (OctopusActionProcessor) GetRoles

func (c OctopusActionProcessor) GetRoles(properties map[string]string) []string

func (OctopusActionProcessor) GetRunOnServer

func (c OctopusActionProcessor) GetRunOnServer(properties map[string]any) bool

func (OctopusActionProcessor) LimitPropertyLength added in v0.1.986

func (c OctopusActionProcessor) LimitPropertyLength(length int, retainVariables bool, properties map[string]string) map[string]string

LimitPropertyLength trims property bag values to a max length, if length is greater or equal to 0. If retainVariables is true, any variable references in the property are extracted and retained for context. The purpose of this is to reduce the length of the resulting HCL when used as context in a RAG query against an LLM. It has no valid use when generating HCL that is expected to be applied to an Octopus instance.

func (OctopusActionProcessor) RemoveUnnecessaryActionFields

func (c OctopusActionProcessor) RemoveUnnecessaryActionFields(properties map[string]string) map[string]string

RemoveUnnecessaryActionFields removes generic property bag values that have more specific terraform properties

func (OctopusActionProcessor) RemoveUnnecessaryStepFields

func (c OctopusActionProcessor) RemoveUnnecessaryStepFields(properties map[string]string) map[string]string

RemoveUnnecessaryStepFields removes generic property bag values that have more specific terraform properties

func (OctopusActionProcessor) ReplaceIds

func (c OctopusActionProcessor) ReplaceIds(properties map[string]string, dependencies *data.ResourceDetailsCollection) map[string]string

type OctopusWorkerPoolProcessor added in v0.1.458

type OctopusWorkerPoolProcessor struct {
	WorkerPoolConverter     ConverterAndLookupById
	LookupDefaultWorkerPool bool
	Client                  client.OctopusClient
	ErrGroup                *errgroup.Group
}

OctopusWorkerPoolProcessor exposes a bunch of common functions for exporting the processes associated with projects and runbooks.

func (OctopusWorkerPoolProcessor) ResolveWorkerPoolId added in v0.1.458

func (c OctopusWorkerPoolProcessor) ResolveWorkerPoolId(workerPoolId string) (string, error)

ResolveWorkerPoolId looks up the default worker pool if the action does not specify a pool. This allows the exported project to reference the same worker pool rather than falling back to the default.

type OfflineDropTargetConverter

type OfflineDropTargetConverter struct {
	TargetConverter

	MachinePolicyConverter    ConverterWithStatelessById
	EnvironmentConverter      ConverterAndLookupWithStatelessById
	ExcludeAllTargets         bool
	ExcludeTargets            args.StringSliceArgs
	ExcludeTargetsRegex       args.StringSliceArgs
	ExcludeTargetsExcept      args.StringSliceArgs
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ExcludeTenantTags         args.StringSliceArgs
	ExcludeTenantTagSets      args.StringSliceArgs
	TagSetConverter           ConvertToHclByResource[octopus.TagSet]
	ErrGroup                  *errgroup.Group
	IncludeIds                bool
	LimitResourceCount        int
	IncludeSpaceInPopulation  bool
}

func (OfflineDropTargetConverter) AllToHcl added in v0.1.874

func (c OfflineDropTargetConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (OfflineDropTargetConverter) AllToStatelessHcl added in v0.1.874

func (c OfflineDropTargetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (OfflineDropTargetConverter) GetResourceType

func (c OfflineDropTargetConverter) GetResourceType() string

func (OfflineDropTargetConverter) ToHclById

func (c OfflineDropTargetConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (OfflineDropTargetConverter) ToHclLookupById

func (c OfflineDropTargetConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (OfflineDropTargetConverter) ToHclStatelessById added in v0.1.956

func (c OfflineDropTargetConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type PollingTargetConverter

type PollingTargetConverter struct {
	TargetConverter

	MachinePolicyConverter   ConverterWithStatelessById
	EnvironmentConverter     ConverterAndLookupWithStatelessById
	ExcludeAllTargets        bool
	ExcludeTargets           args.StringSliceArgs
	ExcludeTargetsRegex      args.StringSliceArgs
	ExcludeTargetsExcept     args.StringSliceArgs
	ExcludeTenantTags        args.StringSliceArgs
	ExcludeTenantTagSets     args.StringSliceArgs
	TagSetConverter          ConvertToHclByResource[octopus.TagSet]
	ErrGroup                 *errgroup.Group
	IncludeIds               bool
	LimitResourceCount       int
	IncludeSpaceInPopulation bool
}

func (PollingTargetConverter) AllToHcl added in v0.1.874

func (c PollingTargetConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (PollingTargetConverter) AllToStatelessHcl added in v0.1.874

func (c PollingTargetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (PollingTargetConverter) GetResourceType

func (c PollingTargetConverter) GetResourceType() string

func (PollingTargetConverter) ToHclById

func (c PollingTargetConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (PollingTargetConverter) ToHclLookupById

func (c PollingTargetConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (PollingTargetConverter) ToHclStatelessById added in v0.1.956

func (c PollingTargetConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type ProjectConverter

type ProjectConverter struct {
	Client                      client.OctopusClient
	LifecycleConverter          ConverterAndLookupWithStatelessById
	GitCredentialsConverter     ConverterAndLookupWithStatelessById
	LibraryVariableSetConverter ConverterAndLookupWithStatelessById
	ProjectGroupConverter       ConverterAndLookupWithStatelessById
	DeploymentProcessConverter  ConverterAndLookupByIdAndNameOrBranch
	TenantConverter             ConverterAndLookupByProjectId
	ProjectTriggerConverter     ConverterByProjectIdWithName
	VariableSetConverter        ConverterAndLookupByProjectIdAndName
	ChannelConverter            ConverterAndLookupByProjectIdWithTerraDependencies
	RunbookConverter            ConverterAndLookupByIdAndName
	IgnoreCacManagedValues      bool
	ExcludeCaCProjectSettings   bool
	ExcludeAllRunbooks          bool
	IgnoreProjectChanges        bool
	IgnoreProjectGroupChanges   bool
	IgnoreProjectNameChanges    bool
	ExcludeProjects             args.StringSliceArgs
	ExcludeProjectsExcept       args.StringSliceArgs
	ExcludeProjectsRegex        args.StringSliceArgs
	ExcludeAllProjects          bool
	DummySecretVariableValues   bool
	DummySecretGenerator        DummySecretGenerator
	Excluder                    ExcludeByName
	// This is set to true when this converter is only to be used to call ToHclLookupById
	LookupOnlyMode            bool
	ErrGroup                  *errgroup.Group
	ExcludeTerraformVariables bool
	IncludeIds                bool
	LimitResourceCount        int
	IncludeSpaceInPopulation  bool
}

func (*ProjectConverter) AllToHcl added in v0.1.874

func (c *ProjectConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (*ProjectConverter) AllToStatelessHcl added in v0.1.874

func (c *ProjectConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (*ProjectConverter) GetResourceType

func (c *ProjectConverter) GetResourceType() string

func (*ProjectConverter) ToHclById

func (c *ProjectConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (*ProjectConverter) ToHclByIdWithLookups added in v0.1.714

func (c *ProjectConverter) ToHclByIdWithLookups(id string, dependencies *data.ResourceDetailsCollection) error

ToHclByIdWithLookups exports a self-contained representation of the project where external resources like environments, lifecycles, feeds, accounts etc are resolved with data lookups.

func (*ProjectConverter) ToHclLookupById

func (c *ProjectConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (*ProjectConverter) ToHclStatelessById added in v0.1.931

func (c *ProjectConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type ProjectGroupConverter

type ProjectGroupConverter struct {
	Client                     client.OctopusClient
	ErrGroup                   *errgroup.Group
	ExcludeProjectGroups       args.StringSliceArgs
	ExcludeProjectGroupsRegex  args.StringSliceArgs
	ExcludeProjectGroupsExcept args.StringSliceArgs
	ExcludeAllProjectGroups    bool
	Excluder                   ExcludeByName
	LimitResourceCount         int
	IncludeSpaceInPopulation   bool
	IncludeIds                 bool
}

func (ProjectGroupConverter) AllToHcl added in v0.1.874

func (c ProjectGroupConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (ProjectGroupConverter) AllToStatelessHcl added in v0.1.874

func (c ProjectGroupConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (ProjectGroupConverter) GetResourceType

func (c ProjectGroupConverter) GetResourceType() string

func (ProjectGroupConverter) ToHclById

func (c ProjectGroupConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (ProjectGroupConverter) ToHclLookupById

func (c ProjectGroupConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (ProjectGroupConverter) ToHclStatelessById added in v0.1.945

func (c ProjectGroupConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type ProjectTriggerConverter

type ProjectTriggerConverter struct {
	Client             client.OctopusClient
	LimitResourceCount int
	IncludeIds         bool
}

func (ProjectTriggerConverter) GetGroupResourceType

func (c ProjectTriggerConverter) GetGroupResourceType(projectId string) string

func (ProjectTriggerConverter) GetResourceType

func (c ProjectTriggerConverter) GetResourceType() string

func (ProjectTriggerConverter) ToHclByProjectIdAndName

func (c ProjectTriggerConverter) ToHclByProjectIdAndName(projectId string, projectName string, dependencies *data.ResourceDetailsCollection) error

type RunbookConverter

type RunbookConverter struct {
	Client                  client.OctopusClient
	RunbookProcessConverter ConverterAndLookupByIdAndName
	EnvironmentConverter    ConverterAndLookupWithStatelessById
	ProjectConverter        ConverterAndLookupWithStatelessById
	ExcludedRunbooks        args.StringSliceArgs
	ExcludeRunbooksRegex    args.StringSliceArgs
	ExcludeRunbooksExcept   args.StringSliceArgs
	ExcludeAllRunbooks      bool

	Excluder                 ExcludeByName
	IgnoreProjectChanges     bool
	ErrGroup                 *errgroup.Group
	LimitResourceCount       int
	IncludeSpaceInPopulation bool
	IncludeIds               bool
	// contains filtered or unexported fields
}

func (*RunbookConverter) GetGroupResourceType

func (c *RunbookConverter) GetGroupResourceType(projectId string) string

func (*RunbookConverter) GetResourceType

func (c *RunbookConverter) GetResourceType() string

func (*RunbookConverter) ToHclByIdAndName

func (c *RunbookConverter) ToHclByIdAndName(projectId string, projectName string, recursive bool, dependencies *data.ResourceDetailsCollection) error

func (*RunbookConverter) ToHclByIdWithLookups added in v0.1.714

func (c *RunbookConverter) ToHclByIdWithLookups(id string, dependencies *data.ResourceDetailsCollection) error

func (*RunbookConverter) ToHclLookupByIdAndName

func (c *RunbookConverter) ToHclLookupByIdAndName(projectId string, projectName string, dependencies *data.ResourceDetailsCollection) error

func (*RunbookConverter) ToHclStatelessByIdAndName added in v0.1.956

func (c *RunbookConverter) ToHclStatelessByIdAndName(projectId string, projectName string, dependencies *data.ResourceDetailsCollection) error

type RunbookProcessConverter

type RunbookProcessConverter struct {
	Client                     client.OctopusClient
	OctopusActionProcessor     OctopusActionProcessor
	IgnoreProjectChanges       bool
	WorkerPoolProcessor        OctopusWorkerPoolProcessor
	ExcludeTenantTags          args.StringSliceArgs
	ExcludeTenantTagSets       args.StringSliceArgs
	Excluder                   ExcludeByName
	TagSetConverter            ConvertToHclByResource[octopus.TagSet]
	LimitAttributeLength       int
	ExcludeAllSteps            bool
	ExcludeSteps               args.StringSliceArgs
	ExcludeStepsRegex          args.StringSliceArgs
	ExcludeStepsExcept         args.StringSliceArgs
	IgnoreInvalidExcludeExcept bool
}

func (RunbookProcessConverter) GetResourceType

func (c RunbookProcessConverter) GetResourceType() string

func (RunbookProcessConverter) ToHclByIdAndName

func (c RunbookProcessConverter) ToHclByIdAndName(id string, runbookName string, recursive bool, dependencies *data.ResourceDetailsCollection) error

func (RunbookProcessConverter) ToHclLookupByIdAndName

func (c RunbookProcessConverter) ToHclLookupByIdAndName(id string, runbookName string, dependencies *data.ResourceDetailsCollection) error

func (RunbookProcessConverter) ToHclStatelessByIdAndName added in v0.1.956

func (c RunbookProcessConverter) ToHclStatelessByIdAndName(id string, runbookName string, dependencies *data.ResourceDetailsCollection) error

type SpaceConverter

type SpaceConverter struct {
	Client                            client.OctopusClient
	AccountConverter                  Converter
	FeedConverter                     Converter
	EnvironmentConverter              Converter
	LibraryVariableSetConverter       Converter
	LifecycleConverter                Converter
	WorkerPoolConverter               Converter
	TagSetConverter                   Converter
	GitCredentialsConverter           Converter
	ProjectGroupConverter             Converter
	ProjectConverter                  Converter
	TenantConverter                   Converter
	CertificateConverter              Converter
	TenantVariableConverter           Converter
	MachinePolicyConverter            Converter
	KubernetesTargetConverter         Converter
	SshTargetConverter                Converter
	ListeningTargetConverter          Converter
	PollingTargetConverter            Converter
	CloudRegionTargetConverter        Converter
	OfflineDropTargetConverter        Converter
	AzureCloudServiceTargetConverter  Converter
	AzureServiceFabricTargetConverter Converter
	AzureWebAppTargetConverter        Converter
	SpacePopulateConverter            Converter
	ErrGroup                          *errgroup.Group
	ExcludeSpaceCreation              bool
}

SpaceConverter creates the files required to create a new space. These files are used in a separate terraform project, as you first need to a create a space, and then configure a second provider to use that space.

func (SpaceConverter) AllToHcl added in v0.1.874

func (c SpaceConverter) AllToHcl(dependencies *data.ResourceDetailsCollection) error

AllToHcl is a bulk export that takes advantage of the collection endpoints to download and export everything with no filter and with the least number of network calls.

func (SpaceConverter) AllToStatelessHcl added in v0.1.874

func (c SpaceConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection) error

AllToStatelessHcl is a bulk export that takes advantage of the collection endpoints to download and export everything with no filter and with the least number of network calls. The exported module is suitable for a stateless terraform apply.

type SpacePopulateConverter added in v0.1.1076

type SpacePopulateConverter struct {
	Client                   client.OctopusClient
	IncludeSpaceInPopulation bool
	IncludeIds               bool
	ErrGroup                 *errgroup.Group
}

SpacePopulateConverter creates a space resource in the space population scripts. This has no value when creating Terraform modules to apply to live systems (and will likely break thins), and is only used when creating the context for a LLM query to indicate the space that the query relates to.

func (SpacePopulateConverter) AllToHcl added in v0.1.1076

func (c SpacePopulateConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

AllToHcl is a bulk export that takes advantage of the collection endpoints to download and export everything with no filter and with the least number of network calls.

func (SpacePopulateConverter) AllToStatelessHcl added in v0.1.1076

func (c SpacePopulateConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

AllToStatelessHcl is not used when exporting stateless resources

type SshTargetConverter

type SshTargetConverter struct {
	TargetConverter

	MachinePolicyConverter   ConverterWithStatelessById
	AccountConverter         ConverterAndLookupWithStatelessById
	EnvironmentConverter     ConverterAndLookupWithStatelessById
	ExcludeAllTargets        bool
	ExcludeTargets           args.StringSliceArgs
	ExcludeTargetsRegex      args.StringSliceArgs
	ExcludeTargetsExcept     args.StringSliceArgs
	ExcludeTenantTags        args.StringSliceArgs
	ExcludeTenantTagSets     args.StringSliceArgs
	TagSetConverter          ConvertToHclByResource[octopus.TagSet]
	ErrGroup                 *errgroup.Group
	IncludeIds               bool
	LimitResourceCount       int
	IncludeSpaceInPopulation bool
}

func (SshTargetConverter) AllToHcl added in v0.1.874

func (c SshTargetConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (SshTargetConverter) AllToStatelessHcl added in v0.1.874

func (c SshTargetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (SshTargetConverter) GetResourceType

func (c SshTargetConverter) GetResourceType() string

func (SshTargetConverter) ToHclById

func (c SshTargetConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (SshTargetConverter) ToHclLookupById

func (c SshTargetConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (SshTargetConverter) ToHclStatelessById added in v0.1.956

func (c SshTargetConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

type TagSetConverter

type TagSetConverter struct {
	Client                     client.OctopusClient
	ExcludeTenantTags          args.StringSliceArgs
	ExcludeTenantTagSets       args.StringSliceArgs
	ExcludeTenantTagSetsRegex  args.StringSliceArgs
	ExcludeTenantTagSetsExcept args.StringSliceArgs
	ExcludeAllTenantTagSets    bool
	Excluder                   ExcludeByName
	ErrGroup                   *errgroup.Group
	LimitResourceCount         int
}

func (*TagSetConverter) AllToHcl added in v0.1.874

func (c *TagSetConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (*TagSetConverter) AllToStatelessHcl added in v0.1.874

func (c *TagSetConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (*TagSetConverter) GetResourceType

func (c *TagSetConverter) GetResourceType() string

func (*TagSetConverter) ToHclByResource

func (c *TagSetConverter) ToHclByResource(tagSet octopus2.TagSet, dependencies *data.ResourceDetailsCollection) error

type TargetConverter added in v0.1.1080

type TargetConverter struct {
	Client                           client.OctopusClient
	ExcludeEnvironments              args.StringSliceArgs
	ExcludeEnvironmentsRegex         args.StringSliceArgs
	ExcludeEnvironmentsExcept        args.StringSliceArgs
	ExcludeAllEnvironments           bool
	ExcludeTargetsWithNoEnvironments bool
	Excluder                         ExcludeByName
}

func (TargetConverter) HasNoEnvironments added in v0.1.1080

func (c TargetConverter) HasNoEnvironments(target octopus.TargetResource) (error, bool)

type TenantConverter

type TenantConverter struct {
	Client                   client.OctopusClient
	TenantVariableConverter  ConverterByTenantId
	EnvironmentConverter     ConverterAndLookupWithStatelessById
	TagSetConverter          ConvertToHclByResource[octopus2.TagSet]
	ExcludeTenantTagSets     args.StringSliceArgs
	ExcludeTenantTags        args.StringSliceArgs
	ExcludeTenants           args.StringSliceArgs
	ExcludeTenantsRegex      args.StringSliceArgs
	ExcludeTenantsWithTags   args.StringSliceArgs
	ExcludeTenantsExcept     args.StringSliceArgs
	ExcludeAllTenants        bool
	Excluder                 ExcludeByName
	ExcludeProjects          args.StringSliceArgs
	ExcludeProjectsExcept    args.StringSliceArgs
	ExcludeProjectsRegex     args.StringSliceArgs
	ExcludeAllProjects       bool
	ErrGroup                 *errgroup.Group
	IncludeIds               bool
	LimitResourceCount       int
	IncludeSpaceInPopulation bool
}

func (*TenantConverter) AllToHcl added in v0.1.874

func (c *TenantConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (*TenantConverter) AllToStatelessHcl added in v0.1.874

func (c *TenantConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (*TenantConverter) GetResourceType

func (c *TenantConverter) GetResourceType() string

func (*TenantConverter) ToHclById

func (c *TenantConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (*TenantConverter) ToHclByProjectId

func (c *TenantConverter) ToHclByProjectId(projectId string, dependencies *data.ResourceDetailsCollection) error

func (*TenantConverter) ToHclLookupByProjectId

func (c *TenantConverter) ToHclLookupByProjectId(projectId string, dependencies *data.ResourceDetailsCollection) error

func (*TenantConverter) ToHclStatelessByProjectId added in v0.1.945

func (c *TenantConverter) ToHclStatelessByProjectId(projectId string, dependencies *data.ResourceDetailsCollection) error

type TenantTagDependencyGenerator added in v0.1.673

type TenantTagDependencyGenerator struct {
}

TenantTagDependencyGenerator deals with the unusual case where Octopus resources link to each other by name rather than by ID. This forces us to manually define the dependencies between resources, otherwise Terraform may create a resource like an account before it creates the tagset that the account references.

func (TenantTagDependencyGenerator) AddAndWriteTagSetDependencies added in v0.1.673

func (t TenantTagDependencyGenerator) AddAndWriteTagSetDependencies(client client.OctopusClient, tenantTags []string, tagSetConverter ConvertToHclByResource[octopus.TagSet], block *hclwrite.Block, dependencies *data.ResourceDetailsCollection, recursive bool) error

AddAndWriteTagSetDependencies writes a depends_on block to a terraform resource, and optionally recursively includes the tagsets that the resource depends on.

func (TenantTagDependencyGenerator) AddTagSetDependencies added in v0.1.673

func (t TenantTagDependencyGenerator) AddTagSetDependencies(tagSets []octopus.TagSet, tagSetConverter ConvertToHclByResource[octopus.TagSet], dependencies *data.ResourceDetailsCollection) error

func (TenantTagDependencyGenerator) FindDependencies added in v0.1.673

func (t TenantTagDependencyGenerator) FindDependencies(tenantTags []string, collection octopus.GeneralCollection[octopus.TagSet]) ([]octopus.TagSet, []octopus.Tag, error)

FindDependencies returns the tag sets and tags that are references by the tenant tags

func (TenantTagDependencyGenerator) WriteTagSetDependencies added in v0.1.673

func (t TenantTagDependencyGenerator) WriteTagSetDependencies(tagSets []octopus.TagSet, tags []octopus.Tag, block *hclwrite.Block, dependencies *data.ResourceDetailsCollection) error

type TenantVariableConverter

type TenantVariableConverter struct {
	Client                       client.OctopusClient
	ExcludeTenants               args.StringSliceArgs
	ExcludeTenantsWithTags       args.StringSliceArgs
	ExcludeTenantsExcept         args.StringSliceArgs
	ExcludeAllTenants            bool
	Excluder                     ExcludeByName
	DummySecretVariableValues    bool
	DummySecretGenerator         DummySecretGenerator
	ExcludeProjects              args.StringSliceArgs
	ExcludeProjectsExcept        args.StringSliceArgs
	ExcludeProjectsRegex         args.StringSliceArgs
	ExcludeAllProjects           bool
	ErrGroup                     *errgroup.Group
	ExcludeAllTenantVariables    bool
	ExcludeTenantVariables       args.StringSliceArgs
	ExcludeTenantVariablesExcept args.StringSliceArgs
	ExcludeTenantVariablesRegex  args.StringSliceArgs
}

func (TenantVariableConverter) AllToHcl added in v0.1.874

func (c TenantVariableConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (TenantVariableConverter) AllToStatelessHcl added in v0.1.874

func (c TenantVariableConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (TenantVariableConverter) GetResourceType

func (c TenantVariableConverter) GetResourceType() string

func (TenantVariableConverter) ToHclByTenantId

func (c TenantVariableConverter) ToHclByTenantId(id string, dependencies *data.ResourceDetailsCollection) error

type TerraformProviderGenerator

type TerraformProviderGenerator struct {
	TerraformBackend         string
	ProviderVersion          string
	ExcludeProvider          bool
	IncludeOctopusOutputVars bool
}

TerraformProviderGenerator creates the common terraform files required to populate a space including the provider, terraform config, and common vars

func (TerraformProviderGenerator) ToHcl

func (c TerraformProviderGenerator) ToHcl(directory string, includeSpaceId bool, dependencies *data.ResourceDetailsCollection)

type VariableSetConverter

type VariableSetConverter struct {
	Client                            client.OctopusClient
	ChannelConverter                  ConverterByProjectIdWithTerraDependencies
	EnvironmentConverter              ConverterAndLookupWithStatelessById
	TagSetConverter                   ConvertToHclByResource[octopus.TagSet]
	AzureCloudServiceTargetConverter  ConverterAndLookupWithStatelessById
	AzureServiceFabricTargetConverter ConverterAndLookupWithStatelessById
	AzureWebAppTargetConverter        ConverterAndLookupWithStatelessById
	CloudRegionTargetConverter        ConverterAndLookupWithStatelessById
	KubernetesTargetConverter         ConverterAndLookupWithStatelessById
	ListeningTargetConverter          ConverterAndLookupWithStatelessById
	OfflineDropTargetConverter        ConverterAndLookupWithStatelessById
	PollingTargetConverter            ConverterAndLookupWithStatelessById
	SshTargetConverter                ConverterAndLookupWithStatelessById
	AccountConverter                  ConverterAndLookupWithStatelessById
	FeedConverter                     ConverterAndLookupWithStatelessById
	CertificateConverter              ConverterAndLookupWithStatelessById
	WorkerPoolConverter               ConverterAndLookupWithStatelessById
	IgnoreCacManagedValues            bool
	DefaultSecretVariableValues       bool
	DummySecretVariableValues         bool
	ExcludeAllProjectVariables        bool
	ExcludeProjectVariables           args.StringSliceArgs
	ExcludeProjectVariablesExcept     args.StringSliceArgs
	ExcludeProjectVariablesRegex      args.StringSliceArgs
	IgnoreProjectChanges              bool
	DummySecretGenerator              DummySecretGenerator
	ExcludeVariableEnvironmentScopes  args.StringSliceArgs

	Excluder                  ExcludeByName
	ErrGroup                  *errgroup.Group
	ExcludeTerraformVariables bool
	LimitAttributeLength      int
	StatelessAdditionalParams args.StringSliceArgs
	// contains filtered or unexported fields
}

VariableSetConverter exports variable sets. Note that we only access variable sets as dependencies of other resources, like project variables or library variable sets. There is no global collection or all endpoint that we can use to dump variables in bulk.

func (*VariableSetConverter) GetGroupResourceType

func (c *VariableSetConverter) GetGroupResourceType(projectId string) string

func (*VariableSetConverter) GetResourceType

func (c *VariableSetConverter) GetResourceType() string

func (*VariableSetConverter) ToHclByIdAndName

func (c *VariableSetConverter) ToHclByIdAndName(id string, recursive bool, parentName string, parentLookup string, parentCount *string, dependencies *data.ResourceDetailsCollection) error

func (*VariableSetConverter) ToHclByProjectIdAndName

func (c *VariableSetConverter) ToHclByProjectIdAndName(projectId string, parentName string, parentLookup string, parentCount *string, recursive bool, dependencies *data.ResourceDetailsCollection) error

ToHclByProjectIdAndName is called when returning variables from projects. This is because the variable set ID defined on a CaC enabled project is not available from the global /variablesets endpoint, and can only be accessed from the project resource.

func (*VariableSetConverter) ToHclByProjectIdBranchAndName added in v0.1.927

func (c *VariableSetConverter) ToHclByProjectIdBranchAndName(projectId string, branch string, parentName string, parentLookup string, parentCount *string, recursive bool, dependencies *data.ResourceDetailsCollection) error

func (*VariableSetConverter) ToHclLookupByIdAndName

func (c *VariableSetConverter) ToHclLookupByIdAndName(id string, parentName string, parentLookup string, dependencies *data.ResourceDetailsCollection) error

ToHclLookupByIdAndName exports the variable set as a complete resource, but will reference external resources like accounts, feeds, worker pools, certificates, environments, and targets as data source lookups.

func (*VariableSetConverter) ToHclLookupByProjectIdAndName

func (c *VariableSetConverter) ToHclLookupByProjectIdAndName(projectId string, parentName string, parentLookup string, dependencies *data.ResourceDetailsCollection) error

func (*VariableSetConverter) ToHclLookupByProjectIdBranchAndName added in v0.1.927

func (c *VariableSetConverter) ToHclLookupByProjectIdBranchAndName(projectId string, branch string, parentName string, parentLookup string, dependencies *data.ResourceDetailsCollection) error

func (*VariableSetConverter) ToHclStatelessByIdAndName added in v0.1.956

func (c *VariableSetConverter) ToHclStatelessByIdAndName(id string, recursive bool, parentName string, parentLookup string, parentCount *string, dependencies *data.ResourceDetailsCollection) error

func (*VariableSetConverter) ToHclStatelessByProjectIdBranchAndName added in v0.1.1051

func (c *VariableSetConverter) ToHclStatelessByProjectIdBranchAndName(projectId string, branch string, parentName string, parentLookup string, parentCount *string, recursive bool, dependencies *data.ResourceDetailsCollection) error

type WorkerPoolConverter

type WorkerPoolConverter struct {
	Client                   client.OctopusClient
	ErrGroup                 *errgroup.Group
	ExcludeWorkerpools       args.StringSliceArgs
	ExcludeWorkerpoolsRegex  args.StringSliceArgs
	ExcludeWorkerpoolsExcept args.StringSliceArgs
	ExcludeAllWorkerpools    bool
	Excluder                 ExcludeByName
	LimitResourceCount       int
	IncludeSpaceInPopulation bool
	IncludeIds               bool
}

func (WorkerPoolConverter) AllToHcl added in v0.1.874

func (c WorkerPoolConverter) AllToHcl(dependencies *data.ResourceDetailsCollection)

func (WorkerPoolConverter) AllToStatelessHcl added in v0.1.874

func (c WorkerPoolConverter) AllToStatelessHcl(dependencies *data.ResourceDetailsCollection)

func (WorkerPoolConverter) GetResourceType

func (c WorkerPoolConverter) GetResourceType() string

func (WorkerPoolConverter) ToHclById

func (c WorkerPoolConverter) ToHclById(id string, dependencies *data.ResourceDetailsCollection) error

func (WorkerPoolConverter) ToHclLookupById

func (c WorkerPoolConverter) ToHclLookupById(id string, dependencies *data.ResourceDetailsCollection) error

func (WorkerPoolConverter) ToHclStatelessById added in v0.1.956

func (c WorkerPoolConverter) ToHclStatelessById(id string, dependencies *data.ResourceDetailsCollection) error

Jump to

Keyboard shortcuts

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