Feature Request: Group Membership Management
Enhance the existing group resource to support managing user-group memberships.
Current State
The current pocketid_group resource can:
- Create and manage groups
- Set group names and friendly names
Missing Functionality
Cannot manage which users belong to which groups through Terraform.
Proposed Enhancement
Option 1: Add members attribute to group resource
resource "pocketid_group" "developers" {
name = "developers"
friendly_name = "Development Team"
# NEW: Manage group membership
member_ids = [
pocketid_user.john.id,
pocketid_user.jane.id,
pocketid_user.bob.id
]
}
Option 2: Create a separate membership resource
resource "pocketid_group_membership" "john_dev" {
group_id = pocketid_group.developers.id
user_id = pocketid_user.john.id
}
# Or batch management
resource "pocketid_group_memberships" "dev_team" {
group_id = pocketid_group.developers.id
user_ids = [
pocketid_user.john.id,
pocketid_user.jane.id,
pocketid_user.bob.id
]
}
Use Cases
- Automated user onboarding/offboarding
- Role-based access control setup
- Team management automation
- Compliance and audit requirements
- Dynamic group membership based on other infrastructure
Implementation Considerations
- Option 1 is simpler but requires managing all members at once
- Option 2 allows more granular control and better handles dynamic membership
- Need to handle membership conflicts gracefully
- Consider import functionality for existing memberships
- Update operations should handle additions and removals efficiently
API Integration
Need to identify the correct API endpoints for:
- Adding users to groups
- Removing users from groups
- Listing group members
- Bulk membership updates
Recommendation
Option 2 (separate resource) is recommended as it:
- Allows individual membership management
- Better handles dynamic scenarios
- Avoids conflicts when multiple resources manage the same group
- More aligned with Terraform patterns (like AWS IAM)
Feature Request: Group Membership Management
Enhance the existing group resource to support managing user-group memberships.
Current State
The current
pocketid_groupresource can:Missing Functionality
Cannot manage which users belong to which groups through Terraform.
Proposed Enhancement
Option 1: Add members attribute to group resource
Option 2: Create a separate membership resource
Use Cases
Implementation Considerations
API Integration
Need to identify the correct API endpoints for:
Recommendation
Option 2 (separate resource) is recommended as it: