Commit Graph

174 Commits

Author SHA1 Message Date
Paul Stack 128af891ca provider/alicloud: Creating the necessary structure for the alicloud documentation (#11289) 2017-01-19 14:40:01 +00: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
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
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
Dan Stine 870a981c50 Alphabetize sidebar list of providers by displayed name (#10824) 2016-12-19 10:18:23 +00:00
stack72 d13b843b48
docs/newrelic: Add the New Relic docs to the nav bar 2016-12-15 19:15:00 +00:00
Paul Stack 67b9f88886 docs/icinga2: Adding the documentation to the sidebar of the website (#10671) 2016-12-12 15:53:37 +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
John Engelman 243ecf3b4f [Provider] Rancher (#9173)
* Vendor Rancher Go library.

* Implement Rancher Provider.

Starting implementation taken from
https://github.com/platanus/terraform-provider-rancher

Commits from jidonoso@gmail.com and raphael.pinson@camptocamp.com
2016-12-05 15:29:41 +00:00
Mitchell Hashimoto 95a8172106
website: document state purpose [GH-10474] 2016-12-03 15:49:31 -08:00
Mitchell Hashimoto aaf1ad0532 Merge pull request #10093 from hashicorp/f-console
Add `terraform console` for REPL
2016-11-14 11:53:49 -08:00
Mitchell Hashimoto 0232b39db6
website: document console command 2016-11-13 23:17:04 -08:00
Mitchell Hashimoto 0e2e19c784
website: document required_version 2016-11-12 22:50:28 -08:00
Mitchell Hashimoto fd498fbfff Merge pull request #9538 from hashicorp/f-nomad-provider
provider/nomad: Nomad provider for managing jobs
2016-11-09 18:34:55 -08:00
Martin Atkins d28468d9a3 website: documentation for the vault provider 2016-10-29 23:16:57 -07:00
Mitchell Hashimoto bb5f6498e2
provider/nomad 2016-10-24 10:34:06 -07:00
Alexander Hellbom 5c99f1317a Update documentation 2016-10-24 14:19:56 +02:00
Cameron Stokes f6b149932c ~website: Remove duplicate Bitbucket link in sidebar. 2016-10-21 14:24:46 -07:00
James Nugent c7c31677d9 Merge pull request #9371 from cwood/cwood/fix-sidebar-missing-bitbucket
Bitbucket missing from sidebar of providers link.
2016-10-14 11:59:44 -05:00
Colin Wood a8c154b8f8 Bitbucket missing from sidebar of providers link. 2016-10-14 09:55:20 -07:00
stack72 62bc112b1b
Adding the bitbucket provider to the website sidebar 2016-10-06 19:25:13 +01:00
Paul Stack 05994cef31 Merge pull request #7694 from jtopjian/provider-rabbitmq
RabbitMQ Provider
2016-09-02 08:08:18 +01:00
Joe Topjian d1e6f5c3dc provider/rabbitmq: docs 2016-09-01 19:04:41 +00:00
James Nugent 61f885aa86 website: Add archive provider to sidebar and css 2016-08-22 05:30:37 +02:00
Paul Hinze fa7ef4ceed Update docs to centralize on ARM-based Azure provider (#7767)
Sidebar:

 - Rename "Azure (Resource Manager)" to "Microsoft Azure" and sort
   accordingly
 - Rename "Azure (Service Management)" to "Microsoft Azure (Legacy ASM)"
   and sort accordingly

ARM provider docs:

 - Name changes everywhere to Microsoft Azure Provider
 - Mention and link to "legacy Azure Service Management Provider" in opening paragraph
 - Sidebar gains link at bottom to Azure Service Management Provider

ASM provider docs:
 - Name changes everywhere to Azure Service Management Provider
 - Sidebar gains link at bottom to Microsoft Azure Provider
 - Every page gets a header with the following
 - "NOTE: The Azure Service Management provider is no longer being actively developed by HashiCorp employees. It continues to be supported by the community. We recommend using the Azure Resource Manager based [Microsoft Azure Provider] instead if possible."
2016-07-22 11:39:59 +01:00
Raphael Randschau 9081cabd6e Add scaleway provider (#7331)
* Add scaleway provider

this PR allows the entire scaleway stack to be managed with terraform

example usage looks like this:

```
provider "scaleway" {
  api_key = "snap"
  organization = "snip"
}

resource "scaleway_ip" "base" {
  server = "${scaleway_server.base.id}"
}

resource "scaleway_server" "base" {
  name = "test"
  # ubuntu 14.04
  image = "aecaed73-51a5-4439-a127-6d8229847145"
  type = "C2S"
}

resource "scaleway_volume" "test" {
  name = "test"
  size_in_gb = 20
  type = "l_ssd"
}

resource "scaleway_volume_attachment" "test" {
  server = "${scaleway_server.base.id}"
  volume = "${scaleway_volume.test.id}"
}

resource "scaleway_security_group" "base" {
  name = "public"
  description = "public gateway"
}

resource "scaleway_security_group_rule" "http-ingress" {
  security_group = "${scaleway_security_group.base.id}"

  action = "accept"
  direction = "inbound"
  ip_range = "0.0.0.0/0"
  protocol = "TCP"
  port = 80
}

resource "scaleway_security_group_rule" "http-egress" {
  security_group = "${scaleway_security_group.base.id}"

  action = "accept"
  direction = "outbound"
  ip_range = "0.0.0.0/0"
  protocol = "TCP"
  port = 80
}
```

Note that volume attachments require the server to be stopped, which can lead to
downtimes of you attach new volumes to already used servers

* Update IP read to handle 404 gracefully

* Read back resource on update

* Ensure IP detachment works as expected

Sadly this is not part of the official scaleway api just yet

* Adjust detachIP helper

based on feedback from @QuentinPerez in
https://github.com/scaleway/scaleway-cli/pull/378

* Cleanup documentation

* Rename api_key to access_key

following @stack72 suggestion and rename the provider api_key for more clarity

* Make tests less chatty by using custom logger
2016-07-13 21:03:41 +01:00
Derek Abdine 7bdc060d24 provider/logentries: Implementing logentries provider (#7067)
* logentries provider

* logentries vendoring

* logentries docs
2016-07-12 14:14:39 +01:00
James Nugent 5a0f6565d3 Merge pull request #6672 from apparentlymart/random-provider
Logical Resources for Random Values
2016-05-29 11:58:42 -07:00
Martin Atkins 158a90b25b Grafana Provider, with Data Source and Dashboard resources (#6206)
* Grafana provider

* grafana_data_source resource.

Allows data sources to be created in Grafana. Supports all data source
types that are accepted in the current version of Grafana, and will
support any future ones that fit into the existing structure.

* Vendoring of apparentlymart/go-grafana-api

This is in anticipation of adding a Grafana provider plugin.

* grafana_dashboard resource

* Website documentation for the Grafana provider.
2016-05-20 10:20:17 +01:00
Mitchell Hashimoto 54df833406
website: add import command docs 2016-05-18 12:57:03 -06:00
Mitchell Hashimoto 6d9e41668f
website: basic docs on import 2016-05-18 12:57:03 -06:00
Martin Atkins feafc94dde website: docs for the "random" provider 2016-05-14 16:49:10 -07:00
Martin Atkins 64f2651204 website: Initial documentation about data sources
This will undoubtedly evolve as implementation continues, but this is some
initial documentation based on the design doc.
2016-05-14 08:26:36 -07:00
Chris Bednarski 3c774af9c2 Warn when an internal plugin is overridden
Also added documentation explaining what happened and how to fix it
2016-05-10 14:49:13 -04:00
Mitchell Hashimoto d1b46e99bd Add `terraform state list` command
This introduces the terraform state list command to list the resources
within a state. This is the first of many state management commands to
come into 0.7.

This is the first command of many to come that is considered a
"plumbing" command within Terraform (see "plumbing vs porcelain":
http://git.661346.n2.nabble.com/what-are-plumbing-and-porcelain-td2190639.html).
As such, this PR also introduces a bunch of groundwork to support
plumbing commands.

The main changes:

- Main command output is changed to split "common" and "uncommon"
  commands.

- mitchellh/cli is updated to support nested subcommands, since
  terraform state list is a nested subcommand.

- terraform.StateFilter is introduced as a way in core to filter/search
  the state files. This is very basic currently but I expect to make it
  more advanced as time goes on.

- terraform state list command is introduced to list resources in a
  state. This can take a series of arguments to filter this down.

Known issues, or things that aren't done in this PR on purpose:

- Unit tests for terraform state list are on the way. Unit tests for the
  core changes are all there.
2016-05-10 14:14:47 -04:00
danielcbright 8921e10d71 Added softlayer virtual guest and ssh keys functionality:
Here is an example that will setup the following:
+ An SSH key resource.
+ A virtual server resource that uses an existing SSH key.
+ A virtual server resource using an existing SSH key and a Terraform managed SSH key (created as "test_key_1" in the example below).

(create this as sl.tf and run terraform commands from this directory):
```hcl
provider "softlayer" {
    username = ""
    api_key = ""
}

resource "softlayer_ssh_key" "test_key_1" {
    name = "test_key_1"
    public_key = "${file(\"~/.ssh/id_rsa_test_key_1.pub\")}"
    # Windows Example:
    # public_key = "${file(\"C:\ssh\keys\path\id_rsa_test_key_1.pub\")}"
}

resource "softlayer_virtual_guest" "my_server_1" {
    name = "my_server_1"
    domain = "example.com"
    ssh_keys = ["123456"]
    image = "DEBIAN_7_64"
    region = "ams01"
    public_network_speed = 10
    cpu = 1
    ram = 1024
}

resource "softlayer_virtual_guest" "my_server_2" {
    name = "my_server_2"
    domain = "example.com"
    ssh_keys = ["123456", "${softlayer_ssh_key.test_key_1.id}"]
    image = "CENTOS_6_64"
    region = "ams01"
    public_network_speed = 10
    cpu = 1
    ram = 1024
}
```

You'll need to provide your SoftLayer username and API key,
so that Terraform can connect. If you don't want to put
credentials in your configuration file, you can leave them
out:

```
provider "softlayer" {}
```

...and instead set these environment variables:

- **SOFTLAYER_USERNAME**: Your SoftLayer username
- **SOFTLAYER_API_KEY**: Your API key
2016-05-03 15:58:58 -05:00
Henrik Hodne 8f07a2d6d5 provider/librato: Add Librato provider 2016-04-29 14:49:55 -05:00
Joe Topjian 831bae8624 provider/cobbler: Cobbler Provider
This introduces a provider for Cobbler. Cobbler manages bare-metal
deployments and, to some extent, virtual machines. This initial
commit supports the following resources: distros, profiles, systems,
kickstart files, and snippets.
2016-04-16 08:54:59 -05:00
Seth Vargo 4fde3b2be9 Capitalize the H in GitHub
GitHub really doesn't like when you make the H lowercase, it violates
their brand guidelines and they won't help promote anything that doesn't
use the capital H.
2016-04-07 10:26:01 -04:00
Martin Atkins fa703db8a6 Merge #4955: "terraform fmt" command 2016-04-04 01:07:32 -07:00
clint shryock 2ad37bba4a provider/fastly: Add Fastly Provider, ServiceV1 resource 2016-03-23 14:53:50 -05:00
Albert Choi 7775cc8ccc snapshot from CenturyLinkLabs/terraform-provider-clc
+examples +docs for clc
2016-03-21 08:58:37 -07:00
James Nugent e70764f64d provider/triton: New provider for Joyent Triton
This brings across the following resources for Triton from the
joyent/triton-terraform repository, and converts them to the canonical
Terraform style, introducing Terraform-style documentation and
acceptance tests which run against the live API rather than the local
APIs:

- triton_firewall_rule
- triton_machine
- triton_key
2016-03-20 20:15:17 +00:00
Martin Atkins 7061448d74 Docs for InfluxDB provider and database resource 2016-03-20 14:53:34 -05:00
Josh Masseo 1b4991163f UltraDNS Provider 2016-03-20 12:10:59 -05:00
James Nugent 85b4b5813f Revert "provider/triton: New provider for Joyent Triton"
This reverts commit f60f04ac70.
2016-03-19 17:53:06 +00:00
James Nugent f60f04ac70 provider/triton: New provider for Joyent Triton
This brings across the following resources for Triton from the
joyent/triton-terraform repository, and converts them to the canonical
Terraform style, introducing Terraform-style documentation and
acceptance tests which run against the live API rather than the local
APIs:

- triton_firewall_rule
- triton_machine
- triton_key
2016-03-18 23:35:01 +00:00
Paul Hinze 07caec0d14 Merge pull request #5194 from objectpartners/f-github-provider
GitHub Organization Provider
2016-03-17 10:53:13 -05:00
Paul Hinze c7f5450a96 command: Add `terraform untaint`
- [x] Docs
 - [x] Command Unit Tests
 - [x] State Unit Tests

Closes #4820
2016-03-11 12:38:57 -06:00
Jacob Severson c1b373ad5f Add Github Organization provider.
Allows for managing organization membership, teams, team membership, and
team repositories.
2016-03-08 23:06:30 +01:00
Dan Carley cc41c7cfa0 command/fmt: Add new fmt command
This uses the `fmtcmd` package which has recently been merged into HCL. Per
the usage text, this rewrites Terraform config files to their canonical
formatting and style.

Some notes about the implementation for this initial commit:

- all of the fmtcmd options are exposed as CLI flags
- it operates on all files that have a `.tf` suffix
- it currently only operates on the working directory and doesn't accept a
  directory argument, but I'll extend this in subsequent commits
- output is proxied through `cli.UiWriter` so that we write in the same way
  as other commands and we can capture the output during tests
- the test uses a very simple fixture just to ensure that it is working
  correctly end-to-end; the fmtcmd package has more exhaustive tests
- we have to write the fixture to a file in a temporary directory because it
  will be modified and for this reason it was easier to define the fixture
  contents as a raw string
2016-03-07 15:07:04 +00:00
Otto Jongerius c8bd02abee Add Datadog doco. 2016-02-22 15:04:29 -05:00
Soren Mathiasen db69a2959b Added verify command 2016-02-08 12:48:14 +01:00
Dmytro Aleksandrov 3cfe3374a3 provider/powerdns: Add site documentation 2016-01-28 10:10:46 -05:00
Radek Simko f2ffff33eb docs: Create new section for remote state backends 2016-01-18 08:08:19 +00:00
John Engelman b6788479de Add Terraform/Remote State documentation to provider/resource section.
Issue #2074
2015-12-27 19:04:27 +01:00
Martin Atkins a9d97708ee mysql provider and mysql_database resource.
Allows databases on pre-existing MySQL servers to be created and managed
by Terraform.
2015-12-16 17:59:35 -08:00
James Nugent 805c4896bd provider/azurerm: Clean up work for base provider
- Add documentation for resources
- Rename files to match standard patterns
- Add acceptance tests for resource groups
- Add acceptance tests for vnets
- Remove ARM_CREDENTIALS file - as discussed this does not appear to be
  an Azure standard, and there is scope for confusion with the
  azureProfile.json file which the CLI generates. If a standard emerges
  we can reconsider this.
- Validate credentials in the schema
- Remove storage testing artefacts
- Use ARM IDs as Terraform IDs
- Use autorest hooks for logging
2015-12-15 18:31:02 -05:00
Martin Atkins 764ea7f39c Documentation for the Chef provider. 2015-12-13 15:09:17 -08:00
clint shryock 5b036fbf4f provider/dyn: Add Dyn to the documentation sidebar 2015-12-09 14:05:18 -06:00
Adrian Chelaru e1eef15646 postgresql provider with "database" and "role" resources 2015-12-03 23:44:20 -08:00
Paul Hinze 9e68c34abe Merge pull request #3785 from hmrc/master
VMWare vCloud Director Support
2015-12-03 15:51:47 -06:00
stack72 3ecf722b77 Adding some documentation for the StatusCake provider 2015-11-30 10:44:21 +00:00
Nicki Watt 5df9d22a6a Minor doc updates 2015-11-11 07:43:36 +00:00
Brett Mack bda4ef7e7c Merge branch 'terraform' into hmrc 2015-11-06 10:22:25 +00:00
Cameron Stokes 964c9cd7e8 Change all occurrences of 'vSphere' to 'VMware vSphere' 2015-11-02 18:21:08 -08:00
Brett Mack 8376a5a160 Merge branch 'terraform' 2015-11-02 13:57:44 +00:00
Brett Mack 8780bd269a Added vCloud Director provider with tests and provider documentation 2015-11-02 13:39:25 +00:00
Paul Hinze 32ae193e94 Merge pull request #2778 from apparentlymart/tls
TLS utility provider
2015-10-29 14:51:06 -05:00
Paul Hinze 7f800f3498 website: docs for null_resource 2015-10-27 15:28:37 -05:00
Martin Atkins f6fd41e7b5 tls provider
As of this commit this provider has only logical resources that allow
the creation of private keys, self-signed certs and certificate requests.
These can be useful when creating other resources that use TLS
certificates, such as AWS Elastic Load Balancers.

Later it could grow to include support for real certificate provision from
CAs using the LetsEncrypt ACME protocol, once it is stable.
2015-10-22 21:48:32 -07:00
Paul Hinze 05d6c5b509 vsphere docs; first draft
I'm not familiar with vSphere so I had to skip over details in some
places, but this at least gets the basic structure in for the docs.
2015-10-15 09:18:05 -05:00
Sam Handler 234adffd51 Add Packet to docs layout sidebar 2015-10-09 17:42:36 -04:00
Martin Atkins 1c8d0cdac7 Rundeck provider documentation for the website. 2015-09-03 10:01:32 -07:00
Nathaniel Schweinberg 03554ec8ca fixed formatting glitches 2015-07-01 21:50:26 -05:00
Nathaniel Schweinberg e38ced7785 retabd 2015-07-01 21:48:25 -05:00
Nathaniel Schweinberg d857746d49 tweaking indentation settings 2015-07-01 21:46:51 -05:00
Nathaniel Schweinberg 80d77df477 fixed indentation 2015-07-01 21:40:04 -05:00
Nathaniel Schweinberg 382cad03c2 Added page documenting useful Environment Variables 2015-07-01 21:38:25 -05:00
Sander van Harmelen ca1eb1917b Adding docs and tweaking the provider 2015-05-28 00:51:18 +02:00
Sander van Harmelen 4e0aa334fa Merge pull request #1868 from svanharmelen/f-chef-client-provisioner
New provisioner for Chef-Client
2015-05-12 23:06:09 +02:00
Sander van Harmelen c19d92fb67 Refactored quite a few things after review...
Also renamed the provisioner to just `chef` as it’s out intention to
end up with one provisioner for all types of `chef` clients.
2015-05-08 23:25:24 +02:00
Sander van Harmelen 60984b2da2 This commit adds a Chef Client provisioner
The commit is pretty complete and has a tested/working provisioner for
both SSH and WinRM. There are a few tests, but we maybe need another
few to have better coverage. Docs are also included…
2015-05-08 14:54:56 +02:00
Radek Simko dfae8e1170 Do matching in sidebar_current via regex or equal sign 2015-05-08 10:40:51 +01:00
Mitchell Hashimoto f1ae920aa9 website: document templating as a provider 2015-05-07 18:20:22 -07:00
Mitchell Hashimoto 56e92f7f02 website: document state 2015-05-05 17:52:28 -07:00
Travis Truman 4dc7e083ef Adding doc that explains how to configure/use logging 2015-04-28 09:43:39 -04:00
Jack Pearkes ccb6cefca9 website: fix openstack doc links and style 2015-04-02 21:08:42 -07:00
Paul Hinze 5b699fea9e Merge pull request #1293 from hashicorp/f-targeted-ops
core: targeted operations
2015-04-01 10:37:55 -05:00
Paul Hinze 91a3d22a9f docs: resource addressing 2015-03-31 18:48:54 -05:00
Mitchell Hashimoto 2f0235b23d website: docker docs 2015-03-28 19:05:17 -07:00
Mitchell Hashimoto f857363aac website: document push 2015-03-24 13:30:23 -07:00
Mitchell Hashimoto 4306405af8 website: docs for new remote commands 2015-03-04 16:35:42 -08:00
Mitchell Hashimoto ac6efa5e57 Merge pull request #1065 from hashicorp/f-taint
Add "taint" command
2015-02-26 23:55:20 -08:00
Mitchell Hashimoto fa9b655fd1 website: docs for tainted command 2015-02-26 10:37:08 -08:00
Jack Pearkes 0ee4e2b46c providers/dme: rename dnsmadeeasy package to dme
This package rename just makes one consistent name across the docs,
packages, and dirs.

cc/ @soniah
2015-02-25 15:54:22 -08:00
Paul Hinze fad6f69071 Revert "Add Azure provider"
This reverts commit f561e2a6a8.
2015-02-13 12:53:01 -06:00
Ferran Rodenas f561e2a6a8 Add Azure provider 2015-01-30 16:32:35 -06:00
Sander van Harmelen 68a6e7197f Adding some needed references and updated a couple of passes 2015-01-13 11:28:05 +01:00