publish¶
Publish one or more Pulp repositories to the endpoints defined by their distributors.
This command will publish the Pulp repositories provided in the request or fetched using the filters(url-regex or published-before) or an intersection of input repositories and filters.
usage: pubtools-pulp-publish [-h] [--debug] [--udcache-url UDCACHE_URL]
[--udcache-user UDCACHE_USER]
[--udcache-password UDCACHE_PASSWORD]
[--cdn-url CDN_URL] [--cdn-cert CDN_CERT]
[--cdn-key CDN_KEY] [--cdn-ca-cert CDN_CA_CERT]
[--cdn-arl-template [CDN_ARL_TEMPLATE [CDN_ARL_TEMPLATE ...]]]
[--fastpurge-host FASTPURGE_HOST]
[--fastpurge-client-token FASTPURGE_CLIENT_TOKEN]
[--fastpurge-client-secret FASTPURGE_CLIENT_SECRET]
[--fastpurge-access-token FASTPURGE_ACCESS_TOKEN]
[--fastpurge-root-url FASTPURGE_ROOT_URL]
[--pulp-url PULP_URL] [--pulp-user PULP_USER]
[--pulp-password PULP_PASSWORD]
[--pulp-certificate PULP_CERTIFICATE]
[--pulp-certificate-key PULP_CERTIFICATE_KEY]
[--pulp-insecure] [--pulp-throttle PULP_THROTTLE]
[--pulp-fake] [--clean] [--force]
[--repo-ids REPO_IDS]
[--published-before PUBLISHED_BEFORE]
[--repo-url-regex REPO_URL_REGEX]
Named Arguments¶
- --debug, -d
Show debug logs; can be provided up to three times to enable more logs
Default: 0
Unified Downloads Cache environment¶
- --udcache-url
Base URL of UD cache flush API; if omitted, UD cache flush features are disabled.
- --udcache-user
Username for UD cache flush
- --udcache-password
Password for UD cache flush (or set UDCACHE_PASSWORD)
Default: “”
CDN Client environment¶
- --cdn-url
Base URL of CDN, if omitted, CDN won’t be requested for special data (e.g. headers for ARLs)
- --cdn-cert
Client certificate for CDN client
- --cdn-key
Client key for CDN client
- --cdn-ca-cert
CA certificate for CDN
- --cdn-arl-template
ARL template used for flushing cache by ARL
Default: []
Akamai FastPurge environment¶
- --fastpurge-host
FastPurge hostname (xxx.purge.akamaiapis.net)
- --fastpurge-client-token
Fast Purge client token
- --fastpurge-client-secret
FastPurge client secret (or set FASTPURGE_SECRET environment variable)
Default: “”
- --fastpurge-access-token
FastPurge access token
- --fastpurge-root-url
Root URL of CDN for all cache purges (or set FASTPURGE_ROOT_URL environment variable). If omitted, FastPurge features are disabled.
Default: “”
Pulp environment¶
- --pulp-url
Pulp server URL
- --pulp-user
Pulp username
- --pulp-password
Pulp password (or set PULP_PASSWORD environment variable)
- --pulp-certificate
Pulp certificate. Can also be a single file (.pem)
- --pulp-certificate-key
Pulp certificate key
- --pulp-insecure
Allow unverified HTTPS connection to Pulp
Default: False
- --pulp-throttle
Allows to enqueue or run only specified number of Pulp tasks at one moment (or set PULP_THROTTLE environment variable)
- --pulp-fake
Use a fake in-memory Pulp client rather than interacting with a real server. For development/testing only, may have limited functionality.
Default: False
Publish options¶
Options affecting the behavior of Pulp repo publishes.
- --clean
attempt to delete remote content not in the repo
Default: False
- --force
force publish of repos even if Pulp thinks nothing has changed
Default: False
Filter options¶
Options affecting the selection of repos to be published.
- --repo-ids
comma separated repos to be published, can be specified multiple times
Default: []
- --published-before
publish the repos last published before given date e.g. 2019-08-21
- --repo-url-regex
publish repos whose repo url match
Example¶
A typical invocation of publish would look like this:
pubtools-pulp-publish \
--pulp-url https://pulp.example.com/ \
--pulp-user admin \
--pulp-password XXXXX \
--repo-ids my-repo1,my-repo2 ...
Mentioned repositories will be published to the defined endpoints in the distributors.
Example: applying filters¶
Instead of providing the repositories explicitly, you can use filters i.e. url-regex and published-before to fetch the repositories and publish.
pubtools-pulp-publish \
--pulp-url https://pulp.example.com/ \
--pulp-user admin \
--pulp-password XXXXX \
--published-before 2019-09-10
--repo-url-regex /some/url/to/match
These filters can be applied on the provided repos too and only the repos matching those filters are published.
pubtools-pulp-publish \
--pulp-url https://pulp.example.com/ \
--pulp-user admin \
--pulp-password XXXXX \
--published-before 2019-09-10
--repo-url-regex /some/url/to/match
--repo-ids my-repo1,my-repo2 ...
Example: with cache flush¶
If your Pulp server is configured to publish to an Akamai CDN, usage of the Akamai FastPurge API for cache flushing may be enabled to flush cache after publishing repositories.
This is enabled by providing a value for --fastpurge-root-url
.
FastPurge credentials may also be provided; if omitted, the command
will attempt to use a local
edgerc
file for authentication.
pubtools-pulp-publish \
--pulp-url https://pulp.example.com/ \
--pulp-user admin \
--pulp-password XXXXX \
--fastpurge-root-url https://cdn.example.com/ \
--repo-ids my-repo1,my-repo2 ...