Documentation ¶
Overview ¶
Package ccv2 represents a Cloud Controller V2 client.
These sets of packages are still under development/pre-pre-pre...alpha. Use at your own risk! Functionality and design may change without warning.
It is currently designed to support Cloud Controller API 2.58.0. However, it may include features and endpoints of later API versions.
For more information on the Cloud Controller API see https://apidocs.cloudfoundry.org/
Method Naming Conventions ¶
The client takes a '<Action Name><Top Level Endpoint><nth... level endpoint><Return Value>' approach to method names. If the <Top Level Endpoint> and <Return Value> are similar, they do not need to be repeated. If a GUID is required for the <Top Level Endpoint>, the pluralization is removed from said endpoint in the method name.
For Example:
Method Name: GetApplication Endpoint: /v2/applications/:guid Action Name: GET Top Level Endpoint: applications Return Value: Application Method Name: GetServiceInstances Endpoint: /v2/service_instances Action Name: GET Top Level Endpoint: service_instances Return Value: []ServiceInstance Method Name: GetSpaceServiceInstances Endpoint: /v2/spaces/:guid/service_instances Action Name: GET Top Level Endpoint: spaces Return Value: []ServiceInstance Method Name: UpdateRouteApplication Endpoint: /v2/routes/:route_guid/apps/:app_guid Action Name: PUT Top Level Endpoint: routes Second Level Endpoint: Application Return Value: Route Method Name: DeleteSpaceJob Endpoint: /v2/spaces/:space_guid Action Name: DELETE Top Level Endpoint: spaces Return Value: Job
Use the following table to determine which HTTP Command equates to which Action Name:
HTTP Command -> Action Name POST -> Create GET -> Get PUT -> Update DELETE -> Delete PATCH -> Patch
Method Locations ¶
Methods exist in the same file as their return type, regardless of which endpoint they use.
Error Handling ¶
All error handling that requires parsing the error_code/code returned back from the Cloud Controller should be placed in the errorWrapper. Everything else can be handled in the individual operations. All errors structs should be placed in individual files in the ccerror package.
No inline-relations-depth And summary Endpoints ¶
This package will not ever use 'inline-relations-depth' or the '/summary' endpoints for any operations. These requests can be extremely taxing on the Cloud Controller and are avoided at all costs. Additionally, the objects returned back from these requests can become extremely inconsistent across versions and are problematic to deal with in general.
An additional problem that occurs with these endpoints is that lists of 51+ objects do not get returned by the CC. Example: Summary of Organizations includes a list of spaces. If there are 50 spaces, the endpoint returns these spaces under the 'spaces' field; if there are 51+, spaces, the 'spaces' field is missing from the CC return.
Index ¶
- func ConvertFilterParameters(filters []Filter) url.Values
- type APIInformation
- type APILink
- type APILinks
- type Application
- type ApplicationInstance
- type ApplicationInstanceStatus
- type Buildpack
- type Client
- func (client *Client) API() string
- func (client *Client) APIVersion() string
- func (client *Client) AuthorizationEndpoint() string
- func (client *Client) CheckRoute(route Route) (bool, Warnings, error)
- func (client *Client) CreateApplication(app Application) (Application, Warnings, error)
- func (client *Client) CreateBuildpack(buildpack Buildpack) (Buildpack, Warnings, error)
- func (client *Client) CreateOrganization(orgName string, quotaGUID string) (Organization, Warnings, error)
- func (client *Client) CreateRoute(route Route, generatePort bool) (Route, Warnings, error)
- func (client *Client) CreateServiceBinding(appGUID string, serviceInstanceGUID string, bindingName string, ...) (ServiceBinding, Warnings, error)
- func (client *Client) CreateServiceBroker(brokerName, username, password, url, spaceGUID string) (ServiceBroker, Warnings, error)
- func (client *Client) CreateServiceInstance(spaceGUID, servicePlanGUID, serviceInstance string, ...) (ServiceInstance, Warnings, error)
- func (client *Client) CreateServiceKey(serviceInstanceGUID string, keyName string, parameters map[string]interface{}) (ServiceKey, Warnings, error)
- func (client *Client) CreateServicePlanVisibility(planGUID string, orgGUID string) (ServicePlanVisibility, Warnings, error)
- func (client *Client) CreateSharedDomain(domainName string, routerGroupdGUID string, isInternal bool) (Warnings, error)
- func (client *Client) CreateSpace(spaceName string, orgGUID string) (Space, Warnings, error)
- func (client *Client) CreateUser(uaaUserID string) (User, Warnings, error)
- func (client *Client) DeleteOrganization(guid string) (Job, Warnings, error)
- func (client *Client) DeleteOrganizationJob(guid string) (Job, Warnings, error)
- func (client *Client) DeleteRoute(routeGUID string) (Warnings, error)
- func (client *Client) DeleteRouteApplication(routeGUID string, appGUID string) (Warnings, error)
- func (client *Client) DeleteSecurityGroupSpace(securityGroupGUID string, spaceGUID string) (Warnings, error)
- func (client *Client) DeleteSecurityGroupStagingSpace(securityGroupGUID string, spaceGUID string) (Warnings, error)
- func (client *Client) DeleteService(serviceGUID string, purge bool) (Warnings, error)
- func (client *Client) DeleteServiceBinding(serviceBindingGUID string, acceptsIncomplete bool) (ServiceBinding, Warnings, error)
- func (client *Client) DeleteServicePlanVisibility(servicePlanVisibilityGUID string) (Warnings, error)
- func (client *Client) DeleteSpace(guid string) (Job, Warnings, error)
- func (client *Client) DeleteSpaceJob(guid string) (Job, Warnings, error)
- func (client *Client) DeleteSpaceUnmappedRoutes(spaceGUID string) (Warnings, error)
- func (client *Client) DopplerEndpoint() string
- func (client *Client) GetApplication(guid string) (Application, Warnings, error)
- func (client *Client) GetApplicationApplicationInstanceStatuses(guid string) (map[int]ApplicationInstanceStatus, Warnings, error)
- func (client *Client) GetApplicationApplicationInstances(guid string) (map[int]ApplicationInstance, Warnings, error)
- func (client *Client) GetApplicationRoutes(appGUID string, filters ...Filter) ([]Route, Warnings, error)
- func (client *Client) GetApplications(filters ...Filter) ([]Application, Warnings, error)
- func (client *Client) GetBuildpacks(filters ...Filter) ([]Buildpack, Warnings, error)
- func (client Client) GetConfigFeatureFlags() ([]FeatureFlag, Warnings, error)
- func (client *Client) GetEvents(filters ...Filter) ([]Event, Warnings, error)
- func (client *Client) GetJob(jobGUID string) (Job, Warnings, error)
- func (client *Client) GetOrganization(guid string) (Organization, Warnings, error)
- func (client *Client) GetOrganizationPrivateDomains(orgGUID string, filters ...Filter) ([]Domain, Warnings, error)
- func (client *Client) GetOrganizationQuota(guid string) (OrganizationQuota, Warnings, error)
- func (client *Client) GetOrganizationQuotas(filters ...Filter) ([]OrganizationQuota, Warnings, error)
- func (client *Client) GetOrganizations(filters ...Filter) ([]Organization, Warnings, error)
- func (client *Client) GetPrivateDomain(domainGUID string) (Domain, Warnings, error)
- func (client *Client) GetPrivateDomains(filters ...Filter) ([]Domain, Warnings, error)
- func (client *Client) GetRoute(guid string) (Route, Warnings, error)
- func (client *Client) GetRouteApplications(routeGUID string, filters ...Filter) ([]Application, Warnings, error)
- func (client *Client) GetRouteMapping(guid string) (RouteMapping, Warnings, error)
- func (client *Client) GetRouteMappings(filters ...Filter) ([]RouteMapping, Warnings, error)
- func (client *Client) GetRoutes(filters ...Filter) ([]Route, Warnings, error)
- func (client *Client) GetSecurityGroupSpaces(securityGroupGUID string) ([]Space, Warnings, error)
- func (client *Client) GetSecurityGroupStagingSpaces(securityGroupGUID string) ([]Space, Warnings, error)
- func (client *Client) GetSecurityGroups(filters ...Filter) ([]SecurityGroup, Warnings, error)
- func (client *Client) GetService(serviceGUID string) (Service, Warnings, error)
- func (client *Client) GetServiceBinding(guid string) (ServiceBinding, Warnings, error)
- func (client *Client) GetServiceBindings(filters ...Filter) ([]ServiceBinding, Warnings, error)
- func (client *Client) GetServiceBrokers(filters ...Filter) ([]ServiceBroker, Warnings, error)
- func (client *Client) GetServiceInstance(serviceInstanceGUID string) (ServiceInstance, Warnings, error)
- func (client *Client) GetServiceInstanceServiceBindings(serviceInstanceGUID string) ([]ServiceBinding, Warnings, error)
- func (client *Client) GetServiceInstanceSharedFrom(serviceInstanceGUID string) (ServiceInstanceSharedFrom, Warnings, error)
- func (client *Client) GetServiceInstanceSharedTos(serviceInstanceGUID string) ([]ServiceInstanceSharedTo, Warnings, error)
- func (client *Client) GetServiceInstances(filters ...Filter) ([]ServiceInstance, Warnings, error)
- func (client *Client) GetServicePlan(servicePlanGUID string) (ServicePlan, Warnings, error)
- func (client *Client) GetServicePlanVisibilities(filters ...Filter) ([]ServicePlanVisibility, Warnings, error)
- func (client *Client) GetServicePlans(filters ...Filter) ([]ServicePlan, Warnings, error)
- func (client *Client) GetServices(filters ...Filter) ([]Service, Warnings, error)
- func (client *Client) GetSharedDomain(domainGUID string) (Domain, Warnings, error)
- func (client *Client) GetSharedDomains(filters ...Filter) ([]Domain, Warnings, error)
- func (client *Client) GetSpaceQuotaDefinition(guid string) (SpaceQuota, Warnings, error)
- func (client *Client) GetSpaceQuotas(orgGUID string) ([]SpaceQuota, Warnings, error)
- func (client *Client) GetSpaceRoutes(spaceGUID string, filters ...Filter) ([]Route, Warnings, error)
- func (client *Client) GetSpaceSecurityGroups(spaceGUID string, filters ...Filter) ([]SecurityGroup, Warnings, error)
- func (client *Client) GetSpaceServiceInstances(spaceGUID string, includeUserProvidedServices bool, filters ...Filter) ([]ServiceInstance, Warnings, error)
- func (client *Client) GetSpaceServices(spaceGUID string, filters ...Filter) ([]Service, Warnings, error)
- func (client *Client) GetSpaceStagingSecurityGroups(spaceGUID string, filters ...Filter) ([]SecurityGroup, Warnings, error)
- func (client *Client) GetSpaceSummary(spaceGUID string) (SpaceSummary, Warnings, error)
- func (client *Client) GetSpaces(filters ...Filter) ([]Space, Warnings, error)
- func (client *Client) GetStack(guid string) (Stack, Warnings, error)
- func (client *Client) GetStacks(filters ...Filter) ([]Stack, Warnings, error)
- func (client *Client) GetUserProvidedServiceInstanceServiceBindings(userProvidedServiceInstanceGUID string) ([]ServiceBinding, Warnings, error)
- func (client *Client) GetUserProvidedServiceInstances(filters ...Filter) ([]ServiceInstance, Warnings, error)
- func (client *Client) Info() (APIInformation, Warnings, error)
- func (client *Client) LogCacheEndpoint() string
- func (client *Client) MinCLIVersion() string
- func (client *Client) PollJob(job Job) (Warnings, error)
- func (client *Client) RestageApplication(app Application) (Application, Warnings, error)
- func (client *Client) RootResponse() (Info, Warnings, error)
- func (client *Client) RoutingEndpoint() string
- func (client *Client) SetSpaceQuota(spaceGUID string, quotaGUID string) (Warnings, error)
- func (client *Client) TargetCF(settings TargetSettings) (Warnings, error)
- func (client *Client) UpdateApplication(app Application) (Application, Warnings, error)
- func (client *Client) UpdateBuildpack(buildpack Buildpack) (Buildpack, Warnings, error)
- func (client *Client) UpdateOrganizationManager(guid string, uaaID string) (Warnings, error)
- func (client *Client) UpdateOrganizationManagerByUsername(guid string, username string) (Warnings, error)
- func (client *Client) UpdateOrganizationUser(guid string, uaaID string) (Warnings, error)
- func (client Client) UpdateOrganizationUserByUsername(orgGUID string, username string) (Warnings, error)
- func (client *Client) UpdateResourceMatch(resourcesToMatch []Resource) ([]Resource, Warnings, error)
- func (client *Client) UpdateRouteApplication(routeGUID string, appGUID string) (Route, Warnings, error)
- func (client *Client) UpdateSecurityGroupSpace(securityGroupGUID string, spaceGUID string) (Warnings, error)
- func (client *Client) UpdateSecurityGroupStagingSpace(securityGroupGUID string, spaceGUID string) (Warnings, error)
- func (client *Client) UpdateServiceInstanceMaintenanceInfo(serviceInstanceGUID string, maintenanceInfo MaintenanceInfo) (Warnings, error)
- func (client *Client) UpdateServicePlan(guid string, public bool) (Warnings, error)
- func (client *Client) UpdateSpaceDeveloper(spaceGUID string, uaaID string) (Warnings, error)
- func (client *Client) UpdateSpaceDeveloperByUsername(spaceGUID string, username string) (Warnings, error)
- func (client *Client) UpdateSpaceManager(spaceGUID string, uaaID string) (Warnings, error)
- func (client *Client) UpdateSpaceManagerByUsername(spaceGUID string, username string) (Warnings, error)
- func (client *Client) UpdateUserProvidedServiceInstance(serviceGUID string, instance UserProvidedServiceInstance) (Warnings, error)
- func (client *Client) UploadApplicationPackage(appGUID string, existingResources []Resource, newResources Reader, ...) (Job, Warnings, error)
- func (client *Client) UploadBuildpack(buildpackGUID string, buildpackPath string, buildpack io.Reader, ...) (Warnings, error)
- func (client *Client) UploadDroplet(appGUID string, droplet io.Reader, dropletLength int64) (Job, Warnings, error)
- func (client *Client) WrapConnection(wrapper ConnectionWrapper)
- type Config
- type ConnectionWrapper
- type DockerCredentials
- type Domain
- type Event
- type FeatureFlag
- type Filter
- type Info
- type InfoLinks
- type Job
- type LastOperation
- type MaintenanceInfo
- type Organization
- type OrganizationQuota
- type PaginatedResources
- type Params
- type Reader
- type Resource
- type Route
- type RouteMapping
- type SecurityGroup
- type SecurityGroupRule
- type Service
- type ServiceBinding
- type ServiceBroker
- type ServiceExtra
- type ServiceInstance
- type ServiceInstanceSharedFrom
- type ServiceInstanceSharedTo
- type ServiceKey
- type ServicePlan
- type ServicePlanVisibility
- type Space
- type SpaceQuota
- type SpaceSummary
- type SpaceSummaryApplication
- type SpaceSummaryService
- type SpaceSummaryServiceInstance
- type SpaceSummaryServicePlan
- type Stack
- type TargetSettings
- type User
- type UserProvidedServiceInstance
- func (u UserProvidedServiceInstance) WithCredentials(creds map[string]interface{}) UserProvidedServiceInstance
- func (u UserProvidedServiceInstance) WithRouteServiceURL(url string) UserProvidedServiceInstance
- func (u UserProvidedServiceInstance) WithSyslogDrainURL(url string) UserProvidedServiceInstance
- func (u UserProvidedServiceInstance) WithTags(tags []string) UserProvidedServiceInstance
- type Warnings
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConvertFilterParameters ¶
ConvertFilterParameters converts a Filter object into a collection that cloudcontroller.Request can accept.
Types ¶
type APIInformation ¶
type APIInformation struct { // APIVersion is the Cloud Controller API version number. APIVersion string `json:"api_version"` // AuthorizationEndpoint is the authorization endpoint for the targeted Cloud // Controller. AuthorizationEndpoint string `json:"authorization_endpoint"` DopplerEndpoint string `json:"doppler_logging_endpoint"` LogCacheEndpoint string `json:"log_cache_endpoint"` MinCLIVersion string `json:"min_cli_version"` // MinimumRecommendedCLIVersion is the minimum CLI version number recommended // for the targeted Cloud Controller. MinimumRecommendedCLIVersion string `json:"min_recommended_cli_version"` // Name is the name given to the targeted Cloud Controller. Name string `json:"name"` // RoutingEndpoint is the Routing endpoint for the targeted Cloud Controller. RoutingEndpoint string `json:"routing_endpoint"` }
APIInformation represents the information returned back from /v2/info
type APILink ¶
type APILink struct { // HREF is the fully qualified URL for the link. HREF string `json:"href"` // Method indicate the desired action to be performed on the identified // resource. Method string `json:"method"` // Meta contains additional metadata about the API. Meta struct { // Version of the API Version string `json:"version"` // Fingerprint to authenticate api with HostKeyFingerprint string `json:"host_key_fingerprint"` // Identifier for UAA queries OAuthClient string `json:"oath_client"` } `json:"meta"` }
APILink represents a generic link from a response object.
type Application ¶
type Application struct { // Buildpack is the buildpack set by the user. Buildpack types.FilteredString // Command is the user specified start command. Command types.FilteredString // DetectedBuildpack is the buildpack automatically detected. DetectedBuildpack types.FilteredString // DetectedStartCommand is the command used to start the application. DetectedStartCommand types.FilteredString // DiskQuota is the disk given to each instance, in megabytes. DiskQuota types.NullByteSizeInMb // DockerCredentials is the authentication information for the provided // DockerImage. DockerCredentials DockerCredentials // DockerImage is the docker image location. DockerImage string // EnvironmentVariables are the environment variables passed to the app. EnvironmentVariables map[string]string // GUID is the unique application identifier. GUID string // HealthCheckTimeout is the number of seconds for health checking of an // staged app when starting up. HealthCheckTimeout uint64 // HealthCheckType is the type of health check that will be done to the app. HealthCheckType constant.ApplicationHealthCheckType // HealthCheckHTTPEndpoint is the url of the http health check endpoint. HealthCheckHTTPEndpoint string // Instances is the total number of app instances. Instances types.NullInt // Memory is the memory given to each instance, in megabytes. Memory types.NullByteSizeInMb // Name is the name given to the application. Name string // PackageState represents the staging state of the application bits. PackageState constant.ApplicationPackageState // PackageUpdatedAt is the last time the app bits were updated. In RFC3339. PackageUpdatedAt time.Time // SpaceGUID is the GUID of the app's space. SpaceGUID string // StackGUID is the GUID for the Stack the application is running on. StackGUID string // StagingFailedDescription is the verbose description of why the package // failed to stage. StagingFailedDescription string // StagingFailedReason is the reason why the package failed to stage. StagingFailedReason string // State is the desired state of the application. State constant.ApplicationState }
Application represents a Cloud Controller Application.
func (Application) MarshalJSON ¶
func (application Application) MarshalJSON() ([]byte, error)
MarshalJSON converts an application into a Cloud Controller Application.
func (*Application) UnmarshalJSON ¶
func (application *Application) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Application response.
type ApplicationInstance ¶
type ApplicationInstance struct { // Details are arbitrary information about the instance. Details string // ID is the instance ID. ID int // Since is the Unix time stamp that represents the time the instance was // created. Since float64 // State is the instance's state. State constant.ApplicationInstanceState }
ApplicationInstance represents a Cloud Controller Application Instance.
func (*ApplicationInstance) UnmarshalJSON ¶
func (instance *ApplicationInstance) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller application instance response.
type ApplicationInstanceStatus ¶
type ApplicationInstanceStatus struct { // CPU is the instance's CPU utilization percentage. CPU float64 // Disk is the instance's disk usage in bytes. Disk int64 // DiskQuota is the instance's allowed disk usage in bytes. DiskQuota int64 // ID is the instance ID. ID int // IsolationSegment that the app is currently running on. IsolationSegment string // Memory is the instance's memory usage in bytes. Memory int64 // MemoryQuota is the instance's allowed memory usage in bytes. MemoryQuota int64 // State is the instance's state. State constant.ApplicationInstanceState // Uptime is the number of seconds the instance has been running. Uptime int64 }
ApplicationInstanceStatus represents a Cloud Controller Application Instance.
func (*ApplicationInstanceStatus) UnmarshalJSON ¶
func (instance *ApplicationInstanceStatus) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller application instance response.
type Buildpack ¶
type Buildpack struct { Locked types.NullBool Enabled types.NullBool GUID string Name string Position types.NullInt Stack string }
Buildpack represents a Cloud Controller Buildpack.
func (Buildpack) MarshalJSON ¶
func (*Buildpack) UnmarshalJSON ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client is a client that can be used to talk to a Cloud Controller's V2 Endpoints.
func (*Client) APIVersion ¶
APIVersion returns Cloud Controller API Version for the targeted Cloud Controller.
func (*Client) AuthorizationEndpoint ¶
AuthorizationEndpoint returns the authorization endpoint for the targeted Cloud Controller.
func (*Client) CheckRoute ¶
CheckRoute returns true if the route exists in the CF instance.
func (*Client) CreateApplication ¶
func (client *Client) CreateApplication(app Application) (Application, Warnings, error)
CreateApplication creates a cloud controller application in with the given settings. SpaceGUID and Name are the only required fields.
func (*Client) CreateBuildpack ¶
CreateBuildpack creates a new buildpack.
func (*Client) CreateOrganization ¶
func (*Client) CreateRoute ¶
CreateRoute creates the route with the given properties; SpaceGUID and DomainGUID are required Route properties. Additional configuration rules: - generatePort = true to generate a random port on the cloud controller. - generatePort takes precedence over the provided port. Setting the port and generatePort only works with CC API 2.53.0 or higher and when TCP router groups are enabled.
func (*Client) CreateServiceBinding ¶
func (*Client) CreateServiceBroker ¶
func (client *Client) CreateServiceBroker(brokerName, username, password, url, spaceGUID string) (ServiceBroker, Warnings, error)
CreateServiceBroker posts a service broker resource with the provided attributes to the api and returns the result.
func (*Client) CreateServiceInstance ¶
func (client *Client) CreateServiceInstance(spaceGUID, servicePlanGUID, serviceInstance string, parameters map[string]interface{}, tags []string) (ServiceInstance, Warnings, error)
CreateServiceInstance posts a service instance resource with the provided attributes to the api and returns the result.
func (*Client) CreateServiceKey ¶
func (client *Client) CreateServiceKey(serviceInstanceGUID string, keyName string, parameters map[string]interface{}) (ServiceKey, Warnings, error)
CreateServiceKey creates a new service key using the provided name and parameters for the requested service instance.
func (*Client) CreateServicePlanVisibility ¶
func (*Client) CreateSharedDomain ¶
func (*Client) CreateSpace ¶
CreateSpace creates a new space with the provided spaceName in the org with the provided orgGUID.
func (*Client) CreateUser ¶
CreateUser creates a new Cloud Controller User from the provided UAA user ID.
func (*Client) DeleteOrganization ¶
DeleteOrganization deletes the Organization associated with the provided GUID. It will return the Cloud Controller job that is assigned to the Organization deletion.
func (*Client) DeleteOrganizationJob ¶
DeleteOrganizationJob deletes the Organization associated with the provided GUID. It will return the Cloud Controller job that is assigned to the Organization deletion.
func (*Client) DeleteRoute ¶
DeleteRoute deletes the Route associated with the provided Route GUID.
func (*Client) DeleteRouteApplication ¶
DeleteRouteApplication removes the link between the route and application.
func (*Client) DeleteSecurityGroupSpace ¶
func (client *Client) DeleteSecurityGroupSpace(securityGroupGUID string, spaceGUID string) (Warnings, error)
DeleteSecurityGroupSpace disassociates a security group in the running phase for the lifecycle, specified by its GUID, from a space, which is also specified by its GUID.
func (*Client) DeleteSecurityGroupStagingSpace ¶
func (client *Client) DeleteSecurityGroupStagingSpace(securityGroupGUID string, spaceGUID string) (Warnings, error)
DeleteSecurityGroupStagingSpace disassociates a security group in the staging phase fo the lifecycle, specified by its GUID, from a space, which is also specified by its GUID.
func (*Client) DeleteService ¶
DeleteService deletes the service with the given GUID, and returns any errors and warnings.
func (*Client) DeleteServiceBinding ¶
func (client *Client) DeleteServiceBinding(serviceBindingGUID string, acceptsIncomplete bool) (ServiceBinding, Warnings, error)
DeleteServiceBinding deletes the specified Service Binding. An updated service binding is returned only if acceptsIncomplete is true.
func (*Client) DeleteServicePlanVisibility ¶
func (*Client) DeleteSpace ¶
DeleteSpace deletes the Space associated with the provided GUID. It will return the Cloud Controller job that is assigned to the Space deletion.
func (*Client) DeleteSpaceJob ¶
DeleteSpaceJob deletes the Space associated with the provided GUID. It will return the Cloud Controller job that is assigned to the Space deletion.
func (*Client) DeleteSpaceUnmappedRoutes ¶
DeleteSpaceUnmappedRoutes deletes Routes within a specified Space not mapped to an Application
func (*Client) DopplerEndpoint ¶
DopplerEndpoint returns the Doppler endpoint for the targetd Cloud Controller.
func (*Client) GetApplication ¶
func (client *Client) GetApplication(guid string) (Application, Warnings, error)
GetApplication returns back an Application.
func (*Client) GetApplicationApplicationInstanceStatuses ¶
func (client *Client) GetApplicationApplicationInstanceStatuses(guid string) (map[int]ApplicationInstanceStatus, Warnings, error)
GetApplicationApplicationInstanceStatuses returns a list of ApplicationInstanceStatus for a given application. Depending on the state of an application, it might skip some application instance statuses.
func (*Client) GetApplicationApplicationInstances ¶
func (client *Client) GetApplicationApplicationInstances(guid string) (map[int]ApplicationInstance, Warnings, error)
GetApplicationApplicationInstances returns a list of ApplicationInstance for a given application. Depending on the state of an application, it might skip some application instances.
func (*Client) GetApplicationRoutes ¶
func (client *Client) GetApplicationRoutes(appGUID string, filters ...Filter) ([]Route, Warnings, error)
GetApplicationRoutes returns a list of Routes associated with the provided Application GUID, and filtered by the provided filters.
func (*Client) GetApplications ¶
func (client *Client) GetApplications(filters ...Filter) ([]Application, Warnings, error)
GetApplications returns back a list of Applications based off of the provided filters.
func (*Client) GetBuildpacks ¶
GetBuildpacks searches for a buildpack with the given name and returns it if it exists.
func (Client) GetConfigFeatureFlags ¶
func (client Client) GetConfigFeatureFlags() ([]FeatureFlag, Warnings, error)
GetConfigFeatureFlags retrieves a list of FeatureFlag from the Cloud Controller.
func (*Client) GetEvents ¶
GetEvents returns back a list of Events based off of the provided queries.
func (*Client) GetOrganization ¶
func (client *Client) GetOrganization(guid string) (Organization, Warnings, error)
GetOrganization returns an Organization associated with the provided GUID.
func (*Client) GetOrganizationPrivateDomains ¶
func (client *Client) GetOrganizationPrivateDomains(orgGUID string, filters ...Filter) ([]Domain, Warnings, error)
GetOrganizationPrivateDomains returns the private domains associated with an organization.
func (*Client) GetOrganizationQuota ¶
func (client *Client) GetOrganizationQuota(guid string) (OrganizationQuota, Warnings, error)
GetOrganizationQuota returns an Organization Quota associated with the provided GUID.
func (*Client) GetOrganizationQuotas ¶
func (client *Client) GetOrganizationQuotas(filters ...Filter) ([]OrganizationQuota, Warnings, error)
GetOrganizationQuotas returns an Organization Quota list associated with the provided filters.
func (*Client) GetOrganizations ¶
func (client *Client) GetOrganizations(filters ...Filter) ([]Organization, Warnings, error)
GetOrganizations returns back a list of Organizations based off of the provided filters.
func (*Client) GetPrivateDomain ¶
GetPrivateDomain returns the Private Domain associated with the provided Domain GUID.
func (*Client) GetPrivateDomains ¶
GetPrivateDomains returns the private domains this client has access to.
func (*Client) GetRouteApplications ¶
func (client *Client) GetRouteApplications(routeGUID string, filters ...Filter) ([]Application, Warnings, error)
GetRouteApplications returns a list of Applications based off a route GUID and the provided filters.
func (*Client) GetRouteMapping ¶
func (client *Client) GetRouteMapping(guid string) (RouteMapping, Warnings, error)
GetRouteMapping returns a route mapping with the provided guid.
func (*Client) GetRouteMappings ¶
func (client *Client) GetRouteMappings(filters ...Filter) ([]RouteMapping, Warnings, error)
GetRouteMappings returns a list of RouteMappings based off of the provided queries.
func (*Client) GetSecurityGroupSpaces ¶
GetSecurityGroupSpaces returns a list of Spaces based on the provided SecurityGroup GUID.
func (*Client) GetSecurityGroupStagingSpaces ¶
func (client *Client) GetSecurityGroupStagingSpaces(securityGroupGUID string) ([]Space, Warnings, error)
GetSecurityGroupStagingSpaces returns a list of Spaces based on the provided SecurityGroup GUID.
func (*Client) GetSecurityGroups ¶
func (client *Client) GetSecurityGroups(filters ...Filter) ([]SecurityGroup, Warnings, error)
GetSecurityGroups returns a list of Security Groups based off the provided filters.
func (*Client) GetService ¶
GetService returns the service with the given GUID.
func (*Client) GetServiceBinding ¶
func (client *Client) GetServiceBinding(guid string) (ServiceBinding, Warnings, error)
GetServiceBinding returns back a service binding with the provided GUID.
func (*Client) GetServiceBindings ¶
func (client *Client) GetServiceBindings(filters ...Filter) ([]ServiceBinding, Warnings, error)
GetServiceBindings returns back a list of Service Bindings based off of the provided filters.
func (*Client) GetServiceBrokers ¶
func (client *Client) GetServiceBrokers(filters ...Filter) ([]ServiceBroker, Warnings, error)
GetServiceBrokers returns back a list of Service Brokers given the provided filters.
func (*Client) GetServiceInstance ¶
func (client *Client) GetServiceInstance(serviceInstanceGUID string) (ServiceInstance, Warnings, error)
GetServiceInstance returns the service instance with the given GUID. This service can be either a managed or user provided.
func (*Client) GetServiceInstanceServiceBindings ¶
func (client *Client) GetServiceInstanceServiceBindings(serviceInstanceGUID string) ([]ServiceBinding, Warnings, error)
GetServiceInstanceServiceBindings returns back a list of Service Bindings for the provided service instance GUID.
func (*Client) GetServiceInstanceSharedFrom ¶
func (client *Client) GetServiceInstanceSharedFrom(serviceInstanceGUID string) (ServiceInstanceSharedFrom, Warnings, error)
GetServiceInstanceSharedFrom returns back a ServiceInstanceSharedFrom object.
func (*Client) GetServiceInstanceSharedTos ¶
func (client *Client) GetServiceInstanceSharedTos(serviceInstanceGUID string) ([]ServiceInstanceSharedTo, Warnings, error)
GetServiceInstanceSharedTos returns a list of ServiceInstanceSharedTo objects.
func (*Client) GetServiceInstances ¶
func (client *Client) GetServiceInstances(filters ...Filter) ([]ServiceInstance, Warnings, error)
GetServiceInstances returns back a list of *managed* Service Instances based off of the provided filters.
func (*Client) GetServicePlan ¶
func (client *Client) GetServicePlan(servicePlanGUID string) (ServicePlan, Warnings, error)
GetServicePlan returns the service plan with the given GUID.
func (*Client) GetServicePlanVisibilities ¶
func (client *Client) GetServicePlanVisibilities(filters ...Filter) ([]ServicePlanVisibility, Warnings, error)
GetServicePlanVisibilities returns back a list of Service Plan Visibilities given the provided filters.
func (*Client) GetServicePlans ¶
func (client *Client) GetServicePlans(filters ...Filter) ([]ServicePlan, Warnings, error)
func (*Client) GetServices ¶
GetServices returns a list of Services given the provided filters.
func (*Client) GetSharedDomain ¶
GetSharedDomain returns the Shared Domain associated with the provided Domain GUID.
func (*Client) GetSharedDomains ¶
GetSharedDomains returns the global shared domains.
func (*Client) GetSpaceQuotaDefinition ¶
func (client *Client) GetSpaceQuotaDefinition(guid string) (SpaceQuota, Warnings, error)
GetSpaceQuotaDefinition returns a Space Quota.
func (*Client) GetSpaceQuotas ¶
func (client *Client) GetSpaceQuotas(orgGUID string) ([]SpaceQuota, Warnings, error)
GetSpaceQuotas returns all the space quotas for the org
func (*Client) GetSpaceRoutes ¶
func (client *Client) GetSpaceRoutes(spaceGUID string, filters ...Filter) ([]Route, Warnings, error)
GetSpaceRoutes returns a list of Routes associated with the provided Space GUID, and filtered by the provided filters.
func (*Client) GetSpaceSecurityGroups ¶
func (client *Client) GetSpaceSecurityGroups(spaceGUID string, filters ...Filter) ([]SecurityGroup, Warnings, error)
GetSpaceSecurityGroups returns the running Security Groups associated with the provided Space GUID.
func (*Client) GetSpaceServiceInstances ¶
func (client *Client) GetSpaceServiceInstances(spaceGUID string, includeUserProvidedServices bool, filters ...Filter) ([]ServiceInstance, Warnings, error)
GetSpaceServiceInstances returns back a list of Service Instances based off of the space and filters provided. User provided services will be included if includeUserProvidedServices is set to true.
func (*Client) GetSpaceServices ¶
func (*Client) GetSpaceStagingSecurityGroups ¶
func (client *Client) GetSpaceStagingSecurityGroups(spaceGUID string, filters ...Filter) ([]SecurityGroup, Warnings, error)
GetSpaceStagingSecurityGroups returns the staging Security Groups associated with the provided Space GUID.
func (*Client) GetSpaceSummary ¶
func (client *Client) GetSpaceSummary(spaceGUID string) (SpaceSummary, Warnings, error)
GetSpaceSummary returns the summary of the space with the given GUID.
func (*Client) GetUserProvidedServiceInstanceServiceBindings ¶
func (client *Client) GetUserProvidedServiceInstanceServiceBindings(userProvidedServiceInstanceGUID string) ([]ServiceBinding, Warnings, error)
GetUserProvidedServiceInstanceServiceBindings returns back a list of Service Bindings for the provided user provided service instance GUID.
func (*Client) GetUserProvidedServiceInstances ¶
func (client *Client) GetUserProvidedServiceInstances(filters ...Filter) ([]ServiceInstance, Warnings, error)
GetUserProvidedServiceInstances returns back a list of *user provided* Service Instances based off the provided queries.
func (*Client) Info ¶
func (client *Client) Info() (APIInformation, Warnings, error)
Info returns back endpoint and API information from /v2/info.
func (*Client) LogCacheEndpoint ¶
func (*Client) MinCLIVersion ¶
MinCLIVersion returns the minimum CLI version required for the targeted Cloud Controller
func (*Client) PollJob ¶
PollJob will keep polling the given job until the job has terminated, an error is encountered, or config.OverallPollingTimeout is reached. In the last case, a JobTimeoutError is returned.
func (*Client) RestageApplication ¶
func (client *Client) RestageApplication(app Application) (Application, Warnings, error)
RestageApplication restages the application with the given GUID.
func (*Client) RootResponse ¶
rootResponse returns the CC API root document.
func (*Client) RoutingEndpoint ¶
RoutingEndpoint returns the Routing endpoint for the targeted Cloud Controller.
func (*Client) SetSpaceQuota ¶
SetSpaceQuota should set the quota for the space and returns the warnings
func (*Client) TargetCF ¶
func (client *Client) TargetCF(settings TargetSettings) (Warnings, error)
TargetCF sets the client to use the Cloud Controller specified in the configuration. Any other configuration is also applied to the client.
func (*Client) UpdateApplication ¶
func (client *Client) UpdateApplication(app Application) (Application, Warnings, error)
UpdateApplication updates the application with the given GUID. Note: Sending DockerImage and StackGUID at the same time will result in an API error.
func (*Client) UpdateBuildpack ¶
UpdateBuildpack updates the buildpack with the provided GUID and returns the updated buildpack. Note: Stack cannot be updated without uploading a new buildpack.
func (*Client) UpdateOrganizationManager ¶
UpdateOrganizationManager assigns the org manager role to the UAA user or client with the provided ID.
func (*Client) UpdateOrganizationManagerByUsername ¶
func (client *Client) UpdateOrganizationManagerByUsername(guid string, username string) (Warnings, error)
UpdateOrganizationManagerByUsername assigns the org manager role to the user with the provided name.
func (*Client) UpdateOrganizationUser ¶
UpdateOrganizationUser makes the user or client with the given UAA ID a member of the org.
func (Client) UpdateOrganizationUserByUsername ¶
func (client Client) UpdateOrganizationUserByUsername(orgGUID string, username string) (Warnings, error)
UpdateOrganizationUserByUsername makes the user with the given username a member of the org.
func (*Client) UpdateResourceMatch ¶
func (client *Client) UpdateResourceMatch(resourcesToMatch []Resource) ([]Resource, Warnings, error)
UpdateResourceMatch returns the resources that exist on the cloud foundry instance from the set of resources given.
func (*Client) UpdateRouteApplication ¶
func (client *Client) UpdateRouteApplication(routeGUID string, appGUID string) (Route, Warnings, error)
UpdateRouteApplication creates a link between the route and application.
func (*Client) UpdateSecurityGroupSpace ¶
func (client *Client) UpdateSecurityGroupSpace(securityGroupGUID string, spaceGUID string) (Warnings, error)
UpdateSecurityGroupSpace associates a security group in the running phase for the lifecycle, specified by its GUID, from a space, which is also specified by its GUID.
func (*Client) UpdateSecurityGroupStagingSpace ¶
func (client *Client) UpdateSecurityGroupStagingSpace(securityGroupGUID string, spaceGUID string) (Warnings, error)
UpdateSecurityGroupStagingSpace associates a security group in the staging phase for the lifecycle, specified by its GUID, from a space, which is also specified by its GUID.
func (*Client) UpdateServiceInstanceMaintenanceInfo ¶
func (client *Client) UpdateServiceInstanceMaintenanceInfo(serviceInstanceGUID string, maintenanceInfo MaintenanceInfo) (Warnings, error)
func (*Client) UpdateServicePlan ¶
func (*Client) UpdateSpaceDeveloper ¶
UpdateSpaceDeveloper grants the space developer role to the user or client associated with the given UAA ID.
func (*Client) UpdateSpaceDeveloperByUsername ¶
func (client *Client) UpdateSpaceDeveloperByUsername(spaceGUID string, username string) (Warnings, error)
UpdateSpaceDeveloperByUsername grants the given username the space developer role.
func (*Client) UpdateSpaceManager ¶
UpdateSpaceManager grants the space manager role to the user or client associated with the given UAA ID.
func (*Client) UpdateSpaceManagerByUsername ¶
func (client *Client) UpdateSpaceManagerByUsername(spaceGUID string, username string) (Warnings, error)
UpdateSpaceManagerByUsername grants the given username the space manager role.
func (*Client) UpdateUserProvidedServiceInstance ¶
func (client *Client) UpdateUserProvidedServiceInstance(serviceGUID string, instance UserProvidedServiceInstance) (Warnings, error)
func (*Client) UploadApplicationPackage ¶
func (client *Client) UploadApplicationPackage(appGUID string, existingResources []Resource, newResources Reader, newResourcesLength int64) (Job, Warnings, error)
UploadApplicationPackage uploads the newResources and a list of existing resources to the cloud controller. A job that combines the requested/newly uploaded bits is returned. The function will act differently given the following Readers:
io.ReadSeeker: Will function properly on retry. io.Reader: Will return a ccerror.PipeSeekError on retry. nil: Will not add the "application" section to the request. newResourcesLength is ignored in this case.
func (*Client) UploadBuildpack ¶
func (client *Client) UploadBuildpack(buildpackGUID string, buildpackPath string, buildpack io.Reader, buildpackLength int64) (Warnings, error)
UploadBuildpack uploads the contents of a buildpack zip to the server.
func (*Client) UploadDroplet ¶
func (client *Client) UploadDroplet(appGUID string, droplet io.Reader, dropletLength int64) (Job, Warnings, error)
UploadDroplet defines and uploads a previously staged droplet that an application will run, using a multipart PUT request. The uploaded file should be a gzipped tar file.
func (*Client) WrapConnection ¶
func (client *Client) WrapConnection(wrapper ConnectionWrapper)
WrapConnection wraps the current Client connection in the wrapper.
type Config ¶
type Config struct { // AppName is the name of the application/process using the client. AppName string // AppVersion is the version of the application/process using the client. AppVersion string // JobPollingTimeout is the maximum amount of time a job polls for. JobPollingTimeout time.Duration // JobPollingInterval is the wait time between job polls. JobPollingInterval time.Duration // Wrappers that apply to the client connection. Wrappers []ConnectionWrapper }
Config allows the Client to be configured
type ConnectionWrapper ¶
type ConnectionWrapper interface { cloudcontroller.Connection Wrap(innerconnection cloudcontroller.Connection) cloudcontroller.Connection }
ConnectionWrapper can wrap a given connection allowing the wrapper to modify all requests going in and out of the given connection.
type DockerCredentials ¶
type DockerCredentials struct { // Username is the username for a user that has access to a given docker // image. Username string `json:"username,omitempty"` // Password is the password for the user. Password string `json:"password,omitempty"` }
DockerCredentials are the authentication credentials to pull a docker image from it's repository.
type Domain ¶
type Domain struct { // GUID is the unique domain identifier. GUID string // Internal indicates whether the domain is an internal domain. Internal bool // Name is the name given to the domain. Name string // RouterGroupGUID is the unique identier of the router group this domain is // assigned to. RouterGroupGUID string // RouterGroupType is the type of router group this domain is assigned to. It // can be of type `tcp` or `http`. RouterGroupType constant.RouterGroupType // DomainType is the access type of the domain. It can be either a domain // private to a single org or it can be a domain shared to all orgs. Type constant.DomainType }
Domain represents a Cloud Controller Domain.
func (*Domain) UnmarshalJSON ¶
UnmarshalJSON helps unmarshal a Cloud Controller Domain response.
type Event ¶
type Event struct { // GUID is the unique event identifier. GUID string // Type is the type of event. Type constant.EventType // ActorGUID is the GUID of the actor initiating an event. ActorGUID string // ActorType is the type of actor initiating an event. ActorType string // ActorName is the name of the actor initiating an event. ActorName string // ActeeGUID is the GUID of the cc object affected by an event. ActeeGUID string // ActeeType is the type of the cc object affected by an event. ActeeType string // ActeeName is the name of the cc object affected by an event. ActeeName string // Timestamp is the event creation time. Timestamp time.Time // Metadata contains additional information about the event. Metadata map[string]interface{} }
Event represents a Cloud Controller Event
func (*Event) UnmarshalJSON ¶
UnmarshalJSON helps unmarshal a Cloud Controller Event response.
type FeatureFlag ¶
type FeatureFlag struct { // Name is a string representation of the Cloud Controller // feature flag's name. Name string `json:"name"` // Enabled is the status of the Cloud Controller feature // flag. Enabled bool `json:"enabled"` }
FeatureFlag represents a Cloud Controller feature flag.
type Filter ¶
type Filter struct { // Type is the component that determines what the query is filtered by. Type constant.FilterType // Operator is the component that determines how the the query will be filtered. Operator constant.FilterOperator // Values is the component that determines what values are filtered. Values []string }
Filter is a type of filter that can be passed to specific request to narrow down the return set.
type Info ¶
type Info struct { // Links is a list of top level Cloud Controller APIs. Links InfoLinks `json:"links"` }
Info represents a GET response from the '/' endpoint of the cloud controller API.
type Job ¶
type Job struct { // Error is the error a job returns if it failed. It is otherwise empty. Error string // ErrorDetails is a detailed description of a job failure returned by the // Cloud Controller. ErrorDetails struct { Description string } // GUID is the unique job identifier. GUID string // Status is the current state of the job. Status constant.JobStatus }
Job represents a Cloud Controller Job.
func (*Job) UnmarshalJSON ¶
UnmarshalJSON helps unmarshal a Cloud Controller Job response.
type LastOperation ¶
type LastOperation struct { // Type is the type of operation that was last performed or currently being // performed on the service instance. Type string `json:"type"` // State is the status of the last operation or current operation being // performed on the service instance. State constant.LastOperationState `json:"state"` // Description is the service broker-provided description of the operation. Description string `json:"description"` // UpdatedAt is the timestamp that the Cloud Controller last checked the // service instance state from the broker. UpdatedAt string `json:"updated_at"` // CreatedAt is the timestamp that the Cloud Controller created the service // instance from the broker. CreatedAt string `json:"created_at"` }
LastOperation is the status of the last operation requested on a service instance.
type MaintenanceInfo ¶
type Organization ¶
type Organization struct { // GUID is the unique Organization identifier. GUID string // Name is the organization's name. Name string // QuotaDefinitionGUID is unique identifier of the quota assigned to this // organization. QuotaDefinitionGUID string // DefaultIsolationSegmentGUID is the unique identifier of the isolation // segment this organization is tagged with. DefaultIsolationSegmentGUID string }
Organization represents a Cloud Controller Organization.
func (*Organization) UnmarshalJSON ¶
func (org *Organization) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Organization response.
type OrganizationQuota ¶
type OrganizationQuota struct { // GUID is the unique OrganizationQuota identifier. GUID string // Name is the name of the OrganizationQuota. Name string }
OrganizationQuota is the definition of a quota for an organization.
func (*OrganizationQuota) UnmarshalJSON ¶
func (application *OrganizationQuota) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller organization quota response.
type PaginatedResources ¶
type PaginatedResources struct { NextURL string `json:"next_url"` ResourcesBytes json.RawMessage `json:"resources"` // contains filtered or unexported fields }
PaginatedResources represents a page of resources returned by the Cloud Controller.
func NewPaginatedResources ¶
func NewPaginatedResources(exampleResource interface{}) *PaginatedResources
NewPaginatedResources returns a new PaginatedResources struct with the given resource type.
func (PaginatedResources) Resources ¶
func (pr PaginatedResources) Resources() ([]interface{}, error)
Resources unmarshals JSON representing a page of resources and returns a slice of the given resource type.
type Resource ¶
type Resource struct { // Filename is the name of the resource. Filename string `json:"fn"` // Mode is the operating system file mode (aka file permissions) of the // resource. Mode os.FileMode `json:"mode"` // SHA1 represents the SHA-1 hash of the resource. SHA1 string `json:"sha1"` // Size represents the file size of the resource. Size int64 `json:"size"` }
Resource represents a Cloud Controller Resource.
func (Resource) MarshalJSON ¶
MarshalJSON converts a resource into a Cloud Controller Resource.
func (*Resource) UnmarshalJSON ¶
UnmarshalJSON helps unmarshal a Cloud Controller Resource response.
type Route ¶
type Route struct { // GUID is the unique Route identifier. GUID string `json:"-"` // Host is the hostname of the route. Host string `json:"host,omitempty"` // Path is the path of the route. Path string `json:"path,omitempty"` // Port is the port number of the route. Port types.NullInt `json:"port,omitempty"` // DomainGUID is the unique Domain identifier. DomainGUID string `json:"domain_guid"` // SpaceGUID is the unique Space identifier. SpaceGUID string `json:"space_guid"` }
Route represents a Cloud Controller Route.
func (*Route) UnmarshalJSON ¶
UnmarshalJSON helps unmarshal a Cloud Controller Route response.
type RouteMapping ¶
type RouteMapping struct { // GUID is the unique route mapping identifier. GUID string // AppGUID is the unique application identifier. AppGUID string // RouteGUID is the unique route identifier. RouteGUID string }
RouteMapping represents a Cloud Controller map between an application and route.
func (*RouteMapping) UnmarshalJSON ¶
func (routeMapping *RouteMapping) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Route Mapping
type SecurityGroup ¶
type SecurityGroup struct { // GUID is the unique Security Group identifier. GUID string // Name is the Security Group's name. Name string // Rules are the Security Group Rules associated with this Security Group. Rules []SecurityGroupRule // RunningDefault is true when this Security Group is applied to all running // apps in the CF instance. RunningDefault bool // StagingDefault is true when this Security Group is applied to all staging // apps in the CF instance. StagingDefault bool }
SecurityGroup represents a Cloud Controller Security Group.
func (*SecurityGroup) UnmarshalJSON ¶
func (securityGroup *SecurityGroup) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Security Group response
type SecurityGroupRule ¶
type SecurityGroupRule struct { // Description is a short message discribing the rule. Description string // Destination is the destination CIDR or range of IPs. Destination string // Ports is the port or port range. Ports string // Protocol can be tcp, icmp, udp, all. Protocol string }
SecurityGroupRule represents a Cloud Controller Security Group Role.
type Service ¶
type Service struct { // GUID is the unique Service identifier. GUID string // Label is the name of the service. Label string // Description is a short blurb describing the service. Description string // DocumentationURL is a url that points to a documentation page for the // service. DocumentationURL string // ServiceBrokerName is name of the service broker associated with the service ServiceBrokerName string // Extra is a field with extra data pertaining to the service. Extra ServiceExtra }
Service represents a Cloud Controller Service.
func (*Service) UnmarshalJSON ¶
UnmarshalJSON helps unmarshal a Cloud Controller Service response.
type ServiceBinding ¶
type ServiceBinding struct { // AppGUID is the associated application GUID. AppGUID string // GUID is the unique Service Binding identifier. GUID string // LastOperation LastOperation LastOperation // Name is the name of the service binding Name string // ServiceInstanceGUID is the associated service GUID. ServiceInstanceGUID string }
ServiceBinding represents a Cloud Controller Service Binding.
func (*ServiceBinding) UnmarshalJSON ¶
func (serviceBinding *ServiceBinding) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Service Binding response.
type ServiceBroker ¶
type ServiceBroker struct { // AuthUsername is the HTTP Basic Auth username of the service broker. AuthUsername string // BrokerURL is the URL of the service broker. BrokerURL string // GUID is the unique Service Broker identifier. GUID string // Name is the name of the service broker. Name string // SpaceGUID is the space guid of the serivce broker. Only applies to space scoped service brokers. SpaceGUID string }
ServiceBroker represents a Cloud Controller Service Broker.
func (*ServiceBroker) UnmarshalJSON ¶
func (serviceBroker *ServiceBroker) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Service Broker response.
type ServiceExtra ¶
type ServiceExtra struct { // DocumentationURL is the URL of the documentation page for the service. DocumentationURL string `json:"documentationUrl"` // spaces. Shareable bool }
ServiceExtra contains extra service related properties.
type ServiceInstance ¶
type ServiceInstance struct { // GUID is the unique service instance identifier. GUID string // Name is the name given to the service instance. Name string // SpaceGUID is the unique identifier of the space that this service instance // belongs to. SpaceGUID string // ServiceGUID is the unique identifier of the service that this service // instance belongs to. ServiceGUID string // ServicePlanGUID is the unique identifier of the service plan that this // service instance belongs to. ServicePlanGUID string // Type is the type of service instance. Type constant.ServiceInstanceType // Tags is a list of all tags for the service instance. Tags []string // DashboardURL is the service-broker provided URL to access administrative // features of the service instance. DashboardURL string // RouteServiceURL is the URL of the user-provided service to which requests // for bound routes will be forwarded. RouteServiceURL string // LastOperation is the status of the last operation requested on the service // instance. LastOperation LastOperation // MaintenanceInfo is the maintenance version of this service instance MaintenanceInfo MaintenanceInfo }
ServiceInstance represents a Cloud Controller Service Instance.
func (ServiceInstance) Managed ¶
func (serviceInstance ServiceInstance) Managed() bool
Managed returns true if the Service Instance is a managed service.
func (*ServiceInstance) UnmarshalJSON ¶
func (serviceInstance *ServiceInstance) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Service Instance response.
func (ServiceInstance) UserProvided ¶
func (serviceInstance ServiceInstance) UserProvided() bool
UserProvided returns true if the Service Instance is a user provided service.
type ServiceInstanceSharedFrom ¶
type ServiceInstanceSharedFrom struct { // shared from. SpaceGUID string `json:"space_guid"` SpaceName string `json:"space_name"` // shared from. OrganizationName string `json:"organization_name"` }
ServiceInstanceSharedFrom represents a Cloud Controller relationship object that describes a service instance in another space (and possibly org) that this service instance is **shared from**.
type ServiceInstanceSharedTo ¶
type ServiceInstanceSharedTo struct { // shared to. SpaceGUID string `json:"space_guid"` SpaceName string `json:"space_name"` // shared to. OrganizationName string `json:"organization_name"` // service instance. BoundAppCount int `json:"bound_app_count"` }
ServiceInstanceSharedTo represents a Cloud Controller relationship object that describes a service instance in another space (and possibly org) that this service is **shared to**.
type ServiceKey ¶
type ServiceKey struct { // GUID is the unique Service Key identifier. GUID string // Name is the name of the service key. Name string // ServiceInstanceGUID is the associated service instance GUID. ServiceInstanceGUID string // Credentials are the credentials returned by the service broker for the service key. Credentials map[string]interface{} }
ServiceKey represents a Cloud Controller Service Key.
func (*ServiceKey) UnmarshalJSON ¶
func (serviceKey *ServiceKey) UnmarshalJSON(data []byte) error
type ServicePlan ¶
type ServicePlan struct { //GUID is the unique identifier of the service plan. GUID string // Name is the name of the service plan. Name string // ServiceGUID is the unique identifier of the service that the service // plan belongs to. ServiceGUID string // Public is true if plan is accessible to all organizations. Public bool // Description of the plan Description string // Free is true if plan is free Free bool // Information about maintenance available MaintenanceInfo MaintenanceInfo }
ServicePlan represents a predefined set of configurations for a Cloud Controller service object.
func (*ServicePlan) UnmarshalJSON ¶
func (servicePlan *ServicePlan) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Service Plan response.
type ServicePlanVisibility ¶
type ServicePlanVisibility struct { // GUID is the unique Service Plan Visibility identifier. GUID string // ServicePlanGUID of the associated Service Plan. ServicePlanGUID string // OrganizationGUID of the associated Organization. OrganizationGUID string }
ServicePlanVisibility represents a Cloud Controller Service Plan Visibility.
func (*ServicePlanVisibility) UnmarshalJSON ¶
func (servicePlanVisibility *ServicePlanVisibility) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Service Plan Visibilities response.
type Space ¶
type Space struct { // AllowSSH specifies whether SSH is enabled for this space. AllowSSH bool // GUID is the unique space identifier. GUID string // Name is the name given to the space. Name string // OrganizationGUID is the unique identifier of the organization this space // belongs to. OrganizationGUID string // SpaceQuotaDefinitionGUID is the unique identifier of the space quota // defined for this space. SpaceQuotaDefinitionGUID string }
Space represents a Cloud Controller Space.
func (*Space) UnmarshalJSON ¶
UnmarshalJSON helps unmarshal a Cloud Controller Space response.
type SpaceQuota ¶
type SpaceQuota struct { // GUID is the unique space quota identifier. GUID string // Name is the name given to the space quota. Name string }
SpaceQuota represents the Cloud Controller configured quota assigned to the space.
func (*SpaceQuota) UnmarshalJSON ¶
func (spaceQuota *SpaceQuota) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Space Quota response.
type SpaceSummary ¶
type SpaceSummary struct { Applications []SpaceSummaryApplication Name string ServiceInstances []SpaceSummaryServiceInstance }
SpaceSummary represents a service instance inside a space
func (*SpaceSummary) UnmarshalJSON ¶
func (spaceSummary *SpaceSummary) UnmarshalJSON(data []byte) error
UnmarshalJSON helps unmarshal a Cloud Controller Space Summary response.
type SpaceSummaryApplication ¶
type SpaceSummaryApplication struct { Name string `json:"name"` ServiceNames []string `json:"service_names"` }
SpaceSummaryApplication represents an application inside a space
type SpaceSummaryService ¶
SpaceSummaryService represents a service inside a space
type SpaceSummaryServiceInstance ¶
type SpaceSummaryServiceInstance struct { LastOperation LastOperation `json:"last_operation"` Name string `json:"name"` ServicePlan SpaceSummaryServicePlan `json:"service_plan"` MaintenanceInfo MaintenanceInfo `json:"maintenance_info"` }
SpaceSummaryServiceInstance represents a service instance inside a space
type SpaceSummaryServicePlan ¶
type SpaceSummaryServicePlan struct { GUID string `json:"guid"` Name string `json:"name"` Service SpaceSummaryService `json:"service"` MaintenanceInfo MaintenanceInfo `json:"maintenance_info"` }
SpaceSummaryServicePlan represents a service plan inside a space
type Stack ¶
type Stack struct { // GUID is the unique stack identifier. GUID string // Name is the name given to the stack. Name string // Description is the description of the stack. Description string }
Stack represents a Cloud Controller Stack.
func (*Stack) UnmarshalJSON ¶
UnmarshalJSON helps unmarshal a Cloud Controller Stack response.
type TargetSettings ¶
type TargetSettings struct { // DialTimeout is the DNS timeout used to make all requests to the Cloud // Controller. DialTimeout time.Duration // SkipSSLValidation controls whether a client verifies the server's // certificate chain and host name. If SkipSSLValidation is true, TLS accepts // any certificate presented by the server and any host name in that // certificate for *all* client requests going forward. // // In this mode, TLS is susceptible to man-in-the-middle attacks. This should // be used only for testing. SkipSSLValidation bool // URL is a fully qualified URL to the Cloud Controller API. URL string }
TargetSettings represents configuration for establishing a connection to the Cloud Controller server.
type User ¶
type User struct { // GUID is the unique user identifier. GUID string }
User represents a Cloud Controller User.
func (*User) UnmarshalJSON ¶
UnmarshalJSON helps unmarshal a Cloud Controller User response.
type UserProvidedServiceInstance ¶
type UserProvidedServiceInstance struct { // Tags on the user-provided service instance Tags *[]string `json:"tags,omitempty"` // SyslogDrainURL for the user-provided service instance SyslogDrainURL *string `json:"syslog_drain_url,omitempty"` // RouteServiceURL for the user-provided service instance RouteServiceURL *string `json:"route_service_url,omitempty"` // Credentials for the user-provided service instance Credentials interface{} `json:"credentials,omitempty"` }
UserProvidedServiceInstance represents the data to update a user-provided service instance. All fields are optional.
func (UserProvidedServiceInstance) WithCredentials ¶
func (u UserProvidedServiceInstance) WithCredentials(creds map[string]interface{}) UserProvidedServiceInstance
func (UserProvidedServiceInstance) WithRouteServiceURL ¶
func (u UserProvidedServiceInstance) WithRouteServiceURL(url string) UserProvidedServiceInstance
func (UserProvidedServiceInstance) WithSyslogDrainURL ¶
func (u UserProvidedServiceInstance) WithSyslogDrainURL(url string) UserProvidedServiceInstance
func (UserProvidedServiceInstance) WithTags ¶
func (u UserProvidedServiceInstance) WithTags(tags []string) UserProvidedServiceInstance
Source Files ¶
- api_links.go
- application.go
- application_instance.go
- application_instance_status.go
- buildpack.go
- client.go
- connection_wrapper.go
- docker_credentials.go
- domain.go
- errors.go
- event.go
- feature_flag.go
- filter.go
- info.go
- job.go
- last_operation.go
- organization.go
- organization_quota.go
- paginated_resources.go
- request.go
- resource.go
- route.go
- route_mapping.go
- security_group.go
- security_group_rule.go
- service.go
- service_binding.go
- service_broker.go
- service_extra.go
- service_instance.go
- service_instance_shared_from.go
- service_instance_shared_to.go
- service_instance_user_provided.go
- service_key.go
- service_plan.go
- service_plan_visibility.go
- space.go
- space_quota.go
- space_summary.go
- stack.go
- target.go
- user.go