2014-01-29 2 views
0

Я использую Ansible для среды предоставления для моего приложения Ruby on Rails.Ansible - preprocess ERB templates

Я удивляюсь погоде, возможно предварительно обработать мои шаблоны ERB перед тем, как можно было сделать копию? Каков наилучший способ решить эту проблему?

Конечной целью является, чтобы иметь что-то шаблоны, как это:

my_template.conf.erb

timeout: 2000 
secret_key: <%= ENV['THE_SECRET_KEY'] %> 

Любые советы будут оценены.

ответ

0

Да.

Вы должны использовать шаблоны jinja2, которые очень похожи на шаблоны erb.

my_template.conf.j2

timeout: 2000 
secret_key: {{ secret_key }} 

В вашем PlayBook было бы что-то вроде:

- name: Template config 
    hosts: all 
    user: myuser 
    sudo: True 
    tags: mytag 

    vars: 
    - secret_key: "{{ lookup('env','THE_SECRET_KEY') }}" 

    tasks: 
    - name: Do template substitution 
     template: src=templates/my_template.conf.j2 dest=/etc/myapp/myconf.conf owner=root group=root mode=0644 
Смежные вопросы