provider

package
v0.4.4 Latest Latest
Warning

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

Go to latest
Published: Mar 26, 2024 License: MPL-2.0 Imports: 39 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(version string) func() provider.Provider

func NewEntityDataSource added in v0.4.0

func NewEntityDataSource() datasource.DataSource

func NewHostRecordDataSource added in v0.4.0

func NewHostRecordDataSource() datasource.DataSource

func NewHostRecordResource added in v0.4.0

func NewHostRecordResource() resource.Resource

func NewIP4AddressDataSource added in v0.4.0

func NewIP4AddressDataSource() datasource.DataSource

func NewIP4AddressResource added in v0.4.0

func NewIP4AddressResource() resource.Resource

func NewIP4AvailableNetworkResource added in v0.4.0

func NewIP4AvailableNetworkResource() resource.Resource

func NewIP4NBRDataSource added in v0.4.0

func NewIP4NBRDataSource() datasource.DataSource

func NewIP4NetworkDataSource added in v0.4.0

func NewIP4NetworkDataSource() datasource.DataSource

func NewIP4NetworkResource added in v0.4.0

func NewIP4NetworkResource() resource.Resource

func NewRand

func NewRand(seed string) *rand.Rand

NewRand returns a seeded random number generator, using a seed derived from the provided string.

If the seed string is empty, the current time is used as a seed.

Types

type EntityDataSourceModel added in v0.4.0

type EntityDataSourceModel struct {
	Id         types.String `tfsdk:"id"`
	Name       types.String `tfsdk:"name"`
	Type       types.String `tfsdk:"type"`
	ParentID   types.Int64  `tfsdk:"parent_id"`
	Properties types.String `tfsdk:"properties"`
}

ExampleDataSourceModel describes the data source data model.

type HostRecordDataSource added in v0.4.0

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

HostRecordDataSource defines the data source implementation.

func (*HostRecordDataSource) Configure added in v0.4.0

func (*HostRecordDataSource) Metadata added in v0.4.0

func (*HostRecordDataSource) Read added in v0.4.0

func (*HostRecordDataSource) Schema added in v0.4.0

type HostRecordDataSourceModel added in v0.4.0

type HostRecordDataSourceModel struct {
	ID                types.String `tfsdk:"id"`
	AbsoluteName      types.String `tfsdk:"absolute_name"`
	Addresses         types.Set    `tfsdk:"addresses"`
	AddressIDs        types.Set    `tfsdk:"address_ids"`
	UserDefinedFields types.Map    `tfsdk:"user_defined_fields"`
	Name              types.String `tfsdk:"name"`
	ParentID          types.Int64  `tfsdk:"parent_id"`
	ParentType        types.String `tfsdk:"parent_type"`
	Properties        types.String `tfsdk:"properties"`
	ReverseRecord     types.Bool   `tfsdk:"reverse_record"`
	TTL               types.Int64  `tfsdk:"ttl"`
	Type              types.String `tfsdk:"type"`
}

HostRecordDataSourceModel describes the data source data model.

type HostRecordModel added in v0.4.1

type HostRecordModel struct {
	// These are exposed via the entity properties field for objects of type IP4Network
	TTL           types.Int64
	AbsoluteName  types.String
	Addresses     types.Set
	ReverseRecord types.Bool

	// these are user defined fields that are not built-in
	UserDefinedFields types.Map

	// these are returned by the API but do not appear in the documentation
	AddressIDs types.Set

	// these are returned by the API with a hint based search but do not appear in the documentation
	ParentID   types.Int64
	ParentType types.String
}

HostRecordModel describes the data model the built-in properties for a Host Record object.

type HostRecordResource added in v0.4.0

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

HostRecordResource defines the resource implementation.

func (*HostRecordResource) Configure added in v0.4.0

func (*HostRecordResource) Create added in v0.4.0

func (*HostRecordResource) Delete added in v0.4.0

func (*HostRecordResource) ImportState added in v0.4.0

func (*HostRecordResource) Metadata added in v0.4.0

func (*HostRecordResource) Read added in v0.4.0

func (*HostRecordResource) Schema added in v0.4.0

func (*HostRecordResource) Update added in v0.4.0

type HostRecordResourceModel added in v0.4.0

type HostRecordResourceModel struct {
	// These are exposed for a generic entity object in bluecat
	ID         types.String `tfsdk:"id"`
	Name       types.String `tfsdk:"name"`
	Type       types.String `tfsdk:"type"`
	Properties types.String `tfsdk:"properties"`

	// These are exposed via the entity properties field for objects of type IP4Address
	TTL           types.Int64  `tfsdk:"ttl"`
	AbsoluteName  types.String `tfsdk:"absolute_name"`
	Addresses     types.Set    `tfsdk:"addresses"`
	ReverseRecord types.Bool   `tfsdk:"reverse_record"`

	// this is returned by the API but do not appear in the documentation
	AddressIDs types.Set `tfsdk:"address_ids"`

	// these are user defined fields that are not built-in
	UserDefinedFields types.Map `tfsdk:"user_defined_fields"`

	// These fields are only used for creation
	DNSZone types.String `tfsdk:"dns_zone"`
	ViewID  types.Int64  `tfsdk:"view_id"`
}

HostRecordResourceModel describes the resource data model.

type IP4AddressDataSource added in v0.4.0

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

IP4AddressDataSource defines the data source implementation.

func (*IP4AddressDataSource) Configure added in v0.4.0

func (*IP4AddressDataSource) Metadata added in v0.4.0

func (*IP4AddressDataSource) Read added in v0.4.0

func (*IP4AddressDataSource) Schema added in v0.4.0

type IP4AddressDataSourceModel added in v0.4.0

type IP4AddressDataSourceModel struct {
	// These are exposed for a generic entity object in bluecat
	ID         types.String `tfsdk:"id"`
	Name       types.String `tfsdk:"name"`
	Type       types.String `tfsdk:"type"`
	Properties types.String `tfsdk:"properties"`

	// This is used to help find the IP4Address
	ContainerID types.Int64 `tfsdk:"container_id"`

	// These are exposed via the entity properties field for objects of type IP4Address
	Address               types.String `tfsdk:"address"`
	State                 types.String `tfsdk:"state"`
	MACAddress            types.String `tfsdk:"mac_address"`
	RouterPortInfo        types.String `tfsdk:"router_port_info"`
	SwitchPortInfo        types.String `tfsdk:"switch_port_info"`
	VLANInfo              types.String `tfsdk:"vlan_info"`
	LeaseTime             types.String `tfsdk:"lease_time"`
	ExpiryTime            types.String `tfsdk:"expiry_time"`
	ParameterRequestList  types.String `tfsdk:"parameter_request_list"`
	VendorClassIdentifier types.String `tfsdk:"vendor_class_identifier"`
	LocationCode          types.String `tfsdk:"location_code"`
	LocationInherited     types.Bool   `tfsdk:"location_inherited"`

	// these are user defined fields that are not built-in
	UserDefinedFields types.Map `tfsdk:"user_defined_fields"`
}

IP4AddressDataSourceModel describes the data source data model.

type IP4AddressModel added in v0.4.1

type IP4AddressModel struct {
	// These are exposed via the entity properties field for objects of type IP4Network
	Address               types.String
	State                 types.String
	MACAddress            types.String
	RouterPortInfo        types.String
	SwitchPortInfo        types.String
	VLANInfo              types.String
	LeaseTime             types.String
	ExpiryTime            types.String
	ParameterRequestList  types.String
	VendorClassIdentifier types.String
	LocationCode          types.String
	LocationInherited     types.Bool

	// these are user defined fields that are not built-in
	UserDefinedFields types.Map
}

IP4AddressModel describes the data model the built-in properties for an IP4Address object.

type IP4AddressResource added in v0.4.0

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

IP4AddressResource defines the resource implementation.

func (*IP4AddressResource) Configure added in v0.4.0

func (*IP4AddressResource) Create added in v0.4.0

func (*IP4AddressResource) Delete added in v0.4.0

func (*IP4AddressResource) ImportState added in v0.4.0

func (*IP4AddressResource) Metadata added in v0.4.0

func (*IP4AddressResource) Read added in v0.4.0

func (*IP4AddressResource) Schema added in v0.4.0

func (*IP4AddressResource) Update added in v0.4.0

type IP4AddressResourceModel added in v0.4.0

type IP4AddressResourceModel struct {
	// These are exposed for a generic entity object in bluecat
	ID         types.String `tfsdk:"id"`
	Name       types.String `tfsdk:"name"`
	Type       types.String `tfsdk:"type"`
	Properties types.String `tfsdk:"properties"`

	// These are exposed via the entity properties field for objects of type IP4Address
	Address               types.String `tfsdk:"address"`
	State                 types.String `tfsdk:"state"`
	MACAddress            types.String `tfsdk:"mac_address"`
	RouterPortInfo        types.String `tfsdk:"router_port_info"`
	SwitchPortInfo        types.String `tfsdk:"switch_port_info"`
	VLANInfo              types.String `tfsdk:"vlan_info"`
	LeaseTime             types.String `tfsdk:"lease_time"`
	ExpiryTime            types.String `tfsdk:"expiry_time"`
	ParameterRequestList  types.String `tfsdk:"parameter_request_list"`
	VendorClassIdentifier types.String `tfsdk:"vendor_class_identifier"`
	LocationCode          types.String `tfsdk:"location_code"`
	LocationInherited     types.Bool   `tfsdk:"location_inherited"`

	// these are user defined fields that are not built-in
	UserDefinedFields types.Map `tfsdk:"user_defined_fields"`

	// These fields are only used for creation
	Action          types.String `tfsdk:"action"`
	ConfigurationID types.Int64  `tfsdk:"configuration_id"`
	ParentID        types.Int64  `tfsdk:"parent_id"`
}

IP4AddressResourceModel describes the resource data model.

type IP4AvailableNetworkResource added in v0.4.0

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

IP4AvailableNetworkResource defines the resource implementation.

func (*IP4AvailableNetworkResource) Configure added in v0.4.0

func (*IP4AvailableNetworkResource) Create added in v0.4.0

func (*IP4AvailableNetworkResource) Delete added in v0.4.0

func (*IP4AvailableNetworkResource) ImportState added in v0.4.0

func (*IP4AvailableNetworkResource) Metadata added in v0.4.0

func (*IP4AvailableNetworkResource) Read added in v0.4.0

func (*IP4AvailableNetworkResource) Schema added in v0.4.0

func (*IP4AvailableNetworkResource) Update added in v0.4.0

type IP4AvailableNetworkResourceModel added in v0.4.0

type IP4AvailableNetworkResourceModel struct {
	ID            types.String `tfsdk:"id"`
	NetworkIDList types.List   `tfsdk:"network_id_list"`
	Keepers       types.Map    `tfsdk:"keepers"`
	Random        types.Bool   `tfsdk:"random"`
	Seed          types.String `tfsdk:"seed"`
	NetworkID     types.Int64  `tfsdk:"network_id"`
}

IP4AvailableNetworkResourceModel describes the resource data model.

type IP4NBRDataSource added in v0.4.0

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

IP4NBRDataSource defines the data source implementation.

func (*IP4NBRDataSource) Configure added in v0.4.0

func (*IP4NBRDataSource) Metadata added in v0.4.0

func (*IP4NBRDataSource) Read added in v0.4.0

func (*IP4NBRDataSource) Schema added in v0.4.0

type IP4NBRDataSourceModel added in v0.4.0

type IP4NBRDataSourceModel struct {
	ID                        types.String `tfsdk:"id"`
	Address                   types.String `tfsdk:"address"`
	ContainerID               types.Int64  `tfsdk:"container_id"`
	Type                      types.String `tfsdk:"type"`
	AddressesFree             types.Int64  `tfsdk:"addresses_free"`
	AddressesInUse            types.Int64  `tfsdk:"addresses_in_use"`
	AllowDuplicateHost        types.String `tfsdk:"allow_duplicate_host"`
	CIDR                      types.String `tfsdk:"cidr"`
	CustomProperties          types.Map    `tfsdk:"custom_properties"`
	DefaultDomains            types.Set    `tfsdk:"default_domains"`
	DefaultView               types.Int64  `tfsdk:"default_view"`
	DNSRestrictions           types.Set    `tfsdk:"dns_restrictions"`
	Gateway                   types.String `tfsdk:"gateway"`
	InheritAllowDuplicateHost types.Bool   `tfsdk:"inherit_allow_duplicate_host"`
	InheritDefaultDomains     types.Bool   `tfsdk:"inherit_default_domains"`
	InheritDefaultView        types.Bool   `tfsdk:"inherit_default_view"`
	InheritDNSRestrictions    types.Bool   `tfsdk:"inherit_dns_restrictions"`
	InheritPingBeforeAssign   types.Bool   `tfsdk:"inherit_ping_before_assign"`
	LocationCode              types.String `tfsdk:"location_code"`
	LocationInherited         types.Bool   `tfsdk:"location_inherited"`
	Name                      types.String `tfsdk:"name"`
	PingBeforeAssign          types.String `tfsdk:"ping_before_assign"`
	Properties                types.String `tfsdk:"properties"`
	Template                  types.Int64  `tfsdk:"template"`
}

IP4NBRDataSourceModel describes the data source data model.

type IP4NetworkDataSource added in v0.4.0

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

IP4NetworkDataSource defines the data source implementation.

func (*IP4NetworkDataSource) Configure added in v0.4.0

func (*IP4NetworkDataSource) Metadata added in v0.4.0

func (*IP4NetworkDataSource) Read added in v0.4.0

func (*IP4NetworkDataSource) Schema added in v0.4.0

type IP4NetworkDataSourceModel added in v0.4.0

type IP4NetworkDataSourceModel struct {
	// These are exposed for a generic entity object in bluecat
	ID         types.String `tfsdk:"id"`
	Name       types.String `tfsdk:"name"`
	Type       types.String `tfsdk:"type"`
	Properties types.String `tfsdk:"properties"`

	// These are exposed via the entity properties field for objects of type IP4Network
	CIDR                      types.String `tfsdk:"cidr"`
	Template                  types.Int64  `tfsdk:"template"`
	Gateway                   types.String `tfsdk:"gateway"`
	DefaultDomains            types.Set    `tfsdk:"default_domains"`
	DefaultView               types.Int64  `tfsdk:"default_view"`
	DNSRestrictions           types.Set    `tfsdk:"dns_restrictions"`
	AllowDuplicateHost        types.Bool   `tfsdk:"allow_duplicate_host"`
	PingBeforeAssign          types.Bool   `tfsdk:"ping_before_assign"`
	InheritAllowDuplicateHost types.Bool   `tfsdk:"inherit_allow_duplicate_host"`
	InheritPingBeforeAssign   types.Bool   `tfsdk:"inherit_ping_before_assign"`
	InheritDNSRestrictions    types.Bool   `tfsdk:"inherit_dns_restrictions"`
	InheritDefaultDomains     types.Bool   `tfsdk:"inherit_default_domains"`
	InheritDefaultView        types.Bool   `tfsdk:"inherit_default_view"`
	LocationCode              types.String `tfsdk:"location_code"`
	LocationInherited         types.Bool   `tfsdk:"location_inherited"`
	SharedNetwork             types.String `tfsdk:"shared_network"`

	// these are user defined fields that are not built-in
	UserDefinedFields types.Map `tfsdk:"user_defined_fields"`

	// these exist only for the data source to find the network
	ContainerID types.Int64  `tfsdk:"container_id"`
	Hint        types.String `tfsdk:"hint"`
}

