export

package
v1.47.0 Latest Latest
Warning

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

Go to latest
Published: Nov 22, 2023 License: Apache-2.0 Imports: 285 Imported by: 0

Documentation

Index

Constants

View Source
const DYNATRACE_PROVIDER_SOURCE = "DYNATRACE_PROVIDER_SOURCE"
View Source
const DYNATRACE_PROVIDER_VERSION = "DYNATRACE_PROVIDER_VERSION"

Variables

View Source
var AllResources = map[ResourceType]ResourceDescriptor{}/* 256 elements not displayed */
View Source
var BlackListedResources = []ResourceType{

	ResourceTypes.AlertingProfile,
	ResourceTypes.CustomAnomalies,
	ResourceTypes.MaintenanceWindow,
	ResourceTypes.Notification,

	ResourceTypes.ApplicationAnomalies,
	ResourceTypes.ApplicationDataPrivacy,
	ResourceTypes.AutoTag,
	ResourceTypes.CloudFoundryCredentials,
	ResourceTypes.Dashboard,
	ResourceTypes.DatabaseAnomalies,
	ResourceTypes.DiskEventAnomalies,
	ResourceTypes.HostAnomalies,
	ResourceTypes.KubernetesCredentials,
	ResourceTypes.ManagementZone,
	ResourceTypes.ProcessGroupAnomalies,
	ResourceTypes.ServiceAnomalies,
	ResourceTypes.SLO,

	ResourceTypes.ApplicationDetectionV2,
	ResourceTypes.MobileAppRequestErrors,
	ResourceTypes.WebAppCustomErrors,
	ResourceTypes.WebAppRequestErrors,

	ResourceTypes.IAMUser,
	ResourceTypes.IAMGroup,
	ResourceTypes.IAMPermission,
	ResourceTypes.IAMPolicy,
	ResourceTypes.IAMPolicyBindings,

	ResourceTypes.JSONDashboard,
	ResourceTypes.DashboardSharing,

	ResourceTypes.UserSettings,

	ResourceTypes.AzureService,
	ResourceTypes.AWSService,
	ResourceTypes.AutomationWorkflow,
	ResourceTypes.AutomationBusinessCalendar,
	ResourceTypes.AutomationSchedulingRule,
	ResourceTypes.AGToken,
	ResourceTypes.MobileAppKeyPerformance,

	ResourceTypes.MetricMetadata,
	ResourceTypes.MetricQuery,

	ResourceTypes.CustomTags,
	ResourceTypes.CustomDevice,

	ResourceTypes.LogGrail,

	ResourceTypes.AppSecVulnerabilitySettings,
	ResourceTypes.AppSecVulnerabilityThirdParty,
	ResourceTypes.AppSecVulnerabilityCode,
	ResourceTypes.AppSecNotification,
	ResourceTypes.AppSecVulnerabilityAlerting,
	ResourceTypes.AppSecAttackAlerting,
	ResourceTypes.AppSecAttackSettings,
	ResourceTypes.AppSecAttackRules,
	ResourceTypes.AppSecAttackAllowlist,

	ResourceTypes.GenericSetting,
	ResourceTypes.PlatformBucket,
}
View Source
var CleanUp = &cleanUp{finalizers: []func(){
	cache.Cleanup,
}}
View Source
var DataSourceTypes = struct {
	Service          DataSourceType
	AWSIAMExternalID DataSourceType
}{
	"dynatrace_service",
	"dynatrace_aws_iam_external",
}
View Source
var Dependencies = struct {
	ManagementZone       Dependency
	LegacyID             func(resourceType ResourceType) Dependency
	ID                   func(resourceType ResourceType) Dependency
	ResourceID           func(resourceType ResourceType) Dependency
	ServiceMethod        Dependency
	Service              Dependency
	HostGroup            Dependency
	Host                 Dependency
	Disk                 Dependency
	ProcessGroup         Dependency
	ProcessGroupInstance Dependency
	RequestAttribute     Dependency
	// CustomApplication    Dependency
	// MobileApplication       Dependency
	DeviceApplicationMethod Dependency
	// Application               Dependency
	ApplicationMethod Dependency
	// SyntheticTest             Dependency
	// HttpCheck                 Dependency
	K8sCluster                Dependency
	CloudApplicationNamespace Dependency
	EnvironmentActiveGate     Dependency
	Tenant                    Dependency
}{
	ManagementZone:       &mgmzdep{ResourceTypes.ManagementZoneV2},
	LegacyID:             func(resourceType ResourceType) Dependency { return &legacyID{resourceType} },
	ID:                   func(resourceType ResourceType) Dependency { return &iddep{resourceType} },
	ResourceID:           func(resourceType ResourceType) Dependency { return &resourceIDDep{resourceType} },
	ServiceMethod:        &entityds{"SERVICE_METHOD", "SERVICE_METHOD-[A-Z0-9]{16}", false},
	Service:              &entityds{"SERVICE", "SERVICE-[A-Z0-9]{16}", false},
	HostGroup:            &entityds{"HOST_GROUP", "HOST_GROUP-[A-Z0-9]{16}", false},
	Host:                 &entityds{"HOST", "HOST-[A-Z0-9]{16}", false},
	Disk:                 &entityds{"DISK", "DISK-[A-Z0-9]{16}", false},
	ProcessGroup:         &entityds{"PROCESS_GROUP", "PROCESS_GROUP-[A-Z0-9]{16}", false},
	ProcessGroupInstance: &entityds{"PROCESS_GROUP_INSTANCE", "PROCESS_GROUP_INSTANCE-[A-Z0-9]{16}", false},
	RequestAttribute:     &reqAttName{ResourceTypes.RequestAttribute},

	DeviceApplicationMethod: &entityds{"DEVICE_APPLICATION_METHOD", "DEVICE_APPLICATION_METHOD-[A-Z0-9]{16}", false},

	ApplicationMethod: &entityds{"APPLICATION_METHOD", "APPLICATION_METHOD-[A-Z0-9]{16}", false},

	K8sCluster:                &entityds{"KUBERNETES_CLUSTER", "KUBERNETES_CLUSTER-[A-Z0-9]{16}", false},
	CloudApplicationNamespace: &entityds{"CLOUD_APPLICATION_NAMESPACE", "CLOUD_APPLICATION_NAMESPACE-[A-Z0-9]{16}", false},
	EnvironmentActiveGate:     &entityds{"ENVIRONMENT_ACTIVE_GATE", "ENVIRONMENT_ACTIVE_GATE-[A-Z0-9]{16}", false},
	Tenant:                    &tenantds{},
}
View Source
var HCL_NO_FORMAT = os.Getenv("DYNATRACE_HCL_NO_FORMAT") == "true"

