我們的實際安裝在AWS上運行,我們有RDS可用,但在流浪漢中我們自然需要在本地安裝MySQL。使用Vagrant跳過安裝的正常方式是什麼?我ansible文件看起來是這樣的:如何通過Vagrant運行安裝MySQL?
---
- name: foo
hosts: foo
sudo: yes
roles:
- common-web
- bennojoy.mysql
- php
我們的實際安裝在AWS上運行,我們有RDS可用,但在流浪漢中我們自然需要在本地安裝MySQL。使用Vagrant跳過安裝的正常方式是什麼?我ansible文件看起來是這樣的:如何通過Vagrant運行安裝MySQL?
---
- name: foo
hosts: foo
sudo: yes
roles:
- common-web
- bennojoy.mysql
- php
我建議在你的庫存文件中的特定羣體,並運行在漂浮的情況下的「本地安裝」的劇本。這也意味着你想要在AWS實例上運行'安裝RDS配置'劇本...當然,在一個劇本中,儘可能在所有地方做所有事情是可能的,但是它更清潔一些針對不同環境的不同劇本。
你可以做到這一點,作爲流浪漢總是創建根目錄下「/遊民」
所以只是檢查它像這樣一個目錄:
---
- name: foo
hosts: foo
sudo: yes
roles:
- common-web
- bennojoy.mysql
- php
tasks:
- name: Check that /vagrant directory exist
command: /usr/bin/test -e /vagrant
register: dir_exists
roles:
- common-web
- { role: bennojoy.mysql, when: when: dir_exists.rc == 0 }
- php
在這裏,我假設「bennojoy。 mysql「是你主要的mysql角色,請檢查它並讓我知道它是否適合你。謝謝
這基本上是我現在做的。在我的角色中,如果有一些特定的東西我必須跳過,那麼我會標記「local-only」。然後我針對不同的環境有不同的劇本。如果劇本出現頻繁更改,可能會成爲問題,但到目前爲止它已經很好。 – 2015-05-14 18:35:07