Skip to content

Commit 4cd8c55

Browse files
authored
new resource to manage self-serve role members in Athenz (#134)
Signed-off-by: Abhijeet V <[email protected]>
1 parent 829d2b4 commit 4cd8c55

23 files changed

+805
-103
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,3 +43,5 @@ docker/sample/domain-admin/domain_admin_cert.pem
4343
docker/sample/domain-admin/domain_admin_key.pem
4444

4545
manual-testing/
46+
.vscode/
47+
local.tfrc

CHANGELOG

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
v1.0.47 Release / Jun 26, 2025
2+
------------------------------
3+
- Support for self-serve role membership
4+
15
v1.0.46 Release / Nov 21, 2024
26
------------------------------
37
- Support notifyDetails attribute for athenz_role and athenz_group resources

athenz/provider.go

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -77,19 +77,20 @@ func Provider() *schema.Provider {
7777
},
7878

7979
ResourcesMap: map[string]*schema.Resource{
80-
"athenz_role": ResourceRole(),
81-
"athenz_role_members": ResourceRoleMembers(),
82-
"athenz_role_meta": ResourceRoleMeta(),
83-
"athenz_group": ResourceGroup(),
84-
"athenz_group_members": ResourceGroupMembers(),
85-
"athenz_group_meta": ResourceGroupMeta(),
86-
"athenz_policy": ResourcePolicy(),
87-
"athenz_policy_version": ResourcePolicyVersion(),
88-
"athenz_service": ResourceService(),
89-
"athenz_sub_domain": ResourceSubDomain(),
90-
"athenz_user_domain": ResourceUserDomain(),
91-
"athenz_top_level_domain": ResourceTopLevelDomain(),
92-
"athenz_domain_meta": ResourceDomainMeta(),
80+
"athenz_role": ResourceRole(),
81+
"athenz_role_members": ResourceRoleMembers(),
82+
"athenz_self_serve_role_members": ResourceSelfServeRoleMembers(),
83+
"athenz_role_meta": ResourceRoleMeta(),
84+
"athenz_group": ResourceGroup(),
85+
"athenz_group_members": ResourceGroupMembers(),
86+
"athenz_group_meta": ResourceGroupMeta(),
87+
"athenz_policy": ResourcePolicy(),
88+
"athenz_policy_version": ResourcePolicyVersion(),
89+
"athenz_service": ResourceService(),
90+
"athenz_sub_domain": ResourceSubDomain(),
91+
"athenz_user_domain": ResourceUserDomain(),
92+
"athenz_top_level_domain": ResourceTopLevelDomain(),
93+
"athenz_domain_meta": ResourceDomainMeta(),
9394
},
9495

9596
ConfigureContextFunc: configProvider,

athenz/resource_group.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ func ResourceGroup() *schema.Resource {
3535
Description: "Name of the standard group role",
3636
Required: true,
3737
ForceNew: true,
38-
ValidateDiagFunc: validatePatternFunc(ENTTITY_NAME),
38+
ValidateDiagFunc: validatePatternFunc(ENTITY_NAME),
3939
},
4040
"members": {
4141
Type: schema.TypeSet,

athenz/resource_group_members.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ func ResourceGroupMembers() *schema.Resource {
3636
Description: "Name of the standard group role",
3737
Required: true,
3838
ForceNew: true,
39-
ValidateDiagFunc: validatePatternFunc(ENTTITY_NAME),
39+
ValidateDiagFunc: validatePatternFunc(ENTITY_NAME),
4040
},
4141
"member": {
4242
Type: schema.TypeSet,

athenz/resource_group_meta.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package athenz
33
import (
44
"context"
55
"errors"
6+
67
"github.com/AthenZ/athenz/clients/go/zms"
78
"github.com/ardielle/ardielle-go/rdl"
89
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
@@ -35,7 +36,7 @@ func ResourceGroupMeta() *schema.Resource {
3536
Description: "Name of the standard group",
3637
Required: true,
3738
ForceNew: true,
38-
ValidateDiagFunc: validatePatternFunc(ENTTITY_NAME),
39+
ValidateDiagFunc: validatePatternFunc(ENTITY_NAME),
3940
},
4041
"user_expiry_days": {
4142
Type: schema.TypeInt,

athenz/resource_group_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package athenz
22

33
import (
44
"fmt"
5-
"github.com/ardielle/ardielle-go/rdl"
65
"log"
76
"os"
87
"reflect"
@@ -11,6 +10,8 @@ import (
1110
"strings"
1211
"testing"
1312

13+
"github.com/ardielle/ardielle-go/rdl"
14+
1415
"github.com/stretchr/testify/assert"
1516

1617
"github.com/AthenZ/athenz/clients/go/zms"
@@ -460,7 +461,7 @@ func TestAccGroupInvalidResource(t *testing.T) {
460461
},
461462
{
462463
Config: testAccGroupInvalidGroupNameConfig(),
463-
ExpectError: getPatternErrorRegex(ENTTITY_NAME),
464+
ExpectError: getPatternErrorRegex(ENTITY_NAME),
464465
},
465466
{
466467
Config: testAccGroupInvalidMemberNameConfig(),

athenz/resource_policy.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ func ResourcePolicy() *schema.Resource {
3535
Description: "Name of the standard policy",
3636
Required: true,
3737
ForceNew: true,
38-
ValidateDiagFunc: validatePatternFunc(ENTTITY_NAME),
38+
ValidateDiagFunc: validatePatternFunc(ENTITY_NAME),
3939
},
4040
"assertion": resourceAssertionSchema(),
4141
"audit_ref": {

athenz/resource_policy_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ func TestAccGroupPolicyInvalidResource(t *testing.T) {
233233
},
234234
{
235235
Config: testAccGroupPolicyInvalidPolicyNameConfig(),
236-
ExpectError: getPatternErrorRegex(ENTTITY_NAME),
236+
ExpectError: getPatternErrorRegex(ENTITY_NAME),
237237
},
238238
{
239239
Config: testAccGroupPolicyInvalidResourceNameConfig(),

athenz/resource_policy_version.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ func ResourcePolicyVersion() *schema.Resource {
3434
Description: "Name of the policy",
3535
Required: true,
3636
ForceNew: true,
37-
ValidateDiagFunc: validatePatternFunc(ENTTITY_NAME),
37+
ValidateDiagFunc: validatePatternFunc(ENTITY_NAME),
3838
},
3939
"active_version": {
4040
Type: schema.TypeString,

0 commit comments

Comments
 (0)