diff --git a/.github/workflows/terraform-docs.yml b/.github/workflows/terraform-docs.yml
index a9cd45c..c0249c3 100644
--- a/.github/workflows/terraform-docs.yml
+++ b/.github/workflows/terraform-docs.yml
@@ -2,16 +2,17 @@
name: Generate terraform docs
on:
- pull_request
+
jobs:
docs:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.ref }}
- name: Render terraform docs
- uses: terraform-docs/gh-actions@v0.11.0
+ uses: terraform-docs/gh-actions@v1.0.0
with:
working-dir: .
output-file: README.md
diff --git a/README.md b/README.md
index e67e393..072322e 100644
--- a/README.md
+++ b/README.md
@@ -4,407 +4,89 @@
Terraform module for creating GitHub repositories
-## Experimental features
-
-This module uses the [experimental feature optional object type attributes](https://www.terraform.io/language/expressions/type-constraints#experimental-optional-object-type-attributes)
-
## Additional information
This module outputs attributes from the `github_repository` resource **and** data source. Because this module allows you to `auto_init` a repository and set a different `branch_default` than `main`, the resource is out of date from reality. For this reason, when the data source can provide the most up to date information on a repository attribute it will be used, and in cases where the data source doesn't provide the attribute value, the resource will be used.
## Requirements
-The following requirements are needed by this module:
-
-- [terraform](#requirement\_terraform) (~> 1.1)
-
-- [github](#requirement\_github) (~> 4.0)
-
-## Required Inputs
-
-The following input variables are required:
-
-### [name](#input\_name)
-
-Description: The name of the repository
-
-Type: `string`
-
-## Optional Inputs
-
-The following input variables are optional (have default values):
-
-### [allow\_auto\_merge](#input\_allow\_auto\_merge)
-
-Description: Set to true to allow auto-merging pull requests on the repository
-
-Type: `bool`
-
-Default: `false`
-
-### [allow\_merge\_commit](#input\_allow\_merge\_commit)
-
-Description: Set to false to disable merge commits on the repository
-
-Type: `bool`
-
-Default: `true`
-
-### [allow\_rebase\_merge](#input\_allow\_rebase\_merge)
-
-Description: Set to false to disable rebase merges on the repository
-
-Type: `bool`
-
-Default: `true`
-
-### [allow\_squash\_merge](#input\_allow\_squash\_merge)
-
-Description: Set to false to disable squash merges on the repository
-
-Type: `bool`
-
-Default: `true`
-
-### [archive\_on\_destroy](#input\_archive\_on\_destroy)
-
-Description: Set to true to archive the repository instead of deleting on destroy
-
-Type: `bool`
-
-Default: `false`
-
-### [archived](#input\_archived)
-
-Description: Specifies if the repository should be archived. Defaults to false
-
-Type: `bool`
-
-Default: `false`
-
-### [auto\_init](#input\_auto\_init)
-
-Description: Set to true to produce an initial commit in the repository
-
-Type: `bool`
-
-Default: `false`
-
-### [branch\_default](#input\_branch\_default)
-
-Description: The branch. Defaults to main
-
-Type: `string`
-
-Default: `"main"`
-
-### [branches](#input\_branches)
-
-Description: Branches to configure for the repository
-
-Type: `list(string)`
-
-Default:
-
-```json
-[
- "main"
-]
-```
-
-### [delete\_branch\_on\_merge](#input\_delete\_branch\_on\_merge)
-
-Description: Automatically delete head branch after a pull request is merged. Defaults to false
-
-Type: `bool`
-
-Default: `false`
-
-### [description](#input\_description)
-
-Description: A description of the repository
-
-Type: `string`
-
-Default: `null`
-
-### [gitignore\_template](#input\_gitignore\_template)
-
-Description: Use the name of the template without the extension. For example, 'Haskell'
-
-Type: `string`
-
-Default: `null`
-
-### [has\_downloads](#input\_has\_downloads)
-
-Description: Set to true to enable the (deprecated) downloads features on the repository
-
-Type: `bool`
-
-Default: `false`
-
-### [has\_issues](#input\_has\_issues)
-
-Description: Set to true to enable the GitHub Issues features on the repository
-
-Type: `bool`
-
-Default: `false`
-
-### [has\_projects](#input\_has\_projects)
-
-Description: Set to true to enable the GitHub Projects features on the repository. Per the GitHub documentation when in an organization that has disabled repository projects it will default to false and will otherwise default to true. If you specify true when it has been disabled it will return an error
-
-Type: `bool`
-
-Default: `false`
-
-### [has\_wiki](#input\_has\_wiki)
-
-Description: Set to true to enable the GitHub Wiki features on the repository
-
-Type: `bool`
-
-Default: `false`
-
-### [homepage\_url](#input\_homepage\_url)
-
-Description: URL of a page description the project
-
-Type: `string`
-
-Default: `null`
-
-### [ignore\_vulnerability\_alerts\_during\_read](#input\_ignore\_vulnerability\_alerts\_during\_read)
-
-Description: Set to true to not call the vulnerability alerts endpoint so the resource can also be used without admin permissions during read
-
-Type: `bool`
-
-Default: `false`
-
-### [is\_template](#input\_is\_template)
-
-Description: Set to true to tell GitHub that this is a template repository
-
-Type: `bool`
-
-Default: `false`
-
-### [license\_template](#input\_license\_template)
-
-Description: Use the name of the template without the extension. For example, 'mit' or 'mpl-2.0'
-
-Type: `string`
-
-Default: `null`
-
-### [pages](#input\_pages)
-
-Description: The repository's GitHub Pages configuration. See [GitHub Pages Configuration](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/repository#github-pages-configuration) for details.
-
-Type:
-
-```hcl
-object(
- {
- branch = string # The repository branch used to publish the site's source files
- path = optional(string) # The repository directory from which the site publishes
- }
- )
-```
-
-Default: `null`
-
-### [template](#input\_template)
-
-Description: Use a template repository to create this resource. See [Template Repositories](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/repository#template-repositories) for details.
-
-Type:
-
-```hcl
-object(
- {
- owner = string # The GitHub organization or user the template repository is owned by
- repository = string # The name of the template repository
- }
- )
-```
-
-Default: `null`
-
-### [topics](#input\_topics)
-
-Description: The list of topics of the repository
-
-Type: `list(string)`
-
-Default: `null`
-
-### [visibility](#input\_visibility)
-
-Description: Can be public or private. If your organization is associated with an enterprise account using GitHub Enterprise Cloud or GitHub Enterprise Server 2.20+, visibility can also be internal.
-
-Type: `string`
-
-Default: `"public"`
-
-### [vulnerability\_alerts](#input\_vulnerability\_alerts)
-
-Description: Set to true to enable security alerts for vulnerable dependencies. See [GitHub Documentation](https://help.github.com/en/github/managing-security-vulnerabilities/about-security-alerts-for-vulnerable-dependencies) for details
-
-Type: `bool`
-
-Default: `false`
+| Name | Version |
+|------|---------|
+| [terraform](#requirement\_terraform) | ~> 1.3 |
+| [github](#requirement\_github) | ~> 5.0 |
+
+## Inputs
+
+| Name | Description | Type | Default | Required |
+|------|-------------|------|---------|:--------:|
+| [name](#input\_name) | The name of the repository | `string` | n/a | yes |
+| [allow\_auto\_merge](#input\_allow\_auto\_merge) | Set to true to allow auto-merging pull requests on the repository | `bool` | `false` | no |
+| [allow\_merge\_commit](#input\_allow\_merge\_commit) | Set to false to disable merge commits on the repository | `bool` | `true` | no |
+| [allow\_rebase\_merge](#input\_allow\_rebase\_merge) | Set to false to disable rebase merges on the repository | `bool` | `true` | no |
+| [allow\_squash\_merge](#input\_allow\_squash\_merge) | Set to false to disable squash merges on the repository | `bool` | `true` | no |
+| [archive\_on\_destroy](#input\_archive\_on\_destroy) | Set to true to archive the repository instead of deleting on destroy | `bool` | `false` | no |
+| [archived](#input\_archived) | Specifies if the repository should be archived. Defaults to false | `bool` | `false` | no |
+| [auto\_init](#input\_auto\_init) | Set to true to produce an initial commit in the repository | `bool` | `false` | no |
+| [branch\_default](#input\_branch\_default) | The default branch. Defaults to `main` | `string` | `"main"` | no |
+| [branches](#input\_branches) | Branches to configure for the repository | `list(string)` | ```[ "main" ]``` | no |
+| [delete\_branch\_on\_merge](#input\_delete\_branch\_on\_merge) | Automatically delete head branch after a pull request is merged. Defaults to false | `bool` | `false` | no |
+| [description](#input\_description) | A description of the repository | `string` | `null` | no |
+| [gitignore\_template](#input\_gitignore\_template) | Use the name of the template without the extension. For example, 'Haskell' | `string` | `null` | no |
+| [has\_downloads](#input\_has\_downloads) | Set to true to enable the (deprecated) downloads features on the repository | `bool` | `false` | no |
+| [has\_issues](#input\_has\_issues) | Set to true to enable the GitHub Issues features on the repository | `bool` | `false` | no |
+| [has\_projects](#input\_has\_projects) | Set to true to enable the GitHub Projects features on the repository. Per the GitHub documentation when in an organization that has disabled repository projects it will default to false and will otherwise default to true. If you specify true when it has been disabled it will return an error | `bool` | `false` | no |
+| [has\_wiki](#input\_has\_wiki) | Set to true to enable the GitHub Wiki features on the repository | `bool` | `false` | no |
+| [homepage\_url](#input\_homepage\_url) | URL of a page description the project | `string` | `null` | no |
+| [ignore\_vulnerability\_alerts\_during\_read](#input\_ignore\_vulnerability\_alerts\_during\_read) | Set to true to not call the vulnerability alerts endpoint so the resource can also be used without admin permissions during read | `bool` | `false` | no |
+| [is\_template](#input\_is\_template) | Set to true to tell GitHub that this is a template repository | `bool` | `false` | no |
+| [license\_template](#input\_license\_template) | Use the name of the template without the extension. For example, 'mit' or 'mpl-2.0' | `string` | `null` | no |
+| [pages](#input\_pages) | The repository's GitHub Pages configuration. See [GitHub Pages Configuration](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/repository#github-pages-configuration) for details. | ```object( { branch = string # The repository branch used to publish the site's source files path = optional(string, "/") # The repository directory from which the site publishes } )``` | `null` | no |
+| [repository\_default\_branch](#input\_repository\_default\_branch) | GitHub and GitHub Enterprise organizations auto-initialize repositories with a default branch name. Default: `main` | `string` | `"main"` | no |
+| [template](#input\_template) | Use a template repository to create this resource. See [Template Repositories](https://registry.terraform.io/providers/integrations/github/latest/docs/resources/repository#template-repositories) for details. | ```object( { owner = string # The GitHub organization or user the template repository is owned by repository = string # The name of the template repository } )``` | `null` | no |
+| [topics](#input\_topics) | The list of topics of the repository | `list(string)` | `null` | no |
+| [visibility](#input\_visibility) | Can be public or private. If your organization is associated with an enterprise account using GitHub Enterprise Cloud or GitHub Enterprise Server 2.20+, visibility can also be internal. | `string` | `"public"` | no |
+| [vulnerability\_alerts](#input\_vulnerability\_alerts) | Set to true to enable security alerts for vulnerable dependencies. See [GitHub Documentation](https://help.github.com/en/github/managing-security-vulnerabilities/about-security-alerts-for-vulnerable-dependencies) for details | `bool` | `false` | no |
## Outputs
-The following outputs are exported:
-
-### [allow\_auto\_merge](#output\_allow\_auto\_merge)
-
-Description: Repository auto merge value
-
-### [allow\_merge\_commit](#output\_allow\_merge\_commit)
-
-Description: Repository merge commit value
-
-### [allow\_rebase\_merge](#output\_allow\_rebase\_merge)
-
-Description: Repository rebase merge value
-
-### [allow\_squash\_merge](#output\_allow\_squash\_merge)
-
-Description: Repository squash merge value
-
-### [archive\_on\_destroy](#output\_archive\_on\_destroy)
-
-Description: Archive repository on destruction
-
-### [archived](#output\_archived)
-
-Description: Repository is archied
-
-### [auto\_init](#output\_auto\_init)
-
-Description: Auto initialize repository
-
-### [branches](#output\_branches)
-
-Description: Repository branches
-
-### [default\_branch](#output\_default\_branch)
-
-Description: Repository default branch
-
-### [delete\_branch\_on\_merge](#output\_delete\_branch\_on\_merge)
-
-Description: Repository delete branch on merge value
-
-### [description](#output\_description)
-
-Description: Repository description
-
-### [full\_name](#output\_full\_name)
-
-Description: Repository full name
-
-### [git\_clone\_url](#output\_git\_clone\_url)
-
-Description: Repository git clone URL
-
-### [gitignore\_template](#output\_gitignore\_template)
-
-Description: Repository gitignore template
-
-### [has\_downloads](#output\_has\_downloads)
-
-Description: Repository download feature value
-
-### [has\_issues](#output\_has\_issues)
-
-Description: Repository issues feature value
-
-### [has\_projects](#output\_has\_projects)
-
-Description: Repository projects feature value
-
-### [has\_wiki](#output\_has\_wiki)
-
-Description: Repository wiki feature value
-
-### [homepage\_url](#output\_homepage\_url)
-
-Description: Repository homepage URL
-
-### [html\_url](#output\_html\_url)
-
-Description: Repository HTML URL
-
-### [http\_clone\_url](#output\_http\_clone\_url)
-
-Description: Repository HTTP clone URL
-
-### [id](#output\_id)
-
-Description: Repository ID
-
-### [ignore\_vulnerability\_alerts\_during\_read](#output\_ignore\_vulnerability\_alerts\_during\_read)
-
-Description: Repository ignore vulnerability alerts during read value
-
-### [is\_template](#output\_is\_template)
-
-Description: Repository template value
-
-### [license\_template](#output\_license\_template)
-
-Description: Repository license template value
-
-### [name](#output\_name)
-
-Description: Repository name
-
-### [node\_id](#output\_node\_id)
-
-Description: Repository node ID
-
-### [pages](#output\_pages)
-
-Description: Repository pages value
-
-### [repo\_id](#output\_repo\_id)
-
-Description: Repository ID
-
-### [repository](#output\_repository)
-
-Description: Full repository object from data source
-
-### [ssh\_clone\_url](#output\_ssh\_clone\_url)
-
-Description: Repository SSH clone URL
-
-### [svn\_url](#output\_svn\_url)
-
-Description: Repository SVN URL
-
-### [template](#output\_template)
-
-Description: Repository template value
-
-### [topics](#output\_topics)
-
-Description: Repository topics
-
-### [visibility](#output\_visibility)
-
-Description: Repository visibility (replaces `private`)
-
-### [vulnerability\_alerts](#output\_vulnerability\_alerts)
-
-Description: Repository vulnerability alerts
+| Name | Description |
+|------|-------------|
+| [allow\_auto\_merge](#output\_allow\_auto\_merge) | Repository auto merge value |
+| [allow\_merge\_commit](#output\_allow\_merge\_commit) | Repository merge commit value |
+| [allow\_rebase\_merge](#output\_allow\_rebase\_merge) | Repository rebase merge value |
+| [allow\_squash\_merge](#output\_allow\_squash\_merge) | Repository squash merge value |
+| [archive\_on\_destroy](#output\_archive\_on\_destroy) | Archive repository on destruction |
+| [archived](#output\_archived) | Repository is archied |
+| [auto\_init](#output\_auto\_init) | Auto initialize repository |
+| [branches](#output\_branches) | Repository branches |
+| [default\_branch](#output\_default\_branch) | Repository default branch |
+| [delete\_branch\_on\_merge](#output\_delete\_branch\_on\_merge) | Repository delete branch on merge value |
+| [description](#output\_description) | Repository description |
+| [full\_name](#output\_full\_name) | Repository full name |
+| [git\_clone\_url](#output\_git\_clone\_url) | Repository git clone URL |
+| [gitignore\_template](#output\_gitignore\_template) | Repository gitignore template |
+| [has\_downloads](#output\_has\_downloads) | Repository download feature value |
+| [has\_issues](#output\_has\_issues) | Repository issues feature value |
+| [has\_projects](#output\_has\_projects) | Repository projects feature value |
+| [has\_wiki](#output\_has\_wiki) | Repository wiki feature value |
+| [homepage\_url](#output\_homepage\_url) | Repository homepage URL |
+| [html\_url](#output\_html\_url) | Repository HTML URL |
+| [http\_clone\_url](#output\_http\_clone\_url) | Repository HTTP clone URL |
+| [id](#output\_id) | Repository ID |
+| [ignore\_vulnerability\_alerts\_during\_read](#output\_ignore\_vulnerability\_alerts\_during\_read) | Repository ignore vulnerability alerts during read value |
+| [is\_template](#output\_is\_template) | Repository template value |
+| [license\_template](#output\_license\_template) | Repository license template value |
+| [name](#output\_name) | Repository name |
+| [node\_id](#output\_node\_id) | Repository node ID |
+| [pages](#output\_pages) | Repository pages value |
+| [repo\_id](#output\_repo\_id) | Repository ID |
+| [repository](#output\_repository) | Full repository object from resource and data source |
+| [ssh\_clone\_url](#output\_ssh\_clone\_url) | Repository SSH clone URL |
+| [svn\_url](#output\_svn\_url) | Repository SVN URL |
+| [template](#output\_template) | Repository template value |
+| [topics](#output\_topics) | Repository topics |
+| [visibility](#output\_visibility) | Repository visibility (replaces `private`) |
+| [vulnerability\_alerts](#output\_vulnerability\_alerts) | Repository vulnerability alerts |
## Contributing
diff --git a/header.txt b/header.txt
index 4f6acad..541b121 100644
--- a/header.txt
+++ b/header.txt
@@ -3,10 +3,6 @@
Terraform module for creating GitHub repositories
-## Experimental features
-
-This module uses the [experimental feature optional object type attributes](https://www.terraform.io/language/expressions/type-constraints#experimental-optional-object-type-attributes)
-
## Additional information
This module outputs attributes from the `github_repository` resource **and** data source. Because this module allows you to `auto_init` a repository and set a different `branch_default` than `main`, the resource is out of date from reality. For this reason, when the data source can provide the most up to date information on a repository attribute it will be used, and in cases where the data source doesn't provide the attribute value, the resource will be used.