diff --git a/README.md b/README.md
index 249800eb..091e0245 100644
--- a/README.md
+++ b/README.md
@@ -18,11 +18,19 @@ Requirements
Usage
-----
-For Terraform 0.12+ compatibility, the configuration should specifiy version 2 or higher:
+For Terraform 0.11 compatibility, the configuration should specify version 3 or lower:
```hcl-terraform
provider "heroku" {
- version = "~> 2.0"
+ version = "~> 3.0"
+}
+```
+
+Otherwise, the configuration should specify version 4 or higher:
+
+```hcl-terraform
+provider "heroku" {
+ version = "~> 4.0"
}
```
@@ -31,7 +39,9 @@ provider "heroku" {
Development
-----------
-If you wish to work on the provider, you'll first need [Go](http://www.golang.org) installed on your machine (version 1.12+ is *required*). You'll also need to correctly setup a [GOPATH](http://golang.org/doc/code.html#GOPATH), as well as adding `$GOPATH/bin` to your `$PATH`.
+If you wish to work on the provider, you'll first need [Go](http://www.golang.org) installed on your machine
+(version 1.15+ is *required*). You'll also need to correctly setup a [GOPATH](http://golang.org/doc/code.html#GOPATH),
+as well as adding `$GOPATH/bin` to your `$PATH`.
### Clone the Provider
diff --git a/docs/resources/account_feature.md b/docs/resources/account_feature.md
index edbf2759..e7accac3 100644
--- a/docs/resources/account_feature.md
+++ b/docs/resources/account_feature.md
@@ -34,7 +34,6 @@ resource "heroku_account_feature" "example_metrics" {
The following arguments are supported:
* `name` - (Required) Name of the account feature
-
* `enabled` - (Required) Enable or disable the account feature
## Attributes Reference
@@ -42,9 +41,7 @@ The following arguments are supported:
The following attributes are exported:
* `id` - Comprised of acount email & feature name
-
* `description` - Description of account feature
-
* `state` - State of account feature
## Import
diff --git a/docs/resources/addon.md b/docs/resources/addon.md
index e8955e7c..3d77dd06 100644
--- a/docs/resources/addon.md
+++ b/docs/resources/addon.md
@@ -41,11 +41,8 @@ resource "heroku_addon" "webhook" {
The following arguments are supported:
* `app` - (Required) The Heroku app to add to.
-
* `plan` - (Required) The addon to add.
-
* `config` - (Optional) Optional plan configuration.
-
* `name` - (Optional) Globally unique name of the add-on.
## Attributes Reference
@@ -53,16 +50,11 @@ The following arguments are supported:
The following attributes are exported:
* `id` - The ID of the add-on
-
* `name` - The add-on name
-
* `plan` - The plan name
-
* `provider_id` - The ID of the plan provider
-
* `config_vars` - The Configuration variables of the add-on
-
## Import
Addons can be imported using the Addon `id`, e.g.
diff --git a/docs/resources/addon_attachment.md b/docs/resources/addon_attachment.md
index 22d12752..88a1ed56 100644
--- a/docs/resources/addon_attachment.md
+++ b/docs/resources/addon_attachment.md
@@ -32,11 +32,8 @@ resource "heroku_addon_attachment" "database_credentials" {
The following arguments are supported:
* `app_id` - (Required) The ID of the Heroku App to attach to.
-
* `addon_id` - (Required) The ID of the existing Heroku Addon to attach.
-
* `name` - (Optional) A friendly name for the Heroku Addon Attachment.
-
* `namespace` - (Optional) The namespace value for the Heroku Addon Attachment. This can be used to configure the behaviour of the attachment. See [Heroku Platform API Reference](https://devcenter.heroku.com/articles/platform-api-reference#add-on-attachment-create)
## Attributes Reference
diff --git a/docs/resources/app.md b/docs/resources/app.md
index a5f5ce46..ebafb54a 100644
--- a/docs/resources/app.md
+++ b/docs/resources/app.md
@@ -48,44 +48,32 @@ The following arguments are supported:
* `name` - (Required) The name of the application. In Heroku, this is also the
unique ID, so it must be unique and have a minimum of 3 characters.
-
* `region` - (Required) The region that the app should be deployed in.
-
* `stack` - (Optional) The application stack is what platform to run the application in.
-
* `buildpacks` - (Optional) Buildpack names or URLs for the application.
Buildpacks configured externally won't be altered if this is not present.
-
* `config_vars`[1](#deleting-vars) - (Optional) Configuration variables for the application.
The config variables in this map are not the final set of configuration
variables, but rather variables you want present. That is, other
configuration variables set externally won't be removed by Terraform
if they aren't present in this list.
-
* `sensitive_config_vars`[1](#deleting-vars) - (Optional) This argument is the same as `config_vars`.
The main difference between the two is when `sensitive_config_vars` outputs
are displayed on-screen following a terraform apply or terraform refresh,
they are redacted, with displayed in place of their value.
It is recommended to put private keys, passwords, etc in this argument.
-
* `space` - (Optional) The name of a private space to create the app in.
-
* `internal_routing` - (Optional) If true, the application will be routable
only internally in a private space. This option is only available for apps
that also specify `space`.
-
* `organization` - (Optional) A block that can be specified once to define
Heroku Team settings for this app. The fields for this block are
documented below.
-
* `acm` - (Optional) The flag representing Automated Certificate Management for the app.
The `organization` block supports:
-
* `name` (string) - The name of the Heroku Team.
-
* `locked` (boolean) - Are other team members forbidden from joining this app.
-
* `personal` (boolean) - Force creation of the app in the user account even if a default team is set.
### Deleting vars
@@ -104,31 +92,21 @@ config vars to `heroku_app_config_association` resource.
The following attributes are exported:
* `id` - The ID of the app. This is also the name of the app.
-
* `name` - The name of the application.
-
* `stack` - The application stack is what platform to run the application in.
-
* `space` - The private space the app should run in.
-
* `internal_routing` - Whether internal routing is enabled the private space app.
-
* `region` - The region that the app should be deployed in.
-
* `git_url` - The Git URL for the application. This is used for
deploying new versions of the app.
-
* `web_url` - The web (HTTP) URL that the application can be accessed
at by default.
-
* `heroku_hostname` - A hostname for the Heroku application, suitable
for pointing DNS records.
-
* `all_config_vars` - A map of all of the configuration variables that
exist for the app, containing both those set by Terraform and those
set externally. (These are treated as "sensitive" so that
their values are redacted in console output.)
-
* `uuid` - The unique UUID of the Heroku app. **NOTE:** Use this for `null_resource` triggers.
## Import
diff --git a/docs/resources/app_config_association.md b/docs/resources/app_config_association.md
index b5a75258..6f041001 100644
--- a/docs/resources/app_config_association.md
+++ b/docs/resources/app_config_association.md
@@ -69,9 +69,7 @@ resource "heroku_app_config_association" "foobar2" {
## Argument Reference
* `app_id` - (Required) A Heroku app's `UUID`. Can also be the name of the Heroku app but `UUID` is preferred as it is idempotent.
-
* `vars` - Map of config vars that can be output in plaintext.
-
* `sensitive_vars` - This is the same as `vars`. The main difference between the two
attributes is `sensitive_vars` outputs are redacted on-screen and replaced by a placeholder, following a terraform
plan or apply. It is recommended to put private keys, passwords, etc in this argument.
diff --git a/docs/resources/app_feature.md b/docs/resources/app_feature.md
index 23476387..969183b1 100644
--- a/docs/resources/app_feature.md
+++ b/docs/resources/app_feature.md
@@ -32,9 +32,7 @@ resource "heroku_app_feature" "log_runtime_metrics" {
The following arguments are supported:
* `app` - (Required) The Heroku app to link to.
-
* `name` - (Required) The name of the App Feature to manage.
-
* `enabled` - (Optional) Whether to enable or disable the App Feature. The default value is true.
## Import
diff --git a/docs/resources/app_release.md b/docs/resources/app_release.md
index f0b7748e..47fb8359 100644
--- a/docs/resources/app_release.md
+++ b/docs/resources/app_release.md
@@ -37,9 +37,7 @@ resource "heroku_app_release" "foobar-release" {
The following arguments are supported:
* `app` - (Required) The name of the application
-
* `slug_id` - unique identifier of slug
-
* `description` - description of changes in this release
## Attributes Reference
diff --git a/docs/resources/formation.md b/docs/resources/formation.md
index 1ee1d0d0..d13b6297 100644
--- a/docs/resources/formation.md
+++ b/docs/resources/formation.md
@@ -50,11 +50,8 @@ resource "heroku_formation" "foobar-web" {
## Argument Reference
* `app` - (Required) The name of the application
-
* `type` - (Required) type of process such as "web"
-
* `quantity` - (Required) number of processes to maintain
-
* `size` - (Required) dyno size (Example: “standard-1X”). Capitalization does not matter.
## Attributes Reference
diff --git a/docs/resources/pipeline.md b/docs/resources/pipeline.md
index c4d22b75..50dcb960 100644
--- a/docs/resources/pipeline.md
+++ b/docs/resources/pipeline.md
@@ -60,7 +60,6 @@ resource "heroku_pipeline_coupling" "production" {
The following arguments are supported:
* `name` - (Required) The name of the pipeline.
-
* `owner` - (Required) The owner of the pipeline. This block as the following required attributes:
* `id` - (Required) The unique identifier (UUID) of a pipeline owner.
* `type` - (Required) The type of pipeline owner. Can be either `user` or `team`.
diff --git a/docs/resources/pipeline_config_var.md b/docs/resources/pipeline_config_var.md
index 3980e98d..699bfe5e 100644
--- a/docs/resources/pipeline_config_var.md
+++ b/docs/resources/pipeline_config_var.md
@@ -45,11 +45,8 @@ resource "heroku_pipeline_config_var" "configs" {
The following arguments are supported:
* `pipeline_id` - (Required) The UUID of an existing pipeline.
-
* `pipeline_stage` - (Required) The pipeline's stage. Supported values are `test` & `review`.
-
* `vars` - Map of config vars that can be output in plaintext.
-
* `sensitive_vars` - This is the same as `vars`. The main difference between the two attributes is `sensitive_vars` outputs
are redacted on-screen and replaced by a `` placeholder, following a terraform `plan` or `apply`.
It is recommended to put private keys, passwords, etc in this argument.