Как создать каталог с помощью Ansible



Как создать каталог www at /srv в системе на базе Debian с использованием Ansible playbook?

1066   12  

12 ответов:

вам нужен файловый модуль. Для создания каталога необходимо указать опцию state=directory:

- name: Creates directory
  file: path=/src/www state=directory

вы можете увидеть другие варианты на http://docs.ansible.com/file_module.html

вы даже можете расширить файловый модуль и даже установить владельца,группу и разрешение через него.

- name: Creates directory
  file:
    path: /src/www
    state: directory
    owner: www-data
    group: www-data
    mode: 0775

даже, вы можете создать каталоги рекурсивно:

- name: Creates directory
  file:
    path: /src/www
    state: directory
    owner: www-data
    group: www-data
    mode: 0775
    recurse: yes

таким образом, он создаст оба каталога, если они не существовали.

вы можете создать с помощью:

последняя версия 2
- name: Create Folder
  file: 
    path: /srv/www/
    owner: user 
    group: user 
    mode: 0755 
    state: directory

старая версия

- name: Create Folder
  file: 
   path=/srv/www/
   owner=user 
   group=user 
   mode=0755 
   state=directory

см - http://docs.ansible.com/ansible/file_module.html

каталог может быть создан только с помощью модуля file, так как каталог-это не что иное, как файл.

# create a directory if it doesn't exist
- file:
    path: /etc/some_directory
    state: directory
    mode: 0755
    owner: foo
    group: foo

- Jayesh

вы можете создать каталог. используя

# create a directory if it doesn't exist
- file: path=/src/www state=directory mode=0755

вы также можете проконсультироваться http://docs.ansible.com/ansible/file_module.html для получения дополнительной информации regaridng каталог и файловая система.

- file: path: /etc/some_directory state: directory mode: 0755 owner: someone group: somegroup

таким образом, вы можете также установить разрешения, владельца и группу. Последние три параметра не являются обязательными.

вы можете использовать оператор

- name: webfolder - Creates web folder file: path=/srv/www state=directory owner=www-data group=www-data mode=0775

просто нужно поставить условие для выполнения задачи для конкретного распределения

- name: Creates directory
  file: path=/src/www state=directory
  when: ansible_distribution == 'Debian'

согласно Ансибл документации, это может быть сделано путем определения следующие:

# create a directory if it doesn't exist
- file:
    path: /etc/some_directory
    state: directory
    mode: 0755

вы можете непосредственно запустить команду и создать непосредственно с помощью ansible

ansible -v targethostname -m shell -a "mkdir /srv/www" -u targetuser

или

ansible -v targethostname -m file -a "path=/srv/www state=directory" -u targetuser
---
- hosts: all
  connection: local
  tasks:
    - name: Creates directory
      file: path=/src/www state=directory

выше playbook создаст каталог www в / src пути.

перед запуском над playbook. Пожалуйста, убедитесь, что ваше ansible host соединение должно быть установлено,

"localhost ansible_connection=local"

должен присутствовать в /etc/ansible / hosts

для получения дополнительной информации, пожалуйста, дайте мне знать.

вот более простой способ.

- name: create dir command: mkdir -p dir dir/a dir/b

Comments

    Ничего не найдено.