Skip to content

Commit

Permalink
refactor: upgrade / align with dekorate 2.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
iocanel committed Mar 17, 2021
1 parent fdc540a commit e7acfd4
Show file tree
Hide file tree
Showing 61 changed files with 477 additions and 188 deletions.
2 changes: 1 addition & 1 deletion bom/application/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@
<aws-alexa-sdk.version>2.37.1</aws-alexa-sdk.version>
<azure-functions-java-library.version>1.4.0</azure-functions-java-library.version>
<kotlin.version>1.4.31</kotlin.version>
<dekorate.version>0.14.2</dekorate.version>
<dekorate.version>2.1.1</dekorate.version>
<maven-artifact-transfer.version>0.10.0</maven-artifact-transfer.version>
<maven-invoker.version>3.0.1</maven-invoker.version>
<awaitility.version>4.0.3</awaitility.version>
Expand Down
4 changes: 2 additions & 2 deletions docs/src/main/asciidoc/cdi-integration.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -340,8 +340,8 @@ IMPORTANT: A build step that consumes the `ObserverRegistrationPhaseBuildItem` s
@BuildStep
void syntheticObserver(ObserverRegistrationPhaseBuildItem observerRegistrationPhase,
BuildProducer<MyBuildItem> myBuildItem,
BuildProducer<ObserverConfiguratorBuildItem> observerConfigurators) {
observerConfigurators.produce(new ObserverConfiguratorBuildItem(observerRegistrationPhase.getContext()
BuildProducer<ObserverConfiguratorBuildItem> observerConfigurationRegistry) {
observerConfigurationRegistry.produce(new ObserverConfiguratorBuildItem(observerRegistrationPhase.getContext()
.configure()
.beanClass(DotName.createSimple(MyBuildStep.class.getName()))
.observedType(String.class)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -360,12 +360,12 @@ public Integer compute(AnnotationTarget target, Collection<StereotypeInfo> stere
// PHASE 2 - register all beans
@BuildStep
public BeanRegistrationPhaseBuildItem registerBeans(ContextRegistrationPhaseBuildItem contextRegistrationPhase,
List<ContextConfiguratorBuildItem> contextConfigurators,
List<ContextConfiguratorBuildItem> contextConfigurationRegistry,
BuildProducer<InterceptorResolverBuildItem> interceptorResolver,
BuildProducer<BeanDiscoveryFinishedBuildItem> beanDiscoveryFinished,
BuildProducer<TransformedAnnotationsBuildItem> transformedAnnotations) {

for (ContextConfiguratorBuildItem contextConfigurator : contextConfigurators) {
for (ContextConfiguratorBuildItem contextConfigurator : contextConfigurationRegistry) {
for (ContextConfigurator value : contextConfigurator.getValues()) {
// Just make sure the configurator is processed
value.done();
Expand All @@ -385,9 +385,9 @@ public BeanRegistrationPhaseBuildItem registerBeans(ContextRegistrationPhaseBuil
// PHASE 3 - register synthetic observers
@BuildStep
public ObserverRegistrationPhaseBuildItem registerSyntheticObservers(BeanRegistrationPhaseBuildItem beanRegistrationPhase,
List<BeanConfiguratorBuildItem> beanConfigurators) {
List<BeanConfiguratorBuildItem> beanConfigurationRegistry) {

for (BeanConfiguratorBuildItem configurator : beanConfigurators) {
for (BeanConfiguratorBuildItem configurator : beanConfigurationRegistry) {
// Just make sure the configurator is processed
configurator.getValues().forEach(BeanConfigurator::done);
}
Expand All @@ -401,12 +401,12 @@ public ObserverRegistrationPhaseBuildItem registerSyntheticObservers(BeanRegistr
// PHASE 4 - initialize and validate the bean deployment
@BuildStep
public ValidationPhaseBuildItem validate(ObserverRegistrationPhaseBuildItem observerRegistrationPhase,
List<ObserverConfiguratorBuildItem> observerConfigurators,
List<ObserverConfiguratorBuildItem> observerConfigurationRegistry,
List<UnremovableBeanBuildItem> unremovableBeans,
BuildProducer<BytecodeTransformerBuildItem> bytecodeTransformer,
BuildProducer<SynthesisFinishedBuildItem> synthesisFinished) {

for (ObserverConfiguratorBuildItem configurator : observerConfigurators) {
for (ObserverConfiguratorBuildItem configurator : observerConfigurationRegistry) {
// Just make sure the configurator is processed
configurator.getValues().forEach(ObserverConfigurator::done);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,7 @@ void generateConfigMappings(
BuildProducer<GeneratedClassBuildItem> generatedClasses,
BuildProducer<ReflectiveClassBuildItem> reflectiveClasses,
BuildProducer<ConfigMappingBuildItem> configMappings,
BuildProducer<BeanConfiguratorBuildItem> beanConfigurators) {
BuildProducer<BeanConfiguratorBuildItem> beanConfigurationRegistry) {

for (AnnotationInstance instance : combinedIndex.getIndex().getAnnotations(CONFIG_MAPPING_NAME)) {
AnnotationTarget target = instance.target();
Expand Down Expand Up @@ -234,7 +234,7 @@ void generateConfigMappings(

configMappings.produce(new ConfigMappingBuildItem(type, prefix));

beanConfigurators.produce(new BeanConfiguratorBuildItem(
beanConfigurationRegistry.produce(new BeanConfiguratorBuildItem(
beanRegistrationPhase.getContext()
.configure(type)
.types(type)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@
import java.io.InputStream;
import java.nio.file.Path;

import io.dekorate.deps.kubernetes.api.model.ObjectMeta;
import io.dekorate.deps.openshift.api.model.BuildConfigSpecFluent;
import io.dekorate.kubernetes.decorator.NamedResourceDecorator;
import io.fabric8.kubernetes.api.model.ObjectMeta;
import io.fabric8.openshift.api.model.BuildConfigSpecFluent;
import io.quarkus.deployment.util.FileUtil;

public class ApplyDockerfileToBuildConfigDecorator extends NamedResourceDecorator<BuildConfigSpecFluent<?>> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,20 +29,20 @@

import org.jboss.logging.Logger;

import io.dekorate.deps.kubernetes.api.model.HasMetadata;
import io.dekorate.deps.kubernetes.api.model.KubernetesList;
import io.dekorate.deps.kubernetes.api.model.Secret;
import io.dekorate.deps.kubernetes.client.KubernetesClient;
import io.dekorate.deps.kubernetes.client.dsl.LogWatch;
import io.dekorate.deps.openshift.api.model.Build;
import io.dekorate.deps.openshift.api.model.BuildConfig;
import io.dekorate.deps.openshift.api.model.ImageStream;
import io.dekorate.deps.openshift.client.OpenShiftClient;
import io.dekorate.utils.Clients;
import io.dekorate.utils.Packaging;
import io.dekorate.utils.Serialization;
import io.fabric8.kubernetes.api.model.HasMetadata;
import io.fabric8.kubernetes.api.model.KubernetesList;
import io.fabric8.kubernetes.api.model.Secret;
import io.fabric8.kubernetes.client.Config;
import io.fabric8.kubernetes.client.KubernetesClient;
import io.fabric8.kubernetes.client.KubernetesClientException;
import io.fabric8.kubernetes.client.dsl.LogWatch;
import io.fabric8.openshift.api.model.Build;
import io.fabric8.openshift.api.model.BuildConfig;
import io.fabric8.openshift.api.model.ImageStream;
import io.fabric8.openshift.client.OpenShiftClient;
import io.quarkus.bootstrap.model.AppDependency;
import io.quarkus.container.image.deployment.ContainerImageConfig;
import io.quarkus.container.image.deployment.util.ImageUtil;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@
import org.eclipse.microprofile.config.Config;
import org.eclipse.microprofile.config.ConfigProvider;

import io.dekorate.deps.kubernetes.api.model.HasMetadata;
import io.dekorate.deps.kubernetes.api.model.KubernetesListBuilder;
import io.dekorate.deps.kubernetes.api.model.ObjectReference;
import io.dekorate.deps.openshift.api.model.ImageStreamTag;
import io.dekorate.deps.openshift.api.model.SourceBuildStrategyFluent;
import io.dekorate.deps.openshift.client.OpenShiftClient;
import io.dekorate.kubernetes.decorator.Decorator;
import io.fabric8.kubernetes.api.model.HasMetadata;
import io.fabric8.kubernetes.api.model.KubernetesListBuilder;
import io.fabric8.kubernetes.api.model.ObjectReference;
import io.fabric8.openshift.api.model.ImageStreamTag;
import io.fabric8.openshift.api.model.SourceBuildStrategyFluent;
import io.fabric8.openshift.client.OpenShiftClient;

/**
* This class is copied from Dekorate, with the difference that the {@code waitForImageStreamTags} method
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package io.quarkus.container.image.openshift.deployment;

import io.dekorate.deps.kubernetes.api.model.ContainerFluent;
import io.dekorate.kubernetes.decorator.AddEnvVarDecorator;
import io.dekorate.kubernetes.decorator.ApplicationContainerDecorator;
import io.dekorate.kubernetes.decorator.Decorator;
import io.dekorate.kubernetes.decorator.ResourceProvidingDecorator;
import io.fabric8.kubernetes.api.model.ContainerFluent;

public class RemoveEnvVarDecorator extends ApplicationContainerDecorator<ContainerFluent<?>> {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package io.quarkus.container.image.s2i;

import io.dekorate.deps.kubernetes.api.model.ContainerFluent;
import io.dekorate.kubernetes.decorator.AddEnvVarDecorator;
import io.dekorate.kubernetes.decorator.ApplicationContainerDecorator;
import io.dekorate.kubernetes.decorator.Decorator;
import io.dekorate.kubernetes.decorator.ResourceProvidingDecorator;
import io.fabric8.kubernetes.api.model.ContainerFluent;

public class RemoveEnvVarDecorator extends ApplicationContainerDecorator<ContainerFluent<?>> {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@
import java.io.InputStream;
import java.nio.file.Path;

import io.dekorate.deps.kubernetes.api.model.ObjectMeta;
import io.dekorate.deps.openshift.api.model.BuildConfigSpecFluent;
import io.dekorate.kubernetes.decorator.NamedResourceDecorator;
import io.fabric8.kubernetes.api.model.ObjectMeta;
import io.fabric8.openshift.api.model.BuildConfigSpecFluent;
import io.quarkus.deployment.util.FileUtil;

public class ApplyDockerfileToBuildConfigDecorator extends NamedResourceDecorator<BuildConfigSpecFluent<?>> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@
import java.util.Set;
import java.util.stream.Collectors;

import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
import org.apache.commons.compress.archivers.tar.TarArchiveOutputStream;
import org.jsoup.helper.StringUtil;

import io.dekorate.DekorateException;
import io.dekorate.deps.commons.compress.archivers.tar.TarArchiveEntry;
import io.dekorate.deps.commons.compress.archivers.tar.TarArchiveOutputStream;

public class PackageUtil {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,19 +26,19 @@

import org.jboss.logging.Logger;

import io.dekorate.deps.kubernetes.api.model.HasMetadata;
import io.dekorate.deps.kubernetes.api.model.KubernetesList;
import io.dekorate.deps.kubernetes.api.model.Secret;
import io.dekorate.deps.kubernetes.client.KubernetesClient;
import io.dekorate.deps.kubernetes.client.dsl.LogWatch;
import io.dekorate.deps.openshift.api.model.Build;
import io.dekorate.deps.openshift.api.model.BuildConfig;
import io.dekorate.deps.openshift.api.model.ImageStream;
import io.dekorate.deps.openshift.client.OpenShiftClient;
import io.dekorate.utils.Clients;
import io.dekorate.utils.Serialization;
import io.fabric8.kubernetes.api.model.HasMetadata;
import io.fabric8.kubernetes.api.model.KubernetesList;
import io.fabric8.kubernetes.api.model.Secret;
import io.fabric8.kubernetes.client.Config;
import io.fabric8.kubernetes.client.KubernetesClient;
import io.fabric8.kubernetes.client.KubernetesClientException;
import io.fabric8.kubernetes.client.dsl.LogWatch;
import io.fabric8.openshift.api.model.Build;
import io.fabric8.openshift.api.model.BuildConfig;
import io.fabric8.openshift.api.model.ImageStream;
import io.fabric8.openshift.client.OpenShiftClient;
import io.quarkus.bootstrap.model.AppDependency;
import io.quarkus.container.image.deployment.ContainerImageConfig;
import io.quarkus.container.image.deployment.util.ImageUtil;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
import java.util.List;
import java.util.concurrent.TimeUnit;

import io.dekorate.deps.kubernetes.api.model.HasMetadata;
import io.dekorate.deps.kubernetes.api.model.KubernetesListBuilder;
import io.dekorate.deps.kubernetes.api.model.ObjectReference;
import io.dekorate.deps.openshift.api.model.ImageStreamTag;
import io.dekorate.deps.openshift.api.model.SourceBuildStrategyFluent;
import io.dekorate.deps.openshift.client.OpenShiftClient;
import io.dekorate.kubernetes.decorator.Decorator;
import io.fabric8.kubernetes.api.model.HasMetadata;
import io.fabric8.kubernetes.api.model.KubernetesListBuilder;
import io.fabric8.kubernetes.api.model.ObjectReference;
import io.fabric8.openshift.api.model.ImageStreamTag;
import io.fabric8.openshift.api.model.SourceBuildStrategyFluent;
import io.fabric8.openshift.client.OpenShiftClient;

/**
* This class is copied from Dekorate, with the difference that the {@code waitForImageStreamTags} method
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@
import io.quarkus.deployment.pkg.PackageConfig;
import io.quarkus.deployment.pkg.builditem.OutputTargetBuildItem;
import io.quarkus.kubernetes.deployment.AddNodePortDecorator;
import io.quarkus.kubernetes.deployment.AddPortToKubernetesConfig;
import io.quarkus.kubernetes.deployment.ApplyContainerImageDecorator;
import io.quarkus.kubernetes.deployment.ApplyHttpGetActionPortDecorator;
import io.quarkus.kubernetes.deployment.ApplyServiceTypeDecorator;
Expand Down Expand Up @@ -82,12 +83,13 @@ public void createLabels(KubernetesConfig config, BuildProducer<KubernetesLabelB
}

@BuildStep
public List<ConfiguratorBuildItem> createConfigurators(KubernetesConfig config, List<KubernetesPortBuildItem> ports) {
public List<ConfiguratorBuildItem> createConfigurators(KubernetesConfig config,
List<KubernetesPortBuildItem> ports) {
List<ConfiguratorBuildItem> result = new ArrayList<>();
result.addAll(KubernetesCommonHelper.createPlatformConfigurators(config));
result.addAll(KubernetesCommonHelper.createGlobalConfigurators(ports));
KubernetesCommonHelper.combinePorts(ports, config).entrySet().forEach(e -> {
result.add(new ConfiguratorBuildItem(new AddPortToKubernetesConfig(e.getValue())));
});
return result;

}

@BuildStep
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
/**
* A build item that wraps around Configurator objects.
* The purpose of those build items is influence the configuration that will be feed to the generator process.
* Configurators are similar to decorators, but are applied to configuration instead of generated resources.
* ConfigurationRegistry are similar to decorators, but are applied to configuration instead of generated resources.
*/
public final class ConfiguratorBuildItem extends MultiBuildItem {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

import java.util.Objects;

import io.dekorate.deps.kubernetes.api.model.ObjectMeta;
import io.dekorate.deps.kubernetes.api.model.ObjectMetaBuilder;
import io.dekorate.kubernetes.decorator.AddSidecarDecorator;
import io.dekorate.kubernetes.decorator.Decorator;
import io.dekorate.kubernetes.decorator.NamedResourceDecorator;
import io.dekorate.kubernetes.decorator.ResourceProvidingDecorator;
import io.fabric8.kubernetes.api.model.ObjectMeta;
import io.fabric8.kubernetes.api.model.ObjectMetaBuilder;

public class AddNamespaceDecorator extends NamedResourceDecorator<ObjectMetaBuilder> {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

import org.jboss.logging.Logger;

import io.dekorate.deps.kubernetes.api.model.ObjectMeta;
import io.dekorate.deps.kubernetes.api.model.ServiceSpecFluent;
import io.dekorate.kubernetes.decorator.Decorator;
import io.dekorate.kubernetes.decorator.NamedResourceDecorator;
import io.fabric8.kubernetes.api.model.ObjectMeta;
import io.fabric8.kubernetes.api.model.ServiceSpecFluent;

public class AddNodePortDecorator extends NamedResourceDecorator<ServiceSpecFluent> {

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package io.quarkus.kubernetes.deployment;

import java.util.Objects;

import io.dekorate.knative.config.KnativeConfigFluent;
import io.dekorate.kubernetes.config.Configurator;
import io.dekorate.kubernetes.config.Port;

public class AddPortToKnativeConfig extends Configurator<KnativeConfigFluent<?>> {

private final Port port;

public AddPortToKnativeConfig(Port port) {
this.port = port;
}

@Override
public void visit(KnativeConfigFluent<?> config) {
if (!hasPort(config)) {
config.addToPorts(port);
}
}

/**
* Check if the {@link KnativeConfig} already has port.
*
* @param config The port.
* @return True if port with same container port exists.
*/
private boolean hasPort(KnativeConfigFluent<?> config) {
for (Port p : config.getPorts()) {
if (p.getContainerPort() == port.getContainerPort()) {
return true;
}
}
return false;
}

@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
AddPortToKnativeConfig addPort = (AddPortToKnativeConfig) o;
return Objects.equals(port, addPort.port);
}

@Override
public int hashCode() {

return Objects.hash(port);
}
}
Loading

0 comments on commit e7acfd4

Please sign in to comment.