4.3. プルシークレットの設定

Assisted Installer API 呼び出しの多くは、プルシークレットを必要とします。プルシークレットをファイルにダウンロードして、API 呼び出しで参照できるようにします。プルシークレットは、リクエストの JSON オブジェクト内の値として含まれる JSON オブジェクトです。プルシークレットの JSON は、引用符をエスケープするようにフォーマットする必要があります。以下に例を示します。

{"auths":{"cloud.openshift.com": ...

After

{\"auths\":{\"cloud.openshift.com\": ...

手順

  1. メニューで OpenShift をクリックします。
  2. サブメニューで Downloads をクリックします。
  3. Pull secret の下の Tokens セクションで、Download をクリックします。
  4. シェル変数からプルシークレットを使用するには、次のコマンドを実行します。

    $ export PULL_SECRET=$(cat ~/Downloads/pull-secret.txt | jq -R .)
  5. jq を使用してプルシークレットファイルを丸呑みするには、pull_secret 変数で参照し、値を tojson にパイプして、エスケープされた JSON として適切にフォーマットされていることを確認します。以下に例を示します。

    $ curl https://api.openshift.com/api/assisted-install/v2/clusters \
    -H "Authorization: Bearer ${API_TOKEN}" \
    -H "Content-Type: application/json" \
    -d "$(jq --null-input \
            --slurpfile pull_secret ~/Downloads/pull-secret.txt ' 1
        {
            "name": "testcluster",
            "high_availability_mode": "None",
            "openshift_version": "4.11",
            "pull_secret": $pull_secret[0] | tojson, 2
            "base_dns_domain": "example.com"
        }
    ')"
    1
    プルシークレットファイルを丸呑みします。
    2
    プルシークレットをエスケープされた JSON 形式にフォーマットします。