
Maksim
17.08.2018
13:28:28
$ yum list installed | grep firewalld
firewalld.noarch 0.4.4.4-14.el7 @anaconda
firewalld-filesystem.noarch 0.4.4.4-14.el7 @anaconda
у меня есть

Даниил
17.08.2018
13:28:59
а у мну нет) но это образ квм от коллег, возможно снесли

Fedor
17.08.2018
13:29:25
перестрелять тех, кто кастомными образами пользуется при разработке

Google

Maksim
17.08.2018
13:29:33
ну почему ?
есть же kickstart

Fedor
17.08.2018
13:29:45
а потом удивляется "а чего оно не работает на чистой центоси, у меня же работало"
кикстарт многие не могут осилить

Maksim
17.08.2018
13:29:57
для этого есть провижен
я тоже его не осилил
мне он не нужен =)

Fedor
17.08.2018
13:30:09
да там несложо

Даниил
17.08.2018
13:30:12
у меня на там только дженкинс живет))) спокойно)
но дело говоришь

Fedor
17.08.2018
13:31:03
а дженкинс роли есть какие-нибудь адекватные? хочется его тоже в расходный материал превратить, вместе со всеми воркерами

Даниил
17.08.2018
13:31:28
ну я педалил на днях с плагинами, кредами и юзерами + dsl для джобов
но оно все такое хреновое... половина сделана через url POST

Google

Даниил
17.08.2018
13:31:55
т.к. я не захотел морочить голову с кастом плагинами для ансибла

Fedor
17.08.2018
13:32:23
если апи постоянное, тогда почему и нет. скорее всего, те плагины делают то же самое

Даниил
17.08.2018
13:32:25
вот щас делаю создание квм через либвирт и попутное добавление воркера
угу
я так до конца и не понял, как настроить плагин из коробки
приходится руками тыкать после пробежки ансиблом
до вторника надо допилить))))))

Fedor
17.08.2018
13:36:34
может, есть какой-нибудь интерфейс у самого дженкинса, эмулирующий кнопкодав. например, какой нибудь рест апи или как его там.

Даниил
17.08.2018
13:36:44
ну да, я как раз через рест и делаю
находил скрипты на груви написанные
но там столько кастома - хрень разберешь

Fedor
17.08.2018
13:37:18
поищи методы, покопайся в коде плагина, вдруг он чего туда экспортирует
и попробуй подёргать за ниточки

Даниил
17.08.2018
13:37:42
получается ты скармливаешь json и делаешь post в api

Fedor
17.08.2018
13:37:47
угу

Даниил
17.08.2018
13:38:06
хм, а я как раз подобное нашел что-то

Vadim
17.08.2018
14:59:44

Roman
17.08.2018
16:29:38
подскажите как лучше извратнуться: надо тестить плейбук на федоре и центос
но есть только 4 гига оперативы - ВМ тяжело поднимать, вот думаю если в докере их поднять они же идентичны будут "железной установке"?

bebebe
17.08.2018
16:33:07

Nklya
17.08.2018
16:35:28
нормальное тестирование в докере получается, и быстрее и проще.

Google

Nklya
17.08.2018
16:35:39
кроме совсем уж критичных вариантов.
И инит с системд нормально работает относительно

Vadim
17.08.2018
16:45:30
systemd будет работать с CAP_ADMIN, а вот кернел будет хостовый

bebebe
17.08.2018
16:46:22
зависит от плейбуки
что она делает, если ставит пакеты и правит файлики - то вполне

Roman
17.08.2018
17:05:20
и еще вопрос, видел плейбуки где чуть ли не под все дистрибутивы сервис развертывают (deb/rpm/etc)
это вообще нормальная практика? это же долго отлаживать и сложно такую разношерстную инфраструктуру поддерживать

Firestalk
17.08.2018
17:06:20
Нормальная, если такая задача
Таким образом относительно легко мигрировать на новый дистрибутив, например

Alex
17.08.2018
19:16:05
Дистры в докере поднимаются и там отлаживается, нагрузка не оч большая. Но вот матрицы тестов быстро не прогнать без ресурсов. Поэтому ci/cd для ролей дольше проходит из-за тестов
Регрес тесты полюбил

Nklya
17.08.2018
19:19:31
Вопрос в том, нужно ли это всегда.
И с этим же есть проблема когда юзаешь опенсорсные роли. Часто они очень ебанутые получаются из-за желания попасть во все дистры

Alex
17.08.2018
19:21:06

Alex
17.08.2018
19:23:01
Меньше делать, меньше думать

