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

org.arquillian.cube.openshift.impl.CubeOpenshiftExtension Maven / Gradle / Ivy

There is a newer version: 1.18.2
Show newest version
package org.arquillian.cube.openshift.impl;

import org.arquillian.cube.impl.client.enricher.StandaloneCubeUrlResourceProvider;
import org.arquillian.cube.kubernetes.api.ConfigurationFactory;
import org.arquillian.cube.kubernetes.api.FeedbackProvider;
import org.arquillian.cube.kubernetes.api.KubernetesResourceLocator;
import org.arquillian.cube.kubernetes.api.NamespaceService;
import org.arquillian.cube.kubernetes.api.ResourceInstaller;
import org.arquillian.cube.kubernetes.impl.DefaultConfigurationFactory;
import org.arquillian.cube.kubernetes.impl.enricher.KuberntesServiceUrlResourceProvider;
import org.arquillian.cube.kubernetes.impl.feedback.DefaultFeedbackProvider;
import org.arquillian.cube.kubernetes.impl.install.DefaultResourceInstaller;
import org.arquillian.cube.kubernetes.impl.locator.DefaultKubernetesResourceLocator;
import org.arquillian.cube.kubernetes.impl.namespace.DefaultNamespaceService;
import org.arquillian.cube.openshift.impl.client.CubeOpenShiftRegistrar;
import org.arquillian.cube.openshift.impl.client.CubeOpenShiftConfigurationFactory;
import org.arquillian.cube.openshift.impl.client.OpenShiftClientCreator;
import org.arquillian.cube.openshift.impl.client.OpenShiftSuiteLifecycleController;
import org.arquillian.cube.openshift.impl.enricher.RouteURLEnricher;
import org.arquillian.cube.openshift.impl.enricher.internal.DeploymentConfigListResourceProvider;
import org.arquillian.cube.openshift.impl.enricher.internal.DeploymentConfigResourceProvider;
import org.arquillian.cube.openshift.impl.enricher.internal.OpenshiftClientResourceProvider;
import org.arquillian.cube.openshift.impl.feedback.OpenshiftFeedbackProvider;
import org.arquillian.cube.openshift.impl.install.OpenshiftResourceInstaller;
import org.arquillian.cube.openshift.impl.locator.OpenshiftKubernetesResourceLocator;
import org.arquillian.cube.openshift.impl.namespace.OpenshiftNamespaceService;
import org.jboss.arquillian.container.test.spi.client.deployment.AuxiliaryArchiveAppender;
import org.jboss.arquillian.container.test.spi.client.deployment.DeploymentScenarioGenerator;
import org.jboss.arquillian.core.spi.LoadableExtension;
import org.jboss.arquillian.test.spi.TestEnricher;
import org.jboss.arquillian.test.spi.enricher.resource.ResourceProvider;

public class CubeOpenshiftExtension implements LoadableExtension {

    @Override
    public void register(ExtensionBuilder builder) {
        builder.observer(OpenShiftClientCreator.class)
            .observer(CubeOpenShiftRegistrar.class)
            .observer(OpenShiftSuiteLifecycleController.class)

            //internal
            .service(ResourceProvider.class, OpenshiftClientResourceProvider.class)
            .service(ResourceProvider.class, DeploymentConfigResourceProvider.class)
            .service(ResourceProvider.class, DeploymentConfigListResourceProvider.class)

            //External
            .service(ResourceProvider.class, org.arquillian.cube.openshift.impl.enricher.external.OpenshiftClientResourceProvider.class)
            .service(ResourceProvider.class, org.arquillian.cube.openshift.impl.enricher.external.DeploymentConfigResourceProvider.class)
            .service(ResourceProvider.class, org.arquillian.cube.openshift.impl.enricher.external.DeploymentConfigListResourceProvider.class)

            .service(TestEnricher.class, RouteURLEnricher.class)

            .override(ConfigurationFactory.class, DefaultConfigurationFactory.class,
                CubeOpenShiftConfigurationFactory.class)
            .override(ResourceProvider.class, StandaloneCubeUrlResourceProvider.class,
                KuberntesServiceUrlResourceProvider.class)
            .override(ResourceInstaller.class, DefaultResourceInstaller.class, OpenshiftResourceInstaller.class)
            .override(FeedbackProvider.class, DefaultFeedbackProvider.class, OpenshiftFeedbackProvider.class)
            .override(KubernetesResourceLocator.class, DefaultKubernetesResourceLocator.class,
                OpenshiftKubernetesResourceLocator.class)
            .override(NamespaceService.class, DefaultNamespaceService.class, OpenshiftNamespaceService.class);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy