pecl
コマンドを使用してインストールするときにconfigureオプションを渡す必要があるPHP拡張機能があります。これを行う方法が見つかりません。
もちろん手動でインストールすることもできますが、1つのコマンドでインストールできるようにする必要があります。これにより、puppetから簡単にインストールできるようになります。
何か案は?
http://old.nabble.com/unattended-PECL-installs--td29760522.html に基づいて、次のことを試すことができます。
yes no | pecl install memcache
すべての質問に「いいえ」と答える、または:
printf "yes\n" | pecl install memcache
「はい」と一度答える。
しかし、どちらの答えも非常に満足のいくものではありません。
未解決のバグ (執筆時点で3歳)がネイティブPECLプロバイダーを要求し、 Pearパッケージ用の同様の古いもの があります。どちらもすぐにPuppetに含まれるようには見えません。
ここにはPECLプロバイダーとPearプロバイダーがあります これをPuppetセットアップに含めることができます。 ここには別のPECLプロバイダーもあります 。私はそれらを自分でテストしたことがなく、それらがどれほど使いやすいか、またはどれだけうまく機能するかを保証することはできません。
私が見た中で最高の提案 には、.deb
または.rpm
パッケージとして使用する各PECL拡張機能を再パッケージ化し、独自の内部リポジトリを実行するか、パッケージファイルをプッシュする必要があります。 puppetを介して、dpkg
またはrpm
を介してインストールします。 ここにDebianベースのディストリビューションのHOWTOがあります 。
状況に応じて、PECL拡張機能を開発ボックスのステージングディレクトリにインストールし、必要なコマンドラインオプションを手動で指定してから、作成されたものをOSパッケージ管理システムのパッケージにパッケージ化します。
利点は、apt、pecl、pear、gemなどのすべてではなく、単一のパッケージ管理システムを使用することです。欠点は、これらの拡張機能を自分で再パッケージ化するため、アップストリームプロバイダー(この場合はpecl)を監視する必要があることです。 )セキュリティパッチが適用されるたびにパッケージを更新します。