Documentation ¶
Index ¶
- Constants
- func CheckEvictionSupport(clientset kubernetes.Interface) (schema.GroupVersion, error)
- func CheckIfValidLabel(labelKey string, labelValue string) error
- func DeletePod(pod v1.Pod, k8sClientSet *kubernetes.Clientset, ...) error
- func EvictPod(pod v1.Pod, k8sClientSet *kubernetes.Clientset, ...) error
- func IsDevtronApp(labels map[string]string) bool
- func IsPod(gvk schema.GroupVersionKind) bool
- func IsService(gvk schema.GroupVersionKind) bool
- func OverrideK8sHttpClientWithTracer(restConfig *rest.Config) (*http.Client, error)
- func ResolveResourceReferences(un *unstructured.Unstructured) ([]metav1.OwnerReference, func(ResourceKey) bool)
- func ServerResourceForGroupVersionKind(discoveryClient discovery.DiscoveryInterface, gvk schema.GroupVersionKind) (*metav1.APIResource, error)
- func UpdateNodeUnschedulableProperty(desiredUnschedulable bool, node *v1.Node, k8sClientSet *kubernetes.Clientset) (*v1.Node, error)
- type ApplyResourcesRequest
- type ApplyResourcesResponse
- type ClusterConfig
- type ClusterResourceListMap
- type EventsResponse
- type GetAllApiResourcesResponse
- type JsonPatchType
- type K8sApiResource
- type K8sRequestBean
- type K8sUtil
- func (impl K8sUtil) BuildK8sObjectListTableData(manifest *unstructured.UnstructuredList, namespaced bool, ...) (*ClusterResourceListMap, error)
- func (impl K8sUtil) CheckIfNsExists(namespace string, client *v12.CoreV1Client) (exists bool, err error)
- func (impl K8sUtil) CreateConfigMap(namespace string, cm *v1.ConfigMap, client *v12.CoreV1Client) (*v1.ConfigMap, error)
- func (impl K8sUtil) CreateJob(namespace string, name string, clusterConfig *ClusterConfig, job *batchV1.Job) error
- func (impl K8sUtil) CreateK8sClientSet(restConfig *rest.Config) (*kubernetes.Clientset, error)
- func (impl K8sUtil) CreateNsIfNotExists(namespace string, clusterConfig *ClusterConfig) (err error)
- func (impl *K8sUtil) CreateResources(ctx context.Context, restConfig *rest.Config, manifest string, ...) (*ManifestResponse, error)
- func (impl K8sUtil) CreateSecret(namespace string, data map[string][]byte, secretName string, ...) (*v1.Secret, error)
- func (impl K8sUtil) CreateSecretData(namespace string, secret *v1.Secret, v1Client *v12.CoreV1Client) (*v1.Secret, error)
- func (impl *K8sUtil) DecodeGroupKindversion(data string) (*schema.GroupVersionKind, error)
- func (impl K8sUtil) DeleteAndCreateJob(content []byte, namespace string, clusterConfig *ClusterConfig) error
- func (impl K8sUtil) DeleteJob(namespace string, name string, clusterConfig *ClusterConfig) error
- func (impl K8sUtil) DeletePodByLabel(namespace string, labels string, clusterConfig *ClusterConfig) error
- func (impl *K8sUtil) DeleteResource(ctx context.Context, restConfig *rest.Config, gvk schema.GroupVersionKind, ...) (*ManifestResponse, error)
- func (impl K8sUtil) DeleteSecret(namespace string, name string, client *v12.CoreV1Client) error
- func (impl K8sUtil) DiscoveryClientGetLiveZCall(cluster *ClusterConfig) ([]byte, error)
- func (impl K8sUtil) ExtractK8sServerMajorAndMinorVersion(k8sServerVersion *version.Info) (int, int, error)
- func (impl K8sUtil) FetchConnectionStatusForCluster(k8sClientSet *kubernetes.Clientset) error
- func (impl K8sUtil) GetApiResources(restConfig *rest.Config, includeOnlyVerb string) ([]*K8sApiResource, error)
- func (impl K8sUtil) GetClientByToken(serverUrl string, token map[string]string) (*v12.CoreV1Client, error)
- func (impl K8sUtil) GetClientForInCluster() (*v12.CoreV1Client, error)
- func (impl K8sUtil) GetConfigMap(namespace string, name string, client *v12.CoreV1Client) (*v1.ConfigMap, error)
- func (impl K8sUtil) GetCoreV1Client(clusterConfig *ClusterConfig) (*v12.CoreV1Client, error)
- func (impl K8sUtil) GetCoreV1ClientByRestConfig(restConfig *rest.Config) (*v12.CoreV1Client, error)
- func (impl K8sUtil) GetCoreV1ClientInCluster() (*v12.CoreV1Client, error)
- func (impl K8sUtil) GetK8sConfigAndClients(clusterConfig *ClusterConfig) (*rest.Config, *http.Client, *kubernetes.Clientset, error)
- func (impl K8sUtil) GetK8sConfigAndClientsByRestConfig(restConfig *rest.Config) (*http.Client, *kubernetes.Clientset, error)
- func (impl K8sUtil) GetK8sDiscoveryClient(clusterConfig *ClusterConfig) (*discovery.DiscoveryClient, error)
- func (impl K8sUtil) GetK8sDiscoveryClientInCluster() (*discovery.DiscoveryClient, error)
- func (impl K8sUtil) GetK8sInClusterConfigAndClients() (*rest.Config, *http.Client, *kubernetes.Clientset, error)
- func (impl K8sUtil) GetK8sInClusterConfigAndDynamicClients() (*rest.Config, *http.Client, dynamic.Interface, error)
- func (impl K8sUtil) GetK8sInClusterRestConfig() (*rest.Config, error)
- func (impl K8sUtil) GetK8sServerVersion(clientSet *kubernetes.Clientset) (*version.Info, error)
- func (impl K8sUtil) GetKubeVersion() (*version.Info, error)
- func (impl K8sUtil) GetLiveZCall(path string, k8sClientSet *kubernetes.Clientset) ([]byte, error)
- func (impl K8sUtil) GetLogsForAPod(kubeClient *kubernetes.Clientset, namespace string, podName string, ...) *restclient.Request
- func (impl K8sUtil) GetMetricsClientSet(restConfig *rest.Config, k8sHttpClient *http.Client) (*metrics.Clientset, error)
- func (impl K8sUtil) GetNmByName(ctx context.Context, metricsClientSet *metrics.Clientset, name string) (*v1beta1.NodeMetrics, error)
- func (impl K8sUtil) GetNmList(ctx context.Context, metricsClientSet *metrics.Clientset) (*v1beta1.NodeMetricsList, error)
- func (impl K8sUtil) GetNodeByName(ctx context.Context, k8sClientSet *kubernetes.Clientset, name string) (*v1.Node, error)
- func (impl K8sUtil) GetNodesList(ctx context.Context, k8sClientSet *kubernetes.Clientset) (*v1.NodeList, error)
- func (impl K8sUtil) GetPodByName(namespace string, name string, client *v12.CoreV1Client) (*v1.Pod, error)
- func (impl K8sUtil) GetPodListByLabel(namespace, label string, clientSet *kubernetes.Clientset) ([]v1.Pod, error)
- func (impl K8sUtil) GetPodLogs(ctx context.Context, restConfig *rest.Config, name string, namespace string, ...) (io.ReadCloser, error)
- func (impl K8sUtil) GetPodsListForNamespace(ctx context.Context, k8sClientSet *kubernetes.Clientset, namespace string) (*v1.PodList, error)
- func (impl *K8sUtil) GetResource(ctx context.Context, namespace string, name string, ...) (*ManifestResponse, error)
- func (impl K8sUtil) GetResourceIf(restConfig *rest.Config, groupVersionKind schema.GroupVersionKind) (resourceIf dynamic.NamespaceableResourceInterface, namespaced bool, err error)
- func (impl K8sUtil) GetResourceIfWithAcceptHeader(restConfig *rest.Config, groupVersionKind schema.GroupVersionKind) (resourceIf dynamic.NamespaceableResourceInterface, namespaced bool, err error)
- func (impl K8sUtil) GetResourceInfoByLabelSelector(ctx context.Context, namespace string, labelSelector string) (*v1.Pod, error)
- func (impl K8sUtil) GetResourceList(ctx context.Context, restConfig *rest.Config, gvk schema.GroupVersionKind, ...) (*ResourceListResponse, bool, error)
- func (impl K8sUtil) GetRestConfigByCluster(clusterConfig *ClusterConfig) (*restclient.Config, error)
- func (impl K8sUtil) GetSecret(namespace string, name string, client *v12.CoreV1Client) (*v1.Secret, error)
- func (impl K8sUtil) GetServerVersionFromDiscoveryClient(k8sClientSet *kubernetes.Clientset) (*version.Info, error)
- func (impl K8sUtil) ListEvents(restConfig *rest.Config, namespace string, ...) (*v1.EventList, error)
- func (impl K8sUtil) ListNamespaces(client *v12.CoreV1Client) (*v1.NamespaceList, error)
- func (impl K8sUtil) PatchConfigMap(namespace string, clusterConfig *ClusterConfig, name string, ...) (*v1.ConfigMap, error)
- func (impl K8sUtil) PatchConfigMapJsonType(namespace string, clusterConfig *ClusterConfig, name string, data interface{}, ...) (*v1.ConfigMap, error)
- func (impl K8sUtil) PatchResourceRequest(ctx context.Context, restConfig *rest.Config, pt types.PatchType, ...) (*ManifestResponse, error)
- func (impl K8sUtil) UpdateConfigMap(namespace string, cm *v1.ConfigMap, client *v12.CoreV1Client) (*v1.ConfigMap, error)
- func (impl *K8sUtil) UpdateResource(ctx context.Context, restConfig *rest.Config, gvk schema.GroupVersionKind, ...) (*ManifestResponse, error)
- func (impl K8sUtil) UpdateSecret(namespace string, secret *v1.Secret, client *v12.CoreV1Client) (*v1.Secret, error)
- func (impl K8sUtil) ValidateResource(resourceObj map[string]interface{}, gvk schema.GroupVersionKind, ...) bool
- type ManifestResponse
- type PodLogsRequest
- type ResourceIdentifier
- type ResourceKey
- type ResourceListResponse
Constants ¶
View Source
const ( DEFAULT_CLUSTER = "default_cluster" DEVTRON_SERVICE_NAME = "devtron-service" DefaultClusterUrl = "https://kubernetes.default.svc" BearerToken = "bearer_token" CertificateAuthorityData = "cert_auth_data" CertData = "cert_data" TlsKey = "tls_key" LiveZ = "/livez" Running = "Running" RestartingNotSupported = "restarting not supported" DEVTRON_APP_LABEL_KEY = "app" DEVTRON_APP_LABEL_VALUE1 = "devtron" DEVTRON_APP_LABEL_VALUE2 = "orchestrator" )
Variables ¶
This section is empty.
Functions ¶
func CheckEvictionSupport ¶
func CheckEvictionSupport(clientset kubernetes.Interface) (schema.GroupVersion, error)
CheckEvictionSupport uses Discovery API to find out if the server support eviction subresource If support, it will return its groupVersion; Otherwise, it will return an empty GroupVersion
func CheckIfValidLabel ¶
func DeletePod ¶
func DeletePod(pod v1.Pod, k8sClientSet *kubernetes.Clientset, deleteOptions metav1.DeleteOptions) error
DeletePod will delete the given pod, or return an error if it couldn't
func EvictPod ¶
func EvictPod(pod v1.Pod, k8sClientSet *kubernetes.Clientset, evictionGroupVersion schema.GroupVersion, deleteOptions metav1.DeleteOptions) error
EvictPod will evict the given pod, or return an error if it couldn't
func IsDevtronApp ¶
func IsPod ¶
func IsPod(gvk schema.GroupVersionKind) bool
func IsService ¶
func IsService(gvk schema.GroupVersionKind) bool
func ResolveResourceReferences ¶
func ResolveResourceReferences(un *unstructured.Unstructured) ([]metav1.OwnerReference, func(ResourceKey) bool)
func ServerResourceForGroupVersionKind ¶
func ServerResourceForGroupVersionKind(discoveryClient discovery.DiscoveryInterface, gvk schema.GroupVersionKind) (*metav1.APIResource, error)
Types ¶
type ApplyResourcesRequest ¶
type ApplyResourcesResponse ¶
type ClusterConfig ¶
type ClusterResourceListMap ¶
type EventsResponse ¶
type GetAllApiResourcesResponse ¶
type GetAllApiResourcesResponse struct { ApiResources []*K8sApiResource `json:"apiResources"` AllowedAll bool `json:"allowedAll"` }
type JsonPatchType ¶
type K8sApiResource ¶
type K8sApiResource struct { Gvk schema.GroupVersionKind `json:"gvk"` Namespaced bool `json:"namespaced"` }
type K8sRequestBean ¶
type K8sRequestBean struct { ResourceIdentifier ResourceIdentifier `json:"resourceIdentifier"` Patch string `json:"patch,omitempty"` PodLogsRequest PodLogsRequest `json:"podLogsRequest,omitempty"` ForceDelete bool `json:"-"` }
type K8sUtil ¶
type K8sUtil struct {
// contains filtered or unexported fields
}
func NewK8sUtil ¶
func NewK8sUtil(logger *zap.SugaredLogger, runTimeConfig *client.RuntimeConfig) *K8sUtil
func (K8sUtil) BuildK8sObjectListTableData ¶
func (impl K8sUtil) BuildK8sObjectListTableData(manifest *unstructured.UnstructuredList, namespaced bool, gvk schema.GroupVersionKind, validateResourceAccess func(namespace string, group string, kind string, resourceName string) bool) (*ClusterResourceListMap, error)
func (K8sUtil) CheckIfNsExists ¶ added in v0.0.5
func (K8sUtil) CreateConfigMap ¶
func (K8sUtil) CreateK8sClientSet ¶
func (K8sUtil) CreateNsIfNotExists ¶
func (impl K8sUtil) CreateNsIfNotExists(namespace string, clusterConfig *ClusterConfig) (err error)
func (*K8sUtil) CreateResources ¶
func (K8sUtil) CreateSecret ¶
func (K8sUtil) CreateSecretData ¶
func (*K8sUtil) DecodeGroupKindversion ¶
func (impl *K8sUtil) DecodeGroupKindversion(data string) (*schema.GroupVersionKind, error)
func (K8sUtil) DeleteAndCreateJob ¶
func (impl K8sUtil) DeleteAndCreateJob(content []byte, namespace string, clusterConfig *ClusterConfig) error
DeleteAndCreateJob Deletes and recreates if job exists else creates the job
func (K8sUtil) DeleteJob ¶
func (impl K8sUtil) DeleteJob(namespace string, name string, clusterConfig *ClusterConfig) error
func (K8sUtil) DeletePodByLabel ¶
func (impl K8sUtil) DeletePodByLabel(namespace string, labels string, clusterConfig *ClusterConfig) error
func (*K8sUtil) DeleteResource ¶
func (K8sUtil) DeleteSecret ¶
func (K8sUtil) DiscoveryClientGetLiveZCall ¶
func (impl K8sUtil) DiscoveryClientGetLiveZCall(cluster *ClusterConfig) ([]byte, error)
func (K8sUtil) ExtractK8sServerMajorAndMinorVersion ¶
func (K8sUtil) FetchConnectionStatusForCluster ¶
func (impl K8sUtil) FetchConnectionStatusForCluster(k8sClientSet *kubernetes.Clientset) error
func (K8sUtil) GetApiResources ¶
func (impl K8sUtil) GetApiResources(restConfig *rest.Config, includeOnlyVerb string) ([]*K8sApiResource, error)
if verb is supplied empty, that means - return all
func (K8sUtil) GetClientByToken ¶
func (K8sUtil) GetClientForInCluster ¶
func (impl K8sUtil) GetClientForInCluster() (*v12.CoreV1Client, error)
func (K8sUtil) GetConfigMap ¶
func (K8sUtil) GetCoreV1Client ¶
func (impl K8sUtil) GetCoreV1Client(clusterConfig *ClusterConfig) (*v12.CoreV1Client, error)
func (K8sUtil) GetCoreV1ClientByRestConfig ¶
func (K8sUtil) GetCoreV1ClientInCluster ¶
func (impl K8sUtil) GetCoreV1ClientInCluster() (*v12.CoreV1Client, error)
func (K8sUtil) GetK8sConfigAndClients ¶
func (impl K8sUtil) GetK8sConfigAndClients(clusterConfig *ClusterConfig) (*rest.Config, *http.Client, *kubernetes.Clientset, error)
func (K8sUtil) GetK8sConfigAndClientsByRestConfig ¶
func (K8sUtil) GetK8sDiscoveryClient ¶
func (impl K8sUtil) GetK8sDiscoveryClient(clusterConfig *ClusterConfig) (*discovery.DiscoveryClient, error)
func (K8sUtil) GetK8sDiscoveryClientInCluster ¶
func (impl K8sUtil) GetK8sDiscoveryClientInCluster() (*discovery.DiscoveryClient, error)
func (K8sUtil) GetK8sInClusterConfigAndClients ¶
func (K8sUtil) GetK8sInClusterConfigAndDynamicClients ¶
func (K8sUtil) GetK8sInClusterRestConfig ¶
func (K8sUtil) GetK8sServerVersion ¶
func (K8sUtil) GetLiveZCall ¶
func (K8sUtil) GetLogsForAPod ¶
func (impl K8sUtil) GetLogsForAPod(kubeClient *kubernetes.Clientset, namespace string, podName string, container string, follow bool) *restclient.Request
func (K8sUtil) GetMetricsClientSet ¶
func (K8sUtil) GetNmByName ¶
func (K8sUtil) GetNodeByName ¶
func (K8sUtil) GetNodesList ¶
func (K8sUtil) GetPodByName ¶
func (K8sUtil) GetPodListByLabel ¶
func (K8sUtil) GetPodLogs ¶
func (K8sUtil) GetPodsListForNamespace ¶
func (*K8sUtil) GetResource ¶
func (K8sUtil) GetResourceIf ¶
func (impl K8sUtil) GetResourceIf(restConfig *rest.Config, groupVersionKind schema.GroupVersionKind) (resourceIf dynamic.NamespaceableResourceInterface, namespaced bool, err error)
func (K8sUtil) GetResourceIfWithAcceptHeader ¶
func (impl K8sUtil) GetResourceIfWithAcceptHeader(restConfig *rest.Config, groupVersionKind schema.GroupVersionKind) (resourceIf dynamic.NamespaceableResourceInterface, namespaced bool, err error)
func (K8sUtil) GetResourceInfoByLabelSelector ¶
func (K8sUtil) GetResourceList ¶
func (K8sUtil) GetRestConfigByCluster ¶
func (impl K8sUtil) GetRestConfigByCluster(clusterConfig *ClusterConfig) (*restclient.Config, error)
func (K8sUtil) GetServerVersionFromDiscoveryClient ¶
func (K8sUtil) ListEvents ¶
func (K8sUtil) ListNamespaces ¶
func (impl K8sUtil) ListNamespaces(client *v12.CoreV1Client) (*v1.NamespaceList, error)
func (K8sUtil) PatchConfigMap ¶
func (K8sUtil) PatchConfigMapJsonType ¶
func (K8sUtil) PatchResourceRequest ¶
func (K8sUtil) UpdateConfigMap ¶
func (*K8sUtil) UpdateResource ¶
func (K8sUtil) UpdateSecret ¶
type ManifestResponse ¶
type ManifestResponse struct {
Manifest unstructured.Unstructured `json:"manifest,omitempty"`
}
type PodLogsRequest ¶
type ResourceIdentifier ¶
type ResourceIdentifier struct { Name string `json:"name"` //pod name for logs request Namespace string `json:"namespace"` GroupVersionKind schema.GroupVersionKind `json:"groupVersionKind"` }
type ResourceKey ¶
func GetResourceKey ¶
func GetResourceKey(obj *unstructured.Unstructured) ResourceKey
func NewResourceKey ¶
func NewResourceKey(group string, kind string, namespace string, name string) ResourceKey
func (ResourceKey) GroupKind ¶
func (k ResourceKey) GroupKind() schema.GroupKind
func (*ResourceKey) String ¶
func (k *ResourceKey) String() string
type ResourceListResponse ¶
type ResourceListResponse struct {
Resources unstructured.UnstructuredList `json:"resources,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.