Commit Graph

917 Commits

Author SHA1 Message Date
Marc Rooding c2b657a039 kubernetes: Add secret resource (#12960) 2017-03-30 09:24:40 +01:00
tombuildsstuff 7aecce4408 Hooking up the OracleOPC Docs 2017-03-29 19:30:04 +02:00
Brandon Tosch 380f55b8a9 Merge branch 'master' into brandontosch/GH-11874 2017-03-28 17:29:47 -07:00
Radek Simko 545013a784 docs/state: Sensitive data in state file (#13132) 2017-03-28 20:12:32 +01:00
Radek Simko 0fb54957fe docs/google: Fix sidebar highlighting for service account (#13116) 2017-03-28 13:00:09 +01:00
Joe Topjian 0edbedd1a8 random_pet resource (#12903)
* vendor: adding golang-petname for random_pet resource

* provider/random: random_pet resource
2017-03-27 12:50:39 +03:00
Brandon Tosch 0168829ecb Merge branch 'master' into brandontosch/GH-11874 2017-03-23 13:07:49 -07:00
Dana Hoffman 0f02bcc56e Add link to node pool documentation to sidebar 2017-03-21 15:37:31 -07:00
Gauthier Wallet ae2c7a5f0b provider/aws: Added Usage Plan Key resource (#12851)
* provider/aws: Added Usage Plan Key resource

* provider/aws: Added usage plan import documentation
2017-03-20 13:54:14 +00:00
Gauthier Wallet 323f646b42 provider/aws: Added API Gateway Usage Plan (#12542)
* Added api_gateway_usage_plan

* Updated documentation

* Fixed AWS usage plan review points
2017-03-18 14:18:19 +00:00
Alan Braithwaite 30bc2d930b docs: update Cloudflare casing (#12844)
It changed with the logo, for brand reasons.

https://www.cloudflare.com/trademark/
2017-03-18 12:34:07 +00:00
clint shryock 628dd2a1a4 Merge branch 'pr-12744'
* pr-12744:
  gofmt a file
  Adding data sources to DNS docs.
  Adding docs for data sources.
  Adding data sources to dns provider.
2017-03-16 11:03:38 -05:00
Radek Simko 5f70ffb3b4 kubernetes: Add config_map resource (#12753) 2017-03-16 14:51:01 +00:00
Jason Lotito 9bf3586b40 Add navigation for aws_instance documentation (#12750)
aws_instance documentation is currently available on the site; however, a link is not provided via the navigation under the data sources section.  This adds that link.
2017-03-16 10:12:39 +02:00
Radek Simko 4448e45678 Merge pull request #12372 from hashicorp/f-kubernetes
kubernetes: Add provider + namespace resource
2017-03-16 07:18:39 +00:00
Brad Sickles 2d2bea7878 Adding data sources to DNS docs. 2017-03-15 18:31:50 -04:00
clint shryock 018ec10e36 docs: fix some broken links related to remote state 2017-03-15 13:31:10 -05:00
Raphaël Pinson cfb8f8326a Add documentation for rancher_host (#12693) 2017-03-15 16:25:47 +02:00
Raphaël Pinson 8ccd38013e Add rancher_certificate resource type (#12717) 2017-03-15 16:22:34 +02:00
Mitchell Hashimoto 59baa13953
website: document remote backends in intro 2017-03-14 17:41:45 -07:00
Brian Flad 3e817e019f
provider/datadog: Add datadog_downtime resource (#10994)
* provider/datadog: Initial datadog_downtime resource

* provider/datadog: Update datadog_downtime resource to v2 library, fix recurrence handling

* provider/datadog: Fix datadog_downtime import test
2017-03-14 19:22:35 +02:00
Matt Dainty c5ea37c0ee Add `aws_iam_account_alias` resource (#12648) 2017-03-14 15:35:38 +02:00
Radek Simko f1db0fcf9b
kubernetes: Add provider + namespace resource 2017-03-13 21:19:17 +00:00
Sean Chittenden 17fb98afa2 Circonus Provider (#12338)
* Begin stubbing out the Circonus provider.

* Remove all references to `reverse:secret_key`.

This value is dynamically set by the service and unused by Terraform.

* Update the `circonus_check` resource.

Still a WIP.

* Add docs for the `circonus_check` resource.

Commit miss, this should have been included in the last commit.

* "Fix" serializing check tags

I still need to figure out how I can make them order agnostic w/o using
a TypeSet.  I'm worried that's what I'm going to have to do.

* Spike a quick circonus_broker data source.

* Convert tags to a Set so the order does not matter.

* Add a `circonus_account` data source.

* Correctly spell account.

Pointed out by: @postwait

* Add the `circonus_contact_group` resource.

* Push descriptions into their own file in order to reduce the busyness of the schema when reviewing code.

* Rename `circonus_broker` and `broker` to `circonus_collector` and `collector`, respectively.

Change made with concent by Circonus to reduce confusion (@postwait, @maier, and several others).

* Use upstream contsants where available.

* Import the latest circonus-gometrics.

* Move to using a Set of collectors vs a list attached to a single attribute.

* Rename "cid" to "id" in the circonus_account data source and elsewhere
where possible.

* Inject a tag automatically.  Update gometrics.

* Checkpoint `circonus_metric` resource.

* Enable provider-level auto-tagging.  This is disabled by default.

* Rearrange metric.  This is an experimental "style" of a provider.  We'll see.

That moment. When you think you've gone off the rails on a mad scientist
experiment but like the outcome and think you may be onto something but
haven't proven it to yourself or anyone else yet?  That.  That exact
feeling of semi-confidence while being alone in the wilderness.  Please
let this not be the Terraform provider equivalent of DJB's C style of
coding.

We'll know in another resource or two if this was a horrible mistake or
not.

* Begin moving `resource_circonus_check` over to the new world order/structure:

Much of this is WIP and incomplete, but here is the new supported
structure:

```
variable "used_metric_name" {
  default = "_usage`0`_used"
}

resource "circonus_check" "usage" {
  # collectors = ["${var.collectors}"]
  collector {
    id = "${var.collectors[0]}"
  }

  name       = "${var.check_name}"
  notes      = "${var.notes}"

  json {
    url = "https://${var.target}/account/current"

    http_headers = {
      "Accept"                = "application/json"
      "X-Circonus-App-Name"   = "TerraformCheck"
      "X-Circonus-Auth-Token" = "${var.api_token}"
    }
  }

  stream {
    name = "${circonus_metric.used.name}"
    tags = "${circonus_metric.used.tags}"
    type = "${circonus_metric.used.type}"
  }

  tags = {
    source = "circonus"
  }
}

resource "circonus_metric" "used" {
  name = "${var.used_metric_name}"

  tags = {
    source = "circonus"
  }

  type = "numeric"
}
```

* Document the `circonus_metric` resource.

* Updated `circonus_check` docs.

* If a port was present, automatically set it in the Config.

* Alpha sort the check parameters now that they've been renamed.

* Fix a handful of panics as a result of the schema changing.

* Move back to a `TypeSet` for tags.  After a stint with `TypeMap`, move
back to `TypeSet`.

A set of strings seems to match the API the best.  The `map` type was
convenient because it reduced the amount of boilerplate, but you loose
out on other things.  For instance, tags come in the form of
`category:value`, so naturally it seems like you could use a map, but
you can't without severe loss of functionality because assigning two
values to the same category is common.  And you can't normalize map
input or suppress the output correctly (this was eventually what broke
the camel's back).  I tried an experiment of normalizing the input to be
`category:value` as the key in the map and a value of `""`, but... seee
diff suppress.  In this case, simple is good.

While here bring some cleanups to _Metric since that was my initial
testing target.

* Rename `providerConfig` to `_ProviderConfig`

* Checkpoint the `json` check type.

* Fix a few residual issues re: missing descriptions.

* Rename `validateRegexp` to `_ValidateRegexp`

* Use tags as real sets, not just a slice of strings.

* Move the DiffSuppressFunc for tags down to the Elem.

* Fix up unit tests to chase the updated, default hasher function being used.

* Remove `Computed` attribute from `TypeSet` objects.

This fixes a pile of issues re: update that I was having.

* Rename functions.

`GetStringOk` -> `GetStringOK`
`GetSetAsListOk` -> `GetSetAsListOK`
`GetIntOk` -> `GetIntOK`

* Various small cleanups and comments rolled into a single commit.

* Add a `postgresql` check type for the `circonus_check` resource.

* Rename various validator functions to be _CapitalCase vs capitalCase.

* Err... finish the validator renames.

* Add `GetFloat64()` support.

* Add `icmp_ping` check type support.

* Catch up to the _API*Attr renames.

Deliberately left out of the previous commit in order to create a clean
example of what is required to add a new check type to the
`circonus_check` resource.

* Clarify when the `target` attribute is required for the `postgresql`
check type.

* Correctly pull the metric ID attribute from the right location.

* Add a circonus_stream_group resource (a.k.a. a Circonus "metric cluster")

* Add support for the [`caql`](https://login.circonus.com/user/docs/caql_reference) check type.

* Add support for the `http` check type.

* `s/SSL/TLS/g`

* Add support for `tcp` check types.

* Enumerate the available metrics that are supported for each check type.

* Add [`cloudwatch`](https://login.circonus.com/user/docs/Data/CheckTypes/CloudWatch) check type support.

* Add a `circonus_trigger` resource (a.k.a Circonus Ruleset).

* Rename a handful of functions to make it clear in the function name the
direction of flow for information moving through the provider.

TL;DR: Replace `parse` and `read` with "foo to bar"-like names.

* Fix the attribute name used in a validator.  Absent != After.

* Set the minimum `absent` predicate to 70s per testing.

* Fix the regression tests for circonus_trigger now that absent has a 70s min

* Fix up the `tcp` check to require a `host` attribute.

Fix tests.  It's clear I didn't run these before committing/pushing the
`tcp` check last time.

* Fix `circonus_check` for `cloudwatch` checks.

* Rename `parsePerCheckTypeConfig()` to `_CheckConfigToAPI` to be
consistent with other function names.

grep(1)ability of code++

* Slack buttons as an integer are string encoded.

* Fix updates for `circonus_contact`.

* Fix the out parameters for contact groups.

* Move to using `_CastSchemaToTF()` where appropriate.

* Fix circonus_contact_group.  Updates work as expected now.

* Use `_StateSet()` in place of `d.Set()` everywhere.

* Make a quick pass over the collector datasource to modernize its style

* Quick pass for items identified by `golint`.

* Fix up collectors

* Fix the `json` check type.

Reconcile possible sources of drift.  Update now works as expected.

* Normalize trigger durations to seconds.

* Improve the robustness of the state handling for the `circonus_contact_group` resource.

* I'm torn on this, but sort the contact groups in the notify list.

This does mean that if the first contact group in the list has a higher
lexical sort order the plan won't converge until the offending resource
is tainted and recreated.  But there's also some sorting happening
elsewhere, so.... sort and taint for now and this will need to be
revisited in the future.

* Add support for the `httptrap` check type.

* Remove empty units from the state file.

* Metric clusters can return a 404.  Detect this accordingly in its
respective Exists handler.

* Add a `circonus_graph` resource.

* Fix a handful of bugs in the graph provider.

* Re-enable the necessary `ConflictsWith` definitions and normalize attribute names.

* Objects that have been deleted via the UI return a 404. Handle in Exists().

* Teach `circonus_graph`'s Stack set to accept nil values.

* Set `ForceNew: true` for a graph's name.

* Chase various API fixes required to make `circonus_graph` work as expected.

* Fix up the handling of sub-1 zoom resolutions for graphs.

* Add the `check_by_collector` out parameter to the `circonus_check` resource.

* Improve validation of line vs area graphs.  Fix graph_style.

* Fix up the `logarithmic` graph axis option.

* Resolve various trivial `go vet` issues.

* Add a stream_group out parameter.

* Remove incorrectly applied `Optional` attributes to the `circonus_account` resource.

* Remove various `Optional` attributes from the `circonus_collector` data source.

* Centralize the common need to suppress leading and trailing whitespace into `suppressWhitespace`.

* Sync up with upstream vendor fixes for circonus_graph.

* Update the checksum value for the http check.

* Chase `circonus_graph`'s underlying `line_style` API object change from `string` to `*string`.

* Clean up tests to use a generic terraform regression testing account.

* Add support for the MySQL to the `circonus_check` resource.

* Begin stubbing out the Circonus provider.

* Remove all references to `reverse:secret_key`.

This value is dynamically set by the service and unused by Terraform.

* Update the `circonus_check` resource.

Still a WIP.

* Add docs for the `circonus_check` resource.

Commit miss, this should have been included in the last commit.

* "Fix" serializing check tags

I still need to figure out how I can make them order agnostic w/o using
a TypeSet.  I'm worried that's what I'm going to have to do.

* Spike a quick circonus_broker data source.

* Convert tags to a Set so the order does not matter.

* Add a `circonus_account` data source.

* Correctly spell account.

Pointed out by: @postwait

* Add the `circonus_contact_group` resource.

* Push descriptions into their own file in order to reduce the busyness of the schema when reviewing code.

* Rename `circonus_broker` and `broker` to `circonus_collector` and `collector`, respectively.

Change made with concent by Circonus to reduce confusion (@postwait, @maier, and several others).

* Use upstream contsants where available.

* Import the latest circonus-gometrics.

* Move to using a Set of collectors vs a list attached to a single attribute.

* Rename "cid" to "id" in the circonus_account data source and elsewhere
where possible.

* Inject a tag automatically.  Update gometrics.

* Checkpoint `circonus_metric` resource.

* Enable provider-level auto-tagging.  This is disabled by default.

* Rearrange metric.  This is an experimental "style" of a provider.  We'll see.

That moment. When you think you've gone off the rails on a mad scientist
experiment but like the outcome and think you may be onto something but
haven't proven it to yourself or anyone else yet?  That.  That exact
feeling of semi-confidence while being alone in the wilderness.  Please
let this not be the Terraform provider equivalent of DJB's C style of
coding.

We'll know in another resource or two if this was a horrible mistake or
not.

* Begin moving `resource_circonus_check` over to the new world order/structure:

Much of this is WIP and incomplete, but here is the new supported
structure:

```
variable "used_metric_name" {
  default = "_usage`0`_used"
}

resource "circonus_check" "usage" {
  # collectors = ["${var.collectors}"]
  collector {
    id = "${var.collectors[0]}"
  }

  name       = "${var.check_name}"
  notes      = "${var.notes}"

  json {
    url = "https://${var.target}/account/current"

    http_headers = {
      "Accept"                = "application/json"
      "X-Circonus-App-Name"   = "TerraformCheck"
      "X-Circonus-Auth-Token" = "${var.api_token}"
    }
  }

  stream {
    name = "${circonus_metric.used.name}"
    tags = "${circonus_metric.used.tags}"
    type = "${circonus_metric.used.type}"
  }

  tags = {
    source = "circonus"
  }
}

resource "circonus_metric" "used" {
  name = "${var.used_metric_name}"

  tags = {
    source = "circonus"
  }

  type = "numeric"
}
```

* Document the `circonus_metric` resource.

* Updated `circonus_check` docs.

* If a port was present, automatically set it in the Config.

* Alpha sort the check parameters now that they've been renamed.

* Fix a handful of panics as a result of the schema changing.

* Move back to a `TypeSet` for tags.  After a stint with `TypeMap`, move
back to `TypeSet`.

A set of strings seems to match the API the best.  The `map` type was
convenient because it reduced the amount of boilerplate, but you loose
out on other things.  For instance, tags come in the form of
`category:value`, so naturally it seems like you could use a map, but
you can't without severe loss of functionality because assigning two
values to the same category is common.  And you can't normalize map
input or suppress the output correctly (this was eventually what broke
the camel's back).  I tried an experiment of normalizing the input to be
`category:value` as the key in the map and a value of `""`, but... seee
diff suppress.  In this case, simple is good.

While here bring some cleanups to _Metric since that was my initial
testing target.

* Rename `providerConfig` to `_ProviderConfig`

* Checkpoint the `json` check type.

* Fix a few residual issues re: missing descriptions.

* Rename `validateRegexp` to `_ValidateRegexp`

* Use tags as real sets, not just a slice of strings.

* Move the DiffSuppressFunc for tags down to the Elem.

* Fix up unit tests to chase the updated, default hasher function being used.

* Remove `Computed` attribute from `TypeSet` objects.

This fixes a pile of issues re: update that I was having.

* Rename functions.

`GetStringOk` -> `GetStringOK`
`GetSetAsListOk` -> `GetSetAsListOK`
`GetIntOk` -> `GetIntOK`

* Various small cleanups and comments rolled into a single commit.

* Add a `postgresql` check type for the `circonus_check` resource.

* Rename various validator functions to be _CapitalCase vs capitalCase.

* Err... finish the validator renames.

* Add `GetFloat64()` support.

* Add `icmp_ping` check type support.

* Catch up to the _API*Attr renames.

Deliberately left out of the previous commit in order to create a clean
example of what is required to add a new check type to the
`circonus_check` resource.

* Clarify when the `target` attribute is required for the `postgresql`
check type.

* Correctly pull the metric ID attribute from the right location.

* Add a circonus_stream_group resource (a.k.a. a Circonus "metric cluster")

* Add support for the [`caql`](https://login.circonus.com/user/docs/caql_reference) check type.

* Add support for the `http` check type.

* `s/SSL/TLS/g`

* Add support for `tcp` check types.

* Enumerate the available metrics that are supported for each check type.

* Add [`cloudwatch`](https://login.circonus.com/user/docs/Data/CheckTypes/CloudWatch) check type support.

* Add a `circonus_trigger` resource (a.k.a Circonus Ruleset).

* Rename a handful of functions to make it clear in the function name the
direction of flow for information moving through the provider.

TL;DR: Replace `parse` and `read` with "foo to bar"-like names.

* Fix the attribute name used in a validator.  Absent != After.

* Set the minimum `absent` predicate to 70s per testing.

* Fix the regression tests for circonus_trigger now that absent has a 70s min

* Fix up the `tcp` check to require a `host` attribute.

Fix tests.  It's clear I didn't run these before committing/pushing the
`tcp` check last time.

* Fix `circonus_check` for `cloudwatch` checks.

* Rename `parsePerCheckTypeConfig()` to `_CheckConfigToAPI` to be
consistent with other function names.

grep(1)ability of code++

* Slack buttons as an integer are string encoded.

* Fix updates for `circonus_contact`.

* Fix the out parameters for contact groups.

* Move to using `_CastSchemaToTF()` where appropriate.

* Fix circonus_contact_group.  Updates work as expected now.

* Use `_StateSet()` in place of `d.Set()` everywhere.

* Make a quick pass over the collector datasource to modernize its style

* Quick pass for items identified by `golint`.

* Fix up collectors

* Fix the `json` check type.

Reconcile possible sources of drift.  Update now works as expected.

* Normalize trigger durations to seconds.

* Improve the robustness of the state handling for the `circonus_contact_group` resource.

* I'm torn on this, but sort the contact groups in the notify list.

This does mean that if the first contact group in the list has a higher
lexical sort order the plan won't converge until the offending resource
is tainted and recreated.  But there's also some sorting happening
elsewhere, so.... sort and taint for now and this will need to be
revisited in the future.

* Add support for the `httptrap` check type.

* Remove empty units from the state file.

* Metric clusters can return a 404.  Detect this accordingly in its
respective Exists handler.

* Add a `circonus_graph` resource.

* Fix a handful of bugs in the graph provider.

* Re-enable the necessary `ConflictsWith` definitions and normalize attribute names.

* Objects that have been deleted via the UI return a 404. Handle in Exists().

* Teach `circonus_graph`'s Stack set to accept nil values.

* Set `ForceNew: true` for a graph's name.

* Chase various API fixes required to make `circonus_graph` work as expected.

* Fix up the handling of sub-1 zoom resolutions for graphs.

* Add the `check_by_collector` out parameter to the `circonus_check` resource.

* Improve validation of line vs area graphs.  Fix graph_style.

* Fix up the `logarithmic` graph axis option.

* Resolve various trivial `go vet` issues.

* Add a stream_group out parameter.

* Remove incorrectly applied `Optional` attributes to the `circonus_account` resource.

* Remove various `Optional` attributes from the `circonus_collector` data source.

* Centralize the common need to suppress leading and trailing whitespace into `suppressWhitespace`.

* Sync up with upstream vendor fixes for circonus_graph.

* Update the checksum value for the http check.

* Chase `circonus_graph`'s underlying `line_style` API object change from `string` to `*string`.

* Clean up tests to use a generic terraform regression testing account.

* Rename all identifiers that began with a `_` and replace with a corresponding lowercase glyph.

* Remove stale comment in types.

* Move the calls to `ResourceData`'s `SetId()` calls to be first in the
list so that no resources are lost in the event of a `panic()`.

* Remove `stateSet` from the `circonus_trigger` resource.

* Remove `stateSet` from the `circonus_stream_group` resource.

* Remove `schemaSet` from the `circonus_graph` resource.

* Remove `stateSet` from the `circonus_contact` resource.

* Remove `stateSet` from the `circonus_metric` resource.

* Remove `stateSet` from the `circonus_account` data source.

* Remove `stateSet` from the `circonus_collector` data source.

* Remove stray `stateSet` call from the `circonus_contact` resource.

This is an odd artifact to find... I'm completely unsure as to why it
was there to begin with but am mostly certain it's a bug and needs to be
removed.

* Remove `stateSet` from the `circonus_check` resource.

* Remove the `stateSet` helper function.

All call sites have been converted to return errors vs `panic()`'ing at
runtime.

* Remove a pile of unused functions and type definitions.

* Remove the last of the `attrReader` interface.

* Remove an unused `Sprintf` call.

* Update `circonus-gometrics` and remove unused files.

* Document what `convertToHelperSchema()` does.

Rename `castSchemaToTF` to `convertToHelperSchema`.

Change the function parameter ordering so the `map` of attribute
descriptions: this is much easier to maintain when the description map
is first when creating schema inline.

* Move descriptions into their respective source files.

* Remove all instances of `panic()`.

In the case of software bugs, log an error.  Never `panic()` and always
return a value.

* Rename `stream_group` to `metric_cluster`.

* Rename triggers to rule sets

* Rename `stream` to `metric`.

* Chase the `stream` -> `metric` change into the docs.

* Remove some unused test functions.

* Add the now required `color` attribute for graphing a `metric_cluster`.

* Add a missing description to silence a warning.

* Add `id` as a selector for the account data source.

* Futureproof testing: Randomize all asset names to prevent any possible resource conflicts.

This isn't a necessary change for our current build and regression
testing, but *just in case* we have a radical change to our testing
framework in the future, make all resource names fully random.

* Rename various values to match the Circonus docs.

* s/alarm/alert/g

* Ensure ruleset criteria can not be empty.
2017-03-10 14:19:17 -06:00
Jack Pearkes 6affc2e315 website: update gem deps and remove anncmnt banner 2017-03-08 19:05:13 -08:00
Brandon Tosch fa56000b1b Merge branch 'master' into brandontosch/GH-11874 2017-03-08 14:10:06 -08:00
Jason Costello db13248e6f
Revert "Revert "Remove header enterprise announcement""
This reverts commit 3ae6aeac059a95413e51318d9acf918fbd5e82d0.
2017-03-08 11:43:14 -08:00
Jason Costello 481a2bb139
Revert "Remove header enterprise announcement"
This reverts commit c3734b2df3f0e3fb74fca3a4aaff62e8c0647c08.
2017-03-08 11:43:14 -08:00
Jason Costello 41a62e02e1
Remove header enterprise announcement 2017-03-08 11:43:14 -08:00
Jason Costello ca04bd614d
Remove announcement banner 2017-03-08 11:42:11 -08:00
Jason Costello 98424f87df
Remove 'by hashicorp' 2017-03-08 11:42:11 -08:00
Jason Costello d93df393e9
Add mega nav 2017-03-08 11:42:11 -08:00
Máximo Cuadros b58709aa91 provider/ignition: migration from resources to data resources (#11851)
* provider/ignition: migration from resources to data resources

* website: provider/ignition documention updated to data resources

* provider/ignition: backwards compatibility support for old resources
2017-03-06 14:23:04 +02:00
yanndegat 09b1f4e1be provider/openstack: Add openstack_networking_network_v2 datasource (#12304) 2017-03-06 13:25:08 +02:00
Brandon Tosch eb2bef172f updated/added documentation for managed disks 2017-03-05 23:42:44 -08:00
Pasha Palangpour ce633f2321 provider/ns1: Add notify list resource (#12373)
* Allow for local development with ns1 provider.

* Adds first implementation of ns1 notification list resource.

* NS1 record.use_client_subnet defaults to true, and added test for field.

* Adds more test cases for monitoring jobs.

* Adds webhook/datafeed notifier types and acctests for notifylists.

* Adds docs for notifylists resource.

* Updates ns1-go rest client via govendor

* Fix typos in record docs
2017-03-05 16:21:06 +02:00
Mitchell Hashimoto d2f09d0db7 Merge pull request #12366 from hashicorp/f-state-docs
website: document state environments
2017-03-02 08:51:48 -08:00
Mitchell Hashimoto 4b1dc53cc1
website: env switch => select 2017-03-01 21:51:40 -08:00
Mitchell Hashimoto d892b436f5
website: document env CLI 2017-03-01 21:50:08 -08:00
Joe Topjian 1dba855daf provider/openstack: openstack_compute_floatingip_associate_v2 resource (#12190)
This commit adds the openstack_compute_floatingip_associate_v2
resource which specifically handles associating a floating IP
address to an instance. This can be used instead of the existing
floating_ip options in the openstack_compute_instance_v2 resource.
2017-03-02 05:18:57 +00:00
Mitchell Hashimoto aeb3d1879f
website: document state environments 2017-03-01 17:06:31 -08:00
Paul Stack 177400dbbf provider/aws: Implement IPV6 Support for ec2 / VPC (#10538)
* provider/aws: Add support for IPV6 enabled VPC

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSVpc'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2016/12/09 14:07:31 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSVpc -timeout 120m
=== RUN   TestAccAWSVpc_importBasic
--- PASS: TestAccAWSVpc_importBasic (43.03s)
=== RUN   TestAccAWSVpc_basic
--- PASS: TestAccAWSVpc_basic (36.32s)
=== RUN   TestAccAWSVpc_enableIpv6
--- PASS: TestAccAWSVpc_enableIpv6 (29.37s)
=== RUN   TestAccAWSVpc_dedicatedTenancy
--- PASS: TestAccAWSVpc_dedicatedTenancy (36.63s)
=== RUN   TestAccAWSVpc_tags
--- PASS: TestAccAWSVpc_tags (67.54s)
=== RUN   TestAccAWSVpc_update
--- PASS: TestAccAWSVpc_update (66.16s)
=== RUN   TestAccAWSVpc_bothDnsOptionsSet
--- PASS: TestAccAWSVpc_bothDnsOptionsSet (16.82s)
=== RUN   TestAccAWSVpc_DisabledDnsSupport
--- PASS: TestAccAWSVpc_DisabledDnsSupport (36.52s)
=== RUN   TestAccAWSVpc_classiclinkOptionSet
--- PASS: TestAccAWSVpc_classiclinkOptionSet (38.13s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	739.543s
```

* provider/aws: New Resource: aws_egress_only_internet_gateway

```
make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSEgressOnlyInternetGateway_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2016/12/09 14:22:16 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSEgressOnlyInternetGateway_ -timeout 120m
=== RUN   TestAccAWSEgressOnlyInternetGateway_basic
--- PASS: TestAccAWSEgressOnlyInternetGateway_basic (32.67s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	32.692s
```

* provider/aws: Add IPV6 support to aws_subnet

```
% make testacc TEST=./builtin/providers/aws
% TESTARGS='-run=TestAccAWSSubnet_'
% 1 ↵ ✹ ✭
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/02/27 19:08:34 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSSubnet_
-timeout 120m
=== RUN   TestAccAWSSubnet_importBasic
--- PASS: TestAccAWSSubnet_importBasic (69.88s)
=== RUN   TestAccAWSSubnet_basic
--- PASS: TestAccAWSSubnet_basic (51.28s)
=== RUN   TestAccAWSSubnet_ipv6
--- PASS: TestAccAWSSubnet_ipv6 (90.39s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws211.574s
```

* provider/aws: Add support for running aws_instances with ipv6 addresses
2017-03-01 16:16:59 +00:00
Brian Flad 4372592f0c
provider/datadog: Add datadog_user resource (#12268)
* provider/datadog: Add datadog_user resource

* provider/datadog: Fix datadog_user import test, simplify datadog_user ACC tests, more consise documentation
2017-02-27 10:38:54 +00:00
Paul Stack 861706921c provider/digitalocean: Add support for LoadBalancers (#12077)
* provider/digitalocean: Add support for LoadBalancers

Fixes: #11945

```
% make testacc TEST=./builtin/providers/digitalocean TESTARGS='-run=TestAccDigitalOceanLoadbalancer_'                                  2 ↵ ✹ ✭
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/02/18 21:49:11 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/digitalocean -v -run=TestAccDigitalOceanLoadbalancer_ -timeout 120m
=== RUN   TestAccDigitalOceanLoadbalancer_Basic
--- PASS: TestAccDigitalOceanLoadbalancer_Basic (121.18s)
=== RUN   TestAccDigitalOceanLoadbalancer_Updated
--- PASS: TestAccDigitalOceanLoadbalancer_Updated (168.35s)
=== RUN   TestAccDigitalOceanLoadbalancer_dropletTag
--- PASS: TestAccDigitalOceanLoadbalancer_dropletTag (131.31s)
PASS
ok	github.com/hashicorp/terraform/builtin/providers/digitalocean	420.851s
```

* provider/digitalocean: Addressing PR feedback from @catsby
2017-02-23 23:41:20 +02:00
Paul Stack c01ce44d4c provider/aws: Add missing SSM Links to documentation nav bar (#12202) 2017-02-23 17:40:16 +02:00
Liran Polak f37800ae62 New Provider: Spotinst (#5001)
* providers/spotinst: Add support for Spotinst resources

* providers/spotinst: Fix merge conflict - layouts/docs.erb

* docs/providers/spotinst: Fix the resource description field

* providers/spotinst: Fix the acceptance tests

* providers/spotinst: Mark the device_index as a required field

* providers/spotinst: Change the associate_public_ip_address field to TypeBool

* docs/providers/spotinst: Update the description of the adjustment field

* providers/spotinst: Rename IamRole to IamInstanceProfile to make it more compatible with the AWS provider

* docs/providers/spotinst: Rename iam_role to iam_instance_profile

* providers/spotinst: Deprecate the iam_role attribute

* providers/spotinst: Fix a misspelled var (IamRole)

* providers/spotinst: Fix possible null pointer exception related to "iam_instance_profile"

* docs/providers/spotinst: Add "load_balancer_names" missing description

* providers/spotinst: New resource "spotinst_subscription" added

* providers/spotinst: Eliminate a possible null pointer exception in "spotinst_aws_group"

* providers/spotinst: Eliminate a possible null pointer exception in "spotinst_subscription"

* providers/spotinst: Mark spotinst_subscription as deleted in destroy

* providers/spotinst: Add support for custom event format in spotinst_subscription

* providers/spotinst: Disable the destroy step of spotinst_subscription

* providers/spotinst: Add support for update subscriptions

* providers/spotinst: Merge fixed conflict - layouts/docs.erb

* providers/spotinst: Vendor dependencies

* providers/spotinst: Return a detailed error message

* provider/spotinst: Update the plugin list

* providers/spotinst: Vendor dependencies using govendor

* providers/spotinst: New resource "spotinst_healthcheck" added

* providers/spotinst: Update the Spotinst SDK

* providers/spotinst: Comment out unnecessary log.Printf

* providers/spotinst: Fix the acceptance tests

* providers/spotinst: Gofmt fixes

* providers/spotinst: Use multiple functions to expand each block

* providers/spotinst: Allow ondemand_count to be zero

* providers/spotinst: Change security_group_ids from TypeSet to TypeList

* providers/spotinst: Remove unnecessary `ForceNew` fields

* providers/spotinst: Update the Spotinst SDK

* providers/spotinst: Add support for capacity unit

* providers/spotinst: Add support for EBS volume pool

* providers/spotinst: Delete health check

* providers/spotinst: Allow to set multiple availability zones

* providers/spotinst: Gofmt

* providers/spotinst: Omit empty strings from the load_balancer_names field

* providers/spotinst: Update the Spotinst SDK to v1.1.9

* providers/spotinst: Add support for new strategy parameters

* providers/spotinst: Update the Spotinst SDK to v1.2.0

* providers/spotinst: Add support for Kubernetes integration

* providers/spotinst: Fix merge conflict - vendor/vendor.json

* providers/spotinst: Update the Spotinst SDK to v1.2.1

* providers/spotinst: Add support for Application Load Balancers

* providers/spotinst: Do not allow to set ondemand_count to 0

* providers/spotinst: Update the Spotinst SDK to v1.2.2

* providers/spotinst: Add support for scaling policy operators

* providers/spotinst: Add dimensions to spotinst_aws_group tests

* providers/spotinst: Allow both ARN and name for IAM instance profiles

* providers/spotinst: Allow ondemand_count=0

* providers/spotinst: Split out the set funcs into flatten style funcs

* providers/spotinst: Update the Spotinst SDK to v1.2.3

* providers/spotinst: Add support for EBS optimized flag

* providers/spotinst: Update the Spotinst SDK to v2.0.0

* providers/spotinst: Use stringutil.Stringify for debugging

* providers/spotinst: Update the Spotinst SDK to v2.0.1

* providers/spotinst: Key pair is now optional

* providers/spotinst: Make sure we do not nullify signals on strategy update

* providers/spotinst: Hash both Strategy and EBS Block Device

* providers/spotinst: Hash AWS load balancer

* providers/spotinst: Update the Spotinst SDK to v2.0.2

* providers/spotinst: Verify namespace exists before appending policy

* providers/spotinst: Image ID will be in a separate block from now on, so as to allow ignoring changes only on the image ID. This change is backwards compatible.

* providers/spotinst: user data decoded when returned from spotinst api, so that TF compares the two states properly, and does not update without cause.
2017-02-22 22:57:16 +02:00
Erik Jansson 62aa2c583a provider/aws: New resource codepipeline (#11814)
* provider/aws: New resource codepipeline

* Vendor aws/codepipeline

* Add tests

* Add docs

* Bump codepipeline to v1.6.25

* Adjustments based on feedback

* Force new resource on ID change

* Improve tests

* Switch update to read

Since we don't require a second pass, only do a read.

* Skip tests if GITHUB_TOKEN is not set
2017-02-22 19:31:24 +02:00
Cameron Wood 7c122604a0 provider/aws: data_aws_sns_topic (#11752)
* Initial commit of provider/aws: data_aws_sns_topic

* Pull-request fixes
2017-02-21 17:47:48 +02:00
Jake Champlin 85fdca8cbb Merge pull request #11940 from bodgit/log_destination
Add support for Amazon CloudWatch Logs PutDestination/PutDestinationPolicy
2017-02-21 08:50:03 -05:00
Joe Topjian 8ea8588c52 provider/openstack: Image Data Source (#12097)
* vendor: Updating Gophercloud

* provider/openstack: Image Data Source

This commit adds the openstack_images_image_v2 data source which
is able to query the Image Service v2 API for a specific image.
2017-02-20 19:03:17 +02:00
Matt Dainty af28c2b3d6 Move AWS Config to be alphabetically correct 2017-02-19 22:40:27 +00:00
Joe Topjian 9188a80192 provider/openstack: Updates to openstack_images_image_v2 resource
This commit has a few more fixes to the recently added
openstack_images_image_v2 resource:

* tags were changed to a Set because the OpenStack Image API does
not seem to respect ordering.
* The visibility argument was fixed.
* Acceptance tests for all updatable fields has been implemented.
* Documentation updates, including a new entry in the sidebar.
2017-02-19 21:20:29 +00:00
ewypych debd61aa8b fix Icinga2 provider link 2017-02-18 19:31:32 +01:00
clint shryock e0a6669c17 Patch up website docs 2017-02-17 17:08:03 -06:00
clint shryock be6ae20ac1 Merge branch 'pr-8299'
* pr-8299:
  Patch up website docs
  provider/dns: DNS dynamic updates (RFC 2136)
  vendor: Capture new dependency miekg-dns
2017-02-17 17:02:37 -06:00
clint shryock ae2d1c37f7 Patch up website docs 2017-02-17 17:01:25 -06:00
David Harris 2ab6fcc16b provider/aws: Elastic Beanstalk Application Version (#5770)
* Added new resource aws_elastic_beanstalk_application_version.

* Changing bucket and key to required.

* Update to use d.Id() directly in DescribeApplicationVersions.

* Checking err to make sure that the application version is successfully deleted.

* Update `version_label` to `Computed: true`.

* provider/aws: Updating to python solution stack

* provider/aws: Beanstalk App Version delete source

The Elastic Beanstalk API call to delete `application_version` resource
should not delete the s3 bundle, as this object is managed by another
Terraform resource

* provider/aws: Update application version docs

* Fix application version test

* Add `version_label` update test

Adds test that fails after rebasing branch onto v0.8.x. `version_label`
changes do not update the `aws_elastic_beanstalk_environment` resource.

* `version_label` changes to update environment

* Prevent unintended delete of `application_version`

Prevents an `application_version` used by multiple environments from
being deleted.

* Add `force_delete` attribute

* Update documentation
2017-02-17 17:54:07 +02:00
Sean Chittenden 5f3b6ffdb2
Add `consul_agent_self` docs and synchronize a few missing attributes. 2017-02-16 15:10:50 -08:00
Matt Dainty 4678fa4121
Add missing resource types to the sidebar 2017-02-16 22:14:24 +00:00
Sean Chittenden 6df42d4348
Add a link to the `consul_catalog_nodes` data source. 2017-02-16 14:03:15 -08:00
Sean Chittenden 1c7a924258
Update and provide docs to the `consul_catalog_service` data source. 2017-02-16 13:50:06 -08:00
Sean Chittenden 9d06a47069
Add docs for the `consul_catalog_services` data source. 2017-02-16 13:50:06 -08:00
Mitchell Hashimoto 7e14184393 Merge pull request #11976 from hashicorp/b-0-9-website
0.9 Website Content (Backends, Locking, etc.)
2017-02-15 13:15:52 -08:00
Mitchell Hashimoto 7394a066ec
website: document init and new state commands 2017-02-15 13:14:32 -08:00
Mitchell Hashimoto 22dd47c8af
website: document state locking and remote state page 2017-02-15 12:58:52 -08:00
Mitchell Hashimoto 03dca34161
website: document backend types 2017-02-15 12:19:38 -08:00
Mitchell Hashimoto a240a9cac7
website: working on backend types 2017-02-15 10:47:30 -08:00
Radek Simko 76c40ac451
provider/google: Add google_compute_zones data source 2017-02-15 09:50:25 +00:00
Mitchell Hashimoto bd4425657e
website: backend state docs 2017-02-14 16:09:00 -08:00
Mitchell Hashimoto df5e921310
website: configuring backends 2017-02-14 15:47:20 -08:00
Mitchell Hashimoto 2d2da6fea0
wip 2017-02-14 14:46:20 -08:00
Mitchell Hashimoto 5fcfaffb9b
website: 0.9 upgrade guide 2017-02-14 14:00:09 -08:00
Mitchell Hashimoto 3e2f324b20 Merge pull request #11927 from hashicorp/typographic-updates
Website typographic updates
2017-02-13 17:26:56 -08:00
James Bardin 320840f4d5 Merge pull request #11914 from hashicorp/jbardin/state-locking
Add force-unlock command to the docs
2017-02-13 15:40:23 -05:00
Jason Costello 68168bed9c Add typekit script 2017-02-13 12:32:25 -08:00
Paul Stack 16654647b1 provider/vault: Add vault_policy to documentation sidebar (#11912) 2017-02-13 19:16:51 +00:00
James Bardin 1a9869b1af Add force-unlock command to the docs 2017-02-13 14:15:40 -05:00
Kazumichi Yamamoto cd7f69ab11 New provider arukas (#11171)
* Add a Arukas provider

* Add dependencies for the Arukas provider

* Add documents for the Arukas
2017-02-13 19:11:30 +00:00
Tom Harvey f349309a8f provider/azurerm: Container Service (#10820)
* Importing v7.0.1 of the SDK

* Configuring the Container Service Client

* Scaffolding the Container Service resource

* Scaffolding the Website documentation

* Completing the documentation

* Acceptance Tests for Kubernetes Azure Container Service

* DCOS / Swarm tests

* Parsing values back from the API properly

* Fixing the test

* Service Principal can be optional. Because of course it can.

* Validation for the Container Service Count's

* Updating the docs

* Updating the field required values

* Making the documentation more explicit

* Fixing the build

* Examples for DCOS and Swarm

* Removing storage_uri for now

* Making the SSH Key required as per the docs

* Resolving the merge conflicts

* Removing the unused error's

* Adding Hash's to the schema's

* Switching out the provider registration

* Fixing the hash definitions

* Updating keydata to match

* Client Secret is sensitive

* List -> Set

* Using the first item for the diagnostic_profile

* Helps if you actually update the type

* Updating the docs to include the Computed fields

* Fixing comments / removing redundant optional checks

* Removing the FQDN's from the examples

* Moving the Container resources together
2017-02-13 16:33:50 +00:00
Kit Ewbank 64fda44b00 Add 'aws_vpn_gateway' data source. (#11886) 2017-02-13 16:24:55 +00:00
Radek Simko c6b21d853a Merge pull request #5850 from TimeIncOSS/f-aws-config
provider/aws: Add support for AWSConfig service
2017-02-13 15:07:15 +00:00
Radek Simko f2af02eb59
provider/aws: Add aws_config_delivery_channel 2017-02-13 14:01:35 +00:00
Radek Simko a2b63f92c0
provider/aws: Add aws_config_configuration_recorder_status 2017-02-13 14:01:34 +00:00
Radek Simko f5220ab884
provider/aws: Add aws_config_configuration_recorder 2017-02-13 14:01:32 +00:00
Radek Simko 1fdd52ea20
provider/aws: Add aws_config_config_rule 2017-02-13 14:01:30 +00:00
Paul Stack 06aaa44a80 provider/aws: data_aws_db_instance resource (#11717) 2017-02-10 14:58:31 +00:00
Clint 25d6507a7a Merge pull request #11505 from ewbankkit/aws_vpc_peering_connection_accepter-resource
provider/aws: Add 'aws_vpc_peering_connection_accepter' resource
2017-02-09 16:30:51 -06:00
Radek Simko c25579a6f8 provider/aws: Add aws_elasticsearch_domain_policy (#8648) 2017-02-08 13:20:57 +00:00
Paul Stack 15251000b4 provider/aws: Addition of the documentation for the codebuild_project (#11774)
resource
2017-02-08 12:50:37 +00:00
clint shryock e787c12ab5 remove codebuild docs from layouts; doc files missing 2017-02-07 12:21:30 -06:00
Vlad Holubiev 299083946e Docs: Remove duplicate NoMad provider, fix sorting 2017-02-07 17:53:50 +02:00
ValFadeev cb8d85fc50 provider/aws: New DataSource: aws_partition (#11675) 2017-02-04 11:54:45 +00:00
liamjbennett 5a84991872
adding documentation for aws_codebuild_project resource 2017-02-02 16:13:51 +00:00
Jack Bruno be56c7d2f6 provider/aws: Add AWS DMS (data migration service) resources (#11122)
* Add aws dms vendoring

* Add aws dms endpoint resource

* Add aws dms replication instance resource

* Add aws dms replication subnet group resource

* Add aws dms replication task resource

* Fix aws dms resource go vet errors

* Review fixes: Add id validators for all resources. Add validator for endpoint engine_name.

* Add aws dms resources to importability list

* Review fixes: Add aws dms iam role dependencies to test cases

* Review fixes: Adjustments for handling input values

* Add aws dms replication subnet group tagging

* Fix aws dms subnet group doesn't use standard error for resource not found

* Missed update of aws dms vendored version

* Add aws dms certificate resource

* Update aws dms resources to force new for immutable attributes

* Fix tests failing on subnet deletion by adding explicit dependencies. Combine import tests with basic tests to cut down runtime.
2017-02-02 10:30:05 +00:00
Alexander 3884c86b44 provider/pagerduty: pagerduty_addon resource (#11620)
* Add resource

* Add tests

* Add documentation
2017-02-01 22:59:29 +00:00
Alexander dd0f2f11ae provider/pagerduty: pagerduty_escalation_policy data source (#11616)
* Add data source

* Add tests

* Add documentation

* Remove unnecessary id from schema
2017-02-01 20:53:31 +00:00
Alexander 2c59c9d44e provider/pagerduty: pagerduty_schedule data source (#11614)
* Add data source

* Add tests

* Add documentation

* Remove unnecessary id from schema
2017-02-01 20:01:46 +00:00
Jake Champlin ac73ce4199
documentation: Add documentation for the ECS Cluster Data Source
Adds documentation for the ECS Cluster Data Source. Also removes duplicate struct declarations from the data source and test.
2017-02-01 09:51:26 -05:00
Gauthier Wallet 4da1451971 Added Step Function resources (State Machine & Activity) (#11420)
* Added Step Function Activity & Step Function State Machine

* Added SFN State Machine documentation

* Added aws_sfn_activity & documentation

* Allowed import of sfn resources

* Added more checks on tests, fixed documentation

* Handled the update case of a SFN function (might be already deleting)

* Removed the State Machine import test file

* Fixed the eventual consistency of the read after delete for SFN functions
2017-01-31 20:17:38 +00:00
Naoto Yokoyama e2b3ee5fbf provider/aws: add `aws_ecs_task_definition` datasource (#8509) 2017-01-31 17:28:11 +00:00
Ryon 870b85765b Add Google Tag Manager #GTM-NR2SD7C (#11476) 2017-01-30 17:31:28 +00:00
Brad Sickles ea642dd1ee Initial commit from @BSick7:
Implementing vpc_peering_connection_accept.

Additions from @ewbankkit:
Rename 'aws_vpc_peering_connection_accept' to 'aws_vpc_peering_connection_accepter'.
Get it working reusing functionality from 'aws_vpc_peering_connection' resource.
2017-01-29 18:53:01 -05:00
Borgstrom ♕ 01a6bd7592 provider/aws: New data provider to decrypt KMS secrets (#11460)
* Add a new data provider to decrypt AWS KMS secrets

* Address feedback

* Rename aws_kms_secrets to aws_kms_secret
* Add more examples to the documentation
2017-01-29 21:01:38 +00:00
Paul Stack 3cdeb4c7d7 docs/profitbricks: Make the documentation not cause build errors for middleman (#11434) 2017-01-26 19:28:01 +02:00
Evan Brown b9e9e777c8 providers/google: Support managing projects
Add support for creating, updating, and deleting projects, as well as
their enabled services and their IAM policies.

Various concessions were made for backwards compatibility, and will be
removed in 0.9 or 0.10.
2017-01-25 14:59:50 -08:00
Kit Ewbank c5f94d2999 Add 'aws_vpc_endpoint' data source. (#11323) 2017-01-23 21:50:38 +00:00
Kit Ewbank cbe4a99d31 Add 'aws_canonical_user_id' data source. (#11332) 2017-01-23 21:44:42 +00:00
Paul Stack 987b910828 Ns1 provider (#10782)
* vendor: update gopkg.in/ns1/ns1-go.v2

* provider/ns1: Port the ns1 provider to Terraform core

* docs/ns1: Document the ns1 provider

* ns1: rename remaining nsone -> ns1 (#10805)

* Ns1 provider (#11300)

* provider/ns1: Flesh out support for meta structs.

Following the structure outlined by @pashap.

Using reflection to reduce copy/paste.

Putting metas inside single-item lists.  This is clunky, but I couldn't
figure out how else to have a nested struct.  Maybe the Terraform people
know a better way?

Inside the meta struct, all fields are always written to the state; I
can't figure out how to omit fields that aren't used.  This is not just
verbose, it actually causes issues because you can't have both "up" and
"up_feed" set).

Also some minor other changes:
- Add "terraform" import support to records and zones.
- Create helper class StringEnum.

* provider/ns1: Make fmt

* provider/ns1: Remove stubbed out RecordRead (used for testing metadata change).

* provider/ns1: Need to get interface that m contains from Ptr Value with Elem()

* provider/ns1: Use empty string to indicate no feed given.

* provider/ns1: Remove old record.regions fields.

* provider/ns1: Removes redundant testAccCheckRecordState

* provider/ns1: Moves account permissions logic to permissions.go

* provider/ns1: Adds tests for team resource.

* provider/ns1: Move remaining permissions logic to permissions.go

* ns1/provider: Adds datasource.config

* provider/ns1: Small clean up of datafeed resource tests

* provider/ns1: removes testAccCheckZoneState in favor of explicit name check

* provider/ns1: More renaming of nsone -> ns1

* provider/ns1: Comment out metadata for the moment.

* Ns1 provider (#11347)

* Fix the removal of empty containers from a flatmap

Removal of empty nested containers from a flatmap would sometimes fail a
sanity check when removed in the wrong order. This would only fail
sometimes due to map iteration. There was also an off-by-one error in
the prefix check which could match the incorrect keys.

* provider/ns1: Adds ns1 go client through govendor.

* provider/ns1: Removes unused debug line

* docs/ns1: Adds docs around apikey/datasource/datafeed/team/user/record.

* provider/ns1: Gets go vet green
2017-01-23 21:41:07 +00:00
Radek Simko fb4a829bef
docs/aws: Sort data sources alphabetically 2017-01-20 09:54:29 -08:00
Radek Simko a456c4ef05
docs/aws: Remove duplicate aws_route53_zone data source 2017-01-20 09:50:32 -08:00
Paul Stack f8a3564065 provider/aws: Add DataSource to get a list of Autoscaling groups in a (#11303)
region
2017-01-20 13:21:12 +00:00
Paul Stack 128af891ca provider/alicloud: Creating the necessary structure for the alicloud documentation (#11289) 2017-01-19 14:40:01 +00:00
Paul Stack ebfaf42cb0 provider/aws: Add the correct navigation links for the aws_inspector_* (#11240)
docs
2017-01-17 17:41:24 +00:00
David Blooman 05c83a3ca1 provider/aws: Add Inspector Support (#11217)
* provider/aws: Add Inspector Support

* inscrease time to 1 hour
2017-01-17 17:30:46 +00:00
Paul Stack bcdabe7619 provider/aws: New DataSource: aws_elb_hosted_zone_id (#11027)
* provider/aws: New DataSource: aws_elb_hosted_zone_id

This datasource is a list of all of the ELB DualStack Hosted Zone IDs.
This will allow us to reference the correct hosted zone id when creating
route53 alias records

There are many bugs for this - this is just the beginning of fixing them

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSElbHostedZoneId_basic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/01/04 13:04:32 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSElbHostedZoneId_basic -timeout 120m
=== RUN   TestAccAWSElbHostedZoneId_basic
--- PASS: TestAccAWSElbHostedZoneId_basic (20.46s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	20.484s
```

* Update elb_hosted_zone_id.html.markdown
2017-01-12 16:50:58 +02:00
clint shryock 87bb691800 Revert "New provider arukas (#10862)"
This reverts commit 9176bd4861.
This provider includes a dependency that at time of writing requires a
*nix system, and will not build on Windows.
2017-01-11 09:04:32 -06:00
Paul Stack 519d873263 provider/aws: New Resource aws_codedeploy_deployment_config (#11062)
* provider/aws: New Resource - aws_codedeploy_deployment_config

* provider/aws: Adding acceptance tests for new
aws_codedeploy_deployment_config resource

* provider/aws: Documentation for the aws_codedeploy_deployment_config resource

* Update codedeploy_deployment_config.html.markdown
2017-01-09 19:17:09 +00:00
Kazumichi Yamamoto 9176bd4861 New provider arukas (#10862)
* Add a Arukas provider

* Add dependencies for the Arukas provider

* Add documents for the Arukas
2017-01-09 17:14:33 +00:00
Paul Stack c972318727 docs/opsgenie: The OpsGenie Team Resource url was a duplicate link (#11065) 2017-01-05 21:37:46 +02:00
Tom Harvey 05d00a93ce New Provider: OpsGenie (#11012)
* Importing the OpsGenie SDK

* Adding the goreq dependency

* Initial commit of the OpsGenie / User provider

* Refactoring to return a single client

* Adding an import test / fixing a copy/paste error

* Adding support for OpsGenie docs

* Scaffolding the user documentation for OpsGenie

* Adding a TODO

* Adding the User data source

* Documentation for OpsGenie

* Adding OpsGenie to the internal plugin list

* Adding support for Teams

* Documentation for OpsGenie Team's

* Validation for Teams

* Removing Description for now

* Optional fields for a User: Locale/Timezone

* Removing an implemented TODO

* Running makefmt

* Downloading about half the internet

Someone witty might simply sign this commit with "npm install"

* Adding validation to the user object

* Fixing the docs

* Adding a test creating multple users

* Prompting for the API Key if it's not specified

* Added a test for multiple users / requested changes

* Fixing the linting
2017-01-05 19:25:04 +00:00
Máximo Cuadros 85f0fba9f9 Ignition provider (#6189)
* providers: ignition, basic config, version and config

* providers: ignition, user and passwd example, general cache implementation

* vendor: Capture new dependency upstream-pkg

* providers: ignition ignition_user

* providers: ignition ignition_disk, ignition_group and ignition_raid

* providers: ignition_file and ignition_filesystem

* providers: ignition_systemd_unit and ignition_networkd_unit

* providers: ignition_config improvements

* vendor: Capture new dependency upstream-pkg

* providers: ignition main

* documentation: ignition provider

* providers: ignition minor changes

* providers: ignition, fix test

* fixing tests and latest versions
2017-01-03 11:29:14 +00:00
Tom Harvey 8580cc4b18 provider/azurerm: EventHub Authorization Rules (#10971)
* Adding a missing property to the Consumer Groups doc

* Support for Event Hub Authorization Rules

* Documentation for Authorization Rules

* Missed a comment

* Fixing the `no authorisation rule` state

* Making the documentation around the Permissions more explicit / updating the import url

* Fixing up the tests

* Clearing up the docs

* Fixing the linting

* Moving the validation inside of the expand
2017-01-02 16:32:07 +00:00
Tom Harvey 874ec8b5cf provider/azurerm: Container Registry (#10973)
* Fixing the indentation

* Adding the Container Registry SDK

* Implementing the container registry

* Enabling the provider / registering the Resource Provider

* Acceptance Tests

* Documentation for Container Registry

* Fixing the name validation

* Validation for the Container Registry Name

* Added Import support for Containr Registry

* Storage Account is no longer optional

* Updating the docs

* Forcing a re-run in Travis
2017-01-02 14:37:45 +00:00
Martin Atkins 5de3a39f3e website: correct link to aws_route53_zone data source
This data source originally had a different name but was renamed during code review.

The docs link was missed during that renaming.

This fixes #10972.
2016-12-30 10:29:38 -08:00
Kit Ewbank e8f4d002d9 provider/aws: Add 'aws_vpc_peering_connection' data source (#10913)
* Add 'aws_vpc_peering_connection' data source.

* Changes after code review.

* Add 'accepter' and 'requester' blocks to aws_vpc_peering_connection data source output attributes.
2016-12-30 00:30:51 +00:00
Tom Harvey cc09ac6b3f provider/azurerm: Event Hubs Consumer Groups (#9902)
* Documentation

* Scaffolding Consumer Groups

* Linting

* Adding a missing </li>

* User MetaData needs to explicitly be optional

* Typo

* Fixing the test syntax

* Removing the eventHubPath field since it appears to be deprecated

* Added a Complete import test

* WIP

* Updating to use SDK 7.0.1

* Calling the correct method

* Removing eventhubPath and updating the docs

* Fixing a typo
2016-12-28 23:12:47 +00:00
Dan Stine 870a981c50 Alphabetize sidebar list of providers by displayed name (#10824) 2016-12-19 10:18:23 +00:00
Tom Harvey 776e76f6ce provider/azurerm: Redis Cache (#10184)
* Implementing Redis Cache

* Properties should never be nil

* Updating the SDK to 7.0.1

* Redis Cache updated for SDK 7.0.1

* Fixing the max memory validation tests

* Cleaning up

* Adding tests for Standard with Tags

* Int's -> Strings for the moment

* Making the RedisConfiguration object mandatory

* Only parse out redis configuration values if they're set

* Updating the RedisConfiguration object to be required in the documentaqtion

* Adding Tags to the Standard tests / importing excluding the redisConfiguration

* Removing support for import for Redis Cache for now

* Removed a scaling test
2016-12-18 14:23:29 +00:00
Kit Ewbank ca183126c8 Add 'aws_iam_account_alias' data source. (#10804) 2016-12-18 14:17:19 +00:00
Paul Stack f15efbc207 docs/aws: Add aws_autoscaling_attachment to the nav bar (#10809)
Fixes #10800
2016-12-17 12:39:09 +00:00
Kit Ewbank 8e1ce045ee Correct 'aws_hosted_zone' -> 'aws_route53_zone' in data source documentation. (#10803) 2016-12-17 12:30:20 +00:00
Ivan Fuyivara 4d4ec6c0d1 provider/aws: Support for SES Configuration sets and Event Destinations (#10735)
* adding configuration set

* adding event destination

* adding test, all tests passing

* adding doccumentation
2016-12-16 11:46:39 +00:00
stack72 d13b843b48
docs/newrelic: Add the New Relic docs to the nav bar 2016-12-15 19:15:00 +00:00
Paul Tyng 3dfe5a47f1
provider/newrelic: Add new provider for New Relic 2016-12-15 19:14:59 +00:00
Joseph Anthony Pasquale Holsten d783e831f8 ultradns providers and improvements (#9788)
* vendor: update github.com/Ensighten/udnssdk to v1.2.1

* ultradns_tcpool: add

* ultradns.baseurl: set default

* ultradns.record: cleanup test

* ultradns_record: extract common, cleanup

* ultradns: extract common

* ultradns_dirpool: add

* ultradns_dirpool: fix rdata.ip_info.ips to be idempotent

* ultradns_tcpool: add doc

* ultradns_dirpool: fix rdata.geo_codes.codes to be idempotent

* ultradns_dirpool: add doc

* ultradns: cleanup testing

* ultradns_record: rename resource

* ultradns: log username from config, not client

udnssdk.Client is being refactored to use x/oauth2, so don't assume we
can access Username from it

* ultradns_probe_ping: add

* ultradns_probe_http: add

* doc: add ultradns_probe_ping

* doc: add ultradns_probe_http

* ultradns_record: remove duplication from error messages

* doc: cleanup typos in ultradns

* ultradns_probe_ping: add test for pool-level probe

* Clean documentation

* ultradns: pull makeSetFromStrings() up to common.go

* ultradns_dirpool: log hashIPInfoIPs

Log the key and generated hashcode used to index ip_info.ips into a set.

* ultradns: simplify hashLimits()

Limits blocks only have the "name" attribute as their primary key, so
hashLimits() needn't use a buffer to concatenate.

Also changes log level to a more approriate DEBUG.

* ultradns_tcpool: convert rdata to schema.Set

RData blocks have the "host" attribute as their primary key, so it is
used by hashRdatas() to create the hashcode.

Tests are updated to use the new hashcode indexes instead of natural
numbers.

* ultradns_probe_http: convert agents to schema.Set

Also pull the makeSetFromStrings() helper up to common.go

* ultradns: pull hashRdatas() up to common

* ultradns_dirpool: convert rdata to schema.Set

Fixes TF-66

* ultradns_dirpool.conflict_resolve: fix default from response

UltraDNS REST API User Guide claims that "Directional Pool
Profile Fields" have a "conflictResolve" field which "If not
specified, defaults to GEO."
https://portal.ultradns.com/static/docs/REST-API_User_Guide.pdf

But UltraDNS does not actually return a conflictResolve
attribute when it has been updated to "GEO".

We could fix it in udnssdk, but that would require either:
* hide the response by coercing "" to "GEO" for everyone
* use a pointer to allow checking for nil (requires all
users to change if they fix this)

An ideal solution would be to have the UltraDNS API respond
with this attribute for every dirpool's rdata.

So at the risk of foolish consistency in the sdk, we're
going to solve it where it's visible to the user:
by checking and overriding the parsing. I'm sorry.

* ultradns_record: convert rdata to set

UltraDNS does not store the ordering of rdata elements, so we need a way
to identify if changes have been made even it the order changes.
A perfect job for schema.Set.

* ultradns_record: parse double-encoded answers for TXT records

* ultradns: simplify hashLimits()

Limits blocks only have the "name" attribute as their primary key, so
hashLimits() needn't use a buffer to concatenate.

* ultradns_dirpool.description: validate

* ultradns_dirpool.rdata: doc need for set

* ultradns_dirpool.conflict_resolve: validate
2016-12-15 16:28:34 +00:00
Kit Ewbank a9f88ba6e4 Fix a couple of missing links (#10708) 2016-12-13 22:07:12 +00:00
Sean Chittenden e6429900ba
Update the nav to include a link to the `postgresql_schema` resource. 2016-12-13 12:26:34 -08:00
Mathieu Herbert 3239138099 provider/aws: data source for AWS Hosted Zone (#9766)
* provider/aws: data source for AWS Hosted Zone

* add caller_reference, resource_record_set_count fields, manage private zone and trailing dot

* fix fmt

* update documentation, use string function in hostedZoneNamewq

* add vpc_id support

* add tags support

* add documentation for hosted zone data source tags support
2016-12-13 16:22:26 +00:00
Kit Ewbank d3633398a7 provider/aws Add aws_vpc_endpoint_service data source (#10261)
* provider/aws Add aws_vpc_endpoint_services data source.

* Rename 'aws_vpc_endpoint_services' to 'aws_vpc_endpoint_service'.
2016-12-13 10:40:35 +00:00
Paddy b61a1ce3be Merge pull request #10676 from danawillow/google-ilb
providers/google: Add missing doc links
2016-12-12 11:58:36 -08:00
Dana Hoffman a0cbb9fd42 add links to health check and region backend service docs 2016-12-12 11:53:42 -08:00
Paul Stack 67b9f88886 docs/icinga2: Adding the documentation to the sidebar of the website (#10671) 2016-12-12 15:53:37 +00:00
Paul Stack c69e325a1a provider/aws: Add support for AWS Lightsail Domain (#10637)
```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSLightsailDomain_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2016/12/09 15:19:58 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSLightsailDomain_ -timeout 120m
=== RUN   TestAccAWSLightsailDomain_basic
--- PASS: TestAccAWSLightsailDomain_basic (16.28s)
=== RUN   TestAccAWSLightsailDomain_disappears
--- PASS: TestAccAWSLightsailDomain_disappears (12.71s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws29.015s
```
2016-12-09 17:56:48 +00:00
Clint 5f765d9de6 Merge pull request #10624 from hashicorp/pr-9891
provider/aws: Add aws_snapshot_create_volume_permission resource (contd. #9891)
2016-12-09 08:43:18 -06:00
clint shryock c54dba65b0 document snapshot_create_volume_permissions 2016-12-09 08:36:40 -06:00
clint shryock 86bb969087 provider/aws: add aws_lightsail_key_pair 2016-12-07 11:13:47 -06:00
Paul Stack 48f0c85712 docs/aws: Add iam_server_certificate data source to nav bar (#10576) 2016-12-07 11:57:41 +01:00
Paul Tyng 15cde73000 Add pagerduty_user data source (#10541) 2016-12-05 22:42:58 +00:00
Martin Atkins e772b45970 "external" data source, for integrating with external programs (#8768)
* "external" provider for gluing in external logic

This provider will become a bit of glue to help people interface external
programs with Terraform without writing a full Terraform provider.

It will be nowhere near as capable as a first-class provider, but is
intended as a light-touch way to integrate some pre-existing or custom
system into Terraform.

* Unit test for the "resourceProvider" utility function

This small function determines the dependable name of a provider for
a given resource name and optional provider alias. It's simple but it's
a key part of how resource nodes get connected to provider nodes so
worth specifying the intended behavior in the form of a test.

* Allow a provider to export a resource with the provider's name

If a provider only implements one resource of each type (managed vs. data)
then it can be reasonable for the resource names to exactly match the
provider name, if the provider name is descriptive enough for the
purpose of the each resource to be obvious.

* provider/external: data source

A data source that executes a child process, expecting it to support a
particular gateway protocol, and exports its result. This can be used as
a straightforward way to retrieve data from sources that Terraform
doesn't natively support..

* website: documentation for the "external" provider
2016-12-05 17:24:57 +00:00
Paul Stack 8eb478b370 docs/aws: Add opsworks_rds_db_instance.html to nav bar (#10536) 2016-12-05 16:25:02 +00:00