summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java2
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java5
-rw-r--r--flags/src/main/java/com/yahoo/vespa/flags/PermanentFlags.java6
3 files changed, 13 insertions, 0 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java b/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java
index 9a7ffc36f2d..f1328fbe3b4 100644
--- a/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java
+++ b/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java
@@ -180,6 +180,8 @@ public interface ModelContext {
default Optional<CloudAccount> cloudAccount() { return Optional.empty(); }
+ default boolean allowUserFilters() { return false; }
+
}
@Retention(RetentionPolicy.RUNTIME)
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java
index 531bddec4cb..e5ac99fbc70 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java
@@ -372,6 +372,7 @@ public class ModelContextImpl implements ModelContext {
private final List<String> zoneDnsSuffixes;
private final List<String> environmentVariables;
private final Optional<CloudAccount> cloudAccount;
+ private final boolean allowUserFilters;
public Properties(ApplicationId applicationId,
Version modelVersion,
@@ -416,6 +417,8 @@ public class ModelContextImpl implements ModelContext {
this.environmentVariables = PermanentFlags.ENVIRONMENT_VARIABLES.bindTo(flagSource)
.with(FetchVector.Dimension.APPLICATION_ID, applicationId.serializedForm()).value();
this.cloudAccount = cloudAccount;
+ this.allowUserFilters = PermanentFlags.ALLOW_USER_FILTERS.bindTo(flagSource)
+ .with(FetchVector.Dimension.APPLICATION_ID, applicationId.serializedForm()).value();
}
@Override public ModelContext.FeatureFlags featureFlags() { return featureFlags; }
@@ -505,6 +508,8 @@ public class ModelContextImpl implements ModelContext {
return cloudAccount;
}
+ @Override public boolean allowUserFilters() { return allowUserFilters; }
+
}
}
diff --git a/flags/src/main/java/com/yahoo/vespa/flags/PermanentFlags.java b/flags/src/main/java/com/yahoo/vespa/flags/PermanentFlags.java
index e67d18b986e..dfcf9330c1e 100644
--- a/flags/src/main/java/com/yahoo/vespa/flags/PermanentFlags.java
+++ b/flags/src/main/java/com/yahoo/vespa/flags/PermanentFlags.java
@@ -315,6 +315,12 @@ public class PermanentFlags {
APPLICATION_ID
);
+ public static final UnboundBooleanFlag ALLOW_USER_FILTERS = defineFeatureFlag(
+ "allow-user-filters", false,
+ "Allow user filter (chains) in application",
+ "Takes effect on next redeployment",
+ APPLICATION_ID);
+
private PermanentFlags() {}
private static UnboundBooleanFlag defineFeatureFlag(