Вот часть моего сборника пьес отвечает за загрузку и строительного рубин из источника:анзибль: определить, когда команда не должен работать (здание рубин от источника)
vars:
ruby_version: '2.0.0-p247'
ruby_url: 'ftp://ftp.ruby-lang.org//pub/ruby/2.0/ruby-{{ ruby_version }}.tar.gz'
tasks:
- name: Ensure ruby dependencies are installed
apt: pkg=$item state=installed update-cache=yes
sudo: yes
with_items:
- build-essential
- git-core
- libreadline6-dev
- libyaml-dev
- libsqlite3-dev
- sqlite3
- libgdbm-dev
- libncurses5-dev
- libtool
- bison
- libffi-dev
- libdigest-hmac-perl
- unzip
- zlib1g
- zlib1g-dev
- name: Ensure the ruby source is downloaded
get_url: url=$ruby_url dest=/home/vagrant/ruby-{{ ruby_version }}.tar
- name: Ensure the ruby source is extracted
command: tar -zxf /home/vagrant/ruby-$ruby_version.tar creates=/home/vagrant/ruby-{{ ruby_version }}
- name: Ensure ruby is installed
command: $item chdir=/home/vagrant/ruby-$ruby_version
with_items:
- ./configure
- make
- sudo make install
Последняя задача (настройка сделайте и make install) запускается при каждом обеспечении.
Я могу проверить, установлен ли рубин с правильной версией с ruby -v
. Как я могу определить в своем плейбуке, что это условие для запуска этого шага?
Кроме того, есть ли способ сделать это условием для всего списка задач, а не только для последнего?
И что, если рубин вообще не установлен? – kovpack