Documentation
¶
Index ¶
Constants ¶
View Source
const ( // Domain is the primary TLD for juju when giving resource domains to // Kubernetes Domain = "juju.is" // LegacyDomain is the legacy primary TLD for juju when giving resource domains to // Kubernetes LegacyDomain = "juju.io" // AgentHTTPProbePort is the default port used by the HTTP server responding // to caas probes AgentHTTPProbePort = "3856" // AgentHTTPPathLiveness is the path used for liveness probes on the agent AgentHTTPPathLiveness = "/liveness" // AgentHTTPPathReadiness is the path used for readiness probes on the agent AgentHTTPPathReadiness = "/readiness" // AgentHTTPPathStartup is the path used for startup probes on the agent AgentHTTPPathStartup = "/startup" // JujuExecServerSocketPort is the port used by juju run callbacks. JujuExecServerSocketPort = 30666 // TemplateFileNameAgentConf is the template agent.conf file name. TemplateFileNameAgentConf = "template-" + agent.AgentConfigFilename // CAASProviderType is the provider type for k8s. CAASProviderType = "kubernetes" )
View Source
const ( // OperatorPodIPEnvName is the environment name for operator pod IP. OperatorPodIPEnvName = "JUJU_OPERATOR_POD_IP" // OperatorServiceIPEnvName is the environment name for operator service IP. OperatorServiceIPEnvName = "JUJU_OPERATOR_SERVICE_IP" // OperatorNamespaceEnvName is the environment name for k8s namespace the operator is in. OperatorNamespaceEnvName = "JUJU_OPERATOR_NAMESPACE" )
View Source
const ( // LabelJujuAppCreatedBy is a Juju application label to apply to objects // created by applications managed by Juju. Think istio, kubeflow etc // See https://bugs.launchpad.net/juju/+bug/1892285 LabelJujuAppCreatedBy = "app.juju.is/created-by" // LabelKubernetesAppName is the common meta key for kubernetes app names. // See https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/#labels LabelKubernetesAppName = "app.kubernetes.io/name" // LabelKubernetesAppManaged is the common meta key for kubernetes apps // that are managed by a non k8s process (such as Juju). // See https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/#labels LabelKubernetesAppManaged = "app.kubernetes.io/managed-by" // LabelJujuModelOperatorDisableWebhook is the label used for bypassing // model admission validation and mutation on objects. LabelJujuModelOperatorDisableWebhook = "model.juju.is/disable-webhook" // LabelJujuModelName is the juju label applied for juju models. LabelJujuModelName = "model.juju.is/name" // LabelJujuOperatorName is the juju label applied to Juju operators to // identify their name. Operator names are generally named after the thing // the operator is controlling. i.e an operator name for a model test would be // "test" LabelJujuOperatorName = "operator.juju.is/name" // LabelJujuOperatorTarget is the juju label applied to Juju operators to // describe the modeling paradigm they target. For example model, // application LabelJujuOperatorTarget = "operator.juju.is/target" // LabelJujuStorageName is the juju label applied to Juju storage objects to // describe their name. LabelJujuStorageName = "storage.juju.is/name" // LegacyLabelKubernetesAppName is the legacy label key used for juju app // identification. This purely exists to maintain backwards functionality. // See https://bugs.launchpad.net/juju/+bug/1888513 LegacyLabelKubernetesAppName = "juju-app" // LegacyLabelModelName is the legacy label key used for juju models. This // purely exists to maintain backwards functionality. // See https://bugs.launchpad.net/juju/+bug/1888513 LegacyLabelModelName = "juju-model" // LegacyLabelModelOperator is the legacy label key used for juju model // operators. This purely exists to maintain backwards functionality. // See https://bugs.launchpad.net/juju/+bug/1888513 LegacyLabelModelOperator = "juju-modeloperator" // LegacyLabelKubernetesOperatorName is the legacy label key used for juju // operators. This purely exists to maintain backwards functionality. // See https://bugs.launchpad.net/juju/+bug/1888513 LegacyLabelKubernetesOperatorName = "juju-operator" // LegacyLabelJujuStorageName is the legacy label key used for juju storage // pvc. This purely exists to maintain backwards functionality. // See https://bugs.launchpad.net/juju/+bug/1888513 LegacyLabelStorageName = "juju-storage" )
View Source
const ( // StorageProviderType defines the Juju storage type which can be used // to provision storage on k8s models. StorageProviderType = storage.ProviderType("kubernetes") // StorageClass is the name of a storage class resource. StorageClass = "storage-class" StorageProvisioner = "storage-provisioner" StorageMedium = "storage-medium" StorageMode = "storage-mode" )
View Source
const ( // WorkloadStorageKey is the model config attribute used to specify // the storage class for provisioning workload storage. WorkloadStorageKey = "workload-storage" // OperatorStorageKey is the model config attribute used to specify // the storage class for provisioning operator storage. OperatorStorageKey = "operator-storage" )
View Source
const (
EnvAgentHTTPProbePort = "HTTP_PROBE_PORT"
)
Variables ¶
View Source
var ( // StorageBaseDir is the base storage dir for the k8s series. StorageBaseDir = getK8sStorageBaseDir() // LegacyPVNameRegexp matches how Juju labels persistent volumes. // The pattern is: juju-<storagename>-<digit> LegacyPVNameRegexp = regexp.MustCompile(`^juju-(?P<storageName>\D+)-\d+$`) // PVNameRegexp matches how Juju labels persistent volumes. // The pattern is: <storagename>-<digit> PVNameRegexp = regexp.MustCompile(`^(?P<storageName>\D+)-\w+$`) )
Functions ¶
func DefaultPropagationPolicy ¶
func DefaultPropagationPolicy() *metav1.DeletionPropagation
DefaultPropagationPolicy returns the default propagation policy.
func QualifiedStorageClassName ¶
QualifiedStorageClassName returns a qualified storage class name.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.