Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterDatabaseService ¶
func RegisterDatabaseService(vendor string, ctor DatabaseServiceCtor)
RegisterDatabaseService is used by a provider implementation to make the provider package (i.e. pkg/aws or pkg/mock) available to the arc package. This function is called in the packages' init() function.
Types ¶
type DataCenter ¶
type DataCenter interface {
NewNetwork(*config.Network) (resource.ProviderNetwork, error)
NewSubnet(resource.Network, *config.Subnet) (resource.ProviderSubnet, error)
NewSecurityGroup(resource.Network, *config.SecurityGroup) (resource.ProviderSecurityGroup, error)
NewNetworkPost(resource.Network, *config.Network) (resource.ProviderNetworkPost, error)
NewCompute(*config.Compute) (resource.ProviderCompute, error)
NewKeyPair(*config.KeyPair) (resource.ProviderKeyPair, error)
NewInstance(resource.Instance, *config.Instance) (resource.ProviderInstance, error)
NewVolume(resource.Compute, *config.Volume) (resource.ProviderVolume, error)
NewElasticIP(resource.ElasticIP, resource.Instance) (resource.ProviderElasticIP, error)
NewRole(resource.Role, string, resource.Instance) (resource.ProviderRole, error)
}
type DatabaseService ¶
type DatabaseService interface {
NewDatabaseService(*config.DatabaseService) (resource.ProviderDatabaseService, error)
NewDatabase(*config.Database, resource.DatabaseParams) (resource.ProviderDatabase, error)
}
DatabaseService is an abstract factory. It provides the methods that will create the provider resources. Vendor implementations will provide the concrete implementations of these methods.
func NewDatabaseService ¶
func NewDatabaseService(cfg *config.DatabaseService) (DatabaseService, error)
NewDatabaseService is the provider agnostic constructor used by pkg/arc.
type DatabaseServiceCtor ¶
type DatabaseServiceCtor func(*config.DatabaseService) (DatabaseService, error)
DatabaseServiceCtor is the function signature for the provider's database service constructor.
Click to show internal directories.
Click to hide internal directories.