All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.fabric8.openshift.client.OpenShiftClient Maven / Gradle / Ivy

The newest version!
/*
 * Copyright (C) 2015 Red Hat, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *         http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package io.fabric8.openshift.client;

import io.fabric8.kubernetes.client.KubernetesClient;
import io.fabric8.kubernetes.client.RequestConfig;
import io.fabric8.kubernetes.client.VersionInfo;
import io.fabric8.kubernetes.client.dsl.AppsAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.AutoscalingAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.BatchAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.ExtensionsAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.FunctionCallable;
import io.fabric8.kubernetes.client.dsl.Gettable;
import io.fabric8.kubernetes.client.dsl.InOutCreateable;
import io.fabric8.kubernetes.client.dsl.MixedOperation;
import io.fabric8.kubernetes.client.dsl.Nameable;
import io.fabric8.kubernetes.client.dsl.Namespaceable;
import io.fabric8.kubernetes.client.dsl.NamespacedInOutCreateable;
import io.fabric8.kubernetes.client.dsl.NetworkAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation;
import io.fabric8.kubernetes.client.dsl.ParameterMixedOperation;
import io.fabric8.kubernetes.client.dsl.RbacAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.Resource;
import io.fabric8.kubernetes.client.dsl.SchedulingAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.StorageAPIGroupDSL;
import io.fabric8.openshift.api.model.BrokerTemplateInstance;
import io.fabric8.openshift.api.model.BrokerTemplateInstanceList;
import io.fabric8.openshift.api.model.Build;
import io.fabric8.openshift.api.model.BuildConfig;
import io.fabric8.openshift.api.model.BuildConfigList;
import io.fabric8.openshift.api.model.BuildList;
import io.fabric8.openshift.api.model.ClusterRole;
import io.fabric8.openshift.api.model.ClusterRoleBinding;
import io.fabric8.openshift.api.model.ClusterRoleBindingList;
import io.fabric8.openshift.api.model.ClusterRoleList;
import io.fabric8.openshift.api.model.DeploymentConfig;
import io.fabric8.openshift.api.model.DeploymentConfigList;
import io.fabric8.openshift.api.model.Group;
import io.fabric8.openshift.api.model.GroupList;
import io.fabric8.openshift.api.model.Identity;
import io.fabric8.openshift.api.model.IdentityList;
import io.fabric8.openshift.api.model.Image;
import io.fabric8.openshift.api.model.ImageList;
import io.fabric8.openshift.api.model.ImageStream;
import io.fabric8.openshift.api.model.ImageStreamImage;
import io.fabric8.openshift.api.model.ImageStreamImport;
import io.fabric8.openshift.api.model.ImageStreamList;
import io.fabric8.openshift.api.model.ImageStreamMapping;
import io.fabric8.openshift.api.model.ImageStreamTag;
import io.fabric8.openshift.api.model.ImageStreamTagList;
import io.fabric8.openshift.api.model.ImageTag;
import io.fabric8.openshift.api.model.ImageTagList;
import io.fabric8.openshift.api.model.LocalResourceAccessReview;
import io.fabric8.openshift.api.model.LocalSubjectAccessReview;
import io.fabric8.openshift.api.model.OAuthAccessToken;
import io.fabric8.openshift.api.model.OAuthAccessTokenList;
import io.fabric8.openshift.api.model.OAuthAuthorizeToken;
import io.fabric8.openshift.api.model.OAuthAuthorizeTokenList;
import io.fabric8.openshift.api.model.OAuthClient;
import io.fabric8.openshift.api.model.OAuthClientAuthorization;
import io.fabric8.openshift.api.model.OAuthClientAuthorizationList;
import io.fabric8.openshift.api.model.OAuthClientList;
import io.fabric8.openshift.api.model.PodSecurityPolicyReview;
import io.fabric8.openshift.api.model.PodSecurityPolicySelfSubjectReview;
import io.fabric8.openshift.api.model.PodSecurityPolicySubjectReview;
import io.fabric8.openshift.api.model.RangeAllocation;
import io.fabric8.openshift.api.model.RangeAllocationList;
import io.fabric8.openshift.api.model.ResourceAccessReview;
import io.fabric8.openshift.api.model.ResourceAccessReviewResponse;
import io.fabric8.openshift.api.model.Role;
import io.fabric8.openshift.api.model.RoleBinding;
import io.fabric8.openshift.api.model.RoleBindingList;
import io.fabric8.openshift.api.model.RoleBindingRestriction;
import io.fabric8.openshift.api.model.RoleBindingRestrictionList;
import io.fabric8.openshift.api.model.RoleList;
import io.fabric8.openshift.api.model.Route;
import io.fabric8.openshift.api.model.RouteList;
import io.fabric8.openshift.api.model.SecurityContextConstraints;
import io.fabric8.openshift.api.model.SecurityContextConstraintsList;
import io.fabric8.openshift.api.model.SelfSubjectRulesReview;
import io.fabric8.openshift.api.model.SubjectAccessReview;
import io.fabric8.openshift.api.model.SubjectAccessReviewResponse;
import io.fabric8.openshift.api.model.SubjectRulesReview;
import io.fabric8.openshift.api.model.Template;
import io.fabric8.openshift.api.model.TemplateInstance;
import io.fabric8.openshift.api.model.TemplateInstanceList;
import io.fabric8.openshift.api.model.TemplateList;
import io.fabric8.openshift.api.model.User;
import io.fabric8.openshift.api.model.UserIdentityMapping;
import io.fabric8.openshift.api.model.UserList;
import io.fabric8.openshift.api.model.UserOAuthAccessToken;
import io.fabric8.openshift.api.model.UserOAuthAccessTokenList;
import io.fabric8.openshift.api.model.miscellaneous.apiserver.v1.APIRequestCount;
import io.fabric8.openshift.api.model.miscellaneous.apiserver.v1.APIRequestCountList;
import io.fabric8.openshift.api.model.miscellaneous.cloudcredential.v1.CredentialsRequest;
import io.fabric8.openshift.api.model.miscellaneous.cloudcredential.v1.CredentialsRequestList;
import io.fabric8.openshift.api.model.miscellaneous.cncf.cni.v1.NetworkAttachmentDefinition;
import io.fabric8.openshift.api.model.miscellaneous.cncf.cni.v1.NetworkAttachmentDefinitionList;
import io.fabric8.openshift.api.model.miscellaneous.helm.v1beta1.HelmChartRepository;
import io.fabric8.openshift.api.model.miscellaneous.helm.v1beta1.HelmChartRepositoryList;
import io.fabric8.openshift.api.model.miscellaneous.helm.v1beta1.ProjectHelmChartRepository;
import io.fabric8.openshift.api.model.miscellaneous.helm.v1beta1.ProjectHelmChartRepositoryList;
import io.fabric8.openshift.api.model.miscellaneous.metal3.v1alpha1.BareMetalHost;
import io.fabric8.openshift.api.model.miscellaneous.metal3.v1alpha1.BareMetalHostList;
import io.fabric8.openshift.api.model.miscellaneous.metal3.v1beta1.Metal3Remediation;
import io.fabric8.openshift.api.model.miscellaneous.metal3.v1beta1.Metal3RemediationList;
import io.fabric8.openshift.api.model.miscellaneous.metal3.v1beta1.Metal3RemediationTemplate;
import io.fabric8.openshift.api.model.miscellaneous.metal3.v1beta1.Metal3RemediationTemplateList;
import io.fabric8.openshift.api.model.operator.network.v1.EgressRouter;
import io.fabric8.openshift.api.model.operator.network.v1.EgressRouterList;
import io.fabric8.openshift.api.model.operator.network.v1.OperatorPKI;
import io.fabric8.openshift.api.model.operator.network.v1.OperatorPKIList;
import io.fabric8.openshift.client.dsl.BuildConfigResource;
import io.fabric8.openshift.client.dsl.BuildResource;
import io.fabric8.openshift.client.dsl.DeployableScalableResource;
import io.fabric8.openshift.client.dsl.MachineConfigurationAPIGroupDSL;
import io.fabric8.openshift.client.dsl.NameableCreateOrDeleteable;
import io.fabric8.openshift.client.dsl.OpenShiftAutoscalingAPIGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftConfigAPIGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftConsoleAPIGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftHiveAPIGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftMachineAPIGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftMonitoringAPIGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftOperatorAPIGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftOperatorHubAPIGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftQuotaAPIGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftStorageVersionMigratorApiGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftTunedAPIGroupDSL;
import io.fabric8.openshift.client.dsl.OpenShiftWhereaboutsAPIGroupDSL;
import io.fabric8.openshift.client.dsl.ProjectOperation;
import io.fabric8.openshift.client.dsl.ProjectRequestOperation;
import io.fabric8.openshift.client.dsl.TemplateResource;

import java.net.URL;

public interface OpenShiftClient extends KubernetesClient {

  String BASE_API_GROUP = "openshift.io";

  /**
   * Get Url of the cluster
   *
   * @return {@link java.net.URL} of OpenShift Cluster
   */
  URL getOpenshiftUrl();

  /**
   * API entrypoint for accessing OpenShift config APIGroup resources(config.openshift.io/v1)
   *
   * @return {@link OpenShiftConfigAPIGroupDSL} which contains respective resources in this API group
   */
  OpenShiftConfigAPIGroupDSL config();

  /**
   * API entrypoint for accessing OpenShift console APIGroup resources(console.openshift.io/v1)
   *
   * @return {@link OpenShiftConsoleAPIGroupDSL} which contains respective resources in this API group
   */
  OpenShiftConsoleAPIGroupDSL console();

  /**
   * API entrypoint for accessing OpenShift Cluster Operator resources (autoscaling.openshift.io)
   *
   * @return {@link OpenShiftAutoscalingAPIGroupDSL} which contains respective resources in this API group
   */
  OpenShiftAutoscalingAPIGroupDSL openShiftAutoscaling();

  /**
   * API entrypoint for accessing OpenShift Hive Operator resources (hive.openshift.io)
   *
   * @return {@link OpenShiftHiveAPIGroupDSL} which contains respective resources in this API group
   */
  OpenShiftHiveAPIGroupDSL hive();

  /**
   * API entrypoint for accessing OpenShift operator APIGroup resources(operator.openshift.io/v1 and
   * operator.openshift.io/v1alpha1)
   *
   * @return {@link OpenShiftOperatorAPIGroupDSL} which contains respective resources in this API group
   */
  OpenShiftOperatorAPIGroupDSL operator();

  /**
   * API entrypoint for accessing OpenShift operator hub APIGroup resources(operator.coreos.com/v1alpha1)
   *
   * @return {@link OpenShiftOperatorHubAPIGroupDSL} which contains respective resources in this API group
   */
  OpenShiftOperatorHubAPIGroupDSL operatorHub();

  /**
   * {@inheritDoc}
   */
  @Override
  ExtensionsAPIGroupDSL extensions();

  /**
   * {@inheritDoc}
   */
  @Override
  VersionInfo getVersion();

  /**
   * Get OpenShift version information from version/openshift
   *
   * @return VersionInfo object containing versioning information
   */
  VersionInfo getOpenShiftV3Version();

  /**
   * Get OpenShift server version
   * 
* for more information use resources(ClusterVersion.class).list() * * @return version String */ String getOpenShiftV4Version(); /** * {@inheritDoc} */ @Override AppsAPIGroupDSL apps(); /** * {@inheritDoc} */ @Override AutoscalingAPIGroupDSL autoscaling(); /** * API entrypoint for accessing OpenShift Machine Config Operator resources (machineconfiguration.openshift.io) * * @return {@link MachineConfigurationAPIGroupDSL} which contains respective resources in this ApiGroup */ MachineConfigurationAPIGroupDSL machineConfigurations(); /* * API entrypoint for accessing OpenShift Machine APIGroup resources(machine.openshift.io/v1beta1) * * @return {@link OpenShiftMachineAPIGroupDSL} which contains respective resources in this API group */ OpenShiftMachineAPIGroupDSL machine(); /** * API entrypoint for accessing OpenShift operator APIGroup resources(monitoring.coreos.com/v1) * * @return {@link OpenShiftMonitoringAPIGroupDSL} which contains respective resources in this API group */ OpenShiftMonitoringAPIGroupDSL monitoring(); /** * {@inheritDoc} */ @Override NetworkAPIGroupDSL network(); /** * {@inheritDoc} */ @Override StorageAPIGroupDSL storage(); /** * {@inheritDoc} */ @Override BatchAPIGroupDSL batch(); /** * {@inheritDoc} */ @Override RbacAPIGroupDSL rbac(); /** * {@inheritDoc} */ @Override SchedulingAPIGroupDSL scheduling(); /** * API entrypoint for APIRequestCount (apiserver.openshift.io/v1) * * @return {@link NonNamespaceOperation} for APIRequestCoutn */ NonNamespaceOperation> apiRequestCounts(); /** * API entrypoint for BareMetalHost(metal3.io/v1alpha1) * * @return {@link MixedOperation} for BareMetalHost */ MixedOperation> bareMetalHosts(); /** * API entrypoint for handling Build(build.openshift.io/v1) * * @return MixedOperation instance for Build object */ MixedOperation builds(); /** * API entrypoint for handling BuildConfig(build.openshift.io/v1) * * @return MixedOperation instance for BuildConfig object */ MixedOperation> buildConfigs(); /** * API entrypoint for CredentialsRequest (cloudcredential.openshift.io/v1) * * @return {@link MixedOperation} for CredentialsRequest */ MixedOperation> credentialsRequests(); /** * API entrypoint for handling DeploymentConfig(apps.openshift.io/v1) * * @return MixedOperation instance for DeploymentConfig object */ MixedOperation> deploymentConfigs(); /** * API entrypoint for handling Group(user.openshift.io/v1) * * @return NonNamespaceOperation instance for Group object */ NonNamespaceOperation> groups(); /** * API entrypoint for handling HelmChartRepository(helm.openshift.io/v1beta1) * * @return {@link NonNamespaceOperation} for HelmChartRepository */ NonNamespaceOperation> helmChartRepositories(); /** * API entrypoint for accessing Image(image.openshift.io/v1) * * @return Non Namespace Operation object for Image */ NonNamespaceOperation> images(); /** * API entrypoint for accessing ImageTag(image.openshift.io/v1) * * @return MixedOperation object for ImageTag */ MixedOperation> imageTags(); /** * API entrypoint for accessing ImageStream(image.openshift.io/v1) * * @return MixedOperation object for ImageStream */ MixedOperation> imageStreams(); /** * API entrypoint for accessing ImageStreamTag(image.openshift.io/v1) * * @return MixedOperation object for ImageStreamTag */ MixedOperation> imageStreamTags(); /** * API entrypoint for accessing ImageStreamImport(image.openshift.io/v1) * * @return {@link NamespacedInOutCreateable} for ImageStreamImport */ NamespacedInOutCreateable imageStreamImports(); /** * API entrypoint for accessing ImageStreamMapping(image.openshift.io/v1) * * @return {@link NamespacedInOutCreateable} for ImageStreamMapping */ NamespacedInOutCreateable imageStreamMappings(); /** * API entrypoint for accessing ImageStreamImage(image.openshift.io/v1) * * @return {@link Namespaceable} for ImageStreamImage operations */ Namespaceable>> imageStreamImages(); /** * API entrypoint for accessing ImageSignature(image.openshift.io/v1) * * @return {@link NameableCreateOrDeleteable} for ImageSignature operations */ NameableCreateOrDeleteable imageSignatures(); /** * API entrypoint for Config(imageregistry.operator.openshift.io/v1) * * @return {@link NonNamespaceOperation} for Config */ NonNamespaceOperation> imageRegistryOperatorConfigs(); /** * API entrypoint for Metal3Remediation (infrastructure.cluster.x-k8s.io/v1beta1) * * @return {@link MixedOperation} for Metal3Remediation */ MixedOperation> metal3Remediations(); /** * API entrypoint for Metal3RemediationTemplate (infrastructure.cluster.x-k8s.io/v1beta1) * * @return {@link MixedOperation} for Metal3RemediationTemplate */ MixedOperation> metal3RemediationTemplates(); /** * API entrypoint for accessing NetworkAttachmentDefinition(k8s.cni.cncf.io/v1) * * @return {@link MixedOperation} for NetworkAttachmentDefinition */ MixedOperation> networkAttachmentDefinitions(); /** * API entrypoint for accessing OAuthAccessToken(oauth.openshift.io/v1) * * @return NonNamespaceOperation object for OAuthAccessToken */ NonNamespaceOperation> oAuthAccessTokens(); /** * API entrypoint for accessing OAuthAuthorizeToken(oauth.openshift.io/v1) * * @return NonNamespaceOperation object for OAuthAuthorizeToken */ NonNamespaceOperation> oAuthAuthorizeTokens(); /** * API entrypoint for accessing OAuthClient(oauth.openshift.io/v1) * * @return NonNamespaceOperation object for OAuthClient */ NonNamespaceOperation> oAuthClients(); /** * API entrypoint for accessing OAuthClientAuthorization(oauth.openshift.io/v1) * * @return NonNamespaceOperation for OAuthClientAuthorization */ NonNamespaceOperation> oAuthClientAuthorizations(); /** * API entrypoint for OperatorPKI(network.operator.openshift.io/v1) * * @return {@link MixedOperation} for OperatorPKI */ MixedOperation> operatorPKIs(); /** * API entrypoint for EgressRouter (network.operator.openshift.io/v1) * * @return {@link MixedOperation} for EgressRouter */ MixedOperation> egressRouters(); /** * API entrypoint for accessing PodSecurityPolicyReview (security.openshift.io/v1) * * @return InOutCreateable object for PodSecurityPolicyReview */ NamespacedInOutCreateable podSecurityPolicyReviews(); /** * API entrypoint for accessing PodSecurityPolicySelfSubjectReview (security.openshift.io/v1) * * @return InOutCreateable object for PodSecurityPolicySelfSubjectReview */ NamespacedInOutCreateable podSecurityPolicySelfSubjectReviews(); /** * API entrypoint for accessing PodSecurityPolicySubjectReview (security.openshift.io/v1) * * @return InOutCreateable object for PodSecurityPolicySubjectReview */ NamespacedInOutCreateable podSecurityPolicySubjectReviews(); /** * API entrypoint for accessing Project operations(project.openshift.io/v1) * * @return {@link ProjectOperation} for Project specific operations */ ProjectOperation projects(); /** * API entrypoint for handling ProjectHelmChartRepository (helm.openshift.io/v1beta1) * * @return {@link NonNamespaceOperation} for ProjectHelmChartRepository */ MixedOperation> projectHelmChartRepositories(); /** * API entrypoint for accessing ProjectRequest operations(project.openshift.io/v1) * * @return {@link ProjectRequestOperation} for ProjectRequest specific operations */ ProjectRequestOperation projectrequests(); /** * API entrypoint for accessing OpenShift Quota APIGroup resources(quota.openshift.io/v1) * * @return {@link OpenShiftQuotaAPIGroupDSL} which contains operations for respective resources inside the APIGroup */ OpenShiftQuotaAPIGroupDSL quotas(); /** * API entrypoint for accessing Role(authorization.openshift.io/v1) * * @return MixedOperation object for Role */ MixedOperation> roles(); /** * API entrypoint for accessing RoleBinding(authorization.openshift.io/v1) * * @return MixedOperation object for RoleBinding */ MixedOperation> roleBindings(); /** * API entrypoint for accessing Route(route.openshift.io/v1) * * @return MixedOperation object for Route */ MixedOperation> routes(); /** * API entrypoint for accessing Template(template.openshift.io/v1) * * @return {@link ParameterMixedOperation} object for Template operations */ ParameterMixedOperation templates(); /** * API entrypoint for TemplateInstance(template.openshift.io/v1) * * @return {@link MixedOperation} for TemplateInstance */ MixedOperation> templateInstances(); /** * API entrypoint for OpenShift Node Tuning operator model(tuned.openshift.io/v1) * * @return {@link OpenShiftTunedAPIGroupDSL} for access to various available resources */ OpenShiftTunedAPIGroupDSL tuned(); /** * API entrypoint for BrokerTemplateInstance(template.openshift.io/v1) * * @return {@link NonNamespaceOperation} for BrokerTemplateInstance */ NonNamespaceOperation> brokerTemplateInstances(); /** * API entrypoint for accessing User(user.openshift.io/v1) * * @return NonNamespaceOperation object for User */ NonNamespaceOperation> users(); /** * API entrypoint for accessing RangeAllocation(security.openshift.io/v1) * * @return NonNamespaceOperation object for RangeAllocation */ NonNamespaceOperation> rangeAllocations(); /** * API entrypoint for accessing SecurityContextConstraints(security.openshift.io/v1) * * @return NonNamespaceOperation object for SecurityContextConstraints */ NonNamespaceOperation> securityContextConstraints(); /** * API entrypoint for SubjectAccessReview (authorization.openshift.io/v1) * This only supports create operation. SubjectAccessReviewResponse from server is returned as output. * * @return {@link InOutCreateable} for SubjectAccessReview */ InOutCreateable subjectAccessReviews(); /** * API entrypoint for ResourceAccessReview (authorization.openshift.io/v1) * This only supports create operation. ResourceAccessReviewResponse from server is returned as output * * @return {@link InOutCreateable} for ResourceAccessReview */ InOutCreateable resourceAccessReviews(); /** * API entrypoint for LocalSubjectAccessReview (authorization.openshift.io/v1) * This only supports create operation. SubjectAccessReviewResponse from server is returned as output * * @return {@link NamespacedInOutCreateable} for LocalSubjectAccessReview */ NamespacedInOutCreateable localSubjectAccessReviews(); /** * API entrypoint for LocalResourceAccessReview (authorization.openshift.io/v1) * This only supports create operation. ResourceAccessReviewResponse from server is returned as output * * @return {@link NamespacedInOutCreateable} for LocalResourceAccessReview */ NamespacedInOutCreateable localResourceAccessReviews(); /** * API entrypoint for SelfSubjectRulesReview (authorization.openshift.io/v1) * This only supports create operation. SelfSubjectRulesReview from server is returned as output * * @return {@link NamespacedInOutCreateable} for SelfSubjectRulesReview */ NamespacedInOutCreateable selfSubjectRulesReviews(); /** * API entrypoint for SubjectRulesReview (authorization.openshift.io/v1) * This only supports create operation. SubjectRulesReview from server is returned as output * * @return {@link NamespacedInOutCreateable} for SubjectRulesReview */ NamespacedInOutCreateable subjectRulesReviews(); /** * API entrypoint for accessing resources in Kube Storage Version Migrator(migration.k8s.io/v1alpha1) * * @return {@link OpenShiftStorageVersionMigratorApiGroupDSL} for accessing resources available in apiGroup */ OpenShiftStorageVersionMigratorApiGroupDSL kubeStorageVersionMigrator(); /** * API entrypoint for ClusterRole (authorization.openshift.io/v1) * * @return {@link NonNamespaceOperation} for ClusterRole */ NonNamespaceOperation> clusterRoles(); /** * API entrypoint for accessing ClusterRoleBinding(authorization.openshift.io/v1) * * @return MixedOperation object for ClusterRoleBinding */ MixedOperation> clusterRoleBindings(); /** * API entrypoint for RoleBindingRestriction (authorization.openshift.io/v1) * * @return {@link MixedOperation} for RoleBindingRestriction */ MixedOperation> roleBindingRestrictions(); /** * Configure Request Config * * @param requestConfig request configuration for connection * @return {@link NamespacedOpenShiftClient} configured with specified RequestConfig */ FunctionCallable withRequestConfig(RequestConfig requestConfig); /** * Returns the current logged in user details similar to the `oc whoami` command. * * @return User as currently logged in user */ User currentUser(); /** * API entrypoint for Identity(user.openshift.io/v1) * * @return {@link NonNamespaceOperation} for Identity */ NonNamespaceOperation> identities(); /** * API entrypoint for UserIdentityMapping(user.openshift.io/v1) * Note: This only works with create operation * * @return {@link UserIdentityMapping} for UserIdentityMapping */ InOutCreateable userIdentityMappings(); /** * API entrypoint for UserOAuthAccessToken(oauth.openshift.io/v1) *

* Note: Only GET and DELETE operations are supported by APIServer for this resource. *

* * @return {@link NonNamespaceOperation} for UserOAuthAccessToken */ NonNamespaceOperation> userOAuthAccessTokens(); /** * API entrypoint for OpenShift Whereabouts CNI(Container Network Interface) Plugin model. * * @return {@link OpenShiftWhereaboutsAPIGroupDSL} which provides DSL methods for available resources. */ OpenShiftWhereaboutsAPIGroupDSL whereabouts(); /** * Returns true if this cluster is a legacy openshift cluster or supports the given OpenShift API Group defined in * {@link OpenShiftAPIGroups} * * @param apiGroup API group as string * @return boolean value indicating cluster is legacy or supports APIGroups */ boolean supportsOpenShiftAPIGroup(String apiGroup); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy