Documentation
¶
Index ¶
- Constants
- func GetAvailability(endpointInterface string) (gophercloud.Availability, error)
- func GetOpenStackProvider(cfg AuthOpts) (*gophercloud.ProviderClient, error)
- type AuthOpts
- type Domain
- type Endpoint
- type Limit
- type OpenStack
- func (o *OpenStack) AssignUserDomainRole(log logr.Logger, roleName string, userID string, domainID string) error
- func (o *OpenStack) AssignUserRole(log logr.Logger, roleName string, userID string, projectID string) error
- func (o *OpenStack) CreateDomain(log logr.Logger, d Domain) (string, error)
- func (o *OpenStack) CreateEndpoint(log logr.Logger, e Endpoint) (string, error)
- func (o *OpenStack) CreateLimit(log logr.Logger, l Limit) (string, error)
- func (o *OpenStack) CreateOrUpdateRegisteredLimit(log logr.Logger, l RegisteredLimit) (string, error)
- func (o *OpenStack) CreateProject(log logr.Logger, p Project) (string, error)
- func (o *OpenStack) CreateRole(log logr.Logger, roleName string) (string, error)
- func (o *OpenStack) CreateService(log logr.Logger, s Service) (string, error)
- func (o *OpenStack) CreateUser(log logr.Logger, u User) (string, error)
- func (o *OpenStack) DeleteEndpoint(log logr.Logger, e Endpoint) error
- func (o *OpenStack) DeleteRegisteredLimit(log logr.Logger, registeredLimitID string) error
- func (o *OpenStack) DeleteService(log logr.Logger, serviceID string) error
- func (o *OpenStack) DeleteUser(log logr.Logger, userName string, domainID string) error
- func (o *OpenStack) GetAuthURL() string
- func (o *OpenStack) GetEndpoints(log logr.Logger, serviceID string, endpointInterface string) ([]endpoints.Endpoint, error)
- func (o *OpenStack) GetOSClient() *gophercloud.ServiceClient
- func (o *OpenStack) GetProject(log logr.Logger, projectName string, domainID string) (*projects.Project, error)
- func (o *OpenStack) GetRegion() string
- func (o *OpenStack) GetRegisteredLimit(log logr.Logger, registeredLimitID string) (*registeredlimits.RegisteredLimit, error)
- func (o *OpenStack) GetRole(log logr.Logger, roleName string) (*roles.Role, error)
- func (o *OpenStack) GetService(log logr.Logger, serviceType string, serviceName string) (*services.Service, error)
- func (o *OpenStack) GetUser(log logr.Logger, userName string, domainID string) (*users.User, error)
- func (o *OpenStack) ListRegisteredLimitsByResourceName(log logr.Logger, resourceName string) ([]registeredlimits.RegisteredLimit, error)
- func (o *OpenStack) ListRegisteredLimitsByServiceID(log logr.Logger, serviceID string) ([]registeredlimits.RegisteredLimit, error)
- func (o *OpenStack) UpdateEndpoint(log logr.Logger, e Endpoint, endpointID string) (string, error)
- func (o *OpenStack) UpdateService(log logr.Logger, s Service, serviceID string) error
- func (o *OpenStack) VolumeServiceCheck(log logr.Logger, serviceName string) (bool, error)
- type Project
- type RegisteredLimit
- type Role
- type Service
- type TLSConfig
- type User
Constants ¶
const ProjectNotFound = "project not found"
ProjectNotFound - project not found error message"
const RoleNotFound = "role not found in keystone"
RoleNotFound - role not found error message"
const ServiceNotFound = "service not found in keystone"
ServiceNotFound - service not found error message"
const UserNotFound = "user not found in keystone"
UserNotFound - user not found error message"
Variables ¶
This section is empty.
Functions ¶
func GetAvailability ¶
func GetAvailability( endpointInterface string, ) (gophercloud.Availability, error)
GetAvailability - returns mapping of enpointtype to gophercloud.Availability
func GetOpenStackProvider ¶ added in v0.4.0
func GetOpenStackProvider( cfg AuthOpts, ) (*gophercloud.ProviderClient, error)
GetOpenStackProvider creates a new instance of the openstack struct from a config struct
Types ¶
type AuthOpts ¶
type AuthOpts struct { AuthURL string Username string Password string TenantName string DomainName string Region string Scope *gophercloud.AuthScope TLS *TLSConfig }
AuthOpts -
type Domain ¶
Domain - Holds the name and description to be used while creating or looking up the OpenStack domain.
type Endpoint ¶
type Endpoint struct { Name string ServiceID string Availability gophercloud.Availability URL string }
Endpoint -
type Limit ¶
type Limit struct { // RegionID is the ID of the region where the limit is applied. RegionID string `json:"region_id,omitempty"` // DomainID is the ID of the domain where the limit is applied. DomainID string `json:"domain_id,omitempty"` // ProjectID is the ID of the project where the limit is applied. ProjectID string `json:"project_id,omitempty"` // ServiceID is the ID of the service where the limit is applied. ServiceID string `json:"service_id" required:"true"` // Description of the limit. Description string `json:"description,omitempty"` // ResourceName is the name of the resource that the limit is applied to. ResourceName string `json:"resource_name" required:"true"` // ResourceLimit is the override limit. ResourceLimit int `json:"resource_limit" required:"true"` }
Limit -
type OpenStack ¶
type OpenStack struct {
// contains filtered or unexported fields
}
OpenStack -
func GetNovaOpenStackClient ¶ added in v0.4.0
func GetNovaOpenStackClient( log logr.Logger, cfg AuthOpts, endpointOpts gophercloud.EndpointOpts, ) (*OpenStack, error)
GetNovaOpenStackClient creates a new instance of the openstack compute struct from a config struct
func NewOpenStack ¶
NewOpenStack creates a new new instance of the openstack identity struct from a config struct
func (*OpenStack) AssignUserDomainRole ¶
func (o *OpenStack) AssignUserDomainRole( log logr.Logger, roleName string, userID string, domainID string, ) error
AssignUserDomainRole - adds user with userID and domainID to role with roleName
func (*OpenStack) AssignUserRole ¶
func (o *OpenStack) AssignUserRole( log logr.Logger, roleName string, userID string, projectID string, ) error
AssignUserRole - adds user with userID,projectID to role with roleName
func (*OpenStack) CreateDomain ¶
CreateDomain - creates a domain with domainName and domainDescription if it does not exist
func (*OpenStack) CreateEndpoint ¶
CreateEndpoint - create endpoint
func (*OpenStack) CreateLimit ¶
CreateLimit - create a limit in keystone for particular project if it does not exist
func (*OpenStack) CreateOrUpdateRegisteredLimit ¶
func (o *OpenStack) CreateOrUpdateRegisteredLimit( log logr.Logger, l RegisteredLimit, ) (string, error)
CreateOrUpdateRegisteredLimit - create or update limit in keystone (global across projects) if it does not exist
func (*OpenStack) CreateProject ¶
CreateProject - creates project with projectName and projectDescription if it does not exist
func (*OpenStack) CreateRole ¶
CreateRole - creates role with projectuserName, password and default project projectID
func (*OpenStack) CreateService ¶
CreateService - create service
func (*OpenStack) CreateUser ¶
CreateUser - creates user with userName, password and default project projectID
func (*OpenStack) DeleteEndpoint ¶
DeleteEndpoint - delete endpoint
func (*OpenStack) DeleteRegisteredLimit ¶
DeleteRegisteredLimit - delete limit from keystone
func (*OpenStack) DeleteService ¶
DeleteService - delete service with serviceID
func (*OpenStack) DeleteUser ¶
DeleteUser - deletes user with userName
func (*OpenStack) GetAuthURL ¶
GetAuthURL - returns the region
func (*OpenStack) GetEndpoints ¶
func (o *OpenStack) GetEndpoints( log logr.Logger, serviceID string, endpointInterface string, ) ([]endpoints.Endpoint, error)
GetEndpoints - get endpoints for the registered service. if endpointInterface is provided, just return the endpoint for that type.
func (*OpenStack) GetOSClient ¶
func (o *OpenStack) GetOSClient() *gophercloud.ServiceClient
GetOSClient - returns the client
func (*OpenStack) GetProject ¶ added in v0.4.0
func (o *OpenStack) GetProject( log logr.Logger, projectName string, domainID string, ) (*projects.Project, error)
GetProject - gets project with projectName
func (*OpenStack) GetRegisteredLimit ¶
func (o *OpenStack) GetRegisteredLimit( log logr.Logger, registeredLimitID string, ) (*registeredlimits.RegisteredLimit, error)
GetRegisteredLimit - Get existing registered limit by ID
func (*OpenStack) GetService ¶
func (o *OpenStack) GetService( log logr.Logger, serviceType string, serviceName string, ) (*services.Service, error)
GetService - get service with type and name
func (*OpenStack) GetUser ¶
func (o *OpenStack) GetUser( log logr.Logger, userName string, domainID string, ) (*users.User, error)
GetUser - get user with userName
func (*OpenStack) ListRegisteredLimitsByResourceName ¶
func (o *OpenStack) ListRegisteredLimitsByResourceName( log logr.Logger, resourceName string, ) ([]registeredlimits.RegisteredLimit, error)
ListRegisteredLimitsByResourceName - List all registered limits filtered by resource name
func (*OpenStack) ListRegisteredLimitsByServiceID ¶
func (o *OpenStack) ListRegisteredLimitsByServiceID( log logr.Logger, serviceID string, ) ([]registeredlimits.RegisteredLimit, error)
ListRegisteredLimitsByServiceID - List all registered limits filtered by service id
func (*OpenStack) UpdateEndpoint ¶
func (o *OpenStack) UpdateEndpoint( log logr.Logger, e Endpoint, endpointID string, ) (string, error)
UpdateEndpoint -
func (*OpenStack) UpdateService ¶
UpdateService - update service with type and name
type RegisteredLimit ¶
type RegisteredLimit struct { // RegionID is the ID of the region where the limit is applied. RegionID string `json:"region_id,omitempty"` // ServiceID is the ID of the service where the limit is applied. ServiceID string `json:"service_id" required:"true"` // Description of the limit. Description string `json:"description,omitempty"` // ResourceName is the name of the resource that the limit is applied to. ResourceName string `json:"resource_name" required:"true"` // DefaultLimit is the default limit. DefaultLimit int `json:"default_limit"` }
RegisteredLimit -