To speed things up when using Dynatrace Config Manager

View Source
var ModuleStati = struct {
	Untouched  ModuleStatus
	Discovered ModuleStatus
	Downloaded ModuleStatus
	Erronous   ModuleStatus
	Imported   ModuleStatus
}{
	"Untouched",
	"Discovered",
	"Downloaded",
	"Erronous",
	"Imported",
}
View Source
var NO_REFRESH_ON_IMPORT = os.Getenv("DYNATRACE_NO_REFRESH_ON_IMPORT") == "true"
View Source
var ResourceStati = struct {
	Downloaded    ResourceStatus
	Erronous      ResourceStatus
	Excluded      ResourceStatus
	Discovered    ResourceStatus
	PostProcessed ResourceStatus
}{
	"Downloaded",
	"Erronous",
	"Excluded",
	"Discovered",
	"PostProcessed",
}
View Source
var ResourceTypes = struct {
	AutoTag                             ResourceType
	AutoTagV2                           ResourceType
	CustomService                       ResourceType
	RequestAttribute                    ResourceType
	ApplicationAnomalies                ResourceType
	DatabaseAnomalies                   ResourceType
	DiskEventAnomalies                  ResourceType
	HostAnomalies                       ResourceType
	ServiceAnomalies                    ResourceType
	CustomAnomalies                     ResourceType
	WebApplication                      ResourceType
	MobileApplication                   ResourceType
	MaintenanceWindow                   ResourceType
	ManagementZone                      ResourceType
	SLO                                 ResourceType
	SLOV2                               ResourceType
	SpanAttribute                       ResourceType
	SpanCaptureRule                     ResourceType
	SpanContextPropagation              ResourceType
	SpanEntryPoint                      ResourceType
	ResourceAttributes                  ResourceType
	JiraNotification                    ResourceType
	WebHookNotification                 ResourceType
	AnsibleTowerNotification            ResourceType
	EmailNotification                   ResourceType
	OpsGenieNotification                ResourceType
	PagerDutyNotification               ResourceType
	ServiceNowNotification              ResourceType
	SlackNotification                   ResourceType
	TrelloNotification                  ResourceType
	VictorOpsNotification               ResourceType
	XMattersNotification                ResourceType
	Alerting                            ResourceType
	FrequentIssues                      ResourceType
	MetricEvents                        ResourceType
	IBMMQFilters                        ResourceType
	IMSBridge                           ResourceType
	QueueManager                        ResourceType
	KeyRequests                         ResourceType
	Maintenance                         ResourceType
	ManagementZoneV2                    ResourceType
	NetworkZones                        ResourceType
	AWSCredentials                      ResourceType
	AWSService                          ResourceType
	AzureCredentials                    ResourceType
	AzureService                        ResourceType
	CloudFoundryCredentials             ResourceType
	KubernetesCredentials               ResourceType
	Credentials                         ResourceType
	Dashboard                           ResourceType
	JSONDashboard                       ResourceType
	CalculatedServiceMetric             ResourceType
	CalculatedWebMetric                 ResourceType
	CalculatedMobileMetric              ResourceType
	CalculatedSyntheticMetric           ResourceType
	HostNaming                          ResourceType
	ProcessGroupNaming                  ResourceType
	ServiceNaming                       ResourceType
	NetworkZone                         ResourceType
	RequestNaming                       ResourceType
	BrowserMonitor                      ResourceType
	HTTPMonitor                         ResourceType
	DashboardSharing                    ResourceType
	ApplicationDetection                ResourceType
	ApplicationErrorRules               ResourceType
	ApplicationDataPrivacy              ResourceType
	SyntheticLocation                   ResourceType
	Notification                        ResourceType
	QueueSharingGroups                  ResourceType
	AlertingProfile                     ResourceType
	RequestNamings                      ResourceType
	IAMUser                             ResourceType
	IAMGroup                            ResourceType
	IAMPermission                       ResourceType
	IAMPolicy                           ResourceType
	IAMPolicyBindings                   ResourceType
	ProcessGroupAnomalies               ResourceType
	DDUPool                             ResourceType
	ProcessGroupAlerting                ResourceType
	ServiceAnomaliesV2                  ResourceType
	DatabaseAnomaliesV2                 ResourceType
	ProcessMonitoringRule               ResourceType
	DiskAnomaliesV2                     ResourceType
	DiskSpecificAnomaliesV2             ResourceType
	HostAnomaliesV2                     ResourceType
	CustomAppAnomalies                  ResourceType
	CustomAppCrashRate                  ResourceType
	ProcessMonitoring                   ResourceType
	ProcessAvailability                 ResourceType
	AdvancedProcessGroupDetectionRule   ResourceType
	MobileAppAnomalies                  ResourceType
	MobileAppCrashRate                  ResourceType
	WebAppAnomalies                     ResourceType
	MutedRequests                       ResourceType
	ConnectivityAlerts                  ResourceType
	DeclarativeGrouping                 ResourceType
	HostMonitoring                      ResourceType
	HostProcessGroupMonitoring          ResourceType
	RUMIPLocations                      ResourceType
	CustomAppEnablement                 ResourceType
	MobileAppEnablement                 ResourceType
	WebAppEnablement                    ResourceType
	RUMProcessGroup                     ResourceType
	RUMProviderBreakdown                ResourceType
	UserExperienceScore                 ResourceType
	WebAppResourceCleanup               ResourceType
	UpdateWindows                       ResourceType
	ProcessGroupDetectionFlags          ResourceType
	ProcessGroupMonitoring              ResourceType
	ProcessGroupSimpleDetection         ResourceType
	LogMetrics                          ResourceType
	BrowserMonitorPerformanceThresholds ResourceType
	HttpMonitorPerformanceThresholds    ResourceType
	HttpMonitorCookies                  ResourceType
	SessionReplayWebPrivacy             ResourceType
	SessionReplayResourceCapture        ResourceType
	UsabilityAnalytics                  ResourceType
	SyntheticAvailability               ResourceType
	BrowserMonitorOutageHandling        ResourceType
	HttpMonitorOutageHandling           ResourceType
	CloudAppWorkloadDetection           ResourceType
	MainframeTransactionMonitoring      ResourceType
	MonitoredTechnologiesApache         ResourceType
	MonitoredTechnologiesDotNet         ResourceType
	MonitoredTechnologiesGo             ResourceType
	MonitoredTechnologiesIIS            ResourceType
	MonitoredTechnologiesJava           ResourceType
	MonitoredTechnologiesNGINX          ResourceType
	MonitoredTechnologiesNodeJS         ResourceType
	MonitoredTechnologiesOpenTracing    ResourceType
	MonitoredTechnologiesPHP            ResourceType
	MonitoredTechnologiesVarnish        ResourceType
	MonitoredTechnologiesWSMB           ResourceType
	ProcessVisibility                   ResourceType
	RUMHostHeaders                      ResourceType
	RUMIPDetermination                  ResourceType
	MobileAppRequestErrors              ResourceType
	TransactionStartFilters             ResourceType
	OneAgentFeatures                    ResourceType
	RUMOverloadPrevention               ResourceType
	RUMAdvancedCorrelation              ResourceType
	WebAppBeaconOrigins                 ResourceType
	WebAppResourceTypes                 ResourceType
	GenericTypes                        ResourceType
	GenericRelationships                ResourceType
	SLONormalization                    ResourceType
	DataPrivacy                         ResourceType
	ServiceFailure                      ResourceType
	ServiceHTTPFailure                  ResourceType
	DiskOptions                         ResourceType
	OSServices                          ResourceType
	ExtensionExecutionController        ResourceType
	NetTracerTraffic                    ResourceType
	AIXExtension                        ResourceType
	MetricMetadata                      ResourceType
	MetricQuery                         ResourceType
	ActiveGateToken                     ResourceType
	AGToken                             ResourceType
	AuditLog                            ResourceType
	K8sClusterAnomalies                 ResourceType
	K8sNamespaceAnomalies               ResourceType
	K8sNodeAnomalies                    ResourceType
	K8sWorkloadAnomalies                ResourceType
	ContainerBuiltinRule                ResourceType
	ContainerRule                       ResourceType
	ContainerTechnology                 ResourceType
	ContainerRegistry                   ResourceType
	RemoteEnvironments                  ResourceType
	WebAppCustomErrors                  ResourceType
	WebAppRequestErrors                 ResourceType
	UserSettings                        ResourceType
	DashboardsGeneral                   ResourceType
	DashboardsPresets                   ResourceType
	LogProcessing                       ResourceType
	LogEvents                           ResourceType
	LogTimestamp                        ResourceType
	LogGrail                            ResourceType
	LogCustomAttribute                  ResourceType
	LogSensitiveDataMasking             ResourceType
	LogStorage                          ResourceType
	LogBuckets                          ResourceType
	LogSecurityContext                  ResourceType
	EULASettings                        ResourceType
	APIDetectionRules                   ResourceType
	ServiceExternalWebRequest           ResourceType
	ServiceExternalWebService           ResourceType
	ServiceFullWebRequest               ResourceType
	ServiceFullWebService               ResourceType
	DashboardsAllowlist                 ResourceType
	FailureDetectionParameters          ResourceType
	FailureDetectionRules               ResourceType
	LogOneAgent                         ResourceType
	IssueTracking                       ResourceType
	GeolocationSettings                 ResourceType
	UserSessionCustomMetrics            ResourceType
	CustomUnits                         ResourceType
	DiskAnalytics                       ResourceType
	NetworkTraffic                      ResourceType
	TokenSettings                       ResourceType
	ExtensionExecutionRemote            ResourceType
	K8sPVCAnomalies                     ResourceType
	UserActionCustomMetrics             ResourceType
	WebAppJavascriptVersion             ResourceType
	WebAppJavascriptUpdates             ResourceType
	OpenTelemetryMetrics                ResourceType
	ActiveGateUpdates                   ResourceType
	OneAgentDefaultVersion              ResourceType
	OneAgentUpdates                     ResourceType
	OwnershipTeams                      ResourceType
	OwnershipConfig                     ResourceType
	LogCustomSource                     ResourceType
	ApplicationDetectionV2              ResourceType
	Kubernetes                          ResourceType
	CloudFoundry                        ResourceType
	DiskAnomalyDetectionRules           ResourceType
	AWSAnomalies                        ResourceType
	VMwareAnomalies                     ResourceType
	BusinessEventsOneAgent              ResourceType
	BusinessEventsBuckets               ResourceType
	BusinessEventsMetrics               ResourceType
	BusinessEventsProcessing            ResourceType
	BusinessEventsSecurityContext       ResourceType
	WebAppKeyPerformanceCustom          ResourceType
	WebAppKeyPerformanceLoad            ResourceType
	WebAppKeyPerformanceXHR             ResourceType
	MobileAppKeyPerformance             ResourceType
	BuiltinProcessMonitoring            ResourceType
	LimitOutboundConnections            ResourceType
	SpanEvents                          ResourceType
	VMware                              ResourceType
	CustomDevice                        ResourceType
	K8sMonitoring                       ResourceType
	AutomationWorkflow                  ResourceType
	AutomationBusinessCalendar          ResourceType
	AutomationSchedulingRule            ResourceType
	CustomTags                          ResourceType
	HostMonitoringMode                  ResourceType
	HostMonitoringAdvanced              ResourceType
	IPAddressMasking                    ResourceType
	AppSecVulnerabilitySettings         ResourceType
	AppSecVulnerabilityThirdParty       ResourceType
	AppSecVulnerabilityCode             ResourceType
	AppSecNotification                  ResourceType
	AppSecVulnerabilityAlerting         ResourceType
	AppSecAttackAlerting                ResourceType
	AppSecAttackSettings                ResourceType
	AppSecAttackRules                   ResourceType
	AppSecAttackAllowlist               ResourceType
	GenericSetting                      ResourceType
	UnifiedServicesMetrics              ResourceType
	UnifiedServicesOpenTel              ResourceType
	PlatformBucket                      ResourceType
	KeyUserAction                       ResourceType
	UrlBasedSampling                    ResourceType
	AttributeAllowList                  ResourceType
	AttributeMasking                    ResourceType

}{}/* 256 elements not displayed */

Functions

func AsDataSource added in v1.22.0

func AsDataSource(resource *Resource) string

func ConfigureRESTLog

func ConfigureRESTLog() (err error)

func DefaultReplace

func DefaultReplace(s string, cnt int) string

func ResourceName

func ResourceName(s string, cnt int) string

func Service

func Service(credentials *settings.Credentials, resourceType ResourceType) settings.CRUDService[settings.Settings]

func ValidateResource

func ValidateResource(keyVal string) (string, string)

Types

type DataSource

type DataSource struct {
	ID   string
	Type string
	Name string
}

type DataSourceType

type DataSourceType string

func (DataSourceType) Trim

func (me DataSourceType) Trim() string

type Dependency

type Dependency interface {
	Replace(environment *Environment, s string, replacingIn ResourceType) (string, []any)
	ResourceType() ResourceType
	DataSourceType() DataSourceType
}

func Coalesce

func Coalesce(d Dependency) Dependency

type Environment

type Environment struct {
	OutputFolder          string
	Credentials           *settings.Credentials
	Modules               map[ResourceType]*Module
	Flags                 Flags
	ResArgs               map[string][]string
	ChildResourceOverride bool
	// contains filtered or unexported fields
}

func Initialize

func Initialize() (environment *Environment, err error)

func (*Environment) CreateFile

