.. Document meta :orphan: .. |antsibull-internal-nbsp| unicode:: 0xA0 :trim: .. meta:: :antsibull-docs: 2.16.2 .. Anchors .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module: .. Anchors: short name for ansible.builtin .. Title netbox.netbox.netbox_virtual_machine module -- Create, update or delete virtual\_machines within NetBox +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .. Collection note .. note:: This module is part of the `netbox.netbox collection `_ (version 3.22.0). It is not included in ``ansible-core``. To check whether it is installed, run :code:`ansible-galaxy collection list`. To install it, use: :code:`ansible-galaxy collection install netbox.netbox`. You need further requirements to be able to use this module, see :ref:`Requirements ` for details. To use it in a playbook, specify: :code:`netbox.netbox.netbox_virtual_machine`. .. version_added .. rst-class:: ansible-version-added New in netbox.netbox 0.1.0 .. contents:: :local: :depth: 1 .. Deprecated Synopsis -------- .. Description - Creates, updates or removes virtual\_machines from NetBox .. Aliases .. Requirements .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module_requirements: Requirements ------------ The below requirements are needed on the host that executes this module. - pynetbox .. Options Parameters ---------- .. tabularcolumns:: \X{1}{3}\X{2}{3} .. list-table:: :width: 100% :widths: auto :header-rows: 1 :class: longtable ansible-option-table * - Parameter - Comments * - .. raw:: html
.. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-cert: .. rst-class:: ansible-option-title **cert** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` .. raw:: html
- .. raw:: html
Certificate path .. raw:: html
* - .. raw:: html
.. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data: .. rst-class:: ansible-option-title **data** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`dictionary` / :ansible-option-required:`required` .. raw:: html
- .. raw:: html
Defines the virtual machine configuration .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/cluster: .. rst-class:: ansible-option-title **cluster** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
The name of the cluster attach to the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/comments: .. rst-class:: ansible-option-title **comments** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Comments of the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/config_template: .. rst-class:: ansible-option-title **config_template** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` :ansible-option-versionadded:`added in netbox.netbox 3.17.0` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Configuration template .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/custom_fields: .. rst-class:: ansible-option-title **custom_fields** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`dictionary` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Must exist in NetBox .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/description: .. rst-class:: ansible-option-title **description** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` :ansible-option-versionadded:`added in netbox.netbox 3.10.0` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
The description of the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/device: .. rst-class:: ansible-option-title **device** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` :ansible-option-versionadded:`added in netbox.netbox 3.9.0` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
The device the virtual machine is pinned to in the cluster .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/disk: .. rst-class:: ansible-option-title **disk** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`integer` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Disk of the virtual machine (GB) .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/local_context_data: .. rst-class:: ansible-option-title **local_context_data** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`dictionary` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
configuration context of the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/memory: .. rst-class:: ansible-option-title **memory** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`integer` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Memory of the virtual machine (MB) .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/name: .. rst-class:: ansible-option-title **name** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` / :ansible-option-required:`required` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
The name of the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/platform: .. rst-class:: ansible-option-title **platform** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
The platform of the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/primary_ip4: .. rst-class:: ansible-option-title **primary_ip4** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Primary IPv4 address assigned to the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/primary_ip6: .. rst-class:: ansible-option-title **primary_ip6** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Primary IPv6 address assigned to the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/serial: .. rst-class:: ansible-option-title **serial** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` :ansible-option-versionadded:`added in netbox.netbox 3.20.0` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Serial number of the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/site: .. rst-class:: ansible-option-title **site** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
The name of the site attach to the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/status: .. rst-class:: ansible-option-title **status** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
The status of the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/tags: .. rst-class:: ansible-option-title **tags** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`list` / :ansible-option-elements:`elements=any` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Any tags that the virtual machine may need to be associated with .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/tenant: .. rst-class:: ansible-option-title **tenant** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
The tenant that the virtual machine will be assigned to .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/vcpus: .. rst-class:: ansible-option-title **vcpus** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`float` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Number of vcpus of the virtual machine .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-data/virtual_machine_role: .. rst-class:: ansible-option-title **virtual_machine_role** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
The role of the virtual machine .. raw:: html
* - .. raw:: html
.. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-headers: .. rst-class:: ansible-option-title **headers** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`dictionary` .. raw:: html
- .. raw:: html
Dictionary of headers to be passed to the NetBox API. .. raw:: html
* - .. raw:: html
.. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-netbox_token: .. rst-class:: ansible-option-title **netbox_token** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` / :ansible-option-required:`required` .. raw:: html
- .. raw:: html
The NetBox API token. .. raw:: html
* - .. raw:: html
.. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-netbox_url: .. rst-class:: ansible-option-title **netbox_url** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` / :ansible-option-required:`required` .. raw:: html
- .. raw:: html
The URL of the NetBox instance. Must be accessible by the Ansible control host. .. raw:: html
* - .. raw:: html
.. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-query_params: .. rst-class:: ansible-option-title **query_params** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`list` / :ansible-option-elements:`elements=string` .. raw:: html
- .. raw:: html
This can be used to override the specified values in ALLOWED\_QUERY\_PARAMS that are defined in plugins/module\_utils/netbox\_utils.py and provides control to users on what may make an object unique in their environment. .. raw:: html
* - .. raw:: html
.. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-state: .. rst-class:: ansible-option-title **state** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
- .. raw:: html
The state of the object. .. rst-class:: ansible-option-line :ansible-option-choices:`Choices:` - :ansible-option-choices-entry-default:`"present"` :ansible-option-choices-default-mark:`← (default)` - :ansible-option-choices-entry:`"absent"` .. raw:: html
* - .. raw:: html
.. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__parameter-validate_certs: .. rst-class:: ansible-option-title **validate_certs** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`any` .. raw:: html
- .. raw:: html
If :literal:`no`\ , SSL certificates will not be validated. This should only be used on personally controlled sites using a self-signed certificates. .. rst-class:: ansible-option-line :ansible-option-default-bold:`Default:` :ansible-option-default:`true` .. raw:: html
.. Attributes .. Notes Notes ----- .. note:: - Tags should be defined as a YAML list - This should be ran with connection :literal:`local` and hosts :literal:`localhost` .. Seealso .. Examples Examples -------- .. code-block:: yaml+jinja - name: "Test NetBox modules" connection: local hosts: localhost gather_facts: false tasks: - name: Create virtual machine within NetBox with only required information netbox_virtual_machine: netbox_url: http://netbox.local netbox_token: thisIsMyToken data: name: Test Virtual Machine cluster: test cluster state: present - name: Delete virtual machine within netbox netbox_virtual_machine: netbox_url: http://netbox.local netbox_token: thisIsMyToken data: name: Test Virtual Machine state: absent - name: Create virtual machine with tags netbox_virtual_machine: netbox_url: http://netbox.local netbox_token: thisIsMyToken data: name: Another Test Virtual Machine cluster: test cluster site: Test Site tags: - Schnozzberry state: present - name: Update vcpus, memory and disk of an existing virtual machine netbox_virtual_machine: netbox_url: http://netbox.local netbox_token: thisIsMyToken data: name: Test Virtual Machine cluster: test cluster vcpus: 8 memory: 8 disk: 8 state: present - name: Update virtual machine within NetBox with serial number netbox_virtual_machine: netbox_url: http://netbox.local netbox_token: thisIsMyToken data: name: Test Virtual Machine cluster: test cluster serial: 1234abc state: present .. Facts .. Return values Return Values ------------- Common return values are documented :ref:`here `, the following are the fields unique to this module: .. tabularcolumns:: \X{1}{3}\X{2}{3} .. list-table:: :width: 100% :widths: auto :header-rows: 1 :class: longtable ansible-option-table * - Key - Description * - .. raw:: html
.. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__return-msg: .. rst-class:: ansible-option-title **msg** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
- .. raw:: html
Message indicating failure or info about what has been achieved .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` always .. raw:: html
* - .. raw:: html
.. _ansible_collections.netbox.netbox.netbox_virtual_machine_module__return-virtual_machine: .. rst-class:: ansible-option-title **virtual_machine** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`dictionary` .. raw:: html
- .. raw:: html
Serialized object as created or already existent within NetBox .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` success (when :emphasis:`state=present`\ ) .. raw:: html
.. Status (Presently only deprecated) .. Authors Authors ~~~~~~~ - Gaelle MANGIN (@gmangin) .. Extra links Collection links ~~~~~~~~~~~~~~~~ .. ansible-links:: - title: "Issue Tracker" url: "https://github.com/netbox-community/ansible_modules/issues" external: true - title: "Repository (Sources)" url: "https://github.com/netbox-community/ansible_modules" external: true .. Parsing errors