theforeman.foreman.sync_plan module – Manage Sync Plans

Note

This module is part of the theforeman.foreman collection (version 5.2.0-dev).

It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install theforeman.foreman. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: theforeman.foreman.sync_plan.

New in theforeman.foreman 1.0.0

Synopsis

  • Manage sync plans

Aliases: katello_sync_plan

Requirements

The below requirements are needed on the host that executes this module.

  • requests

Parameters

Parameter

Comments

cron_expression

string

A cron expression as found in crontab files

This must be provided together with interval=’custom cron’.

description

string

Description of the sync plan

enabled

boolean / required

Whether the sync plan is active

Choices:

  • false

  • true

interval

string / required

How often synchronization should run

Choices:

  • "hourly"

  • "daily"

  • "weekly"

  • "custom cron"

name

string / required

Name of the sync plan

organization

string / required

Organization that the entity is in

password

string / required

Password of the user accessing the Foreman server.

If the value is not specified in the task, the value of environment variable FOREMAN_PASSWORD will be used instead.

products

list / elements=string

List of products to include in the sync plan

server_url

string / required

URL of the Foreman server.

If the value is not specified in the task, the value of environment variable FOREMAN_SERVER_URL will be used instead.

state

string

State of the entity

present_with_defaults will ensure the entity exists, but won’t update existing ones

Choices:

  • "present" ← (default)

  • "present_with_defaults"

  • "absent"

sync_date

string / required

Start date and time of the first synchronization.

Multiple formats are accepted, but only YYYY-mm-dd HH:MM:SS +z (e.g. 2024-08-01 00:00:00 +0000) will be idempotent.

username

string / required

Username accessing the Foreman server.

If the value is not specified in the task, the value of environment variable FOREMAN_USERNAME will be used instead.

validate_certs

boolean

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 FOREMAN_VALIDATE_CERTS will be used instead.

Choices:

  • false

  • true ← (default)

Attributes

Attribute

Support

Description

check_mode

Support: full

Can run in check_mode and return changed status prediction without modifying the entity

diff_mode

Support: full

Will return details on what has changed (or possibly needs changing in check_mode), when in diff mode

Examples

- name: "Create or update weekly RHEL sync plan"
  theforeman.foreman.sync_plan:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: "Weekly RHEL Sync"
    organization: "Default Organization"
    interval: "weekly"
    enabled: false
    sync_date: "2017-01-01 00:00:00 UTC"
    products:
      - 'Red Hat Enterprise Linux Server'
    state: present

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

entity

dictionary

Final state of the affected entities grouped by their type.

Returned: success

sync_plans

list / elements=dictionary

List of sync plans.

Returned: success

Authors

  • Andrew Kofink (@akofink)

  • Matthis Dellweg (@mdellweg) ATIX-AG