{"action":"created","issue":{"url":"https://api.github.com/repos/ansible/ansible-modules-core/issues/3395","repository_url":"https://api.github.com/repos/ansible/ansible-modules-core","labels_url":"https://api.github.com/repos/ansible/ansible-modules-core/issues/3395/labels{/name}","comments_url":"https://api.github.com/repos/ansible/ansible-modules-core/issues/3395/comments","events_url":"https://api.github.com/repos/ansible/ansible-modules-core/issues/3395/events","html_url":"https://github.com/ansible/ansible-modules-core/pull/3395","id":147087093,"number":3395,"title":"Add `present` to `file`'s `state` attribute.","user":{"login":"supertylerc","id":4076147,"avatar_url":"https://avatars.githubusercontent.com/u/4076147?v=3","gravatar_id":"","url":"https://api.github.com/users/supertylerc","html_url":"https://github.com/supertylerc","followers_url":"https://api.github.com/users/supertylerc/followers","following_url":"https://api.github.com/users/supertylerc/following{/other_user}","gists_url":"https://api.github.com/users/supertylerc/gists{/gist_id}","starred_url":"https://api.github.com/users/supertylerc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/supertylerc/subscriptions","organizations_url":"https://api.github.com/users/supertylerc/orgs","repos_url":"https://api.github.com/users/supertylerc/repos","events_url":"https://api.github.com/users/supertylerc/events{/privacy}","received_events_url":"https://api.github.com/users/supertylerc/received_events","type":"User","site_admin":false},"labels":[{"id":132897290,"url":"https://api.github.com/repos/ansible/ansible-modules-core/labels/feature_pull_request","name":"feature_pull_request","color":"006b75","default":false},{"id":132897334,"url":"https://api.github.com/repos/ansible/ansible-modules-core/labels/needs_revision","name":"needs_revision","color":"eb6420","default":false},{"id":228501817,"url":"https://api.github.com/repos/ansible/ansible-modules-core/labels/pending_action","name":"pending_action","color":"e11d21","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2016-04-09T04:20:20Z","updated_at":"2016-11-08T04:27:37Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/ansible/ansible-modules-core/pulls/3395","html_url":"https://github.com/ansible/ansible-modules-core/pull/3395","diff_url":"https://github.com/ansible/ansible-modules-core/pull/3395.diff","patch_url":"https://github.com/ansible/ansible-modules-core/pull/3395.patch"},"body":"##### ISSUE TYPE\n\nFeature Pull Request\n##### COMPONENT NAME\n\n`file`\n##### ANSIBLE VERSION\n\n```\nansible 2.0.1.0\n  config file =\n  configured module search path = Default w/o overrides\n```\n##### SUMMARY\n\nAdd a `present` value to the `file` module's `state` attribute.  This\nallows the `file` module to operate idempotently on files to ensure a\nfile exists without actually modifying it.\n\nFixes #170.\n###### Before\n\nUsing `state: touch`:\n\n```\n# First time\n       TASK: [example | Touch File] ****************************************\n       <localhost> REMOTE_MODULE file group=example state=touch path=/etc/foo.conf owner=example\n       changed: [localhost] => {\"changed\": true, \"dest\": \"/etc/foo.conf\", \"gid\": 1002, \"group\": \"example\", \"mode\": \"0600\", \"owner\": \"example\", \"size\": 0, \"state\": \"file\", \"uid\": 1002}\n\n# Second time\n       TASK: [example | Touch File] ****************************************\n       <localhost> REMOTE_MODULE file group=example state=touch path=/etc/foo.conf owner=example\n       changed: [localhost] => {\"changed\": true, \"dest\": \"/etc/foo.conf\", \"gid\": 1002, \"group\": \"example\", \"mode\": \"0600\", \"owner\": \"example\", \"size\": 0, \"state\": \"file\", \"uid\": 1002}\n```\n###### After\n\nUsing `state: present`\n\n```\n# First time\n       TASK: [example | Touch File] ****************************************\n       <localhost> REMOTE_MODULE file group=example state=present path=/etc/foo.conf owner=example\n       changed: [localhost] => {\"changed\": true, \"dest\": \"/etc/foo.conf\", \"gid\": 1002, \"group\": \"example\", \"mode\": \"0600\", \"owner\": \"example\", \"size\": 0, \"state\": \"file\", \"uid\": 1002}\n\n# Second time\n       TASK: [example | Touch File] ****************************************\n       <localhost> REMOTE_MODULE file group=example state=present path=/etc/foo.conf owner=example\n       ok: [localhost] => {\"changed\": false, \"dest\": \"/etc/foo.conf\", \"gid\": 1002, \"group\": \"example\", \"mode\": \"0600\", \"owner\": \"example\", \"size\": 0, \"state\": \"file\", \"uid\": 1002}\n```\n"},"comment":{"url":"https://api.github.com/repos/ansible/ansible-modules-core/issues/comments/259042668","html_url":"https://github.com/ansible/ansible-modules-core/pull/3395#issuecomment-259042668","issue_url":"https://api.github.com/repos/ansible/ansible-modules-core/issues/3395","id":259042668,"user":{"login":"gregdek","id":252125,"avatar_url":"https://avatars.githubusercontent.com/u/252125?v=3","gravatar_id":"","url":"https://api.github.com/users/gregdek","html_url":"https://github.com/gregdek","followers_url":"https://api.github.com/users/gregdek/followers","following_url":"https://api.github.com/users/gregdek/following{/other_user}","gists_url":"https://api.github.com/users/gregdek/gists{/gist_id}","starred_url":"https://api.github.com/users/gregdek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gregdek/subscriptions","organizations_url":"https://api.github.com/users/gregdek/orgs","repos_url":"https://api.github.com/users/gregdek/repos","events_url":"https://api.github.com/users/gregdek/events{/privacy}","received_events_url":"https://api.github.com/users/gregdek/received_events","type":"User","site_admin":false},"created_at":"2016-11-08T04:27:37Z","updated_at":"2016-11-08T04:27:37Z","body":"@supertylerc Another friendly reminder: this pull request has been marked as needing your action. If you still believe that this PR applies, and you intend to address the issues with this PR, just let us know in the PR itself and we will keep it open. If you have addressed the issues and believe it's ready for review, please comment with the text \"ready_for_review\". If we don't hear from you within another 14 days, we will close this pull request.\n\n[This message brought to you by your friendly Ansibull-bot.]"}}
{"actor":{"display_login":"gregdek"}}