func (me *Environment) CreateFile(name string) (*os.File, error)

func (*Environment) DataSource

func (me *Environment) DataSource(id string) *DataSource

func (*Environment) ExecuteImport

func (me *Environment) ExecuteImport() error

func (*Environment) Export

func (me *Environment) Export() (err error)

func (*Environment) Finish

func (me *Environment) Finish() (err error)

func (*Environment) GetAttentionFolder

func (me *Environment) GetAttentionFolder() string

func (*Environment) GetChildResources added in v1.29.0

func (me *Environment) GetChildResources() []*Resource

func (*Environment) GetFlawedFolder

func (me *Environment) GetFlawedFolder() string

func (*Environment) GetFolder

func (me *Environment) GetFolder() string

func (*Environment) GetNonPostProcessedResources

func (me *Environment) GetNonPostProcessedResources() []*Resource

func (*Environment) GetResourceTypesWithDownloads

func (me *Environment) GetResourceTypesWithDownloads() []ResourceType

func (*Environment) InitialDownload

func (me *Environment) InitialDownload() error

func (*Environment) Module

func (me *Environment) Module(resType ResourceType) *Module

func (*Environment) PostProcess

func (me *Environment) PostProcess() error

func (*Environment) RefersTo

func (me *Environment) RefersTo(resource *Resource) bool

func (*Environment) RemoveNonReferencedModules added in v1.22.0

func (me *Environment) RemoveNonReferencedModules() (err error)

func (*Environment) TenantID added in v1.34.0

func (me *Environment) TenantID() string

func (*Environment) WriteDataSourceFiles

func (me *Environment) WriteDataSourceFiles() (err error)

func (*Environment) WriteMainFile

func (me *Environment) WriteMainFile() error

func (*Environment) WriteProviderFiles

func (me *Environment) WriteProviderFiles() (err error)

func (*Environment) WriteResourceFiles

func (me *Environment) WriteResourceFiles() (err error)

func (*Environment) WriteVariablesFiles

func (me *Environment) WriteVariablesFiles() (err error)

type Flags

type Flags struct {
	FollowReferences    bool
	PersistIDs          bool
	FlagMigrationOutput bool
	FlagVerbose         bool
	FlagHardLinks       bool
	FlagPreviewOnly     bool
	Flat                bool
	ImportStateV2       bool
	Exclude             bool
	DataSources         bool
	SkipTerraformInit   bool
}

type Module

type Module struct {
	Environment *Environment
	Type        ResourceType
	Resources   map[string]*Resource
	DataSources map[string]*DataSource

	Status     ModuleStatus
	Error      error
	Descriptor *ResourceDescriptor
	Service    settings.CRUDService[settings.Settings]
	// contains filtered or unexported fields
}

