Commit graph

77 commits

Author SHA1 Message Date
Januar
7446f70146 provider/docker network alias (#14710)
* Add Network Alias configuration with network options

* Handle case where there's no network option

* Handle use case where network option is not available

* Handle use case where network option is not available

* Network alias only on user defined network

* Update documentation for docker provider on network aliases

* Remove unused variable

* Update documentation

* add unit test for docker container network

* fix unit test for docker container network
2017-05-22 09:20:32 -04:00
Malte Brodersen
4e40753b5a Allow Windows Docker containers to map volumes (#13584)
* fix regex for windows path

* Fix escaping

* move validate function out and create test
2017-05-15 13:09:50 +03:00
Daniel Portella
ae63f9ce26 provider/docker: added support for linux capabilities (#12045)
* added support for linux capabilities

Refs #11623

Added capabilities block
Added tests for it
Added documentation for it.

My PC doesnt support memory swap so it errors there.

```
$ make testacc TEST=./builtin/providers/docker TESTARGS='-run=TestAccDockerContainer_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/02/17 14:57:08 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/docker -v -run=TestAccDockerContainer_ -timeout 120m
=== RUN   TestAccDockerContainer_basic
--- PASS: TestAccDockerContainer_basic (44.50s)
=== RUN   TestAccDockerContainer_volume
--- PASS: TestAccDockerContainer_volume (40.73s)
=== RUN   TestAccDockerContainer_customized
--- FAIL: TestAccDockerContainer_customized (50.27s)
	testing.go:265: Step 0 error: Check failed: Check 2/2 error: Container has wrong memory swap setting: -1
	Please check that you machine supports memory swap (you can do that by running 'docker info' command).
=== RUN   TestAccDockerContainer_upload
--- PASS: TestAccDockerContainer_upload (38.56s)
FAIL
exit status 1
FAIL	github.com/hashicorp/terraform/builtin/providers/docker	174.070s
Makefile:48: recipe for target 'testacc' failed
make: *** [testacc] Error 1
```

* Documentation changes.

* added maxitems and rerun tests
2017-03-07 18:48:20 +02:00
hmcgonig
0a75a724b6 provider/docker: Add support for a list of pull_triggers within the docker_image resource. (#10845) 2017-01-03 16:10:39 +00:00
VERDOÏA Laurent
8fcb881db3 provider/docker: Add network create --internal flag support (#10932)
* provider/docker: Add network create --internal flag support

* provider/docker: Add acceptance tests for network --internal flag
2017-01-03 11:46:16 +00:00
Michael Kuzmin
78397b5a9a provider/docker: fix regression, cert_path stop working (#10754) (#10801) 2016-12-17 12:41:08 +00:00
Michael Kuzmin
738e90507e provider/docker: Upload files into container before first start (#9520)
* Create uploads section for docker containers

* Upload a single file, load its content from state
2016-12-05 11:06:34 +00:00
Michael Kuzmin
bdd81081f6 provider/docker: authentication via values instead of files (#10151)
* Docker authentication via values

* Rename parameters to ca_material, cert_material, and key_material. Add environment variables.
2016-11-22 14:18:09 +02:00
Daniel Portella
1801efaf99 provider/docker: Fixes for docker_container host object and documentation (#9367)
* Updated docker container documentation

Feedback from ticket #9350 indicated that documentation was out of date

renamed `hosts_entry` to `host`
added correct type information to *Extra Hosts* section.

Refs: 9350

* Fixes for docker_container host object

Feedback from ticket #9350 updated codebase so it reflects the requirements from docker in regards to `host` which is `Required` and not optional.
It now accurately reflects the docker requirements and the terraform documentation.

Test results

> Bear in mind the failure it is because my laptop doesnt support memory swap. So this test will always fail.

Changing the Schema from `optional` to `required` made no difference to the tests.

make testacc TEST=./builtin/providers/docker/
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2016/10/14 15:04:40 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/docker/ -v  -timeout 120m
=== RUN   TestAccDockerRegistryImage_basic
--- PASS: TestAccDockerRegistryImage_basic (4.57s)
=== RUN   TestAccDockerRegistryImage_private
--- PASS: TestAccDockerRegistryImage_private (6.22s)
=== RUN   TestProvider
--- PASS: TestProvider (0.00s)
=== RUN   TestProvider_impl
--- PASS: TestProvider_impl (0.00s)
=== RUN   TestAccDockerContainer_basic
--- PASS: TestAccDockerContainer_basic (7.16s)
=== RUN   TestAccDockerContainer_volume
--- PASS: TestAccDockerContainer_volume (7.37s)
=== RUN   TestAccDockerContainer_customized
--- FAIL: TestAccDockerContainer_customized (18.99s)
	testing.go:265: Step 0 error: Check failed: Check 2/2 error: Container has wrong memory swap setting: -1
	Please check that you machine supports memory swap (you can do that by running 'docker info' command).
=== RUN   TestAccDockerImage_basic
--- PASS: TestAccDockerImage_basic (2.58s)
=== RUN   TestAccDockerImage_private
--- PASS: TestAccDockerImage_private (2.70s)
=== RUN   TestAccDockerImage_destroy
--- PASS: TestAccDockerImage_destroy (30.00s)
=== RUN   TestAccDockerImage_data
--- PASS: TestAccDockerImage_data (5.93s)
=== RUN   TestAccDockerNetwork_basic
--- PASS: TestAccDockerNetwork_basic (0.24s)
=== RUN   TestAccDockerVolume_basic
--- PASS: TestAccDockerVolume_basic (0.05s)
FAIL
exit status 1
FAIL	github.com/hashicorp/terraform/builtin/providers/docker	85.816s
Makefile:47: recipe for target 'testacc' failed
make: *** [testacc] Error 1

Refs: 9350
2016-10-27 10:54:05 +01:00
kyhavlov
46356f2d02 provider/docker: Added docker_registry_image data source (#7000) 2016-07-26 16:18:38 +01:00
JB Arsenault
439a19426c Add destroy_grace_seconds option to stop container before delete (#7513) 2016-07-11 16:03:02 +01:00
Daniel Portella
6154fad933 provider/docker: Docker documentation and additional test message (#7412)
* added additional error info for when memory swap assert fails.

related to https://github.com/hashicorp/terraform/pull/7392

* updated docker_container documentation

reflect recent changes to docker provider around tests, dns options and
dns search support.

* Grammar and punctuation changes

Docker container documentation.

* Spell checking, grammar and punctuation.

Docker container documentation.

* Markdown change sto docker container documentation
2016-06-29 15:48:15 +01:00
Daniel Portella
efcec57608 provider/docker: Docker DNS Setting Enhancements (#7392)
* fixed go vet issues on aws provider in  master

* added support for dns, dns options and dns search for docker container.

On docker container resource you can specify dns_opts nad dns_search
which maps directly to docker --dns_opt and --dns_search parameters.
Allowing users to setup the embedded dns settings for their containers.

* fixed the asserts for the new features in tests.

fixed tests around DNS, DNS_OPTS and DNS_SEARCH
2016-06-29 13:38:46 +01:00
stack72
ae92cc7e30 provider/docker: Fixing the Docker Container Mount Test
```
make testacc TEST=./builtin/providers/docker TESTARGS='-run=TestAccDockerContainer_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /vendor/)
TF_ACC=1 go test ./builtin/providers/docker -v
-run=TestAccDockerContainer_ -timeout 120m
=== RUN   TestAccDockerContainer_basic
--- PASS: TestAccDockerContainer_basic (17.25s)
=== RUN   TestAccDockerContainer_volume
--- PASS: TestAccDockerContainer_volume (16.79s)
=== RUN   TestAccDockerContainer_customized
--- PASS: TestAccDockerContainer_customized (19.65s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/docker 53.712s
```
2016-06-29 09:38:56 +01:00
James Nugent
4ec88d82ab provider/docker: don't crash with empty commands
If any of the entries in `commands` on `docker_container` resources was
empty, the assertion to string panic'd. Since we can't use ValidateFunc
on list elements, we can only really check this at apply time. If any
value is nil (resolves to empty string during conversion), we fail with
an error prior to creating the container.

Fixes #6409.
2016-04-29 18:54:45 -05:00
Xavier Sellier
c943ed4b78 Provider Docker: (#6376)
- Add option keep_locally
- Add unit test
- Add documentation
2016-04-27 17:18:02 +01:00
VERDOÏA Laurent
5cdb31fec1 provider/docker: #5298 Add support for docker run --user option 2016-04-04 21:43:59 -05:00
Rhyas
91cfbf9b4e Fix Image Destroy bug. #3609 #3771 2016-03-22 22:56:51 -06:00
Raphael Randschau
f7936ad8b3 Fix docker test assertions regarding latest tag 2016-03-06 16:45:06 +01:00
Verdoïa Laurent
193c75b164 provider/docker: #2417 Add support for restart policy unless-stopped 2016-02-26 12:38:31 +09:00
Colin Hebert
292c493762 Stop providing the hostConfig while starting the container 2016-02-13 22:04:51 +11:00
Paul Hinze
f5efe52f08 Merge pull request #5046 from tpounds/use-built-in-schema-string-hash
Use built-in schema.HashString instead of custom hash functions.
2016-02-12 07:58:34 -06:00
Sebastiaan van Steenis
eab6478caf Change default DOCKER_HOST value, fixes #4923 2016-02-10 20:21:17 +01:00
Trevor Pounds
5e0b6e3750 Use built-in schema.HashString. 2016-02-07 16:29:34 -08:00
Colin Hebert
f763cd8b35 remove extra parenthesis 2016-01-31 08:49:35 +11:00
Colin Hebert
edd907c043 Catch potential custom network errors in docker 2016-01-31 08:31:30 +11:00
James Nugent
50d8d5773f provider/docker: Mount named volumes in containers
This adds support for specifying named volumes for mounting in a
`docker_container` resource.
2016-01-15 21:59:33 +00:00
Colin Hebert
8bf14ffeb7 provider/docker: Add docker_volume resource 2016-01-15 17:34:53 +00:00
James Nugent
75e1fee5fa provider/docker: Tweak and test host_entry
This adds acceptance tests for specifying extra hosts on Docker
containers. It also renames the repeating block from `hosts` to `host`,
which reads more naturally in the schema when multiple instances of the
block are declared.
2016-01-15 03:02:20 +00:00
James Nugent
ed0a250129 Merge branch 'docker-extra-hosts' of https://github.com/paulbellamy/terraform into paulbellamy-docker-extra-hosts 2016-01-14 15:48:51 +00:00
James Nugent
ed3a43a2fe provider/docker: Fix flaky integration tests
Asserting on the value of `latest` on an image is prone to failing
because of new images being pushed upstream. Instead of asserting on a
hash, we assert that the value matches a regular expression for the
format of an image hash.
2016-01-14 09:12:05 +00:00
James Nugent
f770ba6120 Merge branch 'docker_network' of https://github.com/ColinHebert/terraform into ColinHebert-docker_network 2016-01-14 07:01:03 +00:00
Colin Hebert
bca87ec0ff Add Elem and Set to the network set 2016-01-05 03:46:24 +01:00
Colin Hebert
c823565d5d Fix typo 2016-01-04 21:03:53 +01:00
Colin Hebert
99f83853f7 Add the networks entry 2016-01-04 20:58:54 +01:00
Colin Hebert
94b54c2a30 Add support of custom networks in docker 2016-01-02 12:20:55 +01:00
Colin Hebert
1d60a86a14 Convert v to string 2016-01-01 10:12:43 +01:00
Colin Hebert
a44b873992 Add network_mode support to docker 2016-01-01 09:57:21 +01:00
stack72
3f3e9fab7d Fixing yet more gofmt errors with imports 2015-12-21 09:54:24 +00:00
Paul Bellamy
1c8e4c81e4 provider/docker: Inline ports and volumes schemas for consistency 2015-12-03 10:51:59 +00:00
Paul Bellamy
7bfa5f90b9 provider/docker: Add hosts parameter for containers 2015-12-03 10:32:41 +00:00
James Nugent
aa872d07c6 provider/docker: locate container via ID not name
This reapplies the patch mentioned in #3364 - for an unknown reason the
diff there was incorrect.
2015-12-02 17:27:24 -05:00
James Nugent
5e1c8c88f5 provider/docker: Refer to a tag instead of latest
This should make tests more stable going forward. Also switch out the
image used from Ubuntu to Alpine Linux to reduce required download size
during test runs.
2015-12-02 15:08:16 -05:00
James Nugent
f9601a6754 Merge pull request #3761 from ryane/f-provider-docker-improvements
provider/docker: support additional arguments for `docker_container` resource
2015-12-02 11:46:29 -05:00
Paul Hinze
c0c51b84ef provider/docker: fix image test
there's a new latest in town
2015-11-20 09:58:03 -06:00
ryane
5a5f5ff988 docker: improve validation of runtime constraints 2015-11-09 19:36:23 -05:00
ryane
f1da40e648 include hostconfig when creating docker_container 2015-11-04 15:52:16 -05:00
ryane
f6e4608a35 fix resource constraint specs 2015-11-04 15:52:16 -05:00
ryane
38b1e1ce26 support for log driver + config in docker container 2015-11-04 15:52:16 -05:00
ryane
8f9b151811 add label support to docker container resource 2015-11-04 15:52:15 -05:00