Skip to content

Commit 4bd2eb0

Browse files
authored
test: cover prefixed topic delete ACLs (#53)
Signed-off-by: Rui Chen <rui@chenrui.dev>
1 parent 78e27b7 commit 4bd2eb0

6 files changed

Lines changed: 255 additions & 0 deletions

src/test/groovy/com/devshawn/kafka/gitops/ApplyCommandIntegrationSpec.groovy

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ class ApplyCommandIntegrationSpec extends Specification {
4545
"simple-users",
4646
"custom-service-acls",
4747
"custom-user-acls",
48+
"custom-user-prefixed-topic-delete-acls",
4849
"custom-group-id-application",
4950
"custom-group-id-connect",
5051
"custom-application-id-streams",

src/test/groovy/com/devshawn/kafka/gitops/PlanCommandIntegrationSpec.groovy

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ class PlanCommandIntegrationSpec extends Specification {
5050
"simple-users",
5151
"custom-service-acls",
5252
"custom-user-acls",
53+
"custom-user-prefixed-topic-delete-acls",
5354
"custom-group-id-application",
5455
"custom-group-id-connect",
5556
"custom-application-id-streams",

src/test/groovy/com/devshawn/kafka/gitops/domain/state/CustomAclDetailsSpec.groovy

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ class CustomAclDetailsSpec extends Specification {
3232
where:
3333
type | pattern | operation | permission
3434
ResourceType.TOPIC.name() | PatternType.LITERAL.name() | AclOperation.READ.name() | AclPermissionType.ALLOW.name()
35+
ResourceType.TOPIC.name() | PatternType.PREFIXED.name() | AclOperation.DELETE.name() | AclPermissionType.ALLOW.name()
3536
ResourceType.CLUSTER.name() | PatternType.PREFIXED.name() | AclOperation.WRITE.name() | AclPermissionType.DENY.name()
3637
ResourceType.GROUP.name() | PatternType.LITERAL.name() | AclOperation.CREATE.name() | AclPermissionType.ALLOW.name()
3738
ResourceType.GROUP.name() | PatternType.LITERAL.name() | AclOperation.DESCRIBE.name() | AclPermissionType.DENY.name()
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
Executing apply...
2+
3+
Applying: [CREATE]
4+
5+
+ [ACL] topic-reset-user-0
6+
+ resource_name: events_reset_
7+
+ resource_type: TOPIC
8+
+ resource_pattern: PREFIXED
9+
+ resource_principal: User:topic-reset
10+
+ host: *
11+
+ operation: CREATE
12+
+ permission: ALLOW
13+
14+
15+
Successfully applied.
16+
17+
Applying: [CREATE]
18+
19+
+ [ACL] topic-reset-user-1
20+
+ resource_name: events_reset_
21+
+ resource_type: TOPIC
22+
+ resource_pattern: PREFIXED
23+
+ resource_principal: User:topic-reset
24+
+ host: *
25+
+ operation: WRITE
26+
+ permission: ALLOW
27+
28+
29+
Successfully applied.
30+
31+
Applying: [CREATE]
32+
33+
+ [ACL] topic-reset-user-2
34+
+ resource_name: events_reset_
35+
+ resource_type: TOPIC
36+
+ resource_pattern: PREFIXED
37+
+ resource_principal: User:topic-reset
38+
+ host: *
39+
+ operation: READ
40+
+ permission: ALLOW
41+
42+
43+
Successfully applied.
44+
45+
Applying: [CREATE]
46+
47+
+ [ACL] topic-reset-user-3
48+
+ resource_name: events_reset_
49+
+ resource_type: TOPIC
50+
+ resource_pattern: PREFIXED
51+
+ resource_principal: User:topic-reset
52+
+ host: *
53+
+ operation: DESCRIBE
54+
+ permission: ALLOW
55+
56+
57+
Successfully applied.
58+
59+
Applying: [CREATE]
60+
61+
+ [ACL] topic-reset-user-4
62+
+ resource_name: events_reset_
63+
+ resource_type: TOPIC
64+
+ resource_pattern: PREFIXED
65+
+ resource_principal: User:topic-reset
66+
+ host: *
67+
+ operation: ALTER_CONFIGS
68+
+ permission: ALLOW
69+
70+
71+
Successfully applied.
72+
73+
Applying: [CREATE]
74+
75+
+ [ACL] topic-reset-user-5
76+
+ resource_name: events_reset_
77+
+ resource_type: TOPIC
78+
+ resource_pattern: PREFIXED
79+
+ resource_principal: User:topic-reset
80+
+ host: *
81+
+ operation: DESCRIBE_CONFIGS
82+
+ permission: ALLOW
83+
84+
85+
Successfully applied.
86+
87+
Applying: [CREATE]
88+
89+
+ [ACL] topic-reset-user-6
90+
+ resource_name: events_reset_
91+
+ resource_type: TOPIC
92+
+ resource_pattern: PREFIXED
93+
+ resource_principal: User:topic-reset
94+
+ host: *
95+
+ operation: DELETE
96+
+ permission: ALLOW
97+
98+
99+
Successfully applied.
100+
101+
[SUCCESS] Apply complete! Resources: 7 created, 0 updated, 0 deleted.
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
{
2+
"topicPlans": [],
3+
"aclPlans": [
4+
{
5+
"name": "topic-reset-user-0",
6+
"aclDetails": {
7+
"name": "events_reset_",
8+
"type": "TOPIC",
9+
"pattern": "PREFIXED",
10+
"principal": "User:topic-reset",
11+
"host": "*",
12+
"operation": "CREATE",
13+
"permission": "ALLOW"
14+
},
15+
"action": "ADD"
16+
},
17+
{
18+
"name": "topic-reset-user-1",
19+
"aclDetails": {
20+
"name": "events_reset_",
21+
"type": "TOPIC",
22+
"pattern": "PREFIXED",
23+
"principal": "User:topic-reset",
24+
"host": "*",
25+
"operation": "WRITE",
26+
"permission": "ALLOW"
27+
},
28+
"action": "ADD"
29+
},
30+
{
31+
"name": "topic-reset-user-2",
32+
"aclDetails": {
33+
"name": "events_reset_",
34+
"type": "TOPIC",
35+
"pattern": "PREFIXED",
36+
"principal": "User:topic-reset",
37+
"host": "*",
38+
"operation": "READ",
39+
"permission": "ALLOW"
40+
},
41+
"action": "ADD"
42+
},
43+
{
44+
"name": "topic-reset-user-3",
45+
"aclDetails": {
46+
"name": "events_reset_",
47+
"type": "TOPIC",
48+
"pattern": "PREFIXED",
49+
"principal": "User:topic-reset",
50+
"host": "*",
51+
"operation": "DESCRIBE",
52+
"permission": "ALLOW"
53+
},
54+
"action": "ADD"
55+
},
56+
{
57+
"name": "topic-reset-user-4",
58+
"aclDetails": {
59+
"name": "events_reset_",
60+
"type": "TOPIC",
61+
"pattern": "PREFIXED",
62+
"principal": "User:topic-reset",
63+
"host": "*",
64+
"operation": "ALTER_CONFIGS",
65+
"permission": "ALLOW"
66+
},
67+
"action": "ADD"
68+
},
69+
{
70+
"name": "topic-reset-user-5",
71+
"aclDetails": {
72+
"name": "events_reset_",
73+
"type": "TOPIC",
74+
"pattern": "PREFIXED",
75+
"principal": "User:topic-reset",
76+
"host": "*",
77+
"operation": "DESCRIBE_CONFIGS",
78+
"permission": "ALLOW"
79+
},
80+
"action": "ADD"
81+
},
82+
{
83+
"name": "topic-reset-user-6",
84+
"aclDetails": {
85+
"name": "events_reset_",
86+
"type": "TOPIC",
87+
"pattern": "PREFIXED",
88+
"principal": "User:topic-reset",
89+
"host": "*",
90+
"operation": "DELETE",
91+
"permission": "ALLOW"
92+
},
93+
"action": "ADD"
94+
}
95+
]
96+
}
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
users:
2+
topic-reset-user:
3+
principal: User:topic-reset
4+
5+
customUserAcls:
6+
topic-reset-user:
7+
create-prefixed-topics:
8+
name: events_reset_
9+
type: TOPIC
10+
pattern: PREFIXED
11+
host: "*"
12+
operation: CREATE
13+
permission: ALLOW
14+
write-prefixed-topics:
15+
name: events_reset_
16+
type: TOPIC
17+
pattern: PREFIXED
18+
host: "*"
19+
operation: WRITE
20+
permission: ALLOW
21+
read-prefixed-topics:
22+
name: events_reset_
23+
type: TOPIC
24+
pattern: PREFIXED
25+
host: "*"
26+
operation: READ
27+
permission: ALLOW
28+
describe-prefixed-topics:
29+
name: events_reset_
30+
type: TOPIC
31+
pattern: PREFIXED
32+
host: "*"
33+
operation: DESCRIBE
34+
permission: ALLOW
35+
alter-configs-prefixed-topics:
36+
name: events_reset_
37+
type: TOPIC
38+
pattern: PREFIXED
39+
host: "*"
40+
operation: ALTER_CONFIGS
41+
permission: ALLOW
42+
describe-configs-prefixed-topics:
43+
name: events_reset_
44+
type: TOPIC
45+
pattern: PREFIXED
46+
host: "*"
47+
operation: DESCRIBE_CONFIGS
48+
permission: ALLOW
49+
delete-prefixed-topics:
50+
name: events_reset_
51+
type: TOPIC
52+
pattern: PREFIXED
53+
host: "*"
54+
operation: DELETE
55+
permission: ALLOW

0 commit comments

Comments
 (0)