Skip to main content

Pulp CLI Workflow Plugin

A pulp-cli plugin for managing Pulp workflows.

Usage

pulp workflow list
pulp workflow show --name <name>
pulp workflow create --name <name> --task '<json>'
pulp workflow create --name <name> --task '<json>' --dispatch-interval '1 00:00:00'
pulp workflow cancel --name <name>
pulp workflow label set --name <name> --key <key> --value <value>

# Inspect the individual runs (executions) of workflows
pulp workflow run list --workflow <name>
pulp workflow run show --href <href>
pulp workflow run cancel --href <href>

Examples

The examples below assume $REPO_HREF, $REPO_PK, and $REMOTE_PK for a pulp_file repository are already set.

Run a sync once at a specific time

Use --start-time with an ISO 8601 datetime to schedule a single run in the future. Omit --dispatch-interval so the workflow runs exactly once.

pulp workflow create \
  --name nightly-sync-once \
  --start-time "2026-08-01T02:00:00" \
  --task '{
    "task_name": "pulp_file.app.tasks.synchronizing.synchronize",
    "reserved_resources": ["'"$REPO_HREF"'"],
    "task_kwargs": [
      {"kwarg_key": "repository_pk", "value": "'"$REPO_PK"'"},
      {"kwarg_key": "remote_pk",     "value": "'"$REMOTE_PK"'"},
      {"kwarg_key": "mirror",        "value": false}
    ]
  }'

Run a sync every day

Add --dispatch-interval '1 00:00:00' (1 day) to re-run the workflow on a schedule, creating a new run each interval. Without --start-time the first run starts now.

pulp workflow create \
  --name daily-sync \
  --dispatch-interval '1 00:00:00' \
  --task '{
    "task_name": "pulp_file.app.tasks.synchronizing.synchronize",
    "reserved_resources": ["'"$REPO_HREF"'"],
    "task_kwargs": [
      {"kwarg_key": "repository_pk", "value": "'"$REPO_PK"'"},
      {"kwarg_key": "remote_pk",     "value": "'"$REMOTE_PK"'"},
      {"kwarg_key": "mirror",        "value": false}
    ]
  }'

Run a sync and publish every day

Pass --task twice to chain steps. The publish task's repository_version_pk is a dynamic arg (content_type: core.repositoryversion) that the workflow engine resolves at dispatch time from the repository version the sync creates.

pulp workflow create \
  --name daily-sync-and-publish \
  --dispatch-interval '1 00:00:00' \
  --task '{
    "task_name": "pulp_file.app.tasks.synchronizing.synchronize",
    "reserved_resources": ["'"$REPO_HREF"'"],
    "task_kwargs": [
      {"kwarg_key": "repository_pk", "value": "'"$REPO_PK"'"},
      {"kwarg_key": "remote_pk",     "value": "'"$REMOTE_PK"'"},
      {"kwarg_key": "mirror",        "value": false}
    ]
  }' \
  --task '{
    "task_name": "pulp_file.app.tasks.publish",
    "reserved_resources": ["'"$REPO_HREF"'"],
    "task_kwargs": [
      {"kwarg_key": "manifest", "value": "PULP_MANIFEST"},
      {"kwarg_key": "repository_version_pk", "content_type": "core.repositoryversion"}
    ]
  }'

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pulp_cli_workflow-0.1.0.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pulp_cli_workflow-0.1.0-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file pulp_cli_workflow-0.1.0.tar.gz.

File metadata

  • Download URL: pulp_cli_workflow-0.1.0.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pulp_cli_workflow-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c1c6de1890157283169e067ab59f2e3cc9ef8a6a1f3904f9c14dd7f92291bbbd
MD5 0c59b7be238650662f6e66e5e41b8b66
BLAKE2b-256 1036e5db186ff80fd0dcac3ad65bf8bca8c2a3aa38e86e005ad0bcbcf63154ed

See more details on using hashes here.

File details

Details for the file pulp_cli_workflow-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pulp_cli_workflow-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.32 {"installer":{"name":"uv","version":"0.11.32","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pulp_cli_workflow-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9ab0c51aaf46afdc20ddc55b44570df2b7aa8748cbe365e2a892928f3c577f51
MD5 de0bedc7de4db2145a7831bf42731fe9
BLAKE2b-256 741447ca5b51ee16c9d6f7b5d9edf3600f981b179b70975604de926ce7ed6868

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page