fbpx

[和訳] Chef Client 12.7 リリース #getchef

この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。

本稿は Chef Client 12.7 Released (2016/02/12) の和訳です。

Chef Client 12.7.2 をリリースしました。ダウンロードページからご利用になれます。本リリースのハイライトは次の通りです:

バージョニング仕様のアップデート

リリースプロセス での バージョニング仕様 をアップデートしました。このリリースにより各リリース間で低リスクの素早いリリースが容易になりました。間もなく「パッチ」バージョン(バージョンの3つ目の番号)のアップデートの自動化プロセスを開始します。

Chef の利用者にとっては、Chefの次のリリースは .0 で終わらないということを意味しています。最初の利用可能な 12.7 リリースは 12.7.2 リリースです。今後、12.8 の初期のバージョンがリリースされることなく、12.8.212.8.5 というバージョンを利用する場合もあります。このような以前のバージョンは、install.sh および install.ps1 スクリプトを通してアクセス可能な「current」チャネルにおいて利用可能な場合があります。

Zypper パッケージのマルチパッケージサポート

SuSE システムでは、 package Provider (別名 zypper_package Provider) が配列を受け付け、単一の zypper コマンドでこれら配列と同時にインストールすることが可能になりました。


package [ 'git', 'nmap' ]

Provider に追加のコードクリーンアップがされたため、長年のバグが修正された可能性があります。

Chocolatey パッケージ Provider

コア Chef に chocolatey_package Provider が登場しました。chocolatey Cookbook の既存の Resource と競合しないようにするため、そしてコア Chef 上の package Resource の既存の命名基準に従うため、chocolatey ではなく chocolatey_package という名前をつけました。

chocolatey_package の API は、Cookbook バージョンの直接の移植であるというよりも、コア Chef の package API に従います。また、いくつか API の違いがあります(例: コア Chef package Provider の API 基準であるため、:uninstall action よりも :remove action を優先します)。chocolatey_package Provider はまた、マルチパッケージインストールをサポートし、可能であれば単一の式でそれらを実行します。


chocolatey_package [ 'googlechrome', 'flashplayerplugin', '7zip', 'git' ]

Resource を使用する前に choco.exe をインストールしなければならないため、chocolatey Cookbook Recipe はそのインストールのために依然として必要です。

EMEA のお客様と UTF-8 サポート

特に EMEA のお客様と、信頼できる UTF-8 サポートを必要とするお客様は、12.7.0 リリースにアップグレードすることを強く推奨します。chef-client の 12.4.x/12.5.x/12.6.x リリースには、UTF-8 処理に関する重大なバグがあり、Node 内の UTF-8 データをすべて破壊してしまいます。12.7.0 ではそのバグを修正し、UTF-8 でない文字 (例. Latin-1/ISO-8859-1) を使用している場合に Resource と audit のレポートをより信頼できるものにします。

Chef::REST

内部の API 呼び出しを Chef::REST から Chef::ServerAPI に完全移行しました。その移行の一部として、Chef::REST を今後グローバルに要求することはありません。したがってコードが Chef::REST を用いている場合、それを正しく要求していることをあなた自身で確認しなければなりません。


require 'chef/rest'

ユーザーには Chef::REST の利用を停止することを強く推奨します。knifechef 内でコードが実行しているのであれば Chef::ServerAPI の使用を検討してください。それ以外の場合は ChefAPI の使用を検討してください。

Chef Solo -r (--recipe-url) の変更

-r オプションを chef-client に渡すと、--run-listを設定することになります:


chef-client -r 'role[foo]'

同じ引数を chef-solo に渡すとすると:


chef-solo -r 'role[foo]'

--recipe-url コードを代わりに呼び出します。これは、ユーザーの活動中のディレクトリ内に直接自発的に rm -rf * を実行するという副作用があります。この問題や、この rm -rf * 挙動に関するその他の問題により、これは chef-solo 内の --recipe-url コードから削除しました。chef-soloで --recipe-url を意図して -r を使用することは推奨しません。

rm -rf * の挙動は --delete-entire-chef-repo オプションに移行しました。12.7 以前の挙動である -r XXX を使用したい chef-solo ユーザーは、したがって --recipe-url XXX --delete-entire-chef-repo を使用する必要があります。

Nokogiri の同梱

最新の Nokogiri gem をすべての omnibus-chef ビルドに含むようになりました。詳細情報については RFC 063RFC 063 PR の議論 を参照してください。

Net-SSH 3.0.2 へのアップグレート

アップストリームバグの修正を利用するために、Net-SSH の 2.9 ブランチからアップデートしました。ここでの最大の変更点は、Ruby1.9 のサポートを中止したという点です(Chef はすでにサポートを中止しています)。この依存性は低く、ChefDK のパッケージングを依存性の衝突なしに成功するには、他の多くのプロジェクトは同じタイミングでアップデートする必要があるためです。

Ohai 8.10.0 へのアップグレード

少量の些細な改善点とバグ修正を含むバージョン 8.8.1 からのアップグレードです。変更点の完全版は 変更履歴 を参照してください。

Windows Client のファイル許可セキュリティの修正

chef#4500 は、唯一ローカル特権昇格を許可できる Windows client SKU 上の許可の問題を修正しました。これは SPARSA の Jared Stround さんの報告のおかげです。

新規CTA