-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #72 from DopplerHQ/rgharris/group-members
Add resources for managing users in groups
- Loading branch information
Showing
16 changed files
with
450 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
--- | ||
page_title: "doppler_user Data Source - terraform-provider-doppler" | ||
subcategory: "User" | ||
description: |- | ||
Retrieve a Doppler user | ||
--- | ||
|
||
# doppler_user (Data Source) | ||
|
||
Retrieve all secrets in the config. | ||
|
||
## Example Usage | ||
|
||
```terraform | ||
data "doppler_user" "nic" { | ||
email = "[email protected]" | ||
} | ||
``` | ||
|
||
<!-- schema generated by tfplugindocs --> | ||
## Schema | ||
|
||
### Required | ||
|
||
- `email` (String) The email address of the Doppler user | ||
|
||
### Read-Only | ||
|
||
- `id` (String) The ID of this resource. | ||
- `slug` (String) The slug of the Doppler user |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -17,7 +17,6 @@ provider "doppler" { | |
``` | ||
|
||
<!-- schema generated by tfplugindocs --> | ||
|
||
## Schema | ||
|
||
### Required | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
--- | ||
page_title: "doppler_group_member Resource - terraform-provider-doppler" | ||
subcategory: "" | ||
description: |- | ||
Manage a Doppler user/group membership. | ||
--- | ||
|
||
# doppler_group_member (Resource) | ||
|
||
Manage a Doppler user/group membership. | ||
|
||
## Example Usage | ||
|
||
```terraform | ||
resource "doppler_group" "engineering" { | ||
name = "engineering" | ||
} | ||
data "doppler_user" "nic" { | ||
email = "[email protected]" | ||
} | ||
data "doppler_user" "andre" { | ||
email = "[email protected]" | ||
} | ||
resource "doppler_group_member" "engineering" { | ||
for_each = toset([data.doppler_user.nic.slug, data.doppler_user.andre.slug]) | ||
group_slug = doppler_group.engineering.slug | ||
user_slug = each.value | ||
} | ||
``` | ||
|
||
<!-- schema generated by tfplugindocs --> | ||
## Schema | ||
|
||
### Required | ||
|
||
- `group_slug` (String) The slug of the Doppler group | ||
- `user_slug` (String) The slug of the Doppler workplace user | ||
|
||
### Read-Only | ||
|
||
- `id` (String) The ID of this resource. | ||
|
||
## Resource ID Format | ||
|
||
Resource IDs are in the format `<group_slug>.workplace_user.<user_slug>`. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
package doppler | ||
|
||
import ( | ||
"context" | ||
|
||
"github.com/hashicorp/terraform-plugin-sdk/v2/diag" | ||
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" | ||
) | ||
|
||
func dataSourceUserRead(ctx context.Context, d *schema.ResourceData, m interface{}) diag.Diagnostics { | ||
var diags diag.Diagnostics | ||
client := m.(APIClient) | ||
|
||
result, err := client.GetWorkplaceUser(ctx, d.Get("email").(string)) | ||
if err != nil { | ||
return diag.FromErr(err) | ||
} | ||
|
||
d.SetId(result.Slug) | ||
if err := d.Set("slug", result.Slug); err != nil { | ||
return diag.FromErr(err) | ||
} | ||
|
||
return diags | ||
} | ||
|
||
func dataSourceUser() *schema.Resource { | ||
return &schema.Resource{ | ||
ReadContext: dataSourceUserRead, | ||
Schema: map[string]*schema.Schema{ | ||
"slug": { | ||
Description: "The slug of the Doppler user", | ||
Type: schema.TypeString, | ||
Computed: true, | ||
}, | ||
"email": { | ||
Description: "The email address of the Doppler user", | ||
Type: schema.TypeString, | ||
Required: true, | ||
}, | ||
}, | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.