aboutsummaryrefslogtreecommitdiffstats
path: root/controller-api
diff options
context:
space:
mode:
authorMorten Tokle <mortent@yahooinc.com>2023-09-25 09:12:10 +0200
committerMorten Tokle <mortent@yahooinc.com>2023-09-25 09:12:10 +0200
commit7ce86b52dcd1deadfca07355b8a47714a471e430 (patch)
tree91673da33fea6091e8866e19fd8d4acf866ebc49 /controller-api
parent3f785f57ecf663ebf3c9f195d349172f9fdeed08 (diff)
Default to instance when serializing instance_id dimension
Diffstat (limited to 'controller-api')
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchive.java18
-rw-r--r--controller-api/src/test/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchiveTest.java8
2 files changed, 13 insertions, 13 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchive.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchive.java
index e661c88e117..856af9f4132 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchive.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchive.java
@@ -258,15 +258,15 @@ public class SystemFlagsDataArchive {
root = mapper.readTree(fileContent);
// TODO (mortent): Remove this after completing migration of APPLICATION_ID dimension
// replace "application" with "instance" for all dimension fields
-// List<JsonNode> dimensionParents = root.findParents("dimension");
-// for (JsonNode parentNode : dimensionParents) {
-// JsonNode dimension = parentNode.get("dimension");
-// if (dimension.isTextual() && "application".equals(dimension.textValue())) {
-// ObjectNode parent = (ObjectNode) parentNode;
-// parent.remove("dimension");
-// parent.put("dimension", "instance");
-// }
-// }
+ List<JsonNode> dimensionParents = root.findParents("dimension");
+ for (JsonNode parentNode : dimensionParents) {
+ JsonNode dimension = parentNode.get("dimension");
+ if (dimension.isTextual() && "application".equals(dimension.textValue())) {
+ ObjectNode parent = (ObjectNode) parentNode;
+ parent.remove("dimension");
+ parent.put("dimension", "instance");
+ }
+ }
} catch (JsonProcessingException e) {
throw new FlagValidationException("Invalid JSON: " + e.getMessage());
}
diff --git a/controller-api/src/test/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchiveTest.java b/controller-api/src/test/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchiveTest.java
index aba6cfbfeac..373f8ba9de2 100644
--- a/controller-api/src/test/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchiveTest.java
+++ b/controller-api/src/test/java/com/yahoo/vespa/hosted/controller/api/systemflags/v1/SystemFlagsDataArchiveTest.java
@@ -245,7 +245,7 @@ public class SystemFlagsDataArchiveTest {
"conditions": [
{
"type": "whitelist",
- "dimension": "application",
+ "dimension": "instance",
"values": [ "f:o:o" ]
}
],
@@ -287,7 +287,7 @@ public class SystemFlagsDataArchiveTest {
{
"comment": "bar",
"type": "whitelist",
- "dimension": "application",
+ "dimension": "instance",
"values": [ "f:o:o" ]
}
],
@@ -308,7 +308,7 @@ public class SystemFlagsDataArchiveTest {
@Test
void normalize_json_succeed_on_valid_values() {
addFile(Condition.Type.WHITELIST, "application", "a:b:c");
-// addFile(Condition.Type.WHITELIST, "instance", "a:b:c");
+ addFile(Condition.Type.WHITELIST, "instance", "a:b:c");
addFile(Condition.Type.WHITELIST, "cloud", "yahoo");
addFile(Condition.Type.WHITELIST, "cloud", "aws");
addFile(Condition.Type.WHITELIST, "cloud", "gcp");
@@ -362,7 +362,7 @@ public class SystemFlagsDataArchiveTest {
@Test
void normalize_json_fail_on_invalid_values() {
- failAddFile(Condition.Type.WHITELIST, "application", "a.b.c", "In file flags/temporary/foo/default.json: Invalid application 'a.b.c' in whitelist condition: Application ids must be on the form tenant:application:instance, but was a.b.c");
+ failAddFile(Condition.Type.WHITELIST, "application", "a.b.c", "In file flags/temporary/foo/default.json: Invalid instance 'a.b.c' in whitelist condition: Application ids must be on the form tenant:application:instance, but was a.b.c");
failAddFile(Condition.Type.WHITELIST, "cloud", "foo", "In file flags/temporary/foo/default.json: Unknown cloud: foo");
// cluster-id: any String is valid
failAddFile(Condition.Type.WHITELIST, "cluster-type", "foo", "In file flags/temporary/foo/default.json: Invalid cluster-type 'foo' in whitelist condition: Illegal cluster type 'foo'");