diff --git a/pkg/connector/group.go b/pkg/connector/group.go index d95538b5..80b512b2 100644 --- a/pkg/connector/group.go +++ b/pkg/connector/group.go @@ -40,13 +40,14 @@ func groupResource(group *client.Group, parentResourceID *v2.ResourceId) (*v2.Re "group_name": group.Name, } - groupTraitOptions := []rs.GroupTraitOption{rs.WithGroupProfile(profile)} + groupTraitOptions := []rs.GroupTraitOption{} ret, err := rs.NewGroupResource( group.Name, resourceTypeGroup, group.ID, groupTraitOptions, + rs.WithResourceProfile(profile), rs.WithParentResourceID(parentResourceID), ) if err != nil { @@ -94,12 +95,7 @@ func (g *groupBuilder) Entitlements(_ context.Context, resource *v2.Resource, _ } func (g *groupBuilder) Grants(ctx context.Context, resource *v2.Resource, opts rs.SyncOpAttrs) ([]*v2.Grant, *rs.SyncOpResults, error) { - groupTrait, err := rs.GetGroupTrait(resource) - if err != nil { - return nil, nil, fmt.Errorf("failed to get group trait: %w", err) - } - - groupId, ok := rs.GetProfileStringValue(groupTrait.Profile, "group_id") + groupId, ok := rs.GetProfileStringValue(rs.GetProfile(resource), "group_id") if !ok { return nil, nil, fmt.Errorf("missing group_id in group profile") } diff --git a/pkg/connector/license.go b/pkg/connector/license.go index 1270695c..a8bac42b 100644 --- a/pkg/connector/license.go +++ b/pkg/connector/license.go @@ -92,9 +92,7 @@ func licenseResource(license string, purchased *string, consumed int64) (*v2.Res "license_id": licenseID, } - roleTraitOptions := []rs.RoleTraitOption{ - rs.WithRoleProfile(profile), - } + roleTraitOptions := []rs.RoleTraitOption{} stub := &v2.Resource{ Id: &v2.ResourceId{ @@ -111,6 +109,7 @@ func licenseResource(license string, purchased *string, consumed int64) (*v2.Res } ret, err := rs.NewRoleResource(license, resourceTypeLicense, licenseID, roleTraitOptions, + rs.WithResourceProfile(profile), rs.WithLicenseProfileTrait(licenseTraitOptions...), ) if err != nil { diff --git a/pkg/connector/user.go b/pkg/connector/user.go index f15b6430..d9e46672 100644 --- a/pkg/connector/user.go +++ b/pkg/connector/user.go @@ -47,8 +47,6 @@ func userResource(user *client.User, parentResourceID *v2.ResourceId) (*v2.Resou } userTraitOptions := []rs.UserTraitOption{ - rs.WithUserProfile(profile), - rs.WithStatus(v2.UserTrait_Status_STATUS_ENABLED), rs.WithEmail(user.Email, true), } if user.LastLogin != nil { @@ -60,6 +58,8 @@ func userResource(user *client.User, parentResourceID *v2.ResourceId) (*v2.Resou resourceTypeUser, user.ID, userTraitOptions, + rs.WithResourceProfile(profile), + rs.WithResourceStatus(v2.Status_RESOURCE_STATUS_ENABLED, ""), rs.WithParentResourceID(parentResourceID), rs.WithExternalID(&v2.ExternalId{Id: user.ID}), )