私たちのアプリの 1 つは gunicorn を使用しており、chef のクックブックを介して構成されています。
クックブックにはいくつかの属性があり、そのうちの 1 つがガンコーン バージョンです。
grep 'version' attributes/default.rb
default['myapp']['gunicorn']['version'] = '19.1.1'
19.3.0
ノードが特定のロールの一部である場合にのみ、バージョンを使用したいと考えています。私は役割を作成し、それに属性を与えました:
cat ../../roles/gunicorn-19.3.0.rb
name 'gunicorn-19.3.0'
default_attributes(
'mcnulty' => {
'gunicorn' => {
'version' => '19.3.0'
}
}
)
ロール属性がクックブック属性よりも優先されることを考えると、これは機能するはずです。右??
それでは、キッチンでそれをテストしたいと思います。私たちkichen.yml
にはすでにスイートがありdefault
ます。スイートをコピーして作成しましたgunicorn-19.3.0
。
- name: gunicorn-19.3.0
roles_path: '../../roles'
run_list:
- recipe[apt]
- recipe[build-essential]
- recipe[myapp]
attributes: &attributes
myapp:
gunicorn:
query:
timeout: 5
workers: 2
sockdir: /var/run/myapp
web:
timeout: 5
workers: 2
sockdir: /var/run/myapp
今、このホストが役割の一部であるという事実を模倣する方法がわかりませんgunicorn-19.3.0
...
どんな助けでも大歓迎です。
一番。