Documentation
¶
Overview ¶
Package engine takes an AKS cluster model and generates the corresponding template.
Code generated for package engine by go-bindata DO NOT EDIT. (@generated) sources: ../../parts/agentoutputs.t ../../parts/agentparams.t ../../parts/dcos/bstrap/bootstrapcustomdata.yml ../../parts/dcos/bstrap/bootstrapparams.t ../../parts/dcos/bstrap/bootstrapprovision.sh ../../parts/dcos/bstrap/bootstrapresources.t ../../parts/dcos/bstrap/bootstrapvars.t ../../parts/dcos/bstrap/dcos1.11.0.customdata.t ../../parts/dcos/bstrap/dcos1.11.2.customdata.t ../../parts/dcos/bstrap/dcosbase.t ../../parts/dcos/bstrap/dcosmasterresources.t ../../parts/dcos/bstrap/dcosmastervars.t ../../parts/dcos/bstrap/dcosprovision.sh ../../parts/dcos/dcosWindowsAgentResourcesVmas.t ../../parts/dcos/dcosWindowsAgentResourcesVmss.t ../../parts/dcos/dcosWindowsProvision.ps1 ../../parts/dcos/dcosagentresourcesvmas.t ../../parts/dcos/dcosagentresourcesvmss.t ../../parts/dcos/dcosagentvars.t ../../parts/dcos/dcosbase.t ../../parts/dcos/dcoscustomdata110.t ../../parts/dcos/dcoscustomdata184.t ../../parts/dcos/dcoscustomdata187.t ../../parts/dcos/dcoscustomdata188.t ../../parts/dcos/dcoscustomdata190.t ../../parts/dcos/dcoscustomdata198.t ../../parts/dcos/dcosmasterresources.t ../../parts/dcos/dcosmastervars.t ../../parts/dcos/dcosparams.t ../../parts/dcos/dcosprovision.sh ../../parts/dcos/dcosprovisionsource.sh ../../parts/iaasoutputs.t ../../parts/k8s/addons/1.15/kubernetesmasteraddons-azure-cloud-provider-deployment.yaml ../../parts/k8s/addons/1.15/kubernetesmasteraddons-pod-security-policy.yaml ../../parts/k8s/addons/1.16/kubernetesmaster-audit-policy.yaml ../../parts/k8s/addons/1.16/kubernetesmasteraddons-azure-cloud-provider-deployment.yaml ../../parts/k8s/addons/1.16/kubernetesmasteraddons-cilium-daemonset.yaml ../../parts/k8s/addons/1.16/kubernetesmasteraddons-flannel-daemonset.yaml ../../parts/k8s/addons/1.16/kubernetesmasteraddons-pod-security-policy.yaml ../../parts/k8s/addons/1.17/kubernetesmaster-audit-policy.yaml ../../parts/k8s/addons/1.17/kubernetesmasteraddons-azure-cloud-provider-deployment.yaml ../../parts/k8s/addons/1.17/kubernetesmasteraddons-cilium-daemonset.yaml ../../parts/k8s/addons/1.17/kubernetesmasteraddons-flannel-daemonset.yaml ../../parts/k8s/addons/1.17/kubernetesmasteraddons-pod-security-policy.yaml ../../parts/k8s/addons/kubernetesmaster-audit-policy.yaml ../../parts/k8s/addons/kubernetesmasteraddons-aad-default-admin-group-rbac.yaml ../../parts/k8s/addons/kubernetesmasteraddons-azure-cloud-provider-deployment.yaml ../../parts/k8s/addons/kubernetesmasteraddons-azure-csi-storage-classes.yaml ../../parts/k8s/addons/kubernetesmasteraddons-cilium-daemonset.yaml ../../parts/k8s/addons/kubernetesmasteraddons-flannel-daemonset.yaml ../../parts/k8s/addons/kubernetesmasteraddons-managed-azure-storage-classes-custom.yaml ../../parts/k8s/addons/kubernetesmasteraddons-managed-azure-storage-classes.yaml ../../parts/k8s/addons/kubernetesmasteraddons-pod-security-policy.yaml ../../parts/k8s/addons/kubernetesmasteraddons-scheduled-maintenance-deployment.yaml ../../parts/k8s/addons/kubernetesmasteraddons-unmanaged-azure-storage-classes-custom.yaml ../../parts/k8s/addons/kubernetesmasteraddons-unmanaged-azure-storage-classes.yaml ../../parts/k8s/armparameters.t ../../parts/k8s/cloud-init/artifacts/apt-preferences ../../parts/k8s/cloud-init/artifacts/auditd-rules ../../parts/k8s/cloud-init/artifacts/cis.sh ../../parts/k8s/cloud-init/artifacts/cse_config.sh ../../parts/k8s/cloud-init/artifacts/cse_customcloud.sh ../../parts/k8s/cloud-init/artifacts/cse_helpers.sh ../../parts/k8s/cloud-init/artifacts/cse_install.sh ../../parts/k8s/cloud-init/artifacts/cse_main.sh ../../parts/k8s/cloud-init/artifacts/default-grub ../../parts/k8s/cloud-init/artifacts/dhcpv6.service ../../parts/k8s/cloud-init/artifacts/docker-monitor.service ../../parts/k8s/cloud-init/artifacts/docker-monitor.timer ../../parts/k8s/cloud-init/artifacts/docker_clear_mount_propagation_flags.conf ../../parts/k8s/cloud-init/artifacts/enable-dhcpv6.sh ../../parts/k8s/cloud-init/artifacts/etc-issue ../../parts/k8s/cloud-init/artifacts/etc-issue.net ../../parts/k8s/cloud-init/artifacts/etcd.service ../../parts/k8s/cloud-init/artifacts/generateproxycerts.sh ../../parts/k8s/cloud-init/artifacts/health-monitor.sh ../../parts/k8s/cloud-init/artifacts/kms.service ../../parts/k8s/cloud-init/artifacts/kubelet-monitor.service ../../parts/k8s/cloud-init/artifacts/kubelet-monitor.timer ../../parts/k8s/cloud-init/artifacts/kubelet.service ../../parts/k8s/cloud-init/artifacts/label-nodes.service ../../parts/k8s/cloud-init/artifacts/label-nodes.sh ../../parts/k8s/cloud-init/artifacts/modprobe-CIS.conf ../../parts/k8s/cloud-init/artifacts/mountetcd.sh ../../parts/k8s/cloud-init/artifacts/pam-d-common-auth ../../parts/k8s/cloud-init/artifacts/pam-d-common-password ../../parts/k8s/cloud-init/artifacts/pam-d-su ../../parts/k8s/cloud-init/artifacts/profile-d-cis.sh ../../parts/k8s/cloud-init/artifacts/pwquality-CIS.conf ../../parts/k8s/cloud-init/artifacts/rsyslog-d-60-CIS.conf ../../parts/k8s/cloud-init/artifacts/setup-custom-search-domains.sh ../../parts/k8s/cloud-init/artifacts/sshd_config ../../parts/k8s/cloud-init/artifacts/sshd_config_1604 ../../parts/k8s/cloud-init/artifacts/sys-fs-bpf.mount ../../parts/k8s/cloud-init/artifacts/sysctl-d-60-CIS.conf ../../parts/k8s/cloud-init/jumpboxcustomdata.yml ../../parts/k8s/cloud-init/masternodecustomdata.yml ../../parts/k8s/cloud-init/nodecustomdata.yml ../../parts/k8s/containeraddons/1.10/kubernetesmasteraddons-metrics-server-deployment.yaml ../../parts/k8s/containeraddons/1.11/kubernetesmasteraddons-cluster-autoscaler-deployment.yaml ../../parts/k8s/containeraddons/1.11/kubernetesmasteraddons-metrics-server-deployment.yaml ../../parts/k8s/containeraddons/1.12/kubernetesmasteraddons-cluster-autoscaler-deployment.yaml ../../parts/k8s/containeraddons/1.12/kubernetesmasteraddons-metrics-server-deployment.yaml ../../parts/k8s/containeraddons/1.13/kubernetesmasteraddons-cluster-autoscaler-deployment.yaml ../../parts/k8s/containeraddons/1.13/kubernetesmasteraddons-metrics-server-deployment.yaml ../../parts/k8s/containeraddons/1.14/kubernetesmasteraddons-cluster-autoscaler-deployment.yaml ../../parts/k8s/containeraddons/1.14/kubernetesmasteraddons-metrics-server-deployment.yaml ../../parts/k8s/containeraddons/1.15/kubernetesmasteraddons-cluster-autoscaler-deployment.yaml ../../parts/k8s/containeraddons/1.15/kubernetesmasteraddons-metrics-server-deployment.yaml ../../parts/k8s/containeraddons/1.16/azure-cni-networkmonitor.yaml ../../parts/k8s/containeraddons/1.16/ip-masq-agent.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-aad-pod-identity-deployment.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-aci-connector-deployment.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-azure-npm-daemonset.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-blobfuse-flexvolume-installer.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-calico-daemonset.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-cloud-node-manager.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-cluster-autoscaler-deployment.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-heapster-deployment.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-keyvault-flexvolume-installer.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-kube-dns-deployment.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-kube-proxy-daemonset.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-kube-rescheduler-deployment.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-kubernetes-dashboard-deployment.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-metrics-server-deployment.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-nvidia-device-plugin-daemonset.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-omsagent-daemonset.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-smb-flexvolume-installer.yaml ../../parts/k8s/containeraddons/1.16/kubernetesmasteraddons-tiller-deployment.yaml ../../parts/k8s/containeraddons/1.17/azure-cni-networkmonitor.yaml ../../parts/k8s/containeraddons/1.17/ip-masq-agent.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-aad-pod-identity-deployment.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-aci-connector-deployment.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-azure-npm-daemonset.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-blobfuse-flexvolume-installer.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-calico-daemonset.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-cloud-node-manager.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-cluster-autoscaler-deployment.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-heapster-deployment.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-keyvault-flexvolume-installer.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-kube-dns-deployment.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-kube-proxy-daemonset.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-kube-rescheduler-deployment.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-kubernetes-dashboard-deployment.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-metrics-server-deployment.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-nvidia-device-plugin-daemonset.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-omsagent-daemonset.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-smb-flexvolume-installer.yaml ../../parts/k8s/containeraddons/1.17/kubernetesmasteraddons-tiller-deployment.yaml ../../parts/k8s/containeraddons/1.6/kubernetesmasteraddons-heapster-deployment.yaml ../../parts/k8s/containeraddons/1.7/kubernetesmasteraddons-heapster-deployment.yaml ../../parts/k8s/containeraddons/1.8/kubernetesmasteraddons-heapster-deployment.yaml ../../parts/k8s/containeraddons/1.9/kubernetesmasteraddons-metrics-server-deployment.yaml ../../parts/k8s/containeraddons/azure-cni-networkmonitor.yaml ../../parts/k8s/containeraddons/azure-policy-deployment.yaml ../../parts/k8s/containeraddons/coredns.yaml ../../parts/k8s/containeraddons/dns-autoscaler.yaml ../../parts/k8s/containeraddons/ip-masq-agent.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-aad-pod-identity-deployment.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-aci-connector-deployment.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-azure-npm-daemonset.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-azuredisk-csi-driver-deployment.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-azurefile-csi-driver-deployment.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-blobfuse-flexvolume-installer.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-calico-daemonset.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-cluster-autoscaler-deployment.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-heapster-deployment.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-keyvault-flexvolume-installer.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-kube-dns-deployment.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-kube-proxy-daemonset.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-kube-rescheduler-deployment.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-kubernetes-dashboard-deployment.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-metrics-server-deployment.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-nvidia-device-plugin-daemonset.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-omsagent-daemonset.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-smb-flexvolume-installer.yaml ../../parts/k8s/containeraddons/kubernetesmasteraddons-tiller-deployment.yaml ../../parts/k8s/containeraddons/node-problem-detector.yaml ../../parts/k8s/kubeconfig.json ../../parts/k8s/kubernetesparams.t ../../parts/k8s/kuberneteswindowsfunctions.ps1 ../../parts/k8s/kuberneteswindowssetup.ps1 ../../parts/k8s/manifests/1.17/kubernetesmaster-kube-apiserver.yaml ../../parts/k8s/manifests/1.17/kubernetesmaster-kube-controller-manager.yaml ../../parts/k8s/manifests/1.17/kubernetesmaster-kube-scheduler.yaml ../../parts/k8s/manifests/kubernetesmaster-cloud-controller-manager.yaml ../../parts/k8s/manifests/kubernetesmaster-kube-addon-manager.yaml ../../parts/k8s/manifests/kubernetesmaster-kube-apiserver.yaml ../../parts/k8s/manifests/kubernetesmaster-kube-controller-manager-custom.yaml ../../parts/k8s/manifests/kubernetesmaster-kube-controller-manager.yaml ../../parts/k8s/manifests/kubernetesmaster-kube-scheduler.yaml ../../parts/k8s/windowsazurecnifunc.ps1 ../../parts/k8s/windowsazurecnifunc.tests.ps1 ../../parts/k8s/windowscnifunc.ps1 ../../parts/k8s/windowsconfigfunc.ps1 ../../parts/k8s/windowsinstallopensshfunc.ps1 ../../parts/k8s/windowskubeletfunc.ps1 ../../parts/masteroutputs.t ../../parts/masterparams.t ../../parts/swarm/Install-ContainerHost-And-Join-Swarm.ps1 ../../parts/swarm/Join-SwarmMode-cluster.ps1 ../../parts/swarm/configure-swarm-cluster.sh ../../parts/swarm/configure-swarmmode-cluster.sh ../../parts/swarm/swarmagentresourcesvmas.t ../../parts/swarm/swarmagentresourcesvmss.t ../../parts/swarm/swarmagentvars.t ../../parts/swarm/swarmbase.t ../../parts/swarm/swarmmasterresources.t ../../parts/swarm/swarmmastervars.t ../../parts/swarm/swarmparams.t ../../parts/swarm/swarmwinagentresourcesvmas.t ../../parts/swarm/swarmwinagentresourcesvmss.t ../../parts/windowsparams.t
Index ¶
- Constants
- func Asset(name string) ([]byte, error)
- func AssetDir(name string) ([]string, error)
- func AssetInfo(name string) (os.FileInfo, error)
- func AssetNames() []string
- func CreateKeyVaultVMAS(cs *api.ContainerService) map[string]interface{}
- func CreateKeyVaultVMSS(cs *api.ContainerService) map[string]interface{}
- func GenerateARMResources(cs *api.ContainerService) []interface{}
- func GenerateKubeConfig(properties *api.Properties, location string) (string, error)
- func GetKubernetesOutputs(cs *api.ContainerService) map[string]interface{}
- func GetKubernetesVariables(cs *api.ContainerService) (map[string]interface{}, error)
- func GetTenantID(resourceManagerEndpoint string, subscriptionID string) (string, error)
- func MustAsset(name string) []byte
- func RestoreAsset(dir, name string) error
- func RestoreAssets(dir, name string) error
- type ARMResource
- type ARMTemplate
- type ApplicationGatewayARM
- type ArtifactWriter
- type AvailabilitySetARM
- type AzureEndpointConfig
- type AzureOSImageConfig
- type Context
- type CustomFileReader
- type DCOSSpecConfig
- type DeploymentARM
- type DeploymentARMResource
- type DockerSpecConfig
- type DocumentDBAccountARM
- type IdentityRoleDefinition
- type ImageARM
- type KeyVaultARM
- type KeyVaultID
- type KeyVaultRef
- type KubernetesSpecConfig
- type LoadBalancerARM
- type NetworkInterfaceARM
- type NetworkSecurityGroupARM
- type PublicIPAddressARM
- type RoleAssignmentARM
- type RouteTableARM
- type StorageAccountARM
- type SystemRoleAssignmentARM
- type TemplateGenerator
- func (t *TemplateGenerator) GenerateTemplate(containerService *api.ContainerService, generatorCode string, ...) (templateRaw string, parametersRaw string, err error)
- func (t *TemplateGenerator) GenerateTemplateV2(containerService *api.ContainerService, generatorCode string, ...) (templateRaw string, parametersRaw string, err error)
- func (t *TemplateGenerator) GetJumpboxCustomDataJSON(cs *api.ContainerService) string
- func (t *TemplateGenerator) GetKubernetesLinuxNodeCustomDataJSONObject(cs *api.ContainerService, profile *api.AgentPoolProfile) string
- func (t *TemplateGenerator) GetKubernetesWindowsNodeCustomDataJSONObject(cs *api.ContainerService, profile *api.AgentPoolProfile) string
- func (t *TemplateGenerator) GetMasterCustomDataJSONObject(cs *api.ContainerService) string
- type UserAssignedIdentitiesARM
- type VirtualMachineARM
- type VirtualMachineExtensionARM
- type VirtualMachineScaleSetARM
- type VirtualNetworkARM
- type VlabsContainerService
Constants ¶
const ( // Mesos is the string constant for MESOS orchestrator type Mesos string = "Mesos" // DCOS is the string constant for DCOS orchestrator type and defaults to DCOS188 DCOS string = "DCOS" // Swarm is the string constant for the Swarm orchestrator type Swarm string = "Swarm" // Kubernetes is the string constant for the Kubernetes orchestrator type Kubernetes string = "Kubernetes" // SwarmMode is the string constant for the Swarm Mode orchestrator type SwarmMode string = "SwarmMode" )
const ( // DefaultVNETCIDR is the default CIDR block for the VNET DefaultVNETCIDR = "10.0.0.0/8" // DefaultVNETCIDRIPv6 is the default IPv6 CIDR block for the VNET DefaultVNETCIDRIPv6 = "2001:1234:5678:9a00::/56" // DefaultInternalLbStaticIPOffset specifies the offset of the internal LoadBalancer's IP // address relative to the first consecutive Kubernetes static IP DefaultInternalLbStaticIPOffset = 10 // NetworkPolicyNone is the string expression for the deprecated NetworkPolicy usage pattern "none" NetworkPolicyNone = "none" // NetworkPolicyCalico is the string expression for calico network policy config option NetworkPolicyCalico = "calico" // NetworkPolicyCilium is the string expression for cilium network policy config option NetworkPolicyCilium = "cilium" // NetworkPluginCilium is the string expression for cilium network plugin config option NetworkPluginCilium = NetworkPolicyCilium // NetworkPolicyAzure is the string expression for Azure CNI network policy manager NetworkPolicyAzure = "azure" // NetworkPluginAzure is the string expression for Azure CNI plugin NetworkPluginAzure = "azure" // NetworkPluginKubenet is the string expression for kubenet network plugin NetworkPluginKubenet = "kubenet" // NetworkPluginFlannel is the string expression for flannel network plugin NetworkPluginFlannel = "flannel" // DefaultGeneratorCode specifies the source generator of the cluster template. DefaultGeneratorCode = "aksengine" // DefaultKubernetesKubeletMaxPods is the max pods per kubelet DefaultKubernetesKubeletMaxPods = 110 // DefaultMasterEtcdServerPort is the default etcd server port for Kubernetes master nodes DefaultMasterEtcdServerPort = 2380 // DefaultMasterEtcdClientPort is the default etcd client port for Kubernetes master nodes DefaultMasterEtcdClientPort = 2379 // BasicLoadBalancerSku is the string const for Azure Basic Load Balancer BasicLoadBalancerSku = "Basic" // StandardLoadBalancerSku is the string const for Azure Standard Load Balancer StandardLoadBalancerSku = "Standard" )
const ( //DefaultExtensionsRootURL Root URL for extensions DefaultExtensionsRootURL = "https://raw.githubusercontent.com/Azure/aks-engine/master/" // DefaultDockerEngineRepo for grabbing docker engine packages DefaultDockerEngineRepo = "https://download.docker.com/linux/ubuntu" // DefaultDockerComposeURL for grabbing docker images DefaultDockerComposeURL = "https://github.com/docker/compose/releases/download" )
const ( // AzureStackSuffix is appended to kubernetes version on Azure Stack instances AzureStackSuffix = "-azs" // AzureStackPrefix is appended to windows binary version for Azure Stack instances AzureStackPrefix = "azs-" // AzureStackCaCertLocation is where Azure Stack's CRP drops the stamp CA certificate AzureStackCaCertLocation = "/var/lib/waagent/Certificates.pem" )
const (
//DefaultConfigurationScriptRootURL Root URL for configuration script (used for script extension on RHEL)
DefaultConfigurationScriptRootURL = "https://raw.githubusercontent.com/Azure/aks-engine/master/parts/"
)
Variables ¶
This section is empty.
Functions ¶
func Asset ¶ added in v0.31.0
Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.
func AssetDir ¶ added in v0.31.0
AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:
data/ foo.txt img/ a.png b.png
then AssetDir("data") would return []string{"foo.txt", "img"} AssetDir("data/img") would return []string{"a.png", "b.png"} AssetDir("foo.txt") and AssetDir("notexist") would return an error AssetDir("") will return []string{"data"}.
func AssetInfo ¶ added in v0.31.0
AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.
func AssetNames ¶ added in v0.31.0
func AssetNames() []string
AssetNames returns the names of the assets.
func CreateKeyVaultVMAS ¶ added in v0.33.0
func CreateKeyVaultVMAS(cs *api.ContainerService) map[string]interface{}
func CreateKeyVaultVMSS ¶ added in v0.33.0
func CreateKeyVaultVMSS(cs *api.ContainerService) map[string]interface{}
func GenerateARMResources ¶ added in v0.33.0
func GenerateARMResources(cs *api.ContainerService) []interface{}
func GenerateKubeConfig ¶
func GenerateKubeConfig(properties *api.Properties, location string) (string, error)
GenerateKubeConfig returns a JSON string representing the KubeConfig
func GetKubernetesOutputs ¶ added in v0.33.0
func GetKubernetesOutputs(cs *api.ContainerService) map[string]interface{}
func GetKubernetesVariables ¶ added in v0.33.0
func GetKubernetesVariables(cs *api.ContainerService) (map[string]interface{}, error)
func GetTenantID ¶
GetTenantID figures out the AAD tenant ID of the subscription by making an unauthenticated request to the Get Subscription Details endpoint and parses the value from WWW-Authenticate header. TODO this should probably to to the armhelpers library
func MustAsset ¶ added in v0.31.0
MustAsset is like Asset but panics when Asset would return an error. It simplifies safe initialization of global variables.
func RestoreAsset ¶ added in v0.31.0
RestoreAsset restores an asset under the given directory
func RestoreAssets ¶ added in v0.31.0
RestoreAssets restores an asset under the given directory recursively
Types ¶
type ARMResource ¶ added in v0.33.0
type ARMResource struct { APIVersion string `json:"apiVersion,omitempty"` Copy map[string]string `json:"copy,omitempty"` DependsOn []string `json:"dependsOn,omitempty"` }
ARMResource contains the fields that are common to all Azure Resource Manager objects.
func (ARMResource) MarshalJSON ¶ added in v0.33.0
func (arm ARMResource) MarshalJSON() ([]byte, error)
MarshalJSON is the custom marshaler for an ARMResource.
type ARMTemplate ¶ added in v0.33.0
type ARMTemplate struct { Schema string `json:"$schema,omitempty"` ContentVersion string `json:"contentVersion,omitempty"` Parameters interface{} `json:"parameters,omitempty"` Variables interface{} `json:"variables,omitempty"` Resources interface{} `json:"resources,omitempty"` Outputs interface{} `json:"outputs,omitempty"` }
type ApplicationGatewayARM ¶ added in v0.38.0
type ApplicationGatewayARM struct { ARMResource network.ApplicationGateway }
ApplicationGatewayARM embeds the ARMResource type in network.ApplicationGateway.
type ArtifactWriter ¶
type ArtifactWriter struct {
Translator *i18n.Translator
}
ArtifactWriter represents the object that writes artifacts
func (*ArtifactWriter) WriteTLSArtifacts ¶
func (w *ArtifactWriter) WriteTLSArtifacts(containerService *api.ContainerService, apiVersion, template, parameters, artifactsDir string, certsGenerated bool, parametersOnly bool) error
WriteTLSArtifacts saves TLS certificates and keys to the server filesystem
type AvailabilitySetARM ¶ added in v0.33.0
type AvailabilitySetARM struct { ARMResource compute.AvailabilitySet }
AvailabilitySetARM embeds the ARMResource type in compute.AvailabilitySet.
func CreateAvailabilitySet ¶ added in v0.33.0
func CreateAvailabilitySet(cs *api.ContainerService, isManagedDisks bool) AvailabilitySetARM
func (AvailabilitySetARM) MarshalJSON ¶ added in v0.37.0
func (a AvailabilitySetARM) MarshalJSON() ([]byte, error)
MarshalJSON is the custom marshaler for an AvailabilitySetARM. It acts as a decorator by replacing the JSON field "platformFaultDomainCount" with an ARM expression if the value was not set.
type AzureEndpointConfig ¶
type AzureEndpointConfig struct {
ResourceManagerVMDNSSuffix string
}
AzureEndpointConfig describes an Azure endpoint
type AzureOSImageConfig ¶
type AzureOSImageConfig struct { ImageOffer string ImageSku string ImagePublisher string ImageVersion string }
AzureOSImageConfig describes an Azure OS image
type Context ¶
type Context struct {
Translator *i18n.Translator
}
Context represents the object that is passed to the package
type CustomFileReader ¶
CustomFileReader takes represents the source text of a file as an io.Reader and the desired destination to add it to
type DCOSSpecConfig ¶
type DCOSSpecConfig struct { DCOS188BootstrapDownloadURL string DCOS190BootstrapDownloadURL string DCOS198BootstrapDownloadURL string DCOS110BootstrapDownloadURL string DCOS111BootstrapDownloadURL string DCOSWindowsBootstrapDownloadURL string DcosRepositoryURL string // For custom install, for example CI, need these three addributes DcosClusterPackageListID string // the id of the package list file DcosProviderPackageID string // the id of the dcos-provider-xxx package }
DCOSSpecConfig is the configurations of DCOS
type DeploymentARM ¶ added in v0.35.0
type DeploymentARM struct { DeploymentARMResource resources.DeploymentExtended }
DeploymentARM embeds the ARMResource type in resources.DeploymentExtended.
func CreateCustomExtensions ¶ added in v0.35.0
func CreateCustomExtensions(properties *api.Properties) []DeploymentARM
CreateCustomExtensions returns a list of DeploymentARM objects for the custom extensions to be deployed
type DeploymentARMResource ¶ added in v0.35.0
type DeploymentARMResource ARMResource
DeploymentARMResource is an alias for the ARMResource type to avoid MarshalJSON override
type DockerSpecConfig ¶
DockerSpecConfig is the configurations of docker
type DocumentDBAccountARM ¶ added in v0.33.0
type DocumentDBAccountARM struct { ARMResource documentdb.DatabaseAccountCreateUpdateParameters }
DocumentDBAccountARM embeds the ARMResource type in documentdb.DatabaseAccountCreateUpdateParameters.
type IdentityRoleDefinition ¶ added in v0.35.0
type IdentityRoleDefinition string
const ( // IdentityContributorRole means created user assigned identity will have "Contributor" role in created resource group IdentityContributorRole IdentityRoleDefinition = "[variables('contributorRoleDefinitionId')]" // IdentityReaderRole means created user assigned identity will have "Reader" role in created resource group IdentityReaderRole IdentityRoleDefinition = "[variables('readerRoleDefinitionId')]" // IdentityManagedIdentityOperatorRole means created user assigned identity or service principal will have operator access on a different managed identity IdentityManagedIdentityOperatorRole IdentityRoleDefinition = "[variables('managedIdentityOperatorRoleDefinitionId')]" )
type ImageARM ¶ added in v0.33.0
type ImageARM struct { ARMResource compute.Image }
ImageARM embeds the ARMResource type in compute.Image.
type KeyVaultARM ¶ added in v0.33.0
type KeyVaultARM struct { ARMResource keyvault.Vault }
KeyVaultARM embeds the ARMResource type in keyvault.Vault.
type KeyVaultID ¶
type KeyVaultID struct {
ID string `json:"id"`
}
KeyVaultID represents a KeyVault instance on Azure
type KeyVaultRef ¶
type KeyVaultRef struct { KeyVault KeyVaultID `json:"keyVault"` SecretName string `json:"secretName"` SecretVersion string `json:"secretVersion,omitempty"` }
KeyVaultRef represents a reference to KeyVault instance on Azure
type KubernetesSpecConfig ¶
type KubernetesSpecConfig struct { KubernetesImageBase string TillerImageBase string ACIConnectorImageBase string NVIDIAImageBase string AzureCNIImageBase string EtcdDownloadURLBase string KubeBinariesSASURLBase string WindowsTelemetryGUID string CNIPluginsDownloadURL string VnetCNILinuxPluginsDownloadURL string VnetCNIWindowsPluginsDownloadURL string ContainerdDownloadURLBase string }
KubernetesSpecConfig is the kubernetes container images used.
type LoadBalancerARM ¶ added in v0.33.0
type LoadBalancerARM struct { ARMResource network.LoadBalancer }
LoadBalancerARM embeds the ARMResource type in network.LoadBalancer.
func CreateAgentLoadBalancer ¶ added in v0.39.0
func CreateAgentLoadBalancer(prop *api.Properties, isVMSS bool) LoadBalancerARM
func CreateClusterLoadBalancerForIPv6 ¶ added in v0.37.1
func CreateClusterLoadBalancerForIPv6() LoadBalancerARM
CreateClusterLoadBalancerForIPv6 creates the cluster loadbalancer with IPv4 and IPv6 FE config this loadbalancer is created for the ipv6 dual stack feature and configured with 1 ipv4 FE, 1 ipv6 FE and 2 backend address pools - v4 and v6, 2 rules - v4 and v6. Atleast existence of 1 rule is a requirement now to allow egress. This can be removed later. TODO (aramase)
func CreateLoadBalancer ¶ added in v0.33.0
func CreateLoadBalancer(prop *api.Properties, isVMSS bool) LoadBalancerARM
func CreateMasterInternalLoadBalancer ¶ added in v0.33.0
func CreateMasterInternalLoadBalancer(cs *api.ContainerService) LoadBalancerARM
type NetworkInterfaceARM ¶ added in v0.33.0
type NetworkInterfaceARM struct { ARMResource network.Interface }
NetworkInterfaceARM embeds the ARMResource type in network.Interface.
func CreateNetworkInterfaces ¶ added in v0.33.0
func CreateNetworkInterfaces(cs *api.ContainerService) NetworkInterfaceARM
type NetworkSecurityGroupARM ¶ added in v0.33.0
type NetworkSecurityGroupARM struct { ARMResource network.SecurityGroup }
NetworkSecurityGroupARM embeds the ARMResource type in network.SecurityGroup.
func CreateNetworkSecurityGroup ¶ added in v0.33.0
func CreateNetworkSecurityGroup(cs *api.ContainerService) NetworkSecurityGroupARM
type PublicIPAddressARM ¶ added in v0.33.0
type PublicIPAddressARM struct { ARMResource network.PublicIPAddress }
PublicIPAddressARM embeds the ARMResource type in network.PublicIPAddress.
func CreateClusterPublicIPAddress ¶ added in v0.37.1
func CreateClusterPublicIPAddress() PublicIPAddressARM
CreateClusterPublicIPAddress returns public ipv4 address resource for cluster this public ip address is created and added to the loadbalancer that's created with fqdn as name. ARM does not allow creating a loadbalancer with only ipv6 FE which is why a ipv4 fe is created here and added to lb.
func CreatePublicIPAddress ¶ added in v0.33.0
func CreatePublicIPAddress(isForMaster bool) PublicIPAddressARM
CreatePublicIPAddress returns public ipv4 address resource for masters or agents When it's for master, this public ip address is created and added to the loadbalancer's frontendIPConfigurations and it's created with the fqdn as name. When it's for agent, this public ip address is created and added to the loadbalancer's frontendIPConfigurations.
type RoleAssignmentARM ¶ added in v0.33.0
type RoleAssignmentARM struct { ARMResource authorization.RoleAssignment }
RoleAssignmentARM embeds the ARMResource type in authorization.RoleAssignment.
type RouteTableARM ¶ added in v0.33.0
type RouteTableARM struct { ARMResource network.RouteTable }
RouteTableARM embeds the ARMResource type in network.RouteTable.
type StorageAccountARM ¶ added in v0.33.0
type StorageAccountARM struct { ARMResource storage.Account }
StorageAccountARM embeds the ARMResource type in storage.Account.
type SystemRoleAssignmentARM ¶ added in v0.33.0
type SystemRoleAssignmentARM struct { ARMResource sysauth.RoleAssignment }
SystemRoleAssignmentARM embeds the ARMResource type in authorization.SystemRoleAssignment(2018-01-01-preview).
type TemplateGenerator ¶
type TemplateGenerator struct {
Translator *i18n.Translator
}
TemplateGenerator represents the object that performs the template generation.
func InitializeTemplateGenerator ¶
func InitializeTemplateGenerator(ctx Context) (*TemplateGenerator, error)
InitializeTemplateGenerator creates a new template generator object
func (*TemplateGenerator) GenerateTemplate ¶
func (t *TemplateGenerator) GenerateTemplate(containerService *api.ContainerService, generatorCode string, aksEngineVersion string) (templateRaw string, parametersRaw string, err error)
GenerateTemplate generates the template from the API Model
func (*TemplateGenerator) GenerateTemplateV2 ¶ added in v0.33.0
func (t *TemplateGenerator) GenerateTemplateV2(containerService *api.ContainerService, generatorCode string, acsengineVersion string) (templateRaw string, parametersRaw string, err error)
func (*TemplateGenerator) GetJumpboxCustomDataJSON ¶ added in v0.33.0
func (t *TemplateGenerator) GetJumpboxCustomDataJSON(cs *api.ContainerService) string
func (*TemplateGenerator) GetKubernetesLinuxNodeCustomDataJSONObject ¶ added in v0.35.0
func (t *TemplateGenerator) GetKubernetesLinuxNodeCustomDataJSONObject(cs *api.ContainerService, profile *api.AgentPoolProfile) string
GetKubernetesLinuxNodeCustomDataJSONObject returns Linux customData JSON object in the form { "customData": "[base64(concat(<customData string>))]" }
func (*TemplateGenerator) GetKubernetesWindowsNodeCustomDataJSONObject ¶ added in v0.35.0
func (t *TemplateGenerator) GetKubernetesWindowsNodeCustomDataJSONObject(cs *api.ContainerService, profile *api.AgentPoolProfile) string
GetKubernetesWindowsNodeCustomDataJSONObject returns Windows customData JSON object in the form { "customData": "[base64(concat(<customData string>))]" }
func (*TemplateGenerator) GetMasterCustomDataJSONObject ¶ added in v0.35.0
func (t *TemplateGenerator) GetMasterCustomDataJSONObject(cs *api.ContainerService) string
GetMasterCustomDataJSONObject returns master customData JSON object in the form { "customData": "[base64(concat(<customData string>))]" }
type UserAssignedIdentitiesARM ¶ added in v0.33.0
type UserAssignedIdentitiesARM struct { ARMResource msi.Identity }
UserAssignedIdentitiesARM embeds the ARMResource type in msi.Identity.
type VirtualMachineARM ¶ added in v0.33.0
type VirtualMachineARM struct { ARMResource compute.VirtualMachine }
VirtualMachineARM embeds the ARMResource type in compute.VirtualMachine.
func CreateMasterVM ¶ added in v0.36.0
func CreateMasterVM(cs *api.ContainerService) VirtualMachineARM
type VirtualMachineExtensionARM ¶ added in v0.33.0
type VirtualMachineExtensionARM struct { ARMResource compute.VirtualMachineExtension }
VirtualMachineExtensionARM embeds the ARMResource type in compute.VirtualMachineExtension.
func CreateAKSBillingExtension ¶ added in v0.33.0
func CreateAKSBillingExtension(cs *api.ContainerService) VirtualMachineExtensionARM
func CreateAgentVMASAKSBillingExtension ¶ added in v0.33.0
func CreateAgentVMASAKSBillingExtension(cs *api.ContainerService, profile *api.AgentPoolProfile) VirtualMachineExtensionARM
func CreateCustomScriptExtension ¶ added in v0.33.0
func CreateCustomScriptExtension(cs *api.ContainerService) VirtualMachineExtensionARM
type VirtualMachineScaleSetARM ¶ added in v0.33.0
type VirtualMachineScaleSetARM struct { ARMResource compute.VirtualMachineScaleSet }
VirtualMachineScaleSetARM embeds the ARMResource type in compute.VirtualMachineScaleSet.
func CreateAgentVMSS ¶ added in v0.33.0
func CreateAgentVMSS(cs *api.ContainerService, profile *api.AgentPoolProfile) VirtualMachineScaleSetARM
func CreateMasterVMSS ¶ added in v0.33.0
func CreateMasterVMSS(cs *api.ContainerService) VirtualMachineScaleSetARM
type VirtualNetworkARM ¶ added in v0.33.0
type VirtualNetworkARM struct { ARMResource network.VirtualNetwork }
VirtualNetworkARM embeds the ARMResource type in network.VirtualNetwork.
func CreateVirtualNetwork ¶ added in v0.33.0
func CreateVirtualNetwork(cs *api.ContainerService) VirtualNetworkARM
type VlabsContainerService ¶
type VlabsContainerService struct { api.TypeMeta *vlabs.ContainerService }
VlabsContainerService is the type we read and write from file needed because the json that is sent to ARM and aks-engine is different from the json that the ACS RP Api gets from ARM
Source Files
¶
- applicationgateway.go
- armoutputs.go
- armresources.go
- armtype.go
- armvariables.go
- artifacts.go
- availabilitysets.go
- const.go
- cosmosdb.go
- customfiles.go
- deployment.go
- doc.go
- engine.go
- engine_dcos.go
- fileloader.go
- images.go
- ipaddresses.go
- keyvaults.go
- loadbalancers.go
- masterarmresources.go
- networkinterfaces.go
- networksecuritygroups.go
- output.go
- params.go
- params_k8s.go
- roleassignments.go
- routetables.go
- storageaccounts.go
- systemroleassignments.go
- template_generator.go
- templates_generated.go
- tenantid.go
- testutils.go
- types.go
- userassignedidentities.go
- virtualmachines.go
- virtualmachinescalesets.go
- virtualnetworks.go
- vmextensions.go