func (*Module) ContainsPostProcessedResources

func (me *Module) ContainsPostProcessedResources() bool

func (*Module) CreateFile

func (me *Module) CreateFile(name string) (*os.File, error)

func (*Module) DataSource

func (me *Module) DataSource(id string) *DataSource

func (*Module) Discover

func (me *Module) Discover() error

func (*Module) Download

func (me *Module) Download(multiThreaded bool, keys ...string) (err error)

func (*Module) ExecuteImportV2 added in v1.29.0

func (me *Module) ExecuteImportV2(fs afero.Fs) (resList resources, err error)

func (*Module) GetAttentionFolder

func (me *Module) GetAttentionFolder(relative ...bool) string

func (*Module) GetChildResources added in v1.29.0

func (me *Module) GetChildResources() []*Resource

func (*Module) GetFile

func (me *Module) GetFile(name string) string

func (*Module) GetFlawedFolder

func (me *Module) GetFlawedFolder(relative ...bool) string

func (*Module) GetFolder

func (me *Module) GetFolder(relative ...bool) string

func (*Module) GetNonPostProcessedResources

func (me *Module) GetNonPostProcessedResources() []*Resource

func (*Module) GetPostProcessedResources added in v1.29.0

func (me *Module) GetPostProcessedResources() []*Resource

func (*Module) GetReferencedResourceTypes

func (me *Module) GetReferencedResourceTypes() []ResourceType

func (*Module) GetResourceReferences

func (me *Module) GetResourceReferences() []*Resource

func (*Module) GetResourcesReferencedFromOtherModules

func (me *Module) GetResourcesReferencedFromOtherModules() []*Resource

func (*Module) IsReferencedAsDataSource added in v1.22.0

func (me *Module) IsReferencedAsDataSource() bool

func (*Module) MkdirAll

func (me *Module) MkdirAll(flawed bool) error

func (*Module) OpenFile

func (me *Module) OpenFile(name string) (file *os.File, err error)

func (*Module) ProvideDataSources added in v1.30.1

func (me *Module) ProvideDataSources() (dsm map[string]string, err error)

func (*Module) PurgeFolder added in v1.22.0

func (me *Module) PurgeFolder() (err error)

