Михаил
Привет, Коллеги! Не подскажете как создать папку в ~ ? Именно в корне.
/www создаётся на раз. А необходимо создать в "тильде", в корне прям, короче.
https://pastebin.com/M0A1MCAm
вот такая заготовка.
Radic
Radic
path: ~/www
Вот только что попробовал 🙂
Sergey
Михаил
deploy@Test-Ansible-Chef:~$ ls
deploy@Test-Ansible-Chef:~$ ls -la
total 36
drwxr-xr-x 5 deploy deploy 4096 июн 1 11:44 .
drwxr-xr-x 3 root root 4096 май 31 20:50 ..
drwx------ 3 deploy deploy 4096 май 31 22:00 .ansible
-rw------- 1 deploy deploy 428 июн 1 11:50 .bash_history
-rw-r--r— 1 deploy deploy 220 сен 1 2015 .bash_logout
-rw-r--r— 1 deploy deploy 3771 сен 1 2015 .bashrc
drwx------ 2 deploy deploy 4096 май 31 21:53 .cache
-rw-r--r— 1 deploy deploy 0 май 31 20:46 .cloud-locale-test.skip
-rw-r--r— 1 deploy deploy 655 май 16 2017 .profile
drwx------ 2 deploy deploy 4096 май 31 20:51 .ssh
-rw-r--r— 1 deploy deploy 0 июн 1 10:47 .sudo_as_admin_successful
Михаил
И ничего насчёт www :)
Radic
ansible radic$ ansible test -m file -a "path=~/www state=directory"
test | CHANGED => {
"changed": true,
"gid": 0,
"group": "root",
"mode": "0755",
"owner": "root",
"path": "/root/www",
"size": 4096,
"state": "directory",
"uid": 0
}
ansible radic$ ansible test -m shell -a "ls -la | grep www"
test | CHANGED | rc=0 >>
drwxr-xr-x 2 root root 4096 Jun 1 09:54 www
Михаил
凍仁翔
Thanks for apply. 👍
Viktor
Добрый день. Не подскажите, как на OSX перезапустить сервис? Использую в таске следующее:
- name: restart nginx
command: brew services restart nginx
become: yes
В результате выдает ошибку:
FAILED! => {"changed": false, "cmd": "brew services restart nginx", "msg": "[Errno 2] No such file or directory"
Womchik
brew умеет в сервисы?
Womchik
launchctl вроде за сервисы отвечает
凍仁翔
Maybe you can use launchctl.
▌ https://serverfault.com/questions/720259/what-is-the-proper-way-to-restart-a-daemon-with-ansible-on-osx-target
Viktor
Спасибо!
Max
Спасибо!
ошибка тебе подсказывает что он хотел запустить команду "brew services"
Max
имеет смысл посмотреть видит ли brew этот сервис.
Max
общая серверфолтная хрень про энжиникс: https://serverfault.com/questions/225948/how-to-restart-nginx-on-mac-os-x
Max
я предполагаю, что это среда местной разработки для яблоководов.
Max
все это можно единым интерфейсом запускать внутри k8s или docker.
Max
тогда совершенно идентичные команды будут запускаться, либо через модуль либо через башсибл.
Max
имхо, полезнее для здоровья.
Max
не нужно при become: yes делать sudo.
Max
и все равно мой совет такой: энжиникс под маком бежит по другому, нужны другие пути, конфы, и зависимости.
Max
на фига с этим бодаться, когда можно загрузить 1 готовый образ, под всеми платформами?
Max
контейнер намного легче ограничить в ресурсах.
George
George
или окружение не всасывает
George
/usr/local/bin/brew services start nginx - никогда Штирлиц не был так близок к провалу
George
ну мне где-то пришлось лично руками бекам-метод вписать, т.к. иначе тоже не работлао
George
но блин. это же азы
Max
𝚔𝚟𝚊𝚙𝚜
А кто-нибудь использует --limit с dynamic inventory? - есть какие-нибудь best practices?
Ali
Коллеги, подскажите как красиво убивать ансиблом все запушеные на хосте докер контейнеры?
Щас делаю так
>>> shell: while [ ! -z "$(/usr/bin/docker ps -a -q)" ]; do /usr/bin/docker rm -f $(/usr/bin/docker ps -a -q); sleep 10; done
И мне стыдно😊
Sergey
Артём
А является ли задачей ансибла управление сущностью «все контейнеры»?
Если есть список - то с ним можно делать что хочешь. Но управлять контейнерами, о которых мы не знаем ничего?
George
поясни подробнее
George
ты скорее всего не с того конца заходишь
𝚔𝚟𝚊𝚙𝚜
Terry
𝚔𝚟𝚊𝚙𝚜
Либо сразу
- shell: "docker rm -f $(docker ps -aq)"
George
дерьмо какое
George
𝚔𝚟𝚊𝚙𝚜
:)
George
неоднократно
𝚔𝚟𝚊𝚙𝚜
George
docker ps -aq - возвращает пусто
George
далее команда ломается.
𝚔𝚟𝚊𝚙𝚜
George
т.е. в данном случае как бы не страшно, но вообще привыкаешь так писать, а потом в какой-нибудь сложной команде есть нештатный случай и ты удаляешь 1.5ТБ даных
George
у тебя докер рм упадет
George
root@srv:~# docker rm -f
"docker rm" requires at least 1 argument.
See 'docker rm --help'.
Usage: docker rm [OPTIONS] CONTAINER [CONTAINER...]
Remove one or more containers
Oleksandr
может prune?
Terry
+
Terry
prune all
𝚔𝚟𝚊𝚙𝚜
𝚔𝚟𝚊𝚙𝚜
- shell: "docker ps -aq"
register: containers
- shell: "docker rm -f {{ item }}"
loop: "{{ containers.stdout_lines }}"
George
George
ща
Oleksandr
George
https://docs.ansible.com/ansible/latest/modules/docker_container_module.html
George
никак?
Timur
Oleksandr
𝚔𝚟𝚊𝚙𝚜
𝚔𝚟𝚊𝚙𝚜
первая таска возвращает:
"stdout_lines": []
nett00n
Привет чат, подскажите, какая best practice в ситуации, когда нужно добавить дополнительную репу, а потом установить приложение из этой репы, чтоб такая джоба не валилась в чекмоде?
- исполнять в чекмоде таску на добавление репы
- игнорировать ошибку в таске на установку пакета
- что-то третье?
Sergey
Sergey
Что он может дать вообще
Timur
Артём
показать, что будут изменения и какие они будут.
Timur
https://docs.ansible.com/ansible/2.8/modules/docker_host_info_module.html
Timur
Для получения списка контейнеров
George
Timur
Далее или
https://docs.ansible.com/ansible/2.8/modules/docker_prune_module.html