use of io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition in project syndesis-qe by syndesisio.
the class CamelK method getCamelKCRD.
private CustomResourceDefinitionContext getCamelKCRD() {
CustomResourceDefinition crd = OpenShiftUtils.getInstance().customResourceDefinitions().withName("integrations.camel.apache.org").get();
CustomResourceDefinitionContext.Builder builder = new CustomResourceDefinitionContext.Builder().withGroup(crd.getSpec().getGroup()).withPlural(crd.getSpec().getNames().getPlural()).withScope(crd.getSpec().getScope()).withVersion(crd.getSpec().getVersion());
return builder.build();
}
use of io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition in project strimzi by strimzi.
the class MockKube2 method registerCrd.
/**
* Registers Custom Resource definition in the mock Kubernetes cluster. This registers it for deserialization, but
* also creates the CRD in the Kubernetes server.
*
* @param apiVersion API version of the Custom Resource
* @param kind Kind of the Custom Resource
* @param crdClass Class with the Custom Resource model
* @param crdPath Path to the YAML with the CRD definition
*/
private void registerCrd(String apiVersion, String kind, Class<? extends KubernetesResource> crdClass, String crdPath) {
KubernetesDeserializer.registerCustomKind(apiVersion, kind, crdClass);
CustomResourceDefinition kafkaCrd = client.apiextensions().v1().customResourceDefinitions().load(crdPath).get();
client.apiextensions().v1().customResourceDefinitions().create(kafkaCrd);
}
use of io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition in project strimzi by strimzi.
the class SetupClusterOperator method applyClusterOperatorInstallFiles.
/**
* Perform application of ServiceAccount, Roles and CRDs needed for proper cluster operator deployment.
* Configuration files are loaded from packaging/install/cluster-operator directory.
*/
public void applyClusterOperatorInstallFiles(String namespace) {
List<File> operatorFiles = Arrays.stream(new File(CO_INSTALL_DIR).listFiles()).sorted().filter(File::isFile).filter(file -> !file.getName().matches(".*(Binding|Deployment)-.*")).collect(Collectors.toList());
for (File operatorFile : operatorFiles) {
File createFile = operatorFile;
if (createFile.getName().contains(Constants.CLUSTER_ROLE + "-")) {
createFile = switchClusterRolesToRolesIfNeeded(createFile);
}
final String resourceType = createFile.getName().split("-")[1];
LOGGER.debug("Installation resource type: {}", resourceType);
switch(resourceType) {
case Constants.ROLE:
Role role = TestUtils.configFromYaml(createFile, Role.class);
ResourceManager.getInstance().createResource(extensionContext, new RoleBuilder(role).editMetadata().withNamespace(namespace).endMetadata().build());
break;
case Constants.CLUSTER_ROLE:
ClusterRole clusterRole = TestUtils.configFromYaml(createFile, ClusterRole.class);
ResourceManager.getInstance().createResource(extensionContext, clusterRole);
break;
case Constants.SERVICE_ACCOUNT:
ServiceAccount serviceAccount = TestUtils.configFromYaml(createFile, ServiceAccount.class);
ResourceManager.getInstance().createResource(extensionContext, new ServiceAccountBuilder(serviceAccount).editMetadata().withNamespace(namespace).endMetadata().build());
break;
case Constants.CONFIG_MAP:
ConfigMap configMap = TestUtils.configFromYaml(createFile, ConfigMap.class);
ResourceManager.getInstance().createResource(extensionContext, new ConfigMapBuilder(configMap).editMetadata().withNamespace(namespace).endMetadata().build());
break;
case Constants.CUSTOM_RESOURCE_DEFINITION_SHORT:
CustomResourceDefinition customResourceDefinition = TestUtils.configFromYaml(createFile, CustomResourceDefinition.class);
ResourceManager.getInstance().createResource(extensionContext, customResourceDefinition);
break;
default:
LOGGER.error("Unknown installation resource type: {}", resourceType);
throw new RuntimeException("Unknown installation resource type:" + resourceType);
}
}
}
use of io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition in project sandbox by 5733d9e2be6485d52ffa08870cabdee0.
the class PrometheusRegisterInterceptor method registerPrometheus.
@AroundInvoke
public Object registerPrometheus(InvocationContext context) throws Exception {
if (!ServiceMonitorClient.isServiceMonitorAvailable(kubernetesClient)) {
final CustomResourceDefinition serviceMonitorCRD = kubernetesClient.apiextensions().v1().customResourceDefinitions().load(this.getClass().getResourceAsStream("/k8s/servicemonitor.v1.crd.yaml")).get();
kubernetesClient.apiextensions().v1().customResourceDefinitions().withName(SERVICE_MONITOR_CRD_NAME).create(serviceMonitorCRD);
}
return context.proceed();
}
use of io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition in project entando-k8s-controller-coordinator by entando-k8s.
the class DefaultSimpleKubernetesClientTest method shouldNotlistCustomResourceDefintionsWithoutCrdOfInterestLabel.
@Test
@Description("Should not list CustomResourceDefinitions without the label 'entando.org/crd-of-interest'")
void shouldNotlistCustomResourceDefintionsWithoutCrdOfInterestLabel() {
step("Given I have removed the CustomResourceDefinition MyCRD", this::deleteMyCrd);
step("And I have created the CustomResourceDefinition MyCRD without the label 'entando.org/crd-of-interest'", () -> {
final CustomResourceDefinition value = objectMapper.readValue(Thread.currentThread().getContextClassLoader().getResource("mycrds.test.org.crd.yaml"), CustomResourceDefinition.class);
getFabric8Client().apiextensions().v1beta1().customResourceDefinitions().create(value);
});
List<CustomResourceDefinition> crds = new ArrayList<>();
step("When I list the CustomResourceDefinitions of interest", () -> {
crds.addAll(myClient.loadCustomResourceDefinitionsOfInterest());
});
step("Then the CustomResourceDefinition without the entando.org/crd-of-interest label was not inluded in the list", () -> {
assertThat(crds).noneMatch(crd -> crd.getMetadata().getName().equals("mycrds.test.org"));
});
}
Aggregations