ktdreyer.errata_tool_ansible.errata_tool_cdn_repo (0.0.339) — module

Create and manage CDN repositories in the Errata Tool

Authors: unknown

preview | supported by community

Install collection

Install with ansible-galaxy collection install ktdreyer.errata_tool_ansible:==0.0.339


Add to requirements.yml

  collections:
    - name: ktdreyer.errata_tool_ansible
      version: 0.0.339

Description

Create and update CDN repositories within Red Hat's Errata Tool.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: create cdn repositories
  hosts: localhost
  tasks:

  - name: Add rhceph-4-tools-for-rhel-8-x86_64-rpms cdn repo
    errata_tool_cdn_repo:
      name: rhceph-4-tools-for-rhel-8-x86_64-rpms
      release_type: Primary
      content_type: Binary
      use_for_tps: True
      arch: x86_64
      variants:
      - 8Base-RHCEPH-4.0-Tools
      - 8Base-RHCEPH-4.1-Tools

  - name: Add rh-ocs-4-for-rhel-8-s390x-source-rpms cdn repo
    errata_tool_cdn_repo:
      name: rh-ocs-4-for-rhel-8-s390x-source-rpms
      release_type: Primary
      content_type: Source
      arch: s390x
      use_for_tps: false
      variants:
        - RHEL-8-RHOCS-4.6

  - name: Add rhceph/rhceph-4-rhel8 cdn repo
    errata_tool_cdn_repo:
      name: rhceph/rhceph-4-rhel8
      external_name: rhceph/rhceph-4-rhel8
      release_type: Primary
      content_type: Docker
      variants:
      - 8Base-RHCEPH-4.0-Tools
      - 8Base-RHCEPH-4.1-Tools
      packages:
        rhceph-container:
        - latest
        - "{{ '{{' }}version{{ '}}' }}"
        - "{{ '{{' }}version{{ '}}' }}-{{ '{{' }}release{{ '}}' }}"

  - name: Add a repo with a restricted tag
    errata_tool_cdn_repo:
      name: fooproduct/foo-1-rhel8
      release_type: Primary
      content_type: Docker
      variants:
      - 8Base-FOO-1.0-Tools
      - 8Base-FOO-1.1-Tools
      packages:
        foo-container:
        - latest
        - my-restricted-variant-tag:
            variant: 8Base-FOO-1.0-Tools

  - name: Add a repo with a tag for hotfix
    errata_tool_cdn_repo:
      name: fooproduct/foo-1-rhel8
      release_type: Primary
      content_type: Docker
      variants:
      - 8Base-FOO-1.0-Tools
      - 8Base-FOO-1.1-Tools
      packages:
        foo-container:
        - latest
        - my-hotfix-tag:
            for_hotfix: True

  - name: Add a repo with a tag for prerelease
    errata_tool_cdn_repo:
      name: fooproduct/foo-1-rhel8
      release_type: Primary
      content_type: Docker
      variants:
      - 8Base-FOO-1.0-Tools
      - 8Base-FOO-1.1-Tools
      packages:
        foo-container:
        - latest
        - my-prerelease-tag:
            for_prerelease: True

Inputs

    
arch:
    choices:
    - i386
    - ia64
    - s390
    - x86_64
    - s390x
    - ppc
    - ppc64
    - aarch64
    - ppc64le
    default: '"x86_64" for RPMs, "multi" for Docker.'
    description:
    - The architecture for this CDN repo. You can only set this for non-Docker (ie RPM)
      repos. Docker will always be "multi".

name:
    description:
    - Public repo name
    - 'Example: rhceph/rhceph-4-rhel8'
    required: true

packages:
    default: '{} (no packages)'
    description:
    - A dict of packages for this CDN repo. Each dict key is the package name, and the
      value is the list of tags for the package.
    - Each tag can be a string or a dict. If the tag is a string, the Errata Tool will
      apply this package's tag to all variants. If the tag is a dict with "variant" key,
      the Errata Tool will apply the package's tag to the single variant that you specify
      in the dict. You can specify "for_hotfix" and "for_prerelease" to indicate if the
      tag is for hotfix or prerelease.
    - 'If you omit this parameter, Ansible will remove all the existing packages from
      this repository. You should omit this parameter for repositories that are not content_type:
      Docker.'
    required: false

variants:
    description:
    - A list of Variants for this CDN repo, for example, ['8Base-RHCEPH-4.0-Tools', '8Base-RHCEPH-4.1-Tools'].
      Ansible will associate all the variants that you list here, and it will remove any
      variants that you do not list here.
    required: true

use_for_tps:
    choices:
    - true
    - false
    default: false
    description:
    - Use TPS for Scheduling.
    - Omit this parameter for Docker CDN repositories.

content_type:
    choices:
    - Binary
    - Debuginfo
    - Source
    - Docker
    description:
    - '"Binary" for RPMs, "Docker" for containers. You can set this field when creating
      a new CDN repository that does not exist in the ET yet, but you cannot change it
      for a CDN repository that already exists in the ET.'
    required: true

release_type:
    choices:
    - Primary
    - EUS
    - LongLife
    description:
    - You almost always want to set "Primary" here.
    - You can set this field when creating a new CDN repository that does not exist in
      the ET yet, but you cannot change it for a CDN repository that already exists in
      the ET.
    required: true

external_name:
    description:
    - External repo name.
    - 'Example: rhceph/rhceph-4-rhel8'
    required: false