clouddiscovery

package
v1.4.0 Latest Latest
Warning

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

Go to latest
Published: Oct 8, 2024 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AccountAttrTypes = map[string]attr.Type{
	"composite_status":         types.StringType,
	"composite_status_message": types.StringType,
	"created_at":               timetypes.RFC3339Type{},
	"deleted_at":               timetypes.RFC3339Type{},
	"dhcp_server_id":           types.StringType,
	"dns_server_id":            types.StringType,
	"id":                       types.StringType,
	"last_successful_sync":     timetypes.RFC3339Type{},
	"last_sync":                timetypes.RFC3339Type{},
	"name":                     types.StringType,
	"parent_id":                types.StringType,
	"percent_complete":         types.Int64Type,
	"provider_account_id":      types.StringType,
	"schedule_id":              types.StringType,
	"state":                    types.StringType,
	"status":                   types.StringType,
	"status_message":           types.StringType,
	"updated_at":               timetypes.RFC3339Type{},
}
View Source
var AccountResourceSchemaAttributes = map[string]schema.Attribute{
	"composite_status": schema.StringAttribute{
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Combined status of the account and the all the destinations statuses.",
	},
	"composite_status_message": schema.StringAttribute{
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Status message of the sync operation.",
	},
	"created_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been created.",
	},
	"deleted_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been deleted.",
	},
	"dhcp_server_id": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "DHCP Server ID. MSAD case.",
	},
	"dns_server_id": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "DNS Server ID.",
	},
	"id": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "Auto-generated unique source account ID. Format BloxID.",
	},
	"last_successful_sync": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Last successful sync timestamp.",
	},
	"last_sync": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Last sync timestamp.",
	},
	"name": schema.StringAttribute{
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Name of the source account.",
	},
	"parent_id": schema.StringAttribute{
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Parent ID.",
	},
	"percent_complete": schema.Int64Attribute{
		Computed:            true,
		MarkdownDescription: "Sync progress as a percentage.",
	},
	"provider_account_id": schema.StringAttribute{
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Provider Account ID value, such as aws account_id, azure subscription_id, gcp project_id.",
	},
	"schedule_id": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "Schedule ID.",
	},
	"state": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "State represents the current state of the account, ex.: authorized, unauthorized, excluded, disabled.",
	},
	"status": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "Status of the sync operation.",
	},
	"status_message": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "Status message of the sync operation.",
	},
	"updated_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been updated.",
	},
}
View Source
var AdditionalConfigAttrTypes = map[string]attr.Type{
	"excluded_accounts":       types.ListType{ElemType: types.StringType},
	"forward_zone_enabled":    types.BoolType,
	"internal_ranges_enabled": types.BoolType,
	"object_type":             types.ObjectType{AttrTypes: ObjectTypeAttrTypes},
}
View Source
var AdditionalConfigResourceSchemaAttributes = map[string]schema.Attribute{
	"excluded_accounts": schema.ListAttribute{
		ElementType:         types.StringType,
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "List of account IDs to exclude from discovery.",
	},
	"forward_zone_enabled": schema.BoolAttribute{
		Optional:            true,
		Computed:            true,
		Default:             booldefault.StaticBool(false),
		MarkdownDescription: "Enable/Disable forward zone discovery.",
	},
	"internal_ranges_enabled": schema.BoolAttribute{
		Optional:            true,
		Computed:            true,
		Default:             booldefault.StaticBool(false),
		MarkdownDescription: "Enable/Disable internal ranges discovery.",
	},
	"object_type": schema.SingleNestedAttribute{
		Attributes:          ObjectTypeResourceSchemaAttributes,
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Object type to discover.",
	},
}
View Source
var CategoryAttrTypes = map[string]attr.Type{
	"excluded": types.BoolType,
	"id":       types.StringType,
}
View Source
var CategoryResourceSchemaAttributes = map[string]schema.Attribute{
	"excluded": schema.BoolAttribute{
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "If set true , the category is excluded from discovery.",
	},
	"id": schema.StringAttribute{
		Computed: true,
		Optional: true,
		Validators: []validator.String{
			stringvalidator.OneOf("security", "networking-basics", "lbs", "compute", "azure-storage", "networking-advanced", "storage"),
		},
		MarkdownDescription: "Category ID.",
	},
}
View Source
var CredentialConfigAttrTypes = map[string]attr.Type{
	"access_identifier": types.StringType,
	"enclave":           types.StringType,
	"region":            types.StringType,
}
View Source
var CredentialConfigResourceSchemaAttributes = map[string]schema.Attribute{
	"access_identifier": schema.StringAttribute{
		Optional: true,
		PlanModifiers: []planmodifier.String{
			stringplanmodifier.RequiresReplaceIfConfigured(),
		},
		MarkdownDescription: "access_identifier values: role_arn_1, tenant_id_123,project_id_123",
	},
	"enclave": schema.StringAttribute{
		Optional:            true,
		MarkdownDescription: "Enclave of the account",
	},
	"region": schema.StringAttribute{
		Optional:            true,
		MarkdownDescription: "Region of the account",
	},
}
View Source
var CredentialPreferenceAttrTypes = map[string]attr.Type{
	"access_identifier_type": types.StringType,
	"credential_type":        types.StringType,
}
View Source
var CredentialPreferenceResourceSchemaAttributes = map[string]schema.Attribute{
	"access_identifier_type": schema.StringAttribute{
		Optional: true,
		Validators: []validator.String{
			stringvalidator.OneOf("role_arn", "tenant_id", "project_id"),
		},
		MarkdownDescription: "Access identifier type. Possible values: role_arn, tenant_id, project_id.",
	},
	"credential_type": schema.StringAttribute{
		Optional: true,
		Validators: []validator.String{
			stringvalidator.OneOf("dynamic", "static"),
		},
		MarkdownDescription: "Credential type. Possible values: dynamic, static .",
	},
}
View Source
var DNSConfigAttrTypes = map[string]attr.Type{
	"consolidated_zone_data_enabled": types.BoolType,
	"split_view_enabled":             types.BoolType,
	"sync_type":                      types.StringType,
	"view_id":                        types.StringType,
	"view_name":                      types.StringType,
}
View Source
var DNSConfigResourceSchemaAttributes = map[string]schema.Attribute{
	"consolidated_zone_data_enabled": schema.BoolAttribute{
		Optional: true,
		PlanModifiers: []planmodifier.Bool{
			boolplanmodifier.RequiresReplaceIfConfigured(),
		},
		MarkdownDescription: "consolidated_zone_data_enabled consolidates private zones into a single view, which is separate from the public zone view.",
	},
	"split_view_enabled": schema.BoolAttribute{
		Optional: true,
		PlanModifiers: []planmodifier.Bool{
			boolplanmodifier.RequiresReplaceIfConfigured(),
		},
		MarkdownDescription: "split_view_enabled consolidates private zones into a single view, which is separate from the public zone view.",
	},
	"sync_type": schema.StringAttribute{
		Optional:            true,
		MarkdownDescription: "Type of sync.Sync_type values: \"read_only\", \"read_write\"",
	},
	"view_id": schema.StringAttribute{
		Optional: true,
		PlanModifiers: []planmodifier.String{
			stringplanmodifier.RequiresReplaceIfConfigured(),
		},
		MarkdownDescription: "Unique identifier of the view.",
	},
	"view_name": schema.StringAttribute{
		Optional: true,
		PlanModifiers: []planmodifier.String{
			stringplanmodifier.RequiresReplaceIfConfigured(),
		},
		MarkdownDescription: "Name of the view.",
	},
}
View Source
var DestinationAttrTypes = map[string]attr.Type{
	"config":           types.ObjectType{AttrTypes: DestinationConfigAttrTypes},
	"created_at":       timetypes.RFC3339Type{},
	"deleted_at":       timetypes.RFC3339Type{},
	"destination_type": types.StringType,
	"id":               types.StringType,
	"updated_at":       timetypes.RFC3339Type{},
}
View Source
var DestinationConfigAttrTypes = map[string]attr.Type{
	"dns":  types.ObjectType{AttrTypes: DNSConfigAttrTypes},
	"ipam": types.ObjectType{AttrTypes: IPAMConfigAttrTypes},
}
View Source
var DestinationConfigResourceSchemaAttributes = map[string]schema.Attribute{
	"dns": schema.SingleNestedAttribute{
		Attributes:          DNSConfigResourceSchemaAttributes,
		Optional:            true,
		MarkdownDescription: "Destination Config for DNS",
	},
	"ipam": schema.SingleNestedAttribute{
		Attributes:          IPAMConfigResourceSchemaAttributes,
		Optional:            true,
		MarkdownDescription: "Destination Config for IPAM/DHCP",
	},
}
View Source
var DestinationResourceSchemaAttributes = map[string]schema.Attribute{
	"config": schema.SingleNestedAttribute{
		Attributes:          DestinationConfigResourceSchemaAttributes,
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Destination configuration.",
	},
	"created_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been created.",
	},
	"deleted_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been deleted.",
	},
	"destination_type": schema.StringAttribute{
		Optional: true,
		Computed: true,
		Validators: []validator.String{
			internalvalidator.StringNotNull(),
			stringvalidator.OneOf("DNS", "IPAM/DHCP", "ACCOUNTS"),
		},
		PlanModifiers: []planmodifier.String{
			stringplanmodifier.RequiresReplaceIfConfigured(),
		},
		MarkdownDescription: "Destination type: DNS or IPAM/DHCP.",
	},
	"id": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "Auto-generated unique destination ID. Format BloxID.",
	},
	"updated_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been updated.",
	},
}
View Source
var DiscoveryConfigAttrTypes = map[string]attr.Type{
	"account_preference":        types.StringType,
	"additional_config":         types.ObjectType{AttrTypes: AdditionalConfigAttrTypes},
	"created_at":                timetypes.RFC3339Type{},
	"credential_preference":     types.ObjectType{AttrTypes: CredentialPreferenceAttrTypes},
	"deleted_at":                timetypes.RFC3339Type{},
	"description":               types.StringType,
	"desired_state":             types.StringType,
	"destination_types_enabled": internaltypes.UnorderedListOfStringType,
	"destinations":              internaltypes.UnorderedList{ListType: basetypes.ListType{ElemType: basetypes.ObjectType{AttrTypes: DestinationAttrTypes}}},
	"id":                        types.StringType,
	"last_sync":                 timetypes.RFC3339Type{},
	"name":                      types.StringType,
	"provider_type":             types.StringType,
	"source_configs":            types.ListType{ElemType: types.ObjectType{AttrTypes: SourceConfigAttrTypes}},
	"status":                    types.StringType,
	"status_message":            types.StringType,
	"sync_interval":             types.StringType,
	"tags":                      types.MapType{ElemType: types.StringType},
	"tags_all":                  types.MapType{ElemType: types.StringType},
	"updated_at":                timetypes.RFC3339Type{},
}
View Source
var DiscoveryConfigResourceSchemaAttributes = map[string]schema.Attribute{
	"account_preference": schema.StringAttribute{
		Required: true,
		PlanModifiers: []planmodifier.String{
			stringplanmodifier.RequiresReplaceIfConfigured(),
		},
		Validators: []validator.String{
			stringvalidator.OneOf("single", "multiple", "auto_discover_multiple"),
		},
		MarkdownDescription: "Account preference. For ex.: single, multiple, auto_discover_multiple.",
	},
	"additional_config": schema.SingleNestedAttribute{
		Attributes:          AdditionalConfigResourceSchemaAttributes,
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Additional configuration for the Discovery Job",
	},
	"created_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been created.",
	},
	"credential_preference": schema.SingleNestedAttribute{
		Attributes:          CredentialPreferenceResourceSchemaAttributes,
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Credential preference for the discovery job.",
	},
	"deleted_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Optional:            true,
		MarkdownDescription: "Timestamp when the object has been deleted.",
	},
	"description": schema.StringAttribute{
		Optional:            true,
		MarkdownDescription: "Description of the discovery config. Optional.",
	},
	"desired_state": schema.StringAttribute{
		Optional:            true,
		Computed:            true,
		Default:             stringdefault.StaticString("enabled"),
		MarkdownDescription: "Desired state. Default is \"enabled\".",
	},
	"destination_types_enabled": schema.ListAttribute{
		CustomType:          internaltypes.UnorderedListOfStringType,
		ElementType:         types.StringType,
		Computed:            true,
		Optional:            true,
		MarkdownDescription: "Destinations types enabled: Ex.: DNS, IPAM and ACCOUNTS.",
	},
	"destinations": schema.ListNestedAttribute{
		CustomType: internaltypes.UnorderedList{ListType: basetypes.ListType{ElemType: basetypes.ObjectType{AttrTypes: DestinationAttrTypes}}},
		NestedObject: schema.NestedAttributeObject{
			Attributes: DestinationResourceSchemaAttributes,
		},
		Computed: true,
		Optional: true,
		Validators: []validator.List{
			internalvalidator.DestinationTypeDependency(),
		},
		MarkdownDescription: "Destinations For the discovery config.",
	},
	"id": schema.StringAttribute{
		Computed: true,
		PlanModifiers: []planmodifier.String{
			stringplanmodifier.UseStateForUnknown(),
		},
		MarkdownDescription: "Auto-generated unique discovery config ID. Format BloxID.",
	},
	"last_sync": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Last sync timestamp.",
	},
	"name": schema.StringAttribute{
		Required: true,
		PlanModifiers: []planmodifier.String{
			stringplanmodifier.RequiresReplaceIfConfigured(),
		},
		MarkdownDescription: "Name of the discovery config.",
	},
	"provider_type": schema.StringAttribute{
		Required: true,
		PlanModifiers: []planmodifier.String{
			stringplanmodifier.RequiresReplaceIfConfigured(),
		},
		Validators: []validator.String{
			stringvalidator.OneOf("Amazon Web Services", "Google Cloud Platform", "Microsoft Azure"),
		},
		MarkdownDescription: "Provider type. Ex.: Amazon Web Services, Google Cloud Platform, Microsoft Azure.",
	},
	"source_configs": schema.ListNestedAttribute{
		NestedObject: schema.NestedAttributeObject{
			Attributes: SourceConfigResourceSchemaAttributes,
		},
		Computed:            true,
		Optional:            true,
		MarkdownDescription: "Source configs.",
	},
	"status": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "Status of the sync operation. In single account case, Its the combined status of account & all the destinations statuses In auto discover case, Its the status of the account discovery only.",
	},
	"status_message": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "Aggregate status message of the sync operation.",
	},
	"sync_interval": schema.StringAttribute{
		Optional:            true,
		Computed:            true,
		Default:             stringdefault.StaticString("Auto"),
		MarkdownDescription: "Sync interval. Default is \"Auto\".",
	},
	"tags": schema.MapAttribute{
		ElementType:         types.StringType,
		Optional:            true,
		Computed:            true,
		Default:             mapdefault.StaticValue(types.MapNull(types.StringType)),
		MarkdownDescription: "Tagging specifics.",
	},
	"tags_all": schema.MapAttribute{
		ElementType:         types.StringType,
		Computed:            true,
		MarkdownDescription: "Tagging specifics includes default tags.",
	},
	"updated_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been updated.",
	},
}
View Source
var IPAMConfigAttrTypes = map[string]attr.Type{
	"dhcp_server":             types.StringType,
	"disable_ipam_projection": types.BoolType,
	"ip_space":                types.StringType,
}
View Source
var IPAMConfigResourceSchemaAttributes = map[string]schema.Attribute{
	"dhcp_server": schema.StringAttribute{
		Optional:            true,
		MarkdownDescription: "Address of the DHCP Server.",
	},
	"disable_ipam_projection": schema.BoolAttribute{
		Optional:            true,
		Computed:            true,
		Default:             booldefault.StaticBool(false),
		MarkdownDescription: "This flag controls the IPAM Sync/Reconciliation for the provider.",
	},
	"ip_space": schema.StringAttribute{
		Optional:            true,
		MarkdownDescription: "IP Space.",
	},
}
View Source
var ObjectAttrTypes = map[string]attr.Type{
	"category":     types.ObjectType{AttrTypes: CategoryAttrTypes},
	"resource_set": types.ListType{ElemType: types.ObjectType{AttrTypes: ResourceAttrTypes}},
}
View Source
var ObjectResourceSchemaAttributes = map[string]schema.Attribute{
	"category": schema.SingleNestedAttribute{
		Attributes:          CategoryResourceSchemaAttributes,
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Category of the object.",
	},
	"resource_set": schema.ListNestedAttribute{
		NestedObject: schema.NestedAttributeObject{
			Attributes: ResourceResourceSchemaAttributes,
		},
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Resource set of the object .",
	},
}
View Source
var ObjectTypeAttrTypes = map[string]attr.Type{
	"discover_new": types.BoolType,
	"objects":      types.ListType{ElemType: types.ObjectType{AttrTypes: ObjectAttrTypes}},
	"version":      types.Float64Type,
}
View Source
var ObjectTypeResourceSchemaAttributes = map[string]schema.Attribute{
	"discover_new": schema.BoolAttribute{
		Optional:            true,
		Computed:            true,
		Default:             booldefault.StaticBool(false),
		MarkdownDescription: "Discover new objects.",
	},
	"objects": schema.ListNestedAttribute{
		NestedObject: schema.NestedAttributeObject{
			Attributes: ObjectResourceSchemaAttributes,
		},
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "List of objects to discover.",
	},
	"version": schema.Float64Attribute{
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "Version of the object type.",
	},
}
View Source
var ResourceAttrTypes = map[string]attr.Type{
	"excluded": types.BoolType,
	"id":       types.StringType,
}
View Source
var ResourceResourceSchemaAttributes = map[string]schema.Attribute{
	"excluded": schema.BoolAttribute{
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "If set true , the resource set of a particular category is excluded from discovery.",
	},
	"id": schema.StringAttribute{
		Optional:            true,
		Computed:            true,
		MarkdownDescription: "The resource set ID.",
	},
}
View Source
var SourceConfigAttrTypes = map[string]attr.Type{
	"account_schedule_id":    types.StringType,
	"accounts":               types.ListType{ElemType: types.ObjectType{AttrTypes: AccountAttrTypes}},
	"cloud_credential_id":    types.StringType,
	"created_at":             timetypes.RFC3339Type{},
	"credential_config":      types.ObjectType{AttrTypes: CredentialConfigAttrTypes},
	"deleted_at":             timetypes.RFC3339Type{},
	"id":                     types.StringType,
	"restricted_to_accounts": types.ListType{ElemType: types.StringType},
	"updated_at":             timetypes.RFC3339Type{},
}
View Source
var SourceConfigResourceSchemaAttributes = map[string]schema.Attribute{
	"account_schedule_id": schema.StringAttribute{
		Computed:            true,
		MarkdownDescription: "Account Schedule ID.",
	},
	"accounts": schema.ListNestedAttribute{
		NestedObject: schema.NestedAttributeObject{
			Attributes: AccountResourceSchemaAttributes,
		},
		Computed:            true,
		MarkdownDescription: "List of accounts to be discovered.",
	},
	"cloud_credential_id": schema.StringAttribute{
		Optional: true,
		PlanModifiers: []planmodifier.String{
			stringplanmodifier.RequiresReplaceIfConfigured(),
		},
		MarkdownDescription: "Cloud Credential ID.",
	},
	"created_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been created.",
	},
	"credential_config": schema.SingleNestedAttribute{
		Attributes:          CredentialConfigResourceSchemaAttributes,
		Optional:            true,
		MarkdownDescription: "Credential configuration For the discovery job.",
	},
	"deleted_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been deleted.",
	},
	"id": schema.StringAttribute{
		Computed: true,
		PlanModifiers: []planmodifier.String{
			stringplanmodifier.UseStateForUnknown(),
		},
		MarkdownDescription: "Auto-generated unique source config ID. Format BloxID.",
	},
	"restricted_to_accounts": schema.ListAttribute{
		ElementType: types.StringType,
		Optional:    true,
		Computed:    true,
		PlanModifiers: []planmodifier.List{
			listplanmodifier.RequiresReplaceIfConfigured(),
		},
		MarkdownDescription: "Provider account IDs such as accountID/ SubscriptionID to be restricted for a given source_config.",
	},
	"updated_at": schema.StringAttribute{
		CustomType:          timetypes.RFC3339Type{},
		Computed:            true,
		MarkdownDescription: "Timestamp when the object has been updated.",
	},
}

Functions

func ExpandAccount

func ExpandAccount(ctx context.Context, o types.Object, diags *diag.Diagnostics) *clouddiscovery.Account

func ExpandCategory

func ExpandCategory(ctx context.Context, o types.Object, diags *diag.Diagnostics) *clouddiscovery.Category

func ExpandDNSConfig

func ExpandDNSConfig(ctx context.Context, o types.Object, diags *diag.Diagnostics) *clouddiscovery.DNSConfig

func ExpandDestination

func ExpandDestination(ctx context.Context, o types.Object, diags *diag.Diagnostics) *clouddiscovery.Destination

func ExpandIPAMConfig

func ExpandIPAMConfig(ctx context.Context, o types.Object, diags *diag.Diagnostics) *clouddiscovery.IPAMConfig

func ExpandObject

func ExpandObject(ctx context.Context, o types.Object, diags *diag.Diagnostics) *clouddiscovery.Object

func ExpandObjectType

func ExpandObjectType(ctx context.Context, o types.Object, diags *diag.Diagnostics) *clouddiscovery.ObjectType

func ExpandResource

func ExpandResource(ctx context.Context, o types.Object, diags *diag.Diagnostics) *clouddiscovery.Resource

func FlattenAccount

func FlattenAccount(ctx context.Context, from *clouddiscovery.Account, diags *diag.Diagnostics) types.Object

func FlattenAdditionalConfig

func FlattenAdditionalConfig(ctx context.Context, from *clouddiscovery.AdditionalConfig, diags *diag.Diagnostics) types.Object

func FlattenCategory

func FlattenCategory(ctx context.Context, from *clouddiscovery.Category, diags *diag.Diagnostics) types.Object

func FlattenCredentialConfig

func FlattenCredentialConfig(ctx context.Context, from *clouddiscovery.CredentialConfig, diags *diag.Diagnostics) types.Object

func FlattenCredentialPreference

func FlattenCredentialPreference(ctx context.Context, from *clouddiscovery.CredentialPreference, diags *diag.Diagnostics) types.Object

func FlattenDNSConfig

func FlattenDNSConfig(ctx context.Context, from *clouddiscovery.DNSConfig, diags *diag.Diagnostics) types.Object

func FlattenDestination

func FlattenDestination(ctx context.Context, from *clouddiscovery.Destination, diags *diag.Diagnostics) types.Object

func FlattenDestinationConfig

func FlattenDestinationConfig(ctx context.Context, from *clouddiscovery.DestinationConfig, diags *diag.Diagnostics) types.Object

func FlattenDiscoveryConfig

func FlattenDiscoveryConfig(ctx context.Context, from *clouddiscovery.DiscoveryConfig, diags *diag.Diagnostics) types.Object

