Documentation
¶
Index ¶
- Variables
- type Client
- type Container
- type ContainerClient
- func (c *ContainerClient) CreateApplicationContainer(input *CreateApplicationContainerInput) (*Container, error)
- func (c *ContainerClient) DeleteApplicationContainer(input *DeleteApplicationContainerInput) error
- func (c *ContainerClient) GetApplicationContainer(getInput *GetApplicationContainerInput) (*Container, error)
- func (c *ContainerClient) UpdateApplicationContainer(input *UpdateApplicationContainerInput) (*Container, error)
- func (c *ContainerClient) WaitForApplicationContainerDeleted(input *DeleteApplicationContainerInput, pollInterval, timeout time.Duration) error
- func (c *ContainerClient) WaitForApplicationContainerRunning(input *GetApplicationContainerInput, ...) (*Container, error)
- type CreateApplicationContainerAdditionalFields
- type CreateApplicationContainerInput
- type DeleteApplicationContainerInput
- type Deployment
- type GetApplicationContainerInput
- type Instance
- type ResourceClient
- type SubscriptionType
- type UpdateApplicationContainerAdditionalFields
- type UpdateApplicationContainerInput
Constants ¶
This section is empty.
Variables ¶
var ( // ContainerContainerPath is the uri path for containers ContainerContainerPath = "/paas/service/apaas/api/v1.1/apps/%s" // ContainerResourcePath is the uri path for a specific container resource ContainerResourcePath = "/paas/service/apaas/api/v1.1/apps/%s/%s" )
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client represents an authenticated application client, with credentials and an api client.
func (*Client) ContainerClient ¶
func (c *Client) ContainerClient() *ContainerClient
ContainerClient obtains an ApplicationClient which can be used to access to the Application Container functions of the Application Container API
type Container ¶
type Container struct {
// ID of the application
AppID string `json:"appId"`
// URL of the created application
AppURL string `json:"appURL"`
// Creation time of the application
CreatedTime string `json:"createdTime"`
// Identity Domain of the application
IdentityDomain string `json:"identityDomain"`
// Shows details of all instances currently running.
Instances []Instance `json:"instances"`
// Modification time of the application
LastModifiedTime string `json:"lastModifiedTime"`
// Shows all deployments currently in progress.
LatestDeployment Deployment `json:"latestDeployment"`
// Name of the application
Name string `json:"name"`
// Shows all deployments currently running.
RunningDeployment Deployment `json:"runningDeployment"`
// Status of the application
Status string `json:"status"`
// Type of subscription, Hourly or Monthly
SubscriptionType SubscriptionType `json:"subscriptionType"`
// Web URL of the application
WebURL string `json:"webURL"`
}
Container container information about the application container
type ContainerClient ¶
type ContainerClient struct {
ResourceClient
PollInterval time.Duration
Timeout time.Duration
}
ContainerClient is a client for the Application container functions of the Application Container API
func (*ContainerClient) CreateApplicationContainer ¶
func (c *ContainerClient) CreateApplicationContainer(input *CreateApplicationContainerInput) (*Container, error)
CreateApplicationContainer creates a new Application Container from an ApplicationClient and an input struct. Returns a populated ApplicationContainer struct for the Application, and any errors
func (*ContainerClient) DeleteApplicationContainer ¶
func (c *ContainerClient) DeleteApplicationContainer(input *DeleteApplicationContainerInput) error
DeleteApplicationContainer deletes the application container with the given name.
func (*ContainerClient) GetApplicationContainer ¶
func (c *ContainerClient) GetApplicationContainer(getInput *GetApplicationContainerInput) (*Container, error)
GetApplicationContainer retrieves the application container with the given name.
func (*ContainerClient) UpdateApplicationContainer ¶
func (c *ContainerClient) UpdateApplicationContainer(input *UpdateApplicationContainerInput) (*Container, error)
UpdateApplicationContainer updates an application container from an ApplicationClient and an input struct. Returns a populated ApplicationContainer struct for the Application, and any errors
func (*ContainerClient) WaitForApplicationContainerDeleted ¶
func (c *ContainerClient) WaitForApplicationContainerDeleted(input *DeleteApplicationContainerInput, pollInterval, timeout time.Duration) error
WaitForApplicationContainerDeleted waits for an application container to be fully deleted.
func (*ContainerClient) WaitForApplicationContainerRunning ¶
func (c *ContainerClient) WaitForApplicationContainerRunning(input *GetApplicationContainerInput, pollInterval, timeoutSeconds time.Duration) (*Container, error)
WaitForApplicationContainerRunning waits for an application container to be completely initialized and ready.
type CreateApplicationContainerAdditionalFields ¶
type CreateApplicationContainerAdditionalFields struct {
// Location of the application archive file in Oracle Storage Cloud Service, in the format app-name/file-name
// Optional
ArchiveURL string
// Uses Oracle Identity Cloud Service to control who can access your Java SE 7 or 8, Node.js, or PHP application.
// This should be ApplicationContainerAuthType but because of how we need to translate this strut to a map[string]string we are keeping it as a string
// Allowed values are 'basic' and 'oauth'.
// Optional
AuthType string // ApplicationContainerAuthType
// Name of the application
// Required
Name string
// Comments on the application deployment
Notes string
// Email address to which application deployment status updates are sent.
NotificationEmail string
// Repository of the application. The only allowed value is 'dockerhub'.
// This should be ApplicationRepository but because of how we need to translate this strut to a map[string]string we are keeping it as a string
// Optional
Repository string // ApplicationRepository
// Runtime environment: java (the default), node, php, python, or ruby
// This should be ApplicationRuntime but because of how we need to translate this strut to a map[string]string we are keeping it as a string
// Required
Runtime string // ApplicationRuntime
// Subscription, either hourly (the default) or monthly
// This should be ApplicationSubscriptionType but because of how we need to translate this strut to a map[string]string we are keeping it as a string
// Optional
SubscriptionType string //ApplicationSubscriptionType
}
CreateApplicationContainerAdditionalFields specifies the additional fields needed to create an application container
type CreateApplicationContainerInput ¶
type CreateApplicationContainerInput struct {
// The additional fields needed for ApplicationContainer
AdditionalFields CreateApplicationContainerAdditionalFields
// Name of the optional deployment file, which specifies memory, number of instances, and service bindings
// Optional
Deployment string
// Name of the manifest file, required if this file is not packaged with the application
// Optional
Manifest string
// Time to wait between checks on application container status
PollInterval time.Duration
// Timeout for creating an application container
Timeout time.Duration
}
CreateApplicationContainerInput specifies the information needed to create an application container
type DeleteApplicationContainerInput ¶
type DeleteApplicationContainerInput struct {
// Name of the application container
// Required
Name string `json:"name"`
// Time to wait between checks on application container status
PollInterval time.Duration
// Timeout to delete an application container
Timeout time.Duration
}
DeleteApplicationContainerInput specifies the information needed to delete an application container
type Deployment ¶
type Deployment struct {
// Deployment ID. Use this ID to manage a specific deployment.
DeploymentID string `json:"deploymentId"`
// Status of the deployment
DeploymentStatus string `json:"deploymentStatus"`
// Deployment URL. Use this URL to get a description of the application deployment.
DeploymentURL string `json:"deploymentURL"`
}
Deployment specifies individual deployment information on the application container
type GetApplicationContainerInput ¶
type GetApplicationContainerInput struct {
// Name of the application container
// Required
Name string `json:"name"`
}
GetApplicationContainerInput specifies the information needed to get an application container
type Instance ¶
type Instance struct {
// Instance URL. Use this url to get a description of the application instance.
InstanceURL string `json:"instanceURL"`
// Memory of the instance
Memory string `json:"memory"`
// Instance Name. Use this name to manage a specific instance.
Name string `json:"name"`
// Status of the instance
Status string `json:"status"`
}
Instance specifies individual instance information on the application container
type ResourceClient ¶
ResourceClient is an AuthenticatedClient with some additional information about the resources to be addressed.
type SubscriptionType ¶
type SubscriptionType string
SubscriptionType are the values available for subscription
const ( // SubscriptionTypeHourly specifies that the subscription is metered hourly SubscriptionTypeHourly SubscriptionType = "HOURLY" // SubscriptionTypeMonthly specifies that the subscription is metered monthly SubscriptionTypeMonthly SubscriptionType = "MONTHLY" )
type UpdateApplicationContainerAdditionalFields ¶
type UpdateApplicationContainerAdditionalFields struct {
// Location of the application archive file in Oracle Storage Cloud Service, in the format app-name/file-name
// Optional
ArchiveURL string
// Comments on the application deployment
Notes string
}
UpdateApplicationContainerAdditionalFields specifies the additional fields needed to update an application container
type UpdateApplicationContainerInput ¶
type UpdateApplicationContainerInput struct {
// Name of the application container
Name string
// The additional fields needed for ApplicationContainer
AdditionalFields UpdateApplicationContainerAdditionalFields
// Name of the optional deployment file, which specifies memory, number of instances, and service bindings
// Optional
Deployment string
// Name of the manifest file, required if this file is not packaged with the application
// Optional
Manifest string
// Time to wait between checks on application container status
PollInterval time.Duration
// Timeout for creating an application container
Timeout time.Duration
}
UpdateApplicationContainerInput specifies the fields needed to update an application container