Ansible判断文件目录

时间:2014-08-31 12:25:05

标签: bash ansible

我想做这样的事情。在目录跳过的情况下,否则将被创建。

例如:

#!/bin/bash

for $i in 'a.test.com a.test.com c.test.com'
do
     if [ ! -e $i ]:
     then
         mkdir $i
     fi
done

如何使用ansible-playbook实现上述代码。

感谢

2 个答案:

答案 0 :(得分:1)

使用file module中的loop看起来像创建简单目录。

- name: make sure subdomain directories exist
  file: path=/opt/{{item}} state=directory recursive=yes
  with_items:
    - a.test.com
    - b.test.com
    - c.test.com

答案 1 :(得分:0)

如果目录已创建或跳过。

- name: test log dir
  shell: "test -e /data/{{item[0]}}/{{item[1]}} -o -h /data/{{item[0]}}/{{item[1]}}"
  ignore_errors: True
  with_nested:
    - ['logs', 'html']
    - ['a.test.com', 'b.test.com']
  register: dir_stats
  tags: check_log

- name: create log dir
  file: path=/data/{{item.item[0]}}/{{item.item[1]}} state=directory owner=apache group=apache recursive=yes
  with_items: dir_stats.results
  when: item.rc != 0
  tags: check_log