func FlattenIPAMConfig

func FlattenIPAMConfig(ctx context.Context, from *clouddiscovery.IPAMConfig, diags *diag.Diagnostics) types.Object

func FlattenObject

func FlattenObject(ctx context.Context, from *clouddiscovery.Object, diags *diag.Diagnostics) types.Object

func FlattenObjectType

func FlattenObjectType(ctx context.Context, from *clouddiscovery.ObjectType, diags *diag.Diagnostics) types.Object

func FlattenResource

func FlattenResource(ctx context.Context, from *clouddiscovery.Resource, diags *diag.Diagnostics) types.Object

func FlattenSourceConfig

func FlattenSourceConfig(ctx context.Context, from *clouddiscovery.SourceConfig, diags *diag.Diagnostics) types.Object

func NewProviderResource

func NewProviderResource() resource.Resource

func NewProvidersDataSource

func NewProvidersDataSource() datasource.DataSource

Types

type AccountModel

type AccountModel struct {
	CompositeStatus        types.String      `tfsdk:"composite_status"`
	CompositeStatusMessage types.String      `tfsdk:"composite_status_message"`
	CreatedAt              timetypes.RFC3339 `tfsdk:"created_at"`
	DeletedAt              timetypes.RFC3339 `tfsdk:"deleted_at"`
	DhcpServerId           types.String      `tfsdk:"dhcp_server_id"`
	DnsServerId            types.String      `tfsdk:"dns_server_id"`
	Id                     types.String      `tfsdk:"id"`
	LastSuccessfulSync     timetypes.RFC3339 `tfsdk:"last_successful_sync"`
	LastSync               timetypes.RFC3339 `tfsdk:"last_sync"`
	Name                   types.String      `tfsdk:"name"`
	ParentId               types.String      `tfsdk:"parent_id"`
	PercentComplete        types.Int64       `tfsdk:"percent_complete"`
	ProviderAccountId      types.String      `tfsdk:"provider_account_id"`
	ScheduleId             types.String      `tfsdk:"schedule_id"`
	State                  types.String      `tfsdk:"state"`
	Status                 types.String      `tfsdk:"status"`
	StatusMessage          types.String      `tfsdk:"status_message"`
	UpdatedAt              timetypes.RFC3339 `tfsdk:"updated_at"`
}

