{"action":"created","issue":{"url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker/issues/40","repository_url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker","labels_url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker/issues/40/labels{/name}","comments_url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker/issues/40/comments","events_url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker/issues/40/events","html_url":"https://github.com/terraform-providers/terraform-provider-docker/pull/40","id":290356465,"number":40,"title":"Feat/swarm 4 new resources","user":{"login":"mavogel","id":8409778,"avatar_url":"https://avatars0.githubusercontent.com/u/8409778?v=4","gravatar_id":"","url":"https://api.github.com/users/mavogel","html_url":"https://github.com/mavogel","followers_url":"https://api.github.com/users/mavogel/followers","following_url":"https://api.github.com/users/mavogel/following{/other_user}","gists_url":"https://api.github.com/users/mavogel/gists{/gist_id}","starred_url":"https://api.github.com/users/mavogel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mavogel/subscriptions","organizations_url":"https://api.github.com/users/mavogel/orgs","repos_url":"https://api.github.com/users/mavogel/repos","events_url":"https://api.github.com/users/mavogel/events{/privacy}","received_events_url":"https://api.github.com/users/mavogel/received_events","type":"User","site_admin":false},"labels":[{"id":620329714,"url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker/labels/enhancement","name":"enhancement","color":"d4c5f9","default":true}],"state":"open","locked":false,"assignee":{"login":"mavogel","id":8409778,"avatar_url":"https://avatars0.githubusercontent.com/u/8409778?v=4","gravatar_id":"","url":"https://api.github.com/users/mavogel","html_url":"https://github.com/mavogel","followers_url":"https://api.github.com/users/mavogel/followers","following_url":"https://api.github.com/users/mavogel/following{/other_user}","gists_url":"https://api.github.com/users/mavogel/gists{/gist_id}","starred_url":"https://api.github.com/users/mavogel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mavogel/subscriptions","organizations_url":"https://api.github.com/users/mavogel/orgs","repos_url":"https://api.github.com/users/mavogel/repos","events_url":"https://api.github.com/users/mavogel/events{/privacy}","received_events_url":"https://api.github.com/users/mavogel/received_events","type":"User","site_admin":false},"assignees":[{"login":"mavogel","id":8409778,"avatar_url":"https://avatars0.githubusercontent.com/u/8409778?v=4","gravatar_id":"","url":"https://api.github.com/users/mavogel","html_url":"https://github.com/mavogel","followers_url":"https://api.github.com/users/mavogel/followers","following_url":"https://api.github.com/users/mavogel/following{/other_user}","gists_url":"https://api.github.com/users/mavogel/gists{/gist_id}","starred_url":"https://api.github.com/users/mavogel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mavogel/subscriptions","organizations_url":"https://api.github.com/users/mavogel/orgs","repos_url":"https://api.github.com/users/mavogel/repos","events_url":"https://api.github.com/users/mavogel/events{/privacy}","received_events_url":"https://api.github.com/users/mavogel/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker/milestones/1","html_url":"https://github.com/terraform-providers/terraform-provider-docker/milestone/1","labels_url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker/milestones/1/labels","id":3126450,"number":1,"title":"v0.1.2","description":"Swarm features","creator":{"login":"mavogel","id":8409778,"avatar_url":"https://avatars0.githubusercontent.com/u/8409778?v=4","gravatar_id":"","url":"https://api.github.com/users/mavogel","html_url":"https://github.com/mavogel","followers_url":"https://api.github.com/users/mavogel/followers","following_url":"https://api.github.com/users/mavogel/following{/other_user}","gists_url":"https://api.github.com/users/mavogel/gists{/gist_id}","starred_url":"https://api.github.com/users/mavogel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mavogel/subscriptions","organizations_url":"https://api.github.com/users/mavogel/orgs","repos_url":"https://api.github.com/users/mavogel/repos","events_url":"https://api.github.com/users/mavogel/events{/privacy}","received_events_url":"https://api.github.com/users/mavogel/received_events","type":"User","site_admin":false},"open_issues":5,"closed_issues":3,"state":"open","created_at":"2018-02-19T10:14:16Z","updated_at":"2018-04-05T19:16:44Z","due_on":"2018-04-08T07:00:00Z","closed_at":null},"comments":8,"created_at":"2018-01-22T05:43:20Z","updated_at":"2018-04-09T18:35:59Z","closed_at":null,"author_association":"COLLABORATOR","pull_request":{"url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker/pulls/40","html_url":"https://github.com/terraform-providers/terraform-provider-docker/pull/40","diff_url":"https://github.com/terraform-providers/terraform-provider-docker/pull/40.diff","patch_url":"https://github.com/terraform-providers/terraform-provider-docker/pull/40.patch"},"body":"### Summary\r\n* Adding Swarm features: config, secret and service\r\n\r\nPart 4/4 for splitting #31 \r\n\r\n## Known issues/workarounds\r\n* The Docker API does not yet support a `/stack` endpoint to set up a composition of services. A Feature request was already made https://github.com/moby/moby/issues/32781\r\n* A Docker Version of a `17.09` is required so that all container of removed services are removed as well. See https://github.com/moby/moby/issues/35933#issuecomment-366149721 for details. It is not solved with `18.02` according to https://github.com/moby/moby/issues/35933#issuecomment-370137470.\r\n* `create`, `update`, and `delete` if a service is performed as **fire and forget**,  hence e.g if the API client returns for an update and it fails because the containers are not healthy it is up to the user to fix that. Terraform will have the state that the update was successful. This is similar how the `kubernetes`  provider is implemented. **However**, it possible to add a `converge_config` to add the features of how the `docker-cli` handles updates and rollbacks\r\n```hcl\r\nresource \"docker_service\" \"foo\" {\r\n...\r\n\tconverge_config {\r\n\t\tinterval = \"500ms\"\r\n\t\tmonitor  = \"10s\"\r\n                timeout  = \"1m\"\r\n\t}\r\n...\r\n}\r\n```"},"comment":{"url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker/issues/comments/379851032","html_url":"https://github.com/terraform-providers/terraform-provider-docker/pull/40#issuecomment-379851032","issue_url":"https://api.github.com/repos/terraform-providers/terraform-provider-docker/issues/40","id":379851032,"user":{"login":"olljanat","id":6213926,"avatar_url":"https://avatars1.githubusercontent.com/u/6213926?v=4","gravatar_id":"","url":"https://api.github.com/users/olljanat","html_url":"https://github.com/olljanat","followers_url":"https://api.github.com/users/olljanat/followers","following_url":"https://api.github.com/users/olljanat/following{/other_user}","gists_url":"https://api.github.com/users/olljanat/gists{/gist_id}","starred_url":"https://api.github.com/users/olljanat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olljanat/subscriptions","organizations_url":"https://api.github.com/users/olljanat/orgs","repos_url":"https://api.github.com/users/olljanat/repos","events_url":"https://api.github.com/users/olljanat/events{/privacy}","received_events_url":"https://api.github.com/users/olljanat/received_events","type":"User","site_admin":false},"created_at":"2018-04-09T18:35:59Z","updated_at":"2018-04-09T18:35:59Z","author_association":"NONE","body":"@mavogel I mean image tag update on terraform configs (which you test with TestAccDockerService_updateImage function).\r\n\r\n\r\nIf I understand this right it should be possible to create tftest-service.tpl file which contains just text \"v1\" and then load it like this:\r\n```\r\ndata \"template_file\" \"tftest-service_tpl\" {\r\n  template = \"${file(\"tftest-service.tpl\")}\"\r\n}\r\n\r\nresource \"docker_service\" \"foo\" {\r\n\timage    = \"127.0.0.1:15000/tftest-service:${data.template_file.tftest-service_tpl.rendered}\"\r\n}\r\n```\r\n\r\nSo then last step of build process (where I build version of \"127.0.0.1:15000/tftest-service\") it can store new version of tftest-service.tpl to version control and it can trigger release pipeline which will run terraform.\r\n\r\nBut the real question is that is this correct/good way to do that or is there be some better one?"}}
{"actor":{"display_login":"olljanat"}}