Documentation ¶
Overview ¶
Package servercreate makes the tool cloud agnostic with respect to creation of server. The decision will be made here to route the request to respective package based on input.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ServerCreateInput ¶
type ServerCreateInput struct { // Name that has to be assigend to the instance which will be created. InstanceName string `json:"instancename"` // The number of instance that has to be created. Count int64 `json:"count"` // Id of the base image that has to be used for creating the vm's. ImageId string `json:"imageid"` // Id of the subnetwork in which the instance/vm has to be created. SubnetId string `json:"subnetid"` // Name of the ssh keypair that has to used for creation of vm's, and this key will be used to log into the servers. KeyName string `json:"keyname"` // Flavor defines the hardware configurations of the vm that has to be created [ex: t2.micro(aws),n1-standard-2(gcp) etc.] Flavor string `json:"flavor"` // The raw codes that has to be executed immediately after server boots up goes here. UserData string `json:"userdata"` // This defines whether a public IP has to be assigned to VM or not AssignPubIp bool `json:"assignpubip"` // All cloud info goes here Cloud cmn.Cloud }
ServerCreateInput actually implements CreateServer and holds the data in creating server.
func New ¶
func New() *ServerCreateInput
New returns the new ServerCreateInput instance with empty values
func (ServerCreateInput) CreateServer ¶
func (serv ServerCreateInput) CreateServer() (ServerCreateResponse, error)
CreateServer will create the server with the requirement passed to him appropriate user and his cloud profile details which was passed while calling it.
type ServerCreateResponse ¶
type ServerCreateResponse struct { // Contains filtered/unfiltered response of AWS. AwsResponse []server.ServerResponse `json:"AwsResponse,omitempty"` // Contains filtered/unfiltered response of Azure. AzureResponse string `json:"AzureResponse,omitempty"` // Default response if no inputs or matching the values required. DefaultResponse interface{} `json:"DefaultResponse,omitempty"` }
ServerCreateResponse will return the filtered/unfiltered responses of variuos clouds.
func CreateServerMock ¶
func CreateServerMock() (ServerCreateResponse, error)
CreateServerMock will help the user to know what all parameter CreateServer takes as part of ServerCreateInput