func (*AccountModel) Expand

func (*AccountModel) Flatten

func (m *AccountModel) Flatten(ctx context.Context, from *clouddiscovery.Account, diags *diag.Diagnostics)

type AdditionalConfigModel

type AdditionalConfigModel struct {
	ExcludedAccounts      types.List   `tfsdk:"excluded_accounts"`
	ForwardZoneEnabled    types.Bool   `tfsdk:"forward_zone_enabled"`
	InternalRangesEnabled types.Bool   `tfsdk:"internal_ranges_enabled"`
	ObjectType            types.Object `tfsdk:"object_type"`
}

func (*AdditionalConfigModel) Expand

func (*AdditionalConfigModel) Flatten

type CategoryModel

type CategoryModel struct {
	Excluded types.Bool   `tfsdk:"excluded"`
	Id       types.String `tfsdk:"id"`
}

func (*CategoryModel) Expand

func (*CategoryModel) Flatten

func (m *CategoryModel) Flatten(ctx context.Context, from *clouddiscovery.Category, diags *diag.Diagnostics)

type CredentialConfigModel

type CredentialConfigModel struct {
	AccessIdentifier types.String `tfsdk:"access_identifier"`
	Enclave          types.String `tfsdk:"enclave"`
	Region           types.String `tfsdk:"region"`
}

func (*CredentialConfigModel) Expand

func (*CredentialConfigModel) Flatten

type CredentialPreferenceModel

type CredentialPreferenceModel struct {
	AccessIdentifierType types.String `tfsdk:"access_identifier_type"`
	CredentialType       types.String `tfsdk:"credential_type"`
}

func (*CredentialPreferenceModel) Expand

func (*CredentialPreferenceModel) Flatten

type DNSConfigModel

type DNSConfigModel struct {
	ConsolidatedZoneDataEnabled types.Bool   `tfsdk:"consolidated_zone_data_enabled"`
	SplitViewEnabled            types.Bool   `tfsdk:"split_view_enabled"`
	SyncType                    types.String `tfsdk:"sync_type"`
	ViewId                      types.String `tfsdk:"view_id"`
	ViewName                    types.String `tfsdk:"view_name"`
}

func (*DNSConfigModel) Expand

func (*DNSConfigModel) Flatten

func (m *DNSConfigModel) Flatten(ctx context.Context, from *clouddiscovery.DNSConfig, diags *diag.Diagnostics)

type DestinationConfigModel

type DestinationConfigModel struct {
	Dns  types.Object `tfsdk:"dns"`
	Ipam types.Object `tfsdk:"ipam"`
}

func (*DestinationConfigModel) Expand

