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.