Documentation
¶
Index ¶
- Variables
- func WriteMetadata(obj *BlueprintMetadata, bpPath string) error
- type BlueprintActuationTool
- type BlueprintArchitecture
- type BlueprintCloudProduct
- type BlueprintContent
- type BlueprintCostEstimate
- type BlueprintDescription
- type BlueprintDiagram
- type BlueprintInfo
- type BlueprintInterface
- type BlueprintListContent
- type BlueprintMetadata
- type BlueprintMetadataSpec
- type BlueprintMiscContent
- type BlueprintOutput
- type BlueprintQuotaDetail
- type BlueprintRepoDetail
- type BlueprintRequirements
- type BlueprintRoles
- type BlueprintTimeEstimate
- type BlueprintVariable
- type BlueprintVariableGroup
- type QuotaResourceType
- type QuotaType
Constants ¶
This section is empty.
Variables ¶
View Source
var Cmd = &cobra.Command{ Use: "metadata", Short: "Generates blueprint metatda", Long: `Generates metadata.yaml for specified blueprint`, Args: cobra.NoArgs, RunE: generate, }
View Source
var Log = log.New()
bpmetadata log15 handler
Functions ¶
func WriteMetadata ¶
func WriteMetadata(obj *BlueprintMetadata, bpPath string) error
Types ¶
type BlueprintActuationTool ¶
type BlueprintArchitecture ¶ added in v0.5.4
type BlueprintCloudProduct ¶ added in v0.5.4
type BlueprintContent ¶
type BlueprintContent struct {
// Diagrams are manually entered
Architecture BlueprintArchitecture `json:"architecture,omitempty" yaml:"architecture,omitempty"`
Diagrams []BlueprintDiagram `json:",omitempty" yaml:",omitempty"`
Documentation []BlueprintListContent `json:",omitempty" yaml:",omitempty"`
SubBlueprints []BlueprintMiscContent `json:"subBlueprints,omitempty" yaml:"subBlueprints,omitempty"`
Examples []BlueprintMiscContent `json:",omitempty" yaml:",omitempty"`
}
BlueprintContent defines the detail for blueprint related content such as related documentation, diagrams, examples etc.
type BlueprintCostEstimate ¶ added in v0.5.4
type BlueprintDescription ¶
type BlueprintDescription struct {
Tagline string `json:",omitempty" yaml:",omitempty"`
Detailed string `json:",omitempty" yaml:",omitempty"`
PreDeploy string `json:"preDeploy,omitempty" yaml:"preDeploy,omitempty"`
Architecture []string `json:"architecture,omitempty" yaml:"architecture,omitempty"`
}
type BlueprintDiagram ¶
type BlueprintDiagram struct {
Name string
AltText string `json:"altText,omitempty" yaml:"altText,omitempty"`
Description string `json:",omitempty" yaml:",omitempty"`
}
BlueprintDiagram is manually entered
type BlueprintInfo ¶
type BlueprintInfo struct {
Title string
Source *BlueprintRepoDetail
Version string `json:",omitempty" yaml:",omitempty"`
ActuationTool BlueprintActuationTool `json:"actuationTool,omitempty" yaml:"actuationTool,omitempty"`
Description *BlueprintDescription `json:",omitempty" yaml:",omitempty"`
Icon string `json:",omitempty" yaml:",omitempty"`
DeploymentTime BlueprintTimeEstimate `json:"deploymentTime,omitempty" yaml:"deploymentTime,omitempty"`
CostEstimate BlueprintCostEstimate `json:",omitempty" yaml:",omitempty"`
CloudProducts []BlueprintCloudProduct `json:",omitempty" yaml:",omitempty"`
QuotaDetails []BlueprintQuotaDetail `json:",omitempty" yaml:",omitempty"`
}
BlueprintInfo defines informational detail for the blueprint
type BlueprintInterface ¶
type BlueprintInterface struct {
Variables []BlueprintVariable `json:",omitempty" yaml:",omitempty"`
// VariableGroups are manually entered
VariableGroups []BlueprintVariableGroup `json:"variableGroups,omitempty" yaml:"variableGroups,omitempty"`
Outputs []BlueprintOutput `json:",omitempty" yaml:",omitempty"`
}
BlueprintInterface the input and output variables for the blueprint
type BlueprintListContent ¶
type BlueprintMetadata ¶
type BlueprintMetadata struct {
Meta yaml.ResourceMeta `json:",inline" yaml:",inline"`
Spec BlueprintMetadataSpec
}
BlueprintMetadata defines the overall structure for blueprint metadata details
func CreateBlueprintMetadata ¶
func CreateBlueprintMetadata(bpPath string, bpMetadataObj *BlueprintMetadata) (*BlueprintMetadata, error)
func UnmarshalMetadata ¶
func UnmarshalMetadata(bpPath string) (*BlueprintMetadata, error)
type BlueprintMetadataSpec ¶
type BlueprintMetadataSpec struct {
Info BlueprintInfo `json:",inline" yaml:",inline"`
Content BlueprintContent `json:",inline" yaml:",inline"`
Interfaces BlueprintInterface `json:",inline" yaml:",inline"`
Requirements BlueprintRequirements `json:",inline" yaml:",inline"`
}
BlueprintMetadataSpec defines the spec portion of the blueprint metadata
type BlueprintMiscContent ¶
type BlueprintOutput ¶
type BlueprintQuotaDetail ¶ added in v0.5.4
type BlueprintQuotaDetail struct {
// DynamicVariable, if provided, associates the provided input variable
// with the corresponding resource and quota type. In its absence, the quota
// detail is assumed to be fixed.
DynamicVariable string `json:"variable,omitempty" yaml:"variable,omitempty"`
// ResourceType is the type of resource the quota will be applied to i.e.
// GCE Instance or Disk etc.
ResourceType QuotaResourceType `json:"type" yaml:"type"`
// QuotaType is a key/value pair of the actual quotas an their corresponding
// values.
QuotaType map[QuotaType]string `json:"quotaType" yaml:"quotaType"`
}
type BlueprintRepoDetail ¶
type BlueprintRequirements ¶
type BlueprintRequirements struct {
Roles []BlueprintRoles
Services []string
}
BlueprintRequirements defines the roles required and the assocaited services that need to be enabled to provision blueprint resources
type BlueprintRoles ¶
type BlueprintTimeEstimate ¶ added in v0.5.4
type BlueprintVariable ¶
type BlueprintVariableGroup ¶
type BlueprintVariableGroup struct {
Name string
Description string `json:",omitempty" yaml:",omitempty"`
Variables []string
}
BlueprintVariableGroup is manually entered
type QuotaResourceType ¶ added in v0.5.4
type QuotaResourceType string
const ( GceInstance QuotaResourceType = "GCE_INSTANCE" GceDisk QuotaResourceType = "GCE_DISK" )
Click to show internal directories.
Click to hide internal directories.