func (*DestinationConfigModel) Flatten

type DestinationModel

type DestinationModel struct {
	Config          types.Object      `tfsdk:"config"`
	CreatedAt       timetypes.RFC3339 `tfsdk:"created_at"`
	DeletedAt       timetypes.RFC3339 `tfsdk:"deleted_at"`
	DestinationType types.String      `tfsdk:"destination_type"`
	Id              types.String      `tfsdk:"id"`
	UpdatedAt       timetypes.RFC3339 `tfsdk:"updated_at"`
}

func (*DestinationModel) Expand

func (*DestinationModel) Flatten

type DiscoveryConfigModel

type DiscoveryConfigModel struct {
	AccountPreference       types.String                     `tfsdk:"account_preference"`
	AdditionalConfig        types.Object                     `tfsdk:"additional_config"`
	CreatedAt               timetypes.RFC3339                `tfsdk:"created_at"`
	CredentialPreference    types.Object                     `tfsdk:"credential_preference"`
	DeletedAt               timetypes.RFC3339                `tfsdk:"deleted_at"`
	Description             types.String                     `tfsdk:"description"`
	DesiredState            types.String                     `tfsdk:"desired_state"`
	DestinationTypesEnabled internaltypes.UnorderedListValue `tfsdk:"destination_types_enabled"`
	Destinations            internaltypes.UnorderedListValue `tfsdk:"destinations"`
	Id                      types.String                     `tfsdk:"id"`
	LastSync                timetypes.RFC3339                `tfsdk:"last_sync"`
	Name                    types.String                     `tfsdk:"name"`
	ProviderType            types.String                     `tfsdk:"provider_type"`
	SourceConfigs           types.List                       `tfsdk:"source_configs"`
	Status                  types.String                     `tfsdk:"status"`
	StatusMessage           types.String                     `tfsdk:"status_message"`
	SyncInterval            types.String                     `tfsdk:"sync_interval"`
	Tags                    types.Map                        `tfsdk:"tags"`
	TagsAll                 types.Map                        `tfsdk:"tags_all"`
	UpdatedAt               timetypes.RFC3339                `tfsdk:"updated_at"`
}

