# terraform-github-membership

This module adds GitHub user to GitHub organization and teams within GitHub organization.

## General usage

```hcl
data "github_team" "admins_team" {
  slug = "admins"
}

module "johndoe_github_member" {
  source = "git@github.com:theorchard/terraform-github-membership.git//?ref=2.0.0"
  
  username = "johndoe"
  role     = "admin"
}
```

## Requirements

| Name | Version   |
|------|-----------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.12.2 |
| <a name="requirement_github"></a> [github](#requirement\_github) | ~> 6.6.0  |

## Providers

| Name | Version  |
|------|----------|
| <a name="provider_github"></a> [github](#provider\_github) | ~> 6.6.0 |

## Modules

No modules.

## Resources

| Name | Type |
|------|------|
| [github_membership.this](https://registry.terraform.io/providers/integrations/github/5.18.0/docs/resources/membership) | resource |

## Inputs

| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| <a name="input_role"></a> [role](#input\_role) | (Optional) The role of the user within the organization. Must be one of member or admin. Defaults to member. | `string` | `"member"` | no |
| <a name="input_username"></a> [username](#input\_username) | (Required) The user to add to the organization. | `string` | n/a | yes |

## Outputs

| Name | Description |
|------|-------------|
| <a name="output_github_membership_output"></a> [github\_membership\_output](#output\_github\_membership\_output) | n/a |