func (*Module) RefersTo

func (me *Module) RefersTo(resource *Resource) bool

func (*Module) Resource

func (me *Module) Resource(id string) *Resource

func (*Module) WriteDataSourcesFile

func (me *Module) WriteDataSourcesFile(logToScreen bool) (err error)

func (*Module) WriteProviderFile

func (me *Module) WriteProviderFile(logToScreen bool) (err error)

func (*Module) WriteResourcesFile

func (me *Module) WriteResourcesFile() (err error)

func (*Module) WriteVariablesFile

func (me *Module) WriteVariablesFile(logToScreen bool) (err error)

type ModuleStatus

type ModuleStatus string

func (ModuleStatus) IsOneOf

func (me ModuleStatus) IsOneOf(stati ...ModuleStatus) bool

type ReplaceFunc

type ReplaceFunc func(s string, cnt int) string

type Resource

type Resource struct {
	ID                   string
	LegacyID             string
	Name                 string
	UniqueName           string
	Type                 ResourceType
	Module               *Module
	Status               ResourceStatus
	Error                error
	ResourceReferences   []*Resource
	DataSourceReferences []*DataSource
	OutputFileAbs        string
	Flawed               bool
	XParent              *Resource
}

func (*Resource) CreateFile

func (me *Resource) CreateFile() (*os.File, error)

func (*Resource) Download

func (me *Resource) Download() error

func (*Resource) GetAttentionFile

func (me *Resource) GetAttentionFile() string

func (*Resource) GetFile

func (me *Resource) GetFile() string

func (*Resource) GetFileName

func (me *Resource) GetFileName() string

func (*Resource) GetFlawedFile added in v1.22.2

func (me *Resource) GetFlawedFile() string

func (*Resource) GetParent added in v1.34.0

func (me *Resource) GetParent() *Resource

func (*Resource) GetResourceReferences

func (me *Resource) GetResourceReferences() []*Resource

func (*Resource) IsReferencedAsDataSource added in v1.22.0

func (me *Resource) IsReferencedAsDataSource() bool

func (*Resource) PostProcess

func (me *Resource) PostProcess() error

func (*Resource) ReadFile

func (me *Resource) ReadFile() ([]byte, error)

func (*Resource) RefersTo

func (me *Resource) RefersTo(other *Resource) bool

func (*Resource) SetName

func (me *Resource) SetName(name string) *Resource

type ResourceDescriptor

type ResourceDescriptor struct {
	Dependencies []Dependency
	Service      func(credentials *settings.Credentials) settings.CRUDService[settings.Settings]

	Parent *ResourceType
	// contains filtered or unexported fields
}

func NewChildResourceDescriptor added in v1.29.0

func NewChildResourceDescriptor[T settings.Settings](fn func(credentials *settings.Credentials) settings.CRUDService[T], parent ResourceType, dependencies ...Dependency) ResourceDescriptor

func NewResourceDescriptor

func NewResourceDescriptor[T settings.Settings](fn func(credentials *settings.Credentials) settings.CRUDService[T], dependencies ...Dependency) ResourceDescriptor

func (ResourceDescriptor) Except

func (me ResourceDescriptor) Except(except func(id string, name string) bool) ResourceDescriptor

func (ResourceDescriptor) NewSettings

func (me ResourceDescriptor) NewSettings() settings.Settings

func (ResourceDescriptor) Specify

type ResourceStatus

type ResourceStatus string

func (ResourceStatus) IsOneOf

func (me ResourceStatus) IsOneOf(stati ...ResourceStatus) bool

type ResourceType

type ResourceType string

func (ResourceType) AsDataSource added in v1.22.0

func (me ResourceType) AsDataSource() string

func (ResourceType) GetChildren added in v1.30.0

func (me ResourceType) GetChildren() []ResourceType

func (ResourceType) IsChildResource added in v1.34.0

func (me ResourceType) IsChildResource() bool

func (ResourceType) Trim

func (me ResourceType) Trim() string

type UniqueNamer

type UniqueNamer interface {
	Name(string) string
	Replace(ReplaceFunc) UniqueNamer
}

func NewUniqueNamer

func NewUniqueNamer() UniqueNamer

Jump to

Keyboard shortcuts

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