5.10. Satellite API での Pulp の使用
Satellite と統合した Pulp に API 要求を送信する場合は、証明書ベースの認証を使用します。
以下の Pulp API 要求の例には、代わりに Pulp CLI を使用する方法の例が含まれます。root として pulp コマンドを実行すると、Pulp CLI は /root/.config/pulp/cli.toml で設定されたシステム証明書を使用します。
リポジトリーのリスト表示
すべてのリポジトリーを一覧表示するエンドポイントは /pulp/api/v3/repositories/ です。次のクエリーは、Satellite Server から要求を発行するために必要な証明書を提供し、satellite.example.com からリポジトリーのリストを取得します。
要求例:
curl --cacert /etc/pki/katello/certs/katello-server-ca.crt \
--cert /etc/foreman/client_cert.pem --key /etc/foreman/client_key.pem \
https://<satellite.example.com>/pulp/api/v3/repositories/ \
| python3 -m json.tool
応答例:
{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"pulp_href": "/pulp/api/v3/repositories/rpm/rpm/018cd05a-4b83-73db-b71c-587c6181d89b/",
"pulp_created": "2024-01-03T17:23:47.715882Z",
"versions_href": "/pulp/api/v3/repositories/rpm/rpm/018cd05a-4b83-73db-b71c-587c6181d89b/versions/",
"pulp_labels": {},
"latest_version_href": "/pulp/api/v3/repositories/rpm/rpm/018cd05a-4b83-73db-b71c-587c6181d89b/versions/1/",
"name": "Red_Hat_Enterprise_Linux_8_for_x86_64_-_BaseOS_Kickstart_8_9-49838",
"description": null,
"retain_repo_versions": null,
"remote": null
}
]
}
または、Pulp CLI を使用してリポジトリーを一覧表示します。
# pulp repository list
[
{
"pulp_href": "/pulp/api/v3/repositories/rpm/rpm/018cd025-c6ef-7237-a99e-70bab3d30941/",
"pulp_created": "2024-01-03T16:26:25.904682Z",
"versions_href": "/pulp/api/v3/repositories/rpm/rpm/018cd025-c6ef-7237-a99e-70bab3d30941/versions/",
"pulp_labels": {},
"latest_version_href": "/pulp/api/v3/repositories/rpm/rpm/018cd025-c6ef-7237-a99e-70bab3d30941/versions/1/",
"name": "Red_Hat_Enterprise_Linux_8_for_x86_64_-_AppStream_RPMs_8-2875",
"description": null,
"retain_repo_versions": null,
"remote": null
}
]
Pulp ステータスの確認
Pulp のステータス情報を返すエンドポイントは /pulp/api/v3/status/ です。Pulp ステータスの要求は認証を必要としません。
要求例:
curl https://<satellite.example.com>/pulp/api/v3/status/ \
| python3 -m json.tool
応答例:
{
"versions": [
{
"component": "core",
"version": "3.39.4",
"package": "pulpcore",
"domain_compatible": true
},
{
"component": "rpm",
"version": "3.23.0",
"package": "pulp-rpm",
"domain_compatible": true
},
...
または、Pulp CLI を使用して Pulp ステータスを取得します。
# pulp status
{
"versions": [
{
"component": "core",
"version": "3.39.4",
"package": "pulpcore",
"domain_compatible": true
},
{
"component": "rpm",
"version": "3.23.0",
"package": "pulp-rpm",
"domain_compatible": true
},
...