Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
package org.cloudfoundry.multiapps.controller.client.lib.domain;

import org.cloudfoundry.multiapps.common.Nullable;
import org.immutables.value.Value;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.sap.cloudfoundry.client.facade.domain.CloudServiceInstance;
import org.cloudfoundry.multiapps.common.Nullable;
import org.immutables.value.Value;

@Value.Immutable
@JsonSerialize(as = ImmutableCloudServiceInstanceExtended.class)
Expand Down Expand Up @@ -45,4 +44,19 @@ public boolean shouldSkipSyslogUrlUpdate() {
return false;
}

@Value.Default
public boolean shouldFailOnParametersUpdateFailure() {
return false;
}

@Value.Default
public boolean shouldFailOnPlanUpdateFailure() {
return false;
}

@Value.Default
public boolean shouldFailOnTagsUpdateFailure() {
return false;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
import java.util.Objects;
import java.util.TreeMap;
import java.util.stream.Collectors;

import org.cloudfoundry.client.v3.serviceinstances.ServiceInstanceType;
import org.cloudfoundry.multiapps.common.ContentException;
import org.cloudfoundry.multiapps.controller.client.lib.domain.CloudServiceInstanceExtended;
Expand Down Expand Up @@ -85,6 +84,10 @@ protected CloudServiceInstanceExtended createManagedService(Resource resource, C
.shouldSkipTagsUpdate(commonServiceParameters.shouldSkipTagsUpdate())
.shouldSkipPlanUpdate(commonServiceParameters.shouldSkipPlanUpdate())
.shouldSkipSyslogUrlUpdate(commonServiceParameters.shouldSkipSyslogUrlUpdate())
.shouldFailOnParametersUpdateFailure(
commonServiceParameters.failOnServiceParametersUpdateFailure())
.shouldFailOnPlanUpdateFailure(commonServiceParameters.failOnServicePlanUpdateFailure())
.shouldFailOnTagsUpdateFailure(commonServiceParameters.failOnServiceTagsUpdateFailure())
.v3Metadata(ServiceMetadataBuilder.build(deploymentDescriptor, namespace, resource))
.build();
}
Expand Down Expand Up @@ -113,6 +116,10 @@ protected CloudServiceInstanceExtended createUserProvidedService(Resource resour
.shouldSkipTagsUpdate(commonServiceParameters.shouldSkipTagsUpdate())
.shouldSkipPlanUpdate(commonServiceParameters.shouldSkipPlanUpdate())
.shouldSkipSyslogUrlUpdate(commonServiceParameters.shouldSkipSyslogUrlUpdate())
.shouldFailOnParametersUpdateFailure(
commonServiceParameters.failOnServiceParametersUpdateFailure())
.shouldFailOnPlanUpdateFailure(commonServiceParameters.failOnServicePlanUpdateFailure())
.shouldFailOnTagsUpdateFailure(commonServiceParameters.failOnServiceTagsUpdateFailure())
.v3Metadata(ServiceMetadataBuilder.build(deploymentDescriptor, namespace, resource))
.build();
}
Expand All @@ -126,6 +133,10 @@ protected CloudServiceInstanceExtended createExistingService(Resource resource,
.shouldSkipTagsUpdate(commonServiceParameters.shouldSkipTagsUpdate())
.shouldSkipPlanUpdate(commonServiceParameters.shouldSkipPlanUpdate())
.shouldSkipSyslogUrlUpdate(commonServiceParameters.shouldSkipSyslogUrlUpdate())
.shouldFailOnParametersUpdateFailure(
commonServiceParameters.failOnServiceParametersUpdateFailure())
.shouldFailOnPlanUpdateFailure(commonServiceParameters.failOnServicePlanUpdateFailure())
.shouldFailOnTagsUpdateFailure(commonServiceParameters.failOnServiceTagsUpdateFailure())
.v3Metadata(ServiceMetadataBuilder.build(deploymentDescriptor, namespace, resource))
.build();
}
Expand Down Expand Up @@ -153,13 +164,17 @@ protected String getInvalidServiceConfigTypeErrorMessage(String serviceName, Obj
protected static class CommonServiceParameters {
protected final Resource resource;
private final Map<String, Boolean> shouldSkipUpdates;
private final Map<String, Boolean> failOnServiceUpdateFailure;

@SuppressWarnings("unchecked")
protected CommonServiceParameters(Resource resource) {
this.resource = resource;
this.shouldSkipUpdates = (Map<String, Boolean>) resource.getParameters()
.getOrDefault(SupportedParameters.SKIP_SERVICE_UPDATES,
Collections.emptyMap());
failOnServiceUpdateFailure = (Map<String, Boolean>) resource.getParameters()
.getOrDefault(SupportedParameters.FAIL_ON_SERVICE_UPDATE,
Collections.emptyMap());
}

private String getServiceName() {
Expand All @@ -186,6 +201,18 @@ private boolean shouldSkipSyslogUrlUpdate() {
return shouldSkipUpdates.getOrDefault("syslog-drain-url", false);
}

private boolean failOnServiceParametersUpdateFailure() {
return failOnServiceUpdateFailure.getOrDefault("parameters", false);
}

private boolean failOnServiceTagsUpdateFailure() {
return failOnServiceUpdateFailure.getOrDefault("tags", false);
}

private boolean failOnServicePlanUpdateFailure() {
return failOnServiceUpdateFailure.getOrDefault("plan", false);
}

}

}
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,7 @@ public class SupportedParameters {
public static final String DEFAULT_XS_APP_NAME = "default-xsappname";
public static final String TYPE = "type";
public static final String SKIP_SERVICE_UPDATES = "skip-service-updates";
public static final String FAIL_ON_SERVICE_UPDATE = "fail-on-service-update";
public static final String SYSLOG_DRAIN_URL = "syslog-drain-url";
public static final String SERVICE_GUID = "service-guid";

Expand Down Expand Up @@ -203,7 +204,8 @@ public class SupportedParameters {
DEFAULT_SERVICE_NAME, DEFAULT_XS_APP_NAME, SERVICE, SERVICE_KEYS,
SERVICE_KEY_NAME, SERVICE_NAME, SERVICE_PLAN, SERVICE_TAGS, SERVICE_BROKER,
SKIP_SERVICE_UPDATES, TYPE, PROVIDER_ID, PROVIDER_NID, TARGET,
SERVICE_CONFIG_PATH, FILTER, MANAGED, VERSION, PATH, MEMORY);
SERVICE_CONFIG_PATH, FILTER, MANAGED, VERSION, PATH, MEMORY,
FAIL_ON_SERVICE_UPDATE);
public static final Set<String> GLOBAL_PARAMETERS = Set.of(KEEP_EXISTING_ROUTES, APPS_UPLOAD_TIMEOUT, APPS_TASK_EXECUTION_TIMEOUT,
APPS_START_TIMEOUT, APPS_STAGE_TIMEOUT, APPLY_NAMESPACE,
ENABLE_PARALLEL_DEPLOYMENTS, DEPLOY_MODE);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand All @@ -42,5 +45,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand All @@ -42,5 +45,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@
"shouldSkipParametersUpdate": false,
"shouldSkipTagsUpdate": false,
"shouldSkipPlanUpdate": false,
"shouldSkipSyslogUrlUpdate": false
"shouldSkipSyslogUrlUpdate": false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}
]
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand Down Expand Up @@ -52,5 +55,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand Down Expand Up @@ -52,5 +55,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand Down Expand Up @@ -52,5 +55,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand Down Expand Up @@ -52,5 +55,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand All @@ -48,5 +51,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand All @@ -48,5 +51,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand Down Expand Up @@ -51,5 +54,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand All @@ -46,5 +49,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,10 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
}, {
"isOptional" : false,
"isManaged" : true,
Expand All @@ -53,5 +56,8 @@
"shouldSkipParametersUpdate" : false,
"shouldSkipPlanUpdate" : false,
"shouldSkipTagsUpdate" : false,
"shouldSkipSyslogUrlUpdate" : false
"shouldSkipSyslogUrlUpdate" : false,
"shouldFailOnParametersUpdateFailure" : false,
"shouldFailOnPlanUpdateFailure" : false,
"shouldFailOnTagsUpdateFailure" : false
} ]
Loading