.. Document meta :orphan: .. |antsibull-internal-nbsp| unicode:: 0xA0 :trim: .. meta:: :antsibull-docs: 2.26.0 .. Anchors .. _ansible_collections.stephrobert.scaleway.lb_frontend_module: .. Anchors: short name for ansible.builtin .. Title stephrobert.scaleway.lb_frontend module -- Manage a Scaleway Load Balancer frontend +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .. Collection note .. note:: This module is part of the `stephrobert.scaleway collection `_ (version 0.7.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 stephrobert.scaleway`. You need further requirements to be able to use this module, see :ref:`Requirements ` for details. To use it in a playbook, specify: :code:`stephrobert.scaleway.lb_frontend`. .. version_added .. rst-class:: ansible-version-added New in stephrobert.scaleway 0.1.0 .. contents:: :local: :depth: 1 .. Deprecated Synopsis -------- .. Description - Update a given frontend, specified by its frontend ID. You can update configuration parameters including its name and the port it listens on. - The module reads the resource first and writes the whole body, because this operation replaces the resource: fields you do not set keep the value the API returns. A second run reports no change. .. Aliases .. Requirements .. _ansible_collections.stephrobert.scaleway.lb_frontend_module_requirements: Requirements ------------ The below requirements are needed on the host that executes this module. - scaleway \>= 2.9.0 .. 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.stephrobert.scaleway.lb_frontend_module__parameter-access_key: .. rst-class:: ansible-option-title **access_key** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
- .. raw:: html
Scaleway API access key. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-api_allow_insecure: .. rst-class:: ansible-option-title **api_allow_insecure** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`boolean` .. raw:: html
- .. raw:: html
Allow the API endpoint to be reached without verifying its TLS certificate. Falls back to the Scaleway configuration file, then to :literal:`false`. .. rst-class:: ansible-option-line :ansible-option-choices:`Choices:` - :ansible-option-choices-entry:`false` - :ansible-option-choices-entry:`true` .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-api_timeout: .. rst-class:: ansible-option-title **api_timeout** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`integer` .. raw:: html
- .. raw:: html
Seconds allowed for a single API call, connection and read. Without a limit a silent connection would hang the module forever: the Scaleway SDK issues its requests with no timeout at all. This bounds a single call, not a whole wait. Modules that can wait for a state bound the overall wait separately. .. rst-class:: ansible-option-line :ansible-option-default-bold:`Default:` :ansible-option-default:`60` .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-api_url: .. rst-class:: ansible-option-title **api_url** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
- .. raw:: html
URL of the Scaleway API endpoint. Point it at a local emulator to exercise a playbook without credentials. Falls back to the Scaleway configuration file, then to :literal:`https://api.scaleway.com`. It carries no module default on purpose: a default is never unset, so it would always override the profile. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-backend_id: .. rst-class:: ansible-option-title **backend_id** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` / :ansible-option-required:`required` .. raw:: html
- .. raw:: html
Backend ID (ID of the backend the frontend should pass traffic to). .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-certificate_id: .. rst-class:: ansible-option-title **certificate_id** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
- .. raw:: html
Certificate ID, deprecated in favor of certificate\_ids array. Deprecated by the Scaleway API contract. To clear this field, write \`certificate\_id: ""\`; omit the option to leave the current value untouched. Setting it to null is refused: this API reads null as "field not provided" and would change nothing. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-certificate_ids: .. rst-class:: ansible-option-title **certificate_ids** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`list` / :ansible-option-elements:`elements=string` .. raw:: html
- .. raw:: html
List of SSL/TLS certificate IDs to bind to the frontend. To clear this field, write \`certificate\_ids: []\`; omit the option to leave the current value untouched. Setting it to null is refused: this API reads null as "field not provided" and would change nothing. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-config_file: .. rst-class:: ansible-option-title **config_file** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`path` .. raw:: html
- .. raw:: html
Path to the Scaleway configuration file. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-connection_rate_limit: .. rst-class:: ansible-option-title **connection_rate_limit** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`integer` .. raw:: html
- .. raw:: html
Rate limit for new connections established on this frontend. Use 0 value to disable, else value is connections per second. The contract marks this field clearable, but int has no empty value, so the API cannot clear it. Setting it to null is refused: this API reads null as "field not provided" and would change nothing. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-enable_access_logs: .. rst-class:: ansible-option-title **enable_access_logs** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`boolean` .. raw:: html
- .. raw:: html
Defines whether to enable access logs on the frontend. The contract marks this field clearable, but bool has no empty value, so the API cannot clear it. Setting it to null is refused: this API reads null as "field not provided" and would change nothing. .. rst-class:: ansible-option-line :ansible-option-choices:`Choices:` - :ansible-option-choices-entry:`false` - :ansible-option-choices-entry:`true` .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-enable_http3: .. rst-class:: ansible-option-title **enable_http3** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`boolean` .. raw:: html
- .. raw:: html
Defines whether to enable HTTP/3 protocol on the frontend. .. rst-class:: ansible-option-line :ansible-option-choices:`Choices:` - :ansible-option-choices-entry:`false` - :ansible-option-choices-entry:`true` .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-frontend_id: .. rst-class:: ansible-option-title **frontend_id** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` / :ansible-option-required:`required` .. raw:: html
- .. raw:: html
Frontend ID. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-inbound_port: .. rst-class:: ansible-option-title **inbound_port** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`integer` / :ansible-option-required:`required` .. raw:: html
- .. raw:: html
Port the frontend should listen on. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-name: .. rst-class:: ansible-option-title **name** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` / :ansible-option-required:`required` .. raw:: html
- .. raw:: html
Frontend name. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-organization_id: .. rst-class:: ansible-option-title **organization_id** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
- .. raw:: html
Default Organization ID used when an operation does not name one. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-profile: .. rst-class:: ansible-option-title **profile** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
- .. raw:: html
Name of the profile to read in the Scaleway configuration file. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-project_id: .. rst-class:: ansible-option-title **project_id** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
- .. raw:: html
Default Project ID used when an operation does not name one. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-secret_key: .. rst-class:: ansible-option-title **secret_key** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
- .. raw:: html
Scaleway API secret key. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-timeout_client: .. rst-class:: ansible-option-title **timeout_client** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`float` .. raw:: html
- .. raw:: html
Maximum allowed inactivity time on the client side. (in milliseconds) .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-user_agent: .. rst-class:: ansible-option-title **user_agent** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
- .. raw:: html
Value of the User\-Agent header sent to the API. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__parameter-zone: .. rst-class:: ansible-option-title **zone** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` / :ansible-option-required:`required` .. raw:: html
- .. raw:: html
The zone you want to target .. rst-class:: ansible-option-line :ansible-option-choices:`Choices:` - :ansible-option-choices-entry:`"fr\-par\-1"` - :ansible-option-choices-entry:`"fr\-par\-2"` - :ansible-option-choices-entry:`"nl\-ams\-1"` - :ansible-option-choices-entry:`"nl\-ams\-2"` - :ansible-option-choices-entry:`"nl\-ams\-3"` - :ansible-option-choices-entry:`"pl\-waw\-1"` - :ansible-option-choices-entry:`"pl\-waw\-2"` - :ansible-option-choices-entry:`"pl\-waw\-3"` .. raw:: html
.. Attributes Attributes ---------- .. tabularcolumns:: \X{2}{10}\X{3}{10}\X{5}{10} .. list-table:: :width: 100% :widths: auto :header-rows: 1 :class: longtable ansible-option-table * - Attribute - Support - Description * - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__attribute-check_mode: .. rst-class:: ansible-option-title **check_mode** .. raw:: html .. raw:: html
- .. raw:: html
:ansible-attribute-support-label:`Support: \ `\ :ansible-attribute-support-full:`full` .. raw:: html
- .. raw:: html
In check mode the module reads the resource and compares it, then reports what it would write without writing it. .. raw:: html
* - .. raw:: html
.. _ansible_collections.stephrobert.scaleway.lb_frontend_module__attribute-diff_mode: .. rst-class:: ansible-option-title **diff_mode** .. raw:: html .. raw:: html
- .. raw:: html
:ansible-attribute-support-label:`Support: \ `\ :ansible-attribute-support-full:`full` .. raw:: html
- .. raw:: html
The module reports the fields that differ, read through the same projection the comparison uses. .. raw:: html
.. Notes Notes ----- .. note:: - Every option can be set from its environment variable, respectively :literal:`SCW\_PROFILE`\ , :literal:`SCW\_CONFIG\_PATH`\ , :literal:`SCW\_ACCESS\_KEY`\ , :literal:`SCW\_SECRET\_KEY`\ , :literal:`SCW\_API\_URL`\ , :literal:`SCW\_DEFAULT\_ORGANIZATION\_ID` and :literal:`SCW\_DEFAULT\_PROJECT\_ID`. - Module options take precedence over environment variables, which take precedence over the configuration file. .. Seealso .. Examples Examples -------- .. code-block:: yaml+jinja # The module reads the resource, compares, and writes only what # differs: run it twice and the second run reports no change. # # Check mode compares without writing, and `--diff` shows what would # change. A parameter you do not pass is a parameter the module does # not touch. - name: Update a Scaleway Load Balancer frontend stephrobert.scaleway.lb_frontend: zone: fr-par-1 frontend_id: 11111111-2222-3333-4444-555555555555 backend_id: 11111111-2222-3333-4444-555555555555 inbound_port: 80 name: my-frontend register: result - name: Preview the change on a Scaleway Load Balancer frontend without writing stephrobert.scaleway.lb_frontend: zone: fr-par-1 frontend_id: 11111111-2222-3333-4444-555555555555 backend_id: 11111111-2222-3333-4444-555555555555 inbound_port: 80 name: my-frontend register: result check_mode: true diff: true .. 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.stephrobert.scaleway.lb_frontend_module__return-resource: .. rst-class:: ansible-option-title **resource** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`dictionary` .. raw:: html
- .. raw:: html
Get the full details of a given frontend, specified by its frontend ID. The response contains the frontend's full configuration parameters including the backend it is attached to, the port it listens on, and any certificates it has. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` success .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/backend: .. rst-class:: ansible-option-title **backend** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`dictionary` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Backend object the frontend is attached to. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/certificate: .. rst-class:: ansible-option-title **certificate** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`dictionary` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Certificate, deprecated in favor of certificate\_ids array. Deprecated by the Scaleway API contract. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/certificate_ids: .. rst-class:: ansible-option-title **certificate_ids** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`list` / :ansible-option-elements:`elements=string` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
List of SSL/TLS certificate IDs to bind to the frontend. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/connection_rate_limit: .. rst-class:: ansible-option-title **connection_rate_limit** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`integer` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Rate limit for new connections established on this frontend. Use 0 value to disable, else value is connections per second. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/created_at: .. rst-class:: ansible-option-title **created_at** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Date on which the frontend was created. (RFC 3339 format) .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/enable_access_logs: .. rst-class:: ansible-option-title **enable_access_logs** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`boolean` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Defines whether to enable access logs on the frontend. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/enable_http3: .. rst-class:: ansible-option-title **enable_http3** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`boolean` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Defines whether to enable HTTP/3 protocol on the frontend. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/id: .. rst-class:: ansible-option-title **id** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Frontend ID. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/inbound_port: .. rst-class:: ansible-option-title **inbound_port** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`integer` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Port the frontend listens on. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/lb: .. rst-class:: ansible-option-title **lb** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`dictionary` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Load Balancer object the frontend is attached to. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/name: .. rst-class:: ansible-option-title **name** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Name of the frontend. .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/timeout_client: .. rst-class:: ansible-option-title **timeout_client** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`float` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Maximum allowed inactivity time on the client side. (in milliseconds) .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
* - .. raw:: html
.. raw:: latex \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth} .. _ansible_collections.stephrobert.scaleway.lb_frontend_module__return-resource/updated_at: .. rst-class:: ansible-option-title **updated_at** .. raw:: html .. ansible-option-type-line:: :ansible-option-type:`string` .. raw:: html
.. raw:: latex \end{minipage} - .. raw:: html
Date on which the frontend was last updated. (RFC 3339 format) .. rst-class:: ansible-option-line :ansible-option-returned-bold:`Returned:` when the API returns it .. raw:: html
.. Status (Presently only deprecated) .. Authors Authors ~~~~~~~ - Stéphane Robert (@stephrobert) .. Extra links Collection links ~~~~~~~~~~~~~~~~ .. ansible-links:: - title: "Issue Tracker" url: "https://github.com/stephrobert/collection-scaleway/issues" external: true - title: "Repository (Sources)" url: "https://github.com/stephrobert/collection-scaleway" external: true .. Parsing errors