5.8. 外部ファイルを使用したスマートクラスパラメーターの変更
外部ファイルを使用すると、JSON データでの作業が簡素化されます。構文が強調されるエディターを使用するので、間違いを回避し、特定しやすくなります。
外部ファイルを使用したスマートクラスパラメーターの変更
以下の例では、MOTD Puppet マニフェストを使用します。
今回の例では、
motdという名前で Puppet クラスを検索します。要求例:
curl --header "Accept:application/json" \ --header "Content-Type:application/json" \ --request GET --user sat_user:sat_password --insecure \ https://satellite.example.com/api/smart_class_parameters?search=puppetclass_name=motd \ | python -m json.tool
$ curl --header "Accept:application/json" \ --header "Content-Type:application/json" \ --request GET --user sat_user:sat_password --insecure \ https://satellite.example.com/api/smart_class_parameters?search=puppetclass_name=motd \ | python -m json.toolCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力を検証します。スマートクラスのパラメーターにはそれぞれ、同じ Satellite インスタンスでグローバルとなる ID が割り当てられています。Satellite Server では、
motdクラスのcontentパラメーターはid=3となっています。Puppet クラス名の前に表示される Puppet クラス ID と混同しないようにしてください。応答例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow パラメーター ID
3を使用して、motdパラメーター固有の情報を取得して、出力を output_file.json などのファイルにリダイレクトします。要求例:
curl --header "Accept:application/json" \ --header "Content-Type:application/json" --request GET \ --user sat_user:sat_password --insecure \`
$ curl --header "Accept:application/json" \ --header "Content-Type:application/json" --request GET \ --user sat_user:sat_password --insecure \` https://satellite.example.com/api/smart_class_parameters/3 \ | python -m json.tool > output_file.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow 1 つ前の手順で作成したファイルを、新しいファイル (例:
changed_file.json) にコピーして編集します。cp output_file.json changed_file.json
$ cp output_file.json changed_file.jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルで、必要な値を変更します。以下の例では、
motdモジュールのコンテンツパラメーターを変更しますが、これには、overrideオプションをfalseからtrueに変更する必要があります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルの編集後に、以下のようになっていることを確認して、変更を保存します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite Server への変更を適用します。
curl --header "Accept:application/json" \ --header "Content-Type:application/json" \ --request PUT --user sat_username:sat_password --insecure \ --data @changed_file.json \ https://satellite.example.com/api/smart_class_parameters/3
$ curl --header "Accept:application/json" \ --header "Content-Type:application/json" \ --request PUT --user sat_username:sat_password --insecure \ --data @changed_file.json \ https://satellite.example.com/api/smart_class_parameters/3Copy to Clipboard Copied! Toggle word wrap Toggle overflow