IP4NetworkDataSourceModel describes the data source data model.

type IP4NetworkModel added in v0.4.1

type IP4NetworkModel struct {
	// These are exposed via the entity properties field for objects of type IP4Network
	CIDR                      types.String
	Template                  types.Int64
	Gateway                   types.String
	DefaultDomains            types.Set
	DefaultView               types.Int64
	DNSRestrictions           types.Set
	AllowDuplicateHost        types.Bool
	PingBeforeAssign          types.Bool
	InheritAllowDuplicateHost types.Bool
	InheritPingBeforeAssign   types.Bool
	InheritDNSRestrictions    types.Bool
	InheritDefaultDomains     types.Bool
	InheritDefaultView        types.Bool
	LocationCode              types.String
	LocationInherited         types.Bool
	SharedNetwork             types.String

	// these are user defined fields that are not built-in
	UserDefinedFields types.Map
}

IP4NetworkModel describes the data model the built-in properties for an IP4Network object.

type IP4NetworkResource added in v0.4.0

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

IP4NetworkResource defines the resource implementation.

func (*IP4NetworkResource) Configure added in v0.4.0

func (*IP4NetworkResource) Create added in v0.4.0

func (*IP4NetworkResource) Delete added in v0.4.0

func (*IP4NetworkResource) ImportState added in v0.4.0

func (*IP4NetworkResource) Metadata added in v0.4.0

func (*IP4NetworkResource) Read added in v0.4.0

func (*IP4NetworkResource) Schema added in v0.4.0

func (*IP4NetworkResource) Update added in v0.4.0

func (IP4NetworkResource) ValidateConfig added in v0.4.1

type IP4NetworkResourceModel added in v0.4.0

type IP4NetworkResourceModel struct {
	// These are exposed for a generic entity object in bluecat
	ID         types.String `tfsdk:"id"`
	Name       types.String `tfsdk:"name"`
	Type       types.String `tfsdk:"type"`
	Properties types.String `tfsdk:"properties"`

	// These are exposed via the entity properties field for objects of type IP4Network
	CIDR                      types.String `tfsdk:"cidr"`
	Template                  types.Int64  `tfsdk:"template"`
	Gateway                   types.String `tfsdk:"gateway"`
	DefaultDomains            types.Set    `tfsdk:"default_domains"`
	DefaultView               types.Int64  `tfsdk:"default_view"`
	DNSRestrictions           types.Set    `tfsdk:"dns_restrictions"`
	AllowDuplicateHost        types.Bool   `tfsdk:"allow_duplicate_host"`
	PingBeforeAssign          types.Bool   `tfsdk:"ping_before_assign"`
	InheritAllowDuplicateHost types.Bool   `tfsdk:"inherit_allow_duplicate_host"`
	InheritPingBeforeAssign   types.Bool   `tfsdk:"inherit_ping_before_assign"`
	InheritDNSRestrictions    types.Bool   `tfsdk:"inherit_dns_restrictions"`
	InheritDefaultDomains     types.Bool   `tfsdk:"inherit_default_domains"`
	InheritDefaultView        types.Bool   `tfsdk:"inherit_default_view"`
	LocationCode              types.String `tfsdk:"location_code"`
	LocationInherited         types.Bool   `tfsdk:"location_inherited"`
	SharedNetwork             types.String `tfsdk:"shared_network"`

	// these are user defined fields that are not built-in
	UserDefinedFields types.Map `tfsdk:"user_defined_fields"`

	// These fields are only used for creation
	IsLargerAllowed types.Bool   `tfsdk:"is_larger_allowed"`
	ParentID        types.Int64  `tfsdk:"parent_id"`
	Size            types.Int64  `tfsdk:"size"`
	TraversalMethod types.String `tfsdk:"traversal_method"`
}

IP4NetworkResourceModel describes the resource data model.

Jump to

Keyboard shortcuts

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