func (*DiscoveryConfigModel) Expand

func (*DiscoveryConfigModel) Flatten

type DiscoveryConfigModelWithFilter

type DiscoveryConfigModelWithFilter struct {
	Filters types.Map  `tfsdk:"filters"`
	Results types.List `tfsdk:"results"`
}

func (*DiscoveryConfigModelWithFilter) FlattenResults

type IPAMConfigModel

type IPAMConfigModel struct {
	DhcpServer            types.String `tfsdk:"dhcp_server"`
	DisableIpamProjection types.Bool   `tfsdk:"disable_ipam_projection"`
	IpSpace               types.String `tfsdk:"ip_space"`
}

func (*IPAMConfigModel) Expand

func (*IPAMConfigModel) Flatten

func (m *IPAMConfigModel) Flatten(ctx context.Context, from *clouddiscovery.IPAMConfig, diags *diag.Diagnostics)

type ObjectModel

type ObjectModel struct {
	Category    types.Object `tfsdk:"category"`
	ResourceSet types.List   `tfsdk:"resource_set"`
}

func (*ObjectModel) Expand

func (*ObjectModel) Flatten

func (m *ObjectModel) Flatten(ctx context.Context, from *clouddiscovery.Object, diags *diag.Diagnostics)

type ObjectTypeModel

type ObjectTypeModel struct {
	DiscoverNew types.Bool    `tfsdk:"discover_new"`
	Objects     types.List    `tfsdk:"objects"`
	Version     types.Float64 `tfsdk:"version"`
}

func (*ObjectTypeModel) Expand

func (*ObjectTypeModel) Flatten

func (m *ObjectTypeModel) Flatten(ctx context.Context, from *clouddiscovery.ObjectType, diags *diag.Diagnostics)

type ProviderResource

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

ProviderResource defines the resource implementation.

func (*ProviderResource) Configure

func (*ProviderResource) Create

func (*ProviderResource) Delete

func (*ProviderResource) ImportState

func (*ProviderResource) Metadata

func (*ProviderResource) Read

func (*ProviderResource) Schema

func (*ProviderResource) Update

type ProvidersDataSource

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

ProvidersDataSource defines the data source implementation.

func (*ProvidersDataSource) Configure

func (*ProvidersDataSource) Metadata

func (*ProvidersDataSource) Read

func (*ProvidersDataSource) Schema

type ResourceModel

type ResourceModel struct {
	Excluded types.Bool   `tfsdk:"excluded"`
	Id       types.String `tfsdk:"id"`
}

func (*ResourceModel) Expand

func (*ResourceModel) Flatten

func (m *ResourceModel) Flatten(ctx context.Context, from *clouddiscovery.Resource, diags *diag.Diagnostics)

type SourceConfigModel

type SourceConfigModel struct {
	AccountScheduleId    types.String      `tfsdk:"account_schedule_id"`
	Accounts             types.List        `tfsdk:"accounts"`
	CloudCredentialId    types.String      `tfsdk:"cloud_credential_id"`
	CreatedAt            timetypes.RFC3339 `tfsdk:"created_at"`
	CredentialConfig     types.Object      `tfsdk:"credential_config"`
	DeletedAt            timetypes.RFC3339 `tfsdk:"deleted_at"`
	Id                   types.String      `tfsdk:"id"`
	RestrictedToAccounts types.List        `tfsdk:"restricted_to_accounts"`
	UpdatedAt            timetypes.RFC3339 `tfsdk:"updated_at"`
}

func (*SourceConfigModel) Expand

func (*SourceConfigModel) Flatten

Jump to

Keyboard shortcuts

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