Roman
17.08.2018
22:38:13
переписываю playbook на loop, заодно выношу список пакетов для установки в переменные (вместо with_items)
вопрос: можно ли в один модуль package засунуть несколько списков в зависимости от условий?
пример: ставим список пакетов "basic_list", если определна переменная "admin" добавляем к нему список "admin_list"

Sergey
17.08.2018
22:40:01
1. списки ты можешь складывать
2. тебе не нужна вспомогательная переменная: прибавляй admin_list | default ([])

Roman
17.08.2018
22:42:16
смысл то такой был - если это рабочая станция разработчика, вот тебе еще пачка пакетов, а обычному юзеру ставим базовый набор
и чтобы два раза модуль не вызывать хотел в одну задачу засунуть с условиями

bebebe
17.08.2018
22:43:15
nixos такое делается из коробки

Sergey
17.08.2018
22:43:20
ну да.
для разработчика в host_vars будет определён список доппакетов.

Roman
17.08.2018
22:43:41

Google

Alex
17.08.2018
23:18:16

p4sh
18.08.2018
09:47:53
Подскажите, делаю так:
tasks:
- set_fact: pkgn="httpd"
when: ansible_os_family == "Redhat"
- set_fact: pkgn="apache2"
when: ansible_os_family == "Debian"
- name: start apache
service: name="{{ pkgn }}" state=started
Но ругает меня непутёвого Ansible, говорит что не определена переменная:
The task includes an option with an undefined variable. The error was: 'pkgn' is undefined
Пробовал:
service: name="{{ pkgn }}"......
service: name=pkgn ....
service: name={{ pkgn }} ....
ЧЯДНТ?

Alexey
18.08.2018
09:49:11
pkgn: "apache2"
В set_fact

Vadim
18.08.2018
09:52:22
ansible_os_family вроде неправильно стоит
Лучше when: if pkgn is defined

Alexey
18.08.2018
09:53:28

Paul
18.08.2018
09:53:34
я бы еще дебагом проверил, а есть ли там вообще переменная

Admin
ERROR: S client not available

p4sh
18.08.2018
09:53:38
pkgn: "apache2"
tasks:
- set_fact:
pkgn: "httpd"
when: ansible_os_family == "Redhat"
- set_fact:
pkgn: "apache2"
when: ansible_os_family == "Debian"Тот же эффект)

Vadim
18.08.2018
09:53:53

p4sh
18.08.2018
09:54:02

Paul
18.08.2018
09:54:12
debug:
msg "pkgn: {{pkgn}}"

Vadim
18.08.2018
09:54:41
И os family лучше проверить - оно вроде RedHat

Alexey
18.08.2018
09:55:11

p4sh
18.08.2018
09:55:20
да)
все есть, проверял ad-hoc
есть что-то типа области видимости?

Alexey
18.08.2018
09:57:27
Посмотри debug что в ansible_os_family заодно, мож реально несовпадает, поэтому и условие не срабатывает

Google

p4sh
18.08.2018
09:57:33
и apache установлен, но не запущен
tasks:
- set_fact:
pkgn: "httpd"
when: ansible_os_family == "Redhat"
register: pkgn
- set_fact:
pkgn: "apache2"
when: ansible_os_family == "Debian"
register: pkgn
- debug:
var: pkgnTASK [debug] **************************************************************************************************************************
ok: [194.222.98.28] => {
"pkgn": {
"changed": false,
"skip_reason": "Conditional result was False",
"skipped": true
}
}
верно сделал ли я?

Alexey
18.08.2018
09:59:43
Да, он тебе явно говорит, что переменная не определена, потому что условие не сработало
И register: pkgn - лишнее, ты её определяешь через set_fact и так

p4sh
18.08.2018
10:01:32
- debug:
var: ansible_os_familyTASK [debug] ************
ok: [194.222.98.28] => {
"ansible_os_family": "RedHat"
}

Alexey
18.08.2018
10:02:03

p4sh
18.08.2018
10:02:17

Alexey
18.08.2018
10:02:57
И os family лучше проверить - оно вроде RedHat

p4sh
18.08.2018
10:03:11
блааа))
case-sens)))
попался))
ахахха

Alexey
18.08.2018
10:03:31

p4sh
18.08.2018
10:03:32
спасибо всем!!
Главное где установка - написал верно, а тут затроил

Alexey
18.08.2018
10:06:56

p4sh
18.08.2018
10:07:22
Да, Григорий Юрьевич был прав :D
сантехник мой с жэка, он еще ключом пригрозил тогда ?
реально спасибо, ребята! буду внимательней