converters

package
v0.1.903 Latest Latest
Warning

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

Go to latest
Published: Feb 7, 2024 License: Apache-2.0, MIT Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccountConverter

type AccountConverter struct {
	Client                    client.OctopusClient
	EnvironmentConverter      ConverterById
	TenantConverter           ConverterById
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ExcludeTenantTags         args.ExcludeTenantTags
	ExcludeTenantTagSets      args.ExcludeTenantTagSets
	Excluder                  ExcludeByName
	TagSetConverter           TagSetConverter
}

func (AccountConverter) AllToHcl added in v0.1.874

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

func (AccountConverter) AllToStatelessHcl added in v0.1.874

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

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

type AzureCloudServiceTargetConverter

type AzureCloudServiceTargetConverter struct {
	Client                 client.OctopusClient
	MachinePolicyConverter ConverterById
	AccountConverter       ConverterById
	EnvironmentConverter   ConverterById
	ExcludeAllTargets      bool
	ExcludeTargets         args.ExcludeTargets
	ExcludeTargetsRegex    args.ExcludeTargets
	ExcludeTargetsExcept   args.ExcludeTargets
	ExcludeTenantTags      args.ExcludeTenantTags
	ExcludeTenantTagSets   args.ExcludeTenantTagSets
	Excluder               ExcludeByName
	TagSetConverter        TagSetConverter
}

func (AzureCloudServiceTargetConverter) AllToHcl added in v0.1.874

func (AzureCloudServiceTargetConverter) AllToStatelessHcl added in v0.1.874

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

func (AzureCloudServiceTargetConverter) GetResourceType

func (c AzureCloudServiceTargetConverter) GetResourceType() string

func (AzureCloudServiceTargetConverter) ToHclById

func (AzureCloudServiceTargetConverter) ToHclLookupById

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

type AzureServiceFabricTargetConverter

type AzureServiceFabricTargetConverter struct {
	Client                    client.OctopusClient
	MachinePolicyConverter    ConverterById
	EnvironmentConverter      ConverterById
	ExcludeAllTargets         bool
	ExcludeTargets            args.ExcludeTargets
	ExcludeTargetsRegex       args.ExcludeTargets
	ExcludeTargetsExcept      args.ExcludeTargets
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ExcludeTenantTags         args.ExcludeTenantTags
	ExcludeTenantTagSets      args.ExcludeTenantTagSets
	Excluder                  ExcludeByName
	TagSetConverter           TagSetConverter
}

func (AzureServiceFabricTargetConverter) AllToHcl added in v0.1.874

func (AzureServiceFabricTargetConverter) AllToStatelessHcl added in v0.1.874

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

func (AzureServiceFabricTargetConverter) GetResourceType

func (c AzureServiceFabricTargetConverter) GetResourceType() string

func (AzureServiceFabricTargetConverter) ToHclById

func (AzureServiceFabricTargetConverter) ToHclLookupById

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

type AzureWebAppTargetConverter

type AzureWebAppTargetConverter struct {
	Client                 client.OctopusClient
	MachinePolicyConverter ConverterById
	AccountConverter       ConverterById
	EnvironmentConverter   ConverterById
	ExcludeAllTargets      bool
	ExcludeTargets         args.ExcludeTargets
	ExcludeTargetsRegex    args.ExcludeTargets
	ExcludeTargetsExcept   args.ExcludeTargets
	ExcludeTenantTags      args.ExcludeTenantTags
	ExcludeTenantTagSets   args.ExcludeTenantTagSets
	Excluder               ExcludeByName
	TagSetConverter        TagSetConverter
}

func (AzureWebAppTargetConverter) AllToHcl added in v0.1.874

func (AzureWebAppTargetConverter) AllToStatelessHcl added in v0.1.874

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

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

type CertificateConverter

type CertificateConverter struct {
	Client                    client.OctopusClient
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ExcludeTenantTags         args.ExcludeTenantTags
	ExcludeTenantTagSets      args.ExcludeTenantTagSets
	Excluder                  ExcludeByName
	TagSetConverter           TagSetConverter
}

func (CertificateConverter) AllToHcl added in v0.1.874

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

func (CertificateConverter) AllToStatelessHcl added in v0.1.874

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

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

type ChannelConverter

type ChannelConverter struct {
	Client               client.OctopusClient
	LifecycleConverter   ConverterAndLookupById
	ExcludeTenantTags    args.ExcludeTenantTags
	ExcludeTenantTagSets args.ExcludeTenantTagSets
	Excluder             ExcludeByName
}

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.

type CloudRegionTargetConverter

type CloudRegionTargetConverter struct {
	Client                 client.OctopusClient
	MachinePolicyConverter ConverterById
	EnvironmentConverter   ConverterById
	ExcludeAllTargets      bool
	ExcludeTargets         args.ExcludeTargets
	ExcludeTargetsRegex    args.ExcludeTargets
	ExcludeTargetsExcept   args.ExcludeTargets
	ExcludeTenantTags      args.ExcludeTenantTags
	ExcludeTenantTagSets   args.ExcludeTenantTagSets
	Excluder               ExcludeByName
	TagSetConverter        TagSetConverter
}

func (CloudRegionTargetConverter) AllToHcl added in v0.1.874

func (CloudRegionTargetConverter) AllToStatelessHcl added in v0.1.874

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

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

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) error
	// AllToStatelessHcl converts all the resources of a given type to a stateless HCL module suitable for a step template.
	AllToStatelessHcl(dependencies *data.ResourceDetailsCollection) error
}

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 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
	ConverterLookupByProjectId
}

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

type ConverterAndLookupByProjectIdAndName

type ConverterAndLookupByProjectIdAndName interface {
	ConverterByProjectIdAndName
	ConverterLookupByProjectIdAndName
}

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 ConverterAndWithLookupsById added in v0.1.714

type ConverterAndWithLookupsById interface {
	ConverterById
	ConverterLookupById
	ConverterByIdWithLookups
}

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, 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
}

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, dependencies *data.ResourceDetailsCollection) error
}

ConverterByProjectIdAndName converts objects based on their relationship to a project, 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
}

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 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, 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 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.ExcludeTenantTags, excludeTenantTagSets args.ExcludeTenantTagSets) []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.ExcludeTenantTags
	ExcludeTenantTagSets   args.ExcludeTenantTagSets
	Excluder               ExcludeByName
	TagSetConverter        TagSetConverter
}

func (DeploymentProcessConverter) GetResourceType

func (c DeploymentProcessConverter) GetResourceType() string

func (DeploymentProcessConverter) ToHclByIdAndName

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

func (DeploymentProcessConverter) ToHclLookupByIdAndName

func (c DeploymentProcessConverter) ToHclLookupByIdAndName(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
}

func (EnvironmentConverter) AllToHcl added in v0.1.874

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

func (EnvironmentConverter) AllToStatelessHcl added in v0.1.874

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

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

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.ExcludeTenantTags, excludeTenantTagSets args.ExcludeTenantTagSets) []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
}

func (FeedConverter) AllToHcl added in v0.1.874

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

func (FeedConverter) AllToStatelessHcl added in v0.1.874

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

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

type GitCredentialsConverter

type GitCredentialsConverter struct {
	Client                    client.OctopusClient
	SpaceResourceName         string
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
}

func (GitCredentialsConverter) AllToHcl added in v0.1.874

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

func (GitCredentialsConverter) AllToStatelessHcl added in v0.1.874

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

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

type KubernetesTargetConverter

type KubernetesTargetConverter struct {
	Client                 client.OctopusClient
	MachinePolicyConverter ConverterById
	AccountConverter       ConverterById
	CertificateConverter   ConverterById
	EnvironmentConverter   ConverterById
	ExcludeAllTargets      bool
	ExcludeTargets         args.ExcludeTargets
	ExcludeTargetsRegex    args.ExcludeTargets
	ExcludeTargetsExcept   args.ExcludeTargets
	ExcludeTenantTags      args.ExcludeTenantTags
	ExcludeTenantTagSets   args.ExcludeTenantTagSets
	Excluder               ExcludeByName
	TagSetConverter        TagSetConverter
}

func (KubernetesTargetConverter) AllToHcl added in v0.1.874

func (KubernetesTargetConverter) AllToStatelessHcl added in v0.1.874

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

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

type LibraryVariableSetConverter

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

	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	Excluder                  ExcludeByName
	// contains filtered or unexported fields
}

func (*LibraryVariableSetConverter) AllToHcl added in v0.1.874

func (*LibraryVariableSetConverter) AllToStatelessHcl added in v0.1.874

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

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

type LifecycleConverter

type LifecycleConverter struct {
	Client               client.OctopusClient
	EnvironmentConverter ConverterById
}

func (LifecycleConverter) AllToHcl added in v0.1.874

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

func (LifecycleConverter) AllToStatelessHcl added in v0.1.874

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

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

type ListeningTargetConverter

type ListeningTargetConverter struct {
	Client                 client.OctopusClient
	MachinePolicyConverter ConverterById
	EnvironmentConverter   ConverterById
	ExcludeAllTargets      bool
	ExcludeTargets         args.ExcludeTargets
	ExcludeTargetsRegex    args.ExcludeTargets
	ExcludeTargetsExcept   args.ExcludeTargets
	ExcludeTenantTags      args.ExcludeTenantTags
	ExcludeTenantTagSets   args.ExcludeTenantTagSets
	Excluder               ExcludeByName
	TagSetConverter        TagSetConverter
}

func (ListeningTargetConverter) AllToHcl added in v0.1.874

func (ListeningTargetConverter) AllToStatelessHcl added in v0.1.874

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

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

type MachinePolicyConverter

type MachinePolicyConverter struct {
	Client client.OctopusClient
}

func (MachinePolicyConverter) AllToHcl added in v0.1.874

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

func (MachinePolicyConverter) AllToStatelessHcl added in v0.1.874

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

func (MachinePolicyConverter) GetResourceType

func (c MachinePolicyConverter) GetResourceType() string

func (MachinePolicyConverter) ToHclById

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

type OctopusActionProcessor

type OctopusActionProcessor struct {
	FeedConverter           ConverterAndLookupById
	AccountConverter        ConverterAndLookupById
	WorkerPoolConverter     ConverterAndLookupById
	EnvironmentConverter    ConverterAndLookupById
	GitCredentialsConverter ConverterAndLookupById
	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, steps []octopus.Step, dependencies *data.ResourceDetailsCollection) error

func (OctopusActionProcessor) ExportEnvironments

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

func (OctopusActionProcessor) ExportFeeds

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

func (OctopusActionProcessor) ExportWorkerPools

func (c OctopusActionProcessor) ExportWorkerPools(recursive bool, lookup 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) 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
}

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 {
	Client                    client.OctopusClient
	MachinePolicyConverter    ConverterById
	EnvironmentConverter      ConverterById
	ExcludeAllTargets         bool
	ExcludeTargets            args.ExcludeTargets
	ExcludeTargetsRegex       args.ExcludeTargets
	ExcludeTargetsExcept      args.ExcludeTargets
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ExcludeTenantTags         args.ExcludeTenantTags
	ExcludeTenantTagSets      args.ExcludeTenantTagSets
	Excluder                  ExcludeByName
	TagSetConverter           TagSetConverter
}

func (OfflineDropTargetConverter) AllToHcl added in v0.1.874

func (OfflineDropTargetConverter) AllToStatelessHcl added in v0.1.874

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

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

type PollingTargetConverter

type PollingTargetConverter struct {
	Client                 client.OctopusClient
	MachinePolicyConverter ConverterById
	EnvironmentConverter   ConverterById
	ExcludeAllTargets      bool
	ExcludeTargets         args.ExcludeTargets
	ExcludeTargetsRegex    args.ExcludeTargets
	ExcludeTargetsExcept   args.ExcludeTargets
	ExcludeTenantTags      args.ExcludeTenantTags
	ExcludeTenantTagSets   args.ExcludeTenantTagSets
	Excluder               ExcludeByName
	TagSetConverter        TagSetConverter
}

func (PollingTargetConverter) AllToHcl added in v0.1.874

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

func (PollingTargetConverter) AllToStatelessHcl added in v0.1.874

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

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

type ProjectConverter

type ProjectConverter struct {
	Client                      client.OctopusClient
	LifecycleConverter          ConverterAndLookupById
	GitCredentialsConverter     ConverterAndLookupById
	LibraryVariableSetConverter ConverterAndLookupById
	ProjectGroupConverter       ConverterAndLookupById
	DeploymentProcessConverter  ConverterAndLookupByIdAndName
	TenantConverter             ConverterAndLookupByProjectId
	ProjectTriggerConverter     ConverterByProjectIdWithName
	VariableSetConverter        ConverterAndLookupByProjectIdAndName
	ChannelConverter            ConverterAndLookupByProjectIdWithTerraDependencies
	RunbookConverter            ConverterAndLookupByIdAndName
	IgnoreCacManagedValues      bool
	ExcludeAllRunbooks          bool
	IgnoreProjectChanges        bool
	IgnoreProjectGroupChanges   bool
	IgnoreProjectNameChanges    bool
	ExcludeProjects             args.ExcludeProjects
	ExcludeProjectsExcept       args.ExcludeProjects
	ExcludeProjectsRegex        args.ExcludeProjectsRegex
	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
	// contains filtered or unexported fields
}

func (*ProjectConverter) AllToHcl added in v0.1.874

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

func (*ProjectConverter) AllToStatelessHcl added in v0.1.874

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

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

type ProjectGroupConverter

type ProjectGroupConverter struct {
	Client client.OctopusClient
}

func (ProjectGroupConverter) AllToHcl added in v0.1.874

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

func (ProjectGroupConverter) AllToStatelessHcl added in v0.1.874

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

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

type ProjectTriggerConverter

type ProjectTriggerConverter struct {
	Client client.OctopusClient
}

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    ConverterAndLookupById
	ProjectConverter        ConverterAndLookupById
	ExcludedRunbooks        args.ExcludeRunbooks
	ExcludeRunbooksRegex    args.ExcludeRunbooks
	ExcludeRunbooksExcept   args.ExcludeRunbooks
	ExcludeAllRunbooks      bool

	Excluder             ExcludeByName
	IgnoreProjectChanges 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, dependencies *data.ResourceDetailsCollection) error

func (*RunbookConverter) ToHclByIdWithLookups added in v0.1.714

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

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

func (*RunbookConverter) ToHclLookupByIdAndName

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

type RunbookProcessConverter

type RunbookProcessConverter struct {
	Client                 client.OctopusClient
	OctopusActionProcessor OctopusActionProcessor
	IgnoreProjectChanges   bool
	WorkerPoolProcessor    OctopusWorkerPoolProcessor
	ExcludeTenantTags      args.ExcludeTenantTags
	ExcludeTenantTagSets   args.ExcludeTenantTagSets
	Excluder               ExcludeByName
	TagSetConverter        TagSetConverter
}

func (RunbookProcessConverter) GetResourceType

func (c RunbookProcessConverter) GetResourceType() string

func (RunbookProcessConverter) ToHclByIdAndName

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

func (RunbookProcessConverter) ToHclLookupByIdAndName

func (c RunbookProcessConverter) ToHclLookupByIdAndName(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
}

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 SshTargetConverter

type SshTargetConverter struct {
	Client                 client.OctopusClient
	MachinePolicyConverter ConverterById
	AccountConverter       ConverterById
	EnvironmentConverter   ConverterById
	ExcludeAllTargets      bool
	ExcludeTargets         args.ExcludeTargets
	ExcludeTargetsRegex    args.ExcludeTargets
	ExcludeTargetsExcept   args.ExcludeTargets
	ExcludeTenantTags      args.ExcludeTenantTags
	ExcludeTenantTagSets   args.ExcludeTenantTagSets
	Excluder               ExcludeByName
	TagSetConverter        TagSetConverter
}

func (SshTargetConverter) AllToHcl added in v0.1.874

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

func (SshTargetConverter) AllToStatelessHcl added in v0.1.874

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

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

type TagSetConverter

type TagSetConverter struct {
	Client               client.OctopusClient
	ExcludeTenantTags    args.ExcludeTenantTags
	ExcludeTenantTagSets args.ExcludeTenantTagSets
	Excluder             ExcludeByName
}

func (*TagSetConverter) AllToHcl added in v0.1.874

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

func (*TagSetConverter) AllToStatelessHcl added in v0.1.874

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

func (*TagSetConverter) GetResourceType

func (c *TagSetConverter) GetResourceType() string

func (*TagSetConverter) ToHclByResource

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

type TenantConverter

type TenantConverter struct {
	Client                  client.OctopusClient
	TenantVariableConverter ConverterByTenantId
	EnvironmentConverter    ConverterById
	TagSetConverter         ConvertToHclByResource[octopus2.TagSet]
	ExcludeTenantTagSets    args.ExcludeTenantTagSets
	ExcludeTenantTags       args.ExcludeTenantTags
	ExcludeTenants          args.ExcludeTenants
	ExcludeTenantsRegex     args.ExcludeTenants
	ExcludeTenantsWithTags  args.ExcludeTenantsWithTags
	ExcludeTenantsExcept    args.ExcludeTenantsExcept
	ExcludeAllTenants       bool
	Excluder                ExcludeByName
	ExcludeProjects         args.ExcludeProjects
	ExcludeProjectsExcept   args.ExcludeProjects
	ExcludeProjectsRegex    args.ExcludeProjectsRegex
	ExcludeAllProjects      bool
}

func (*TenantConverter) AllToHcl added in v0.1.874

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

func (*TenantConverter) AllToStatelessHcl added in v0.1.874

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

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

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 TagSetConverter, 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 TagSetConverter, 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.ExcludeTenants
	ExcludeTenantsWithTags    args.ExcludeTenantsWithTags
	ExcludeTenantsExcept      args.ExcludeTenantsExcept
	ExcludeAllTenants         bool
	Excluder                  ExcludeByName
	DummySecretVariableValues bool
	DummySecretGenerator      DummySecretGenerator
	ExcludeProjects           args.ExcludeProjects
	ExcludeProjectsExcept     args.ExcludeProjects
	ExcludeProjectsRegex      args.ExcludeProjectsRegex
	ExcludeAllProjects        bool
}

func (TenantVariableConverter) AllToHcl added in v0.1.874

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

func (TenantVariableConverter) AllToStatelessHcl added in v0.1.874

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

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              ConverterAndLookupById
	TagSetConverter                   TagSetConverter
	AzureCloudServiceTargetConverter  ConverterAndLookupById
	AzureServiceFabricTargetConverter ConverterAndLookupById
	AzureWebAppTargetConverter        ConverterAndLookupById
	CloudRegionTargetConverter        ConverterAndLookupById
	KubernetesTargetConverter         ConverterAndLookupById
	ListeningTargetConverter          ConverterAndLookupById
	OfflineDropTargetConverter        ConverterAndLookupById
	PollingTargetConverter            ConverterAndLookupById
	SshTargetConverter                ConverterAndLookupById
	AccountConverter                  ConverterAndLookupById
	FeedConverter                     ConverterAndLookupById
	CertificateConverter              ConverterAndLookupById
	WorkerPoolConverter               ConverterAndLookupById
	IgnoreCacManagedValues            bool
	DefaultSecretVariableValues       bool
	DummySecretVariableValues         bool
	ExcludeAllProjectVariables        bool
	ExcludeProjectVariables           args.ExcludeVariables
	ExcludeProjectVariablesExcept     args.ExcludeVariables
	ExcludeProjectVariablesRegex      args.ExcludeVariables
	IgnoreProjectChanges              bool
	DummySecretGenerator              DummySecretGenerator
	ExcludeVariableEnvironmentScopes  args.ExcludeVariableEnvironmentScopes

	Excluder ExcludeByName
	// 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, 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) 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

type WorkerPoolConverter

type WorkerPoolConverter struct {
	Client client.OctopusClient
}

func (WorkerPoolConverter) AllToHcl added in v0.1.874

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

func (WorkerPoolConverter) AllToStatelessHcl added in v0.1.874

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

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

Jump to

Keyboard shortcuts

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