` for details.
    To use it in a playbook, specify: :code:`theforeman.foreman.repository_set`.
.. version_added
.. rst-class:: ansible-version-added
New in theforeman.foreman 1.0.0
.. contents::
   :local:
   :depth: 1
.. Deprecated
Synopsis
--------
.. Description
- Enable/disable Red Hat Repositories that are available through subscriptions
.. Aliases
Aliases: katello_repository_set
.. Requirements
.. _ansible_collections.theforeman.foreman.repository_set_module_requirements:
Requirements
------------
The below requirements are needed on the host that executes this module.
- requests
.. 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.theforeman.foreman.repository_set_module__parameter-all_repositories:
      .. rst-class:: ansible-option-title
      **all_repositories**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`boolean`
      .. raw:: html
        
 
    - .. raw:: html
        
      Affect all available repositories in the repository set instead of listing them in :emphasis:`repositories`.
      Required when :emphasis:`repositories` is unset or an empty list.
      .. 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.theforeman.foreman.repository_set_module__parameter-ca_path:
      .. rst-class:: ansible-option-title
      **ca_path**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`path`
      .. raw:: html
        
 
    - .. raw:: html
        
      PEM formatted file that contains a CA certificate to be used for validation.
      If the value is not specified in the task, the value of environment variable :literal:`FOREMAN\_CA\_PATH` will be used instead.
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-label:
      .. rst-class:: ansible-option-title
      **label**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`string`
      .. raw:: html
        
 
    - .. raw:: html
        
      Label of the repository set, can be used in place of :emphasis:`name` & :emphasis:`product`
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-name:
      .. rst-class:: ansible-option-title
      **name**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`string`
      .. raw:: html
        
 
    - .. raw:: html
        
      Name of the repository set
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-organization:
      .. rst-class:: ansible-option-title
      **organization**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`string` / :ansible-option-required:`required`
      .. raw:: html
        
 
    - .. raw:: html
        
      Organization that the entity is in
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-password:
      .. rst-class:: ansible-option-title
      **password**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`string`
      .. raw:: html
        
 
    - .. raw:: html
        
      Password of the user accessing the Foreman server.
      If the value is not specified in the task, the value of environment variable :literal:`FOREMAN\_PASSWORD` will be used instead.
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-product:
      .. rst-class:: ansible-option-title
      **product**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`string`
      .. raw:: html
        
 
    - .. raw:: html
        
      Name of the parent product
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-repositories:
      .. rst-class:: ansible-option-title
      **repositories**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`list` / :ansible-option-elements:`elements=dictionary`
      .. raw:: html
        
 
    - .. raw:: html
        
      Release version and base architecture of the repositories to enable.
      Some repository sets require only :emphasis:`basearch` or only :emphasis:`releasever` to be set.
      See the examples how you can obtain this information using :ref:`theforeman.foreman.resource\_info 
`.
      Required when :emphasis:`all\_repositories` is unset or :literal:`false`.
      .. raw:: html
         
  * - .. raw:: html
        
        
      .. raw:: latex
        \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth}
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-repositories/basearch:
      .. rst-class:: ansible-option-title
      **basearch**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`string`
      .. raw:: html
        
 
      .. raw:: latex
        \end{minipage}
    - .. raw:: html
        
      Basearch of the repository to enable.
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. raw:: latex
        \hspace{0.02\textwidth}\begin{minipage}[t]{0.3\textwidth}
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-repositories/releasever:
      .. rst-class:: ansible-option-title
      **releasever**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`string`
      .. raw:: html
        
 
      .. raw:: latex
        \end{minipage}
    - .. raw:: html
        
      Releasever of the repository to enable.
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-server_url:
      .. rst-class:: ansible-option-title
      **server_url**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`string` / :ansible-option-required:`required`
      .. raw:: html
        
 
    - .. raw:: html
        
      URL of the Foreman server.
      If the value is not specified in the task, the value of environment variable :literal:`FOREMAN\_SERVER\_URL` will be used instead.
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-state:
      .. rst-class:: ansible-option-title
      **state**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`string`
      .. raw:: html
        
 
    - .. raw:: html
        
      Whether the repositories are enabled or not
      .. rst-class:: ansible-option-line
      :ansible-option-choices:`Choices:`
      - :ansible-option-choices-entry-default:`"enabled"` :ansible-option-choices-default-mark:`← (default)`
      - :ansible-option-choices-entry:`"disabled"`
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-use_gssapi:
      .. rst-class:: ansible-option-title
      **use_gssapi**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`boolean`
      .. raw:: html
        
 
    - .. raw:: html
        
      Use GSSAPI to perform the authentication, typically this is for Kerberos or Kerberos through Negotiate authentication.
      Requires the Python library \ `requests\-gssapi `__ to be installed.
      If the value is not specified in the task, the value of environment variable :literal:`FOREMAN\_USE\_GSSAPI` will be used instead.
      .. rst-class:: ansible-option-line
      :ansible-option-choices:`Choices:`
      - :ansible-option-choices-entry-default:`false` :ansible-option-choices-default-mark:`← (default)`
      - :ansible-option-choices-entry:`true`
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-username:
      .. rst-class:: ansible-option-title
      **username**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`string`
      .. raw:: html
        
 
    - .. raw:: html
        
      Username accessing the Foreman server.
      If the value is not specified in the task, the value of environment variable :literal:`FOREMAN\_USERNAME` will be used instead.
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_module__parameter-validate_certs:
      .. rst-class:: ansible-option-title
      **validate_certs**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`boolean`
      .. raw:: html
        
 
    - .. raw:: html
        
      Whether or not to verify the TLS certificates of the Foreman server.
      If the value is not specified in the task, the value of environment variable :literal:`FOREMAN\_VALIDATE\_CERTS` will be used instead.
      .. rst-class:: ansible-option-line
      :ansible-option-choices:`Choices:`
      - :ansible-option-choices-entry:`false`
      - :ansible-option-choices-entry-default:`true` :ansible-option-choices-default-mark:`← (default)`
      .. 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.theforeman.foreman.repository_set_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
        
      Can run in check\_mode and return changed status prediction without modifying the entity
      .. raw:: html
        
  * - .. raw:: html
        
        
      .. _ansible_collections.theforeman.foreman.repository_set_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
        
      Will return details on what has changed (or possibly needs changing in check\_mode), when in diff mode
      .. raw:: html
        
.. Notes
.. Seealso
.. Examples
Examples
--------
.. code-block:: yaml+jinja
    - name: "Enable RHEL 7 RPMs repositories"
      theforeman.foreman.repository_set:
        username: "admin"
        password: "changeme"
        server_url: "https://foreman.example.com"
        name: "Red Hat Enterprise Linux 7 Server (RPMs)"
        organization: "Default Organization"
        product: "Red Hat Enterprise Linux Server"
        repositories:
          - releasever: "7.0"
            basearch: "x86_64"
          - releasever: "7.1"
            basearch: "x86_64"
          - releasever: "7.2"
            basearch: "x86_64"
          - releasever: "7.3"
            basearch: "x86_64"
        state: enabled
    - name: "Enable RHEL 7 RPMs repositories with label"
      theforeman.foreman.repository_set:
        username: "admin"
        password: "changeme"
        server_url: "https://foreman.example.com"
        organization: "Default Organization"
        label: rhel-7-server-rpms
        repositories:
          - releasever: "7.0"
            basearch: "x86_64"
          - releasever: "7.1"
            basearch: "x86_64"
          - releasever: "7.2"
            basearch: "x86_64"
          - releasever: "7.3"
            basearch: "x86_64"
        state: enabled
    - name: "Disable RHEL 7 Extras RPMs repository"
      theforeman.foreman.repository_set:
        username: "admin"
        password: "changeme"
        server_url: "https://foreman.example.com"
        name: Red Hat Enterprise Linux 7 Server - Extras (RPMs)
        organization: "Default Organization"
        product: Red Hat Enterprise Linux Server
        state: disabled
        repositories:
          - basearch: x86_64
    - name: "Enable RHEL 8 BaseOS RPMs repository with label"
      theforeman.foreman.repository_set:
        username: "admin"
        password: "changeme"
        server_url: "https://foreman.example.com"
        organization: "Default Organization"
        label: rhel-8-for-x86_64-baseos-rpms
        repositories:
          - releasever: "8"
    - name: "Enable Red Hat Virtualization Manager RPMs repository with label"
      theforeman.foreman.repository_set:
        username: "admin"
        password: "changeme"
        server_url: "https://foreman.example.com"
        organization: "Default Organization"
        label: "rhel-7-server-rhv-4.2-manager-rpms"
        repositories:
          - basearch: x86_64
        state: enabled
    - name: "Enable Red Hat Virtualization Manager RPMs repository without specifying basearch"
      theforeman.foreman.repository_set:
        username: "admin"
        password: "changeme"
        server_url: "https://foreman.example.com"
        organization: "Default Organization"
        label: "rhel-7-server-rhv-4.2-manager-rpms"
        all_repositories: true
        state: enabled
    - name: "Search for possible repository sets of a product"
      theforeman.foreman.resource_info:
        username: "admin"
        password: "changeme"
        server_url: "https://foreman.example.com"
        organization: "Default Organization"
        resource: repository_sets
        search: product_name="Red Hat Virtualization Manager"
      register: data
    - name: "Output found repository sets, see the contentUrl section for possible repository substitutions"
      debug:
        var: data
    - name: "Search for possible repository sets by label"
      theforeman.foreman.resource_info:
        username: "admin"
        password: "changeme"
        server_url: "https://foreman.example.com"
        organization: "Default Organization"
        resource: repository_sets
        search: label=rhel-7-server-rhv-4.2-manager-rpms
      register: data
    - name: "Output found repository sets, see the contentUrl section for possible repository substitutions"
      debug:
        var: data
    - name: Enable set with and without all_repositories at the same time
      theforeman.foreman.repository_set:
        username: "admin"
        password: "changeme"
        server_url: "https://foreman.example.com"
        organization: "Default Organization"
        label: "{{ item.label }}"
        repositories: "{{ item.repositories | default(omit) }}"
        all_repositories: "{{ item.repositories is not defined }}"
        state: enabled
      loop:
        - label: rhel-7-server-rpms
          repositories:
            - releasever: "7Server"
              basearch: "x86_64"
        - label: rhel-7-server-rhv-4.2-manager-rpms
.. 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.theforeman.foreman.repository_set_module__return-entity:
      .. rst-class:: ansible-option-title
      **entity**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`dictionary`
      .. raw:: html
        
 
    - .. raw:: html
        
      Final state of the affected entities grouped by their type.
      .. 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.theforeman.foreman.repository_set_module__return-entity/repository_sets:
      .. rst-class:: ansible-option-title
      **repository_sets**
      .. raw:: html
        
      .. ansible-option-type-line::
        :ansible-option-type:`list` / :ansible-option-elements:`elements=dictionary`
      .. raw:: html
        
 
      .. raw:: latex
        \end{minipage}
    - .. raw:: html
        
      List of repository sets.
      .. rst-class:: ansible-option-line
      :ansible-option-returned-bold:`Returned:` success
      .. raw:: html
        
..  Status (Presently only deprecated)
.. Authors
Authors
~~~~~~~
- Andrew Kofink (@akofink)
.. Extra links
Collection links
~~~~~~~~~~~~~~~~
.. ansible-links::
  - title: "Issue Tracker"
    url: "https://github.com/theforeman/foreman-ansible-modules/issues"
    external: true
  - title: "Homepage"
    url: "https://theforeman.org/"
    external: true
  - title: "Repository (Sources)"
    url: "https://github.com/theforeman/foreman-ansible-modules"
    external: true
.. Parsing errors