summaryrefslogtreecommitdiff
path: root/lib/ansible/modules/network/basics/net_command.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/ansible/modules/network/basics/net_command.py')
-rw-r--r--lib/ansible/modules/network/basics/net_command.py133
1 files changed, 0 insertions, 133 deletions
diff --git a/lib/ansible/modules/network/basics/net_command.py b/lib/ansible/modules/network/basics/net_command.py
deleted file mode 100644
index 34d20b4b42..0000000000
--- a/lib/ansible/modules/network/basics/net_command.py
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/usr/bin/python
-#
-# This file is part of Ansible
-#
-# Ansible is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# Ansible is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
-#
-
-ANSIBLE_METADATA = {
- 'status': ['preview'],
- 'supported_by': 'core',
- 'version': '1.0'
-}
-
-DOCUMENTATION = """
----
-module: net_command
-version_added: "2.3"
-author: "Peter Sprygada (@privateip)"
-short_description: Executes a command on a remote network device
-description:
- - This module will take the command and execute it on the remote
- device in a CLI shell. The command will output will be returned
- via the stdout return key. If an error is detected, the command
- will return the error via the stderr key.
-options:
- free_form:
- description:
- - A free form command to run on the remote host. There is no
- parameter actually named 'free_form'. See the examples.
- required: true
-notes:
- - This module requires setting the Ansible C(connection) type to C(network_cli).
- - This module will always set the changed return key to C(True)
-"""
-
-EXAMPLES = """
-# Note: These examples assume 'connection' has been set to 'network_cli'.
-
-- name: execute show version
- net_command: show version
-
-- name: run a series of commands
- net_command: "{{ item }}"
- with_items:
- - show interfaces
- - show ip route
- - show version
-"""
-
-RETURN = """
-rc:
- description: The command return code (0 means success)
- returned: always
- type: int
- sample: 0
-stdout:
- description: The command standard output
- returned: always
- type: string
- sample: "Hostname: ios01\nFQDN: ios01.example.net"
-stderr:
- description: The command standard error
- returned: always
- type: string
- sample: "shw hostname\r\n% Invalid input\r\nios01>"
-stdout_lines:
- description: The command standard output split in lines
- returned: always
- type: list
- sample: ["Hostname: ios01", "FQDN: ios01.example.net"]
-start:
- description: The time the job started
- returned: always
- type: str
- sample: "2016-11-16 10:38:15.126146"
-end:
- description: The time the job ended
- returned: always
- type: str
- sample: "2016-11-16 10:38:25.595612"
-delta:
- description: The time elapsed to perform all operations
- returned: always
- type: str
- sample: "0:00:10.469466"
-"""
-from ansible.module_utils.local import LocalAnsibleModule
-
-def main():
- """ main entry point for module execution
- """
- argument_spec = dict(
- _raw_params=dict()
- )
-
- module = LocalAnsibleModule(argument_spec=argument_spec,
- supports_check_mode=False)
-
- if str(module.params['_raw_params']).strip() == '':
- module.fail_json(rc=256, msg='no command given')
-
- result = {'changed': True}
-
- rc, out, err = module.exec_command(module.params['_raw_params'])
-
- try:
- out = module.from_json(out)
- except ValueError:
- if out:
- out = str(out).strip()
- result['stdout_lines'] = out.split('\n')
-
- result.update({
- 'rc': rc,
- 'stdout': out,
- 'stderr': str(err).strip()
- })
-
- module.exit_json(**result)
-
-if __name__ == '__main__':
- main()