summaryrefslogtreecommitdiff
path: root/plugins/modules/vyos_generate.py
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/modules/vyos_generate.py')
-rw-r--r--plugins/modules/vyos_generate.py102
1 files changed, 0 insertions, 102 deletions
diff --git a/plugins/modules/vyos_generate.py b/plugins/modules/vyos_generate.py
deleted file mode 100644
index 448575a..0000000
--- a/plugins/modules/vyos_generate.py
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/usr/bin/python
-# -*- coding: utf-8 -*-
-# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
-
-from __future__ import absolute_import, division, print_function
-
-
-__metaclass__ = type
-
-DOCUMENTATION = r"""
----
-module: vyos_generate
-short_description: Execute generate commands on a VyOS device via REST API.
-description:
- - Sends a C(generate) operational command to a VyOS device via the HTTPS
- REST API (C(/generate) endpoint).
- - Commonly used to generate WireGuard keypairs, TLS certificates, etc.
-version_added: "1.0.0"
-author:
- - VyOS Community (@vyos)
-options:
- path:
- description:
- - Generate command tokens.
- - E.g. C(["wireguard", "default-keypair"]).
- type: list
- elements: str
- required: true
- hostname:
- description: IP address or FQDN of the VyOS device.
- type: str
- required: true
- port:
- description: HTTPS port for the REST API.
- type: int
- default: 443
- api_key:
- description: API key configured on the device.
- type: str
- required: true
- no_log: true
- timeout:
- description: Request timeout in seconds.
- type: int
- default: 30
- verify_ssl:
- description: Validate the device's TLS certificate.
- type: bool
- default: false
-requirements:
- - VyOS 1.3+
-examples: |
- - name: Generate WireGuard default keypair
- vyos.rest.vyos_generate:
- hostname: 192.168.1.1
- api_key: MY-KEY
- path: ["wireguard", "default-keypair"]
-
- - name: Generate a new SSH host key
- vyos.rest.vyos_generate:
- hostname: 192.168.1.1
- api_key: MY-KEY
- path: ["ssh-server", "host-key", "rsa"]
-"""
-
-RETURN = r"""
-output:
- description: Text output produced by the generate command (may be empty).
- returned: success
- type: str
-"""
-
-from ansible.module_utils.basic import AnsibleModule
-from ansible_collections.vyos.rest.plugins.module_utils.vyos_rest import (
- VYOS_REST_CONNECTION_ARGSPEC,
- VyOSRestClient,
- VyOSRestError,
-)
-
-
-def main():
- argument_spec = dict(
- path=dict(type="list", elements="str", required=True),
- )
- argument_spec.update(VYOS_REST_CONNECTION_ARGSPEC)
-
- module = AnsibleModule(
- argument_spec=argument_spec,
- supports_check_mode=False,
- )
-
- client = VyOSRestClient(module)
- try:
- result = client.generate(module.params["path"])
- except VyOSRestError as exc:
- module.fail_json(msg=str(exc))
-
- module.exit_json(changed=True, output=result.get("data", ""))
-
-
-if __name__ == "__main__":
- main()