You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-api/src/main/pegasus/org/apache/gobblin/service/FlowConfig.pdl
+5
Original file line number
Diff line number
Diff line change
@@ -26,6 +26,11 @@ record FlowConfig {
26
26
*/
27
27
explain: boolean = false
28
28
29
+
/**
30
+
* Optional string name of group that the requester belongs to for group ownership of flows.
31
+
*/
32
+
owningGroup: optional string
33
+
29
34
/**
30
35
* Properties for the flow. These properties are passed to the compiled Gobblin jobs.
Copy file name to clipboardexpand all lines: gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-api/src/main/snapshot/org.apache.gobblin.service.flowconfigs.snapshot.json
+5
Original file line number
Diff line number
Diff line change
@@ -76,6 +76,11 @@
76
76
"type" : "boolean",
77
77
"doc" : "Return the compiled flow as a string. If enabled, the flow is not added.",
78
78
"default" : false
79
+
}, {
80
+
"name" : "owningGroup",
81
+
"type" : "string",
82
+
"doc" : "Optional string name of group that the requester belongs to for group ownership of flows.",
Copy file name to clipboardexpand all lines: gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-api/src/main/snapshot/org.apache.gobblin.service.flowconfigsV2.snapshot.json
+5
Original file line number
Diff line number
Diff line change
@@ -67,6 +67,11 @@
67
67
"type" : "boolean",
68
68
"doc" : "Return the compiled flow as a string. If enabled, the flow is not added.",
69
69
"default" : false
70
+
}, {
71
+
"name" : "owningGroup",
72
+
"type" : "string",
73
+
"doc" : "Optional string name of group that the requester belongs to for group ownership of flows.",
Copy file name to clipboardexpand all lines: gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-client/src/test/java/org/apache/gobblin/service/FlowConfigV2Test.java
+119-8
Original file line number
Diff line number
Diff line change
@@ -18,11 +18,13 @@
18
18
packageorg.apache.gobblin.service;
19
19
20
20
importjava.io.File;
21
+
importjava.nio.file.Path;
21
22
importjava.util.List;
22
23
importjava.util.Map;
23
24
24
25
importorg.apache.commons.io.FileUtils;
25
26
importorg.apache.commons.io.IOUtils;
27
+
importorg.mortbay.jetty.HttpStatus;
26
28
importorg.testng.Assert;
27
29
importorg.testng.annotations.AfterClass;
28
30
importorg.testng.annotations.BeforeClass;
@@ -62,12 +64,18 @@ public class FlowConfigV2Test {
Copy file name to clipboardexpand all lines: gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-server/src/main/java/org/apache/gobblin/service/FlowConfigResourceLocalHandler.java
+4
Original file line number
Diff line number
Diff line change
@@ -248,6 +248,10 @@ public static FlowSpec createFlowSpecForConfig(FlowConfig flowConfig) {
Copy file name to clipboardexpand all lines: gobblin-restli/gobblin-flow-config-service/gobblin-flow-config-service-server/src/main/java/org/apache/gobblin/service/FlowConfigsV2Resource.java
+46-6
Original file line number
Diff line number
Diff line change
@@ -56,7 +56,7 @@ public class FlowConfigsV2Resource extends ComplexKeyResourceTemplate<FlowId, Fl
* Check that all {@link ServiceRequester}s in this request are contained within the original service requester list
213
+
* or is part of the original requester's owning group when the flow was submitted. If they are not, throw a {@link FlowConfigLoggedException} with {@link HttpStatus#S_401_UNAUTHORIZED}.
214
+
* If there is a failure when deserializing the original requester list, throw a {@link FlowConfigLoggedException} with
215
+
* {@link HttpStatus#S_400_BAD_REQUEST}.
216
+
* @param requesterService the {@link RequesterService} used to verify the requester
217
+
* @param originalFlowConfig original flow config to find original requester
218
+
* @param requesterList list of requesters for this request
0 commit comments