{"action":"created","issue":{"url":"https://api.github.com/repos/ansible/ansible/issues/40626","repository_url":"https://api.github.com/repos/ansible/ansible","labels_url":"https://api.github.com/repos/ansible/ansible/issues/40626/labels{/name}","comments_url":"https://api.github.com/repos/ansible/ansible/issues/40626/comments","events_url":"https://api.github.com/repos/ansible/ansible/issues/40626/events","html_url":"https://github.com/ansible/ansible/issues/40626","id":325805624,"node_id":"MDU6SXNzdWUzMjU4MDU2MjQ=","number":40626,"title":"JunOs commit confirmed instant rollback","user":{"login":"bcavns01","id":29068530,"node_id":"MDQ6VXNlcjI5MDY4NTMw","avatar_url":"https://avatars0.githubusercontent.com/u/29068530?v=4","gravatar_id":"","url":"https://api.github.com/users/bcavns01","html_url":"https://github.com/bcavns01","followers_url":"https://api.github.com/users/bcavns01/followers","following_url":"https://api.github.com/users/bcavns01/following{/other_user}","gists_url":"https://api.github.com/users/bcavns01/gists{/gist_id}","starred_url":"https://api.github.com/users/bcavns01/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bcavns01/subscriptions","organizations_url":"https://api.github.com/users/bcavns01/orgs","repos_url":"https://api.github.com/users/bcavns01/repos","events_url":"https://api.github.com/users/bcavns01/events{/privacy}","received_events_url":"https://api.github.com/users/bcavns01/received_events","type":"User","site_admin":false},"labels":[{"id":686214011,"node_id":"MDU6TGFiZWw2ODYyMTQwMTE=","url":"https://api.github.com/repos/ansible/ansible/labels/affects_2.5","name":"affects_2.5","color":"ededed","default":false},{"id":785271699,"node_id":"MDU6TGFiZWw3ODUyNzE2OTk=","url":"https://api.github.com/repos/ansible/ansible/labels/bug","name":"bug","color":"fbca04","default":true},{"id":496359346,"node_id":"MDU6TGFiZWw0OTYzNTkzNDY=","url":"https://api.github.com/repos/ansible/ansible/labels/module","name":"module","color":"1d76db","default":false},{"id":339653091,"node_id":"MDU6TGFiZWwzMzk2NTMwOTE=","url":"https://api.github.com/repos/ansible/ansible/labels/networking","name":"networking","color":"c7def8","default":false},{"id":669761792,"node_id":"MDU6TGFiZWw2Njk3NjE3OTI=","url":"https://api.github.com/repos/ansible/ansible/labels/support:network","name":"support:network","color":"ededed","default":false}],"state":"closed","locked":false,"assignee":{"login":"ganeshrn","id":5292461,"node_id":"MDQ6VXNlcjUyOTI0NjE=","avatar_url":"https://avatars0.githubusercontent.com/u/5292461?v=4","gravatar_id":"","url":"https://api.github.com/users/ganeshrn","html_url":"https://github.com/ganeshrn","followers_url":"https://api.github.com/users/ganeshrn/followers","following_url":"https://api.github.com/users/ganeshrn/following{/other_user}","gists_url":"https://api.github.com/users/ganeshrn/gists{/gist_id}","starred_url":"https://api.github.com/users/ganeshrn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ganeshrn/subscriptions","organizations_url":"https://api.github.com/users/ganeshrn/orgs","repos_url":"https://api.github.com/users/ganeshrn/repos","events_url":"https://api.github.com/users/ganeshrn/events{/privacy}","received_events_url":"https://api.github.com/users/ganeshrn/received_events","type":"User","site_admin":false},"assignees":[{"login":"ganeshrn","id":5292461,"node_id":"MDQ6VXNlcjUyOTI0NjE=","avatar_url":"https://avatars0.githubusercontent.com/u/5292461?v=4","gravatar_id":"","url":"https://api.github.com/users/ganeshrn","html_url":"https://github.com/ganeshrn","followers_url":"https://api.github.com/users/ganeshrn/followers","following_url":"https://api.github.com/users/ganeshrn/following{/other_user}","gists_url":"https://api.github.com/users/ganeshrn/gists{/gist_id}","starred_url":"https://api.github.com/users/ganeshrn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ganeshrn/subscriptions","organizations_url":"https://api.github.com/users/ganeshrn/orgs","repos_url":"https://api.github.com/users/ganeshrn/repos","events_url":"https://api.github.com/users/ganeshrn/events{/privacy}","received_events_url":"https://api.github.com/users/ganeshrn/received_events","type":"User","site_admin":false}],"milestone":null,"comments":14,"created_at":"2018-05-23T17:36:16Z","updated_at":"2018-07-17T12:02:26Z","closed_at":"2018-06-29T09:39:56Z","author_association":"NONE","body":"<!---\r\nVerify first that your issue/request is not already reported on GitHub.\r\nTHIS FORM WILL BE READ BY A MACHINE, COMPLETE ALL SECTIONS AS DESCRIBED.\r\nAlso test if the latest release, and devel branch are affected too.\r\nALWAYS add information AFTER (OUTSIDE) these html comments.\r\nOtherwise it may end up being automatically closed by our bot. -->\r\n\r\n##### SUMMARY\r\n<!--- Explain the problem briefly -->\r\n`confirm` option of the `junos_config ` module does not work as expected.  Commits are immediately rolled back.\r\n##### ISSUE TYPE\r\n - Bug Report\r\n\r\n##### COMPONENT NAME\r\n<!--- Insert, BELOW THIS COMMENT, the name of the module, plugin, task or feature.\r\nDo not include extra details here, e.g. \"vyos_command\" not \"the network module vyos_command\" or the full path-->\r\njunos_config\r\n##### ANSIBLE VERSION\r\n<!--- Paste, BELOW THIS COMMENT, verbatim output from \"ansible --version\" between quotes below -->\r\n```\r\nansible 2.5.3\r\n  config file = None\r\n  configured module search path = [u'/path/to/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']\r\n  ansible python module location = /usr/local/lib/python2.7/dist-packages/ansible\r\n  executable location = /usr/local/bin/ansible\r\n  python version = 2.7.12 (default, Dec  4 2017, 14:50:18) [GCC 5.4.0 20160609]\r\n\r\n```\r\n\r\n##### CONFIGURATION\r\n<!--- If using Ansible 2.4 or above, paste, BELOW THIS COMMENT, the results of \"ansible-config dump --only-changed\"\r\nOtherwise, mention any settings you have changed/added/removed in ansible.cfg\r\n(or using the ANSIBLE_* environment variables).-->\r\nANSIBLE_NOCOWS(env: ANSIBLE_NOCOWS) = True\r\n##### OS / ENVIRONMENT\r\n<!--- Mention, BELOW THIS COMMENT, the OS you are running Ansible from, and the OS you are\r\nmanaging, or say \"N/A\" for anything that is not platform-specific.\r\nAlso mention the specific version of what you are trying to control,\r\ne.g. if this is a network bug the version of firmware on the network device.-->\r\n\r\nOS running ansible:\r\nUbuntu 16.04.3 LTS\r\n\r\nOS being managed:\r\nModel: qfx5100-48s-6q\r\nJunos: 17.3R1.10\r\n\r\n##### STEPS TO REPRODUCE\r\n<!--- For bugs, show exactly how to reproduce the problem, using a minimal test-case.\r\nFor new features, show how the feature would be used. -->\r\nCreate and run a task to apply config changes to a juniper switch:\r\n<!--- Paste example playbooks or commands between quotes below -->\r\n```\r\n  - name: Apply - Generated config\r\n    junos_config:\r\n      host: \"{{ juniper_ssh_host }}\"\r\n      port: \"{{ juniper_ssh_port }}\"\r\n      username: \"{{ juniper_ssh_user }}\"\r\n      ssh_keyfile: \"{{ juniper_ssh_key_file }}\"\r\n      src: \"path/to/juniper-full-config.set\"\r\n      src_format: set\r\n      confirm: 20\r\n```\r\n\r\n<!--- You can also paste gist.github.com links for larger files -->\r\n\r\n##### EXPECTED RESULTS\r\n<!--- What did you expect to happen when running the steps above? -->\r\nI expected the commit to have a timeout of 20 minutes before being rolled back.\r\n##### ACTUAL RESULTS\r\n<!--- What actually happened? If possible run with extra verbosity (-vvvv) -->\r\nThe commit is immediately rolled back.\r\n\r\n##### ADDITIONAL\r\nThis is an issue with the ncclient library being used by the ansible junos_* modules, which is detailed in the following relevant github links.\r\nhttps://github.com/NetworkAutomation/jaide/issues/6\r\nhttps://github.com/ncclient/ncclient/pull/37/files\r\n\r\nTL;DR: Junos expects the xml tree for a commit RPC to have `commit-configuration` as the top level node, not `commit`, but ncclient continues to use the incorrect top level node name.\r\n\r\n##### SUGGESTED FIX\r\nRemove the dependency on `ncclient` or fork it, or shift to using vendor-provided libraries, such as https://github.com/Juniper/ansible-junos-stdlib"},"comment":{"url":"https://api.github.com/repos/ansible/ansible/issues/comments/405557751","html_url":"https://github.com/ansible/ansible/issues/40626#issuecomment-405557751","issue_url":"https://api.github.com/repos/ansible/ansible/issues/40626","id":405557751,"node_id":"MDEyOklzc3VlQ29tbWVudDQwNTU1Nzc1MQ==","user":{"login":"sebastianw","id":504962,"node_id":"MDQ6VXNlcjUwNDk2Mg==","avatar_url":"https://avatars3.githubusercontent.com/u/504962?v=4","gravatar_id":"","url":"https://api.github.com/users/sebastianw","html_url":"https://github.com/sebastianw","followers_url":"https://api.github.com/users/sebastianw/followers","following_url":"https://api.github.com/users/sebastianw/following{/other_user}","gists_url":"https://api.github.com/users/sebastianw/gists{/gist_id}","starred_url":"https://api.github.com/users/sebastianw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebastianw/subscriptions","organizations_url":"https://api.github.com/users/sebastianw/orgs","repos_url":"https://api.github.com/users/sebastianw/repos","events_url":"https://api.github.com/users/sebastianw/events{/privacy}","received_events_url":"https://api.github.com/users/sebastianw/received_events","type":"User","site_admin":false},"created_at":"2018-07-17T12:02:26Z","updated_at":"2018-07-17T12:02:26Z","author_association":"NONE","body":"FYI the workaround is applied in Ansible 2.6.1 which fixes the issue for me. Couldn't find an easy way to see when it was applied to the stable branch."}}
{"actor":{"display_login":"sebastianw"}}