15.3.4. Red Hat Quay API を使用した namespace の自動プルーニングポリシーの作成
Red Hat Quay API エンドポイントを使用して、namespace の自動プルーニングポリシーを管理できます。
前提条件
- OAuth アクセストークンを作成している。
- Red Hat Quay にログインしている。
手順
次の
POST /api/v1/organization/{orgname}/autoprunepolicy/コマンドを入力して、組織で許可されるタグの数を制限する新しいポリシーを作成します。$ curl -X POST -H "Authorization: Bearer <access_token>" -H "Content-Type: application/json" -d '{"method": "number_of_tags", "value": 10}' http://<quay-server.example.com>/api/v1/organization/<organization_name>/autoprunepolicy/または、タグの作成日から指定期間が経過すると期限切れになるようにタグを設定することもできます。
$ curl -X POST -H "Authorization: Bearer <access_token>" -H "Content-Type: application/json" -d '{ "method": "creation_date", "value": "7d"}' http://<quay-server.example.com>/api/v1/organization/<organization_name>/autoprunepolicy/出力例
{"uuid": "73d64f05-d587-42d9-af6d-e726a4a80d6e"}オプション: 組織にポリシーを追加し、
tagPatternフィールドとtagPatternMatchesフィールドを渡して、指定された正規表現パターンに一致するタグのみをプルーニングできます。以下に例を示します。$ curl -X POST \ -H "Authorization: Bearer <bearer_token>" \ -H "Content-Type: application/json" \ -d '{ "method": "creation_date", "value": "7d", "tagPattern": "^v*", "tagPatternMatches": <true>1 }' \ "https://<quay-server.example.com>/api/v1/organization/<organization_name>/autoprunepolicy/"- 1
tagPatternMatchesをTrueに設定すると、指定された正規表現パターンに一致するタグがプルーニングされます。この例では、^v*に一致するタグがプルーニングされます。出力例
{"uuid": "ebf7448b-93c3-4f14-bf2f-25aa6857c7b0"}
PUT /api/v1/organization/{orgname}/autoprunepolicy/{policy_uuid}コマンドを使用して、組織の自動プルーニングポリシーを更新できます。以下に例を示します。$ curl -X PUT -H "Authorization: Bearer <bearer_token>" -H "Content-Type: application/json" -d '{ "method": "creation_date", "value": "4d", "tagPattern": "^v*", "tagPatternMatches": true }' "<quay-server.example.com>/api/v1/organization/<organization_name>/autoprunepolicy/<uuid>"このコマンドは出力を返しません。次のステップに進みます。
次のコマンドを入力して、自動プルーニングポリシーを確認します。
$ curl -X GET -H "Authorization: Bearer <access_token>" http://<quay-server.example.com>/api/v1/organization/<organization_name>/autoprunepolicy/出力例
{"policies": [{"uuid": "ebf7448b-93c3-4f14-bf2f-25aa6857c7b0", "method": "creation_date", "value": "4d", "tagPattern": "^v*", "tagPatternMatches": true}, {"uuid": "da4d0ad7-3c2d-4be8-af63-9c51f9a501bc", "method": "number_of_tags", "value": 10, "tagPattern": null, "tagPatternMatches": true}, {"uuid": "17b9fd96-1537-4462-a830-7f53b43f94c2", "method": "creation_date", "value": "7d", "tagPattern": "^v*", "tagPatternMatches": true}]}次のコマンドを入力すると、組織の自動プルーニングポリシーを削除できます。ポリシーを削除するには UUID が必要であることに注意してください。
$ curl -X DELETE -H "Authorization: Bearer <access_token>" http://<quay-server.example.com>/api/v1/organization/<organization_name>/autoprunepolicy/73d64f05-d587-42d9-af6d-e726a4a80d6e