Size: a a a

Puppet — русскоговорящее сообщество

2021 April 19

DS

Dmitry Sergeev in Puppet — русскоговорящее сообщество
хз, надо доку смотреть или просто попробовать
источник

DS

Dmitry Sergeev in Puppet — русскоговорящее сообщество
да, я думаю код обновился, а дока нет
источник

A

Asdqwert in Puppet — русскоговорящее сообщество
По-моему тоже зря, ну может раньше не передавался по умолчанию, а в доке не обновили
источник

A

Asdqwert in Puppet — русскоговорящее сообщество
:)
источник

М

Макс in Puppet — русскоговорящее сообщество
а у кого нибудь есть счастливое сожительство windows 7 агента при использовании srv_records ? под линуксом агент отрабатывает а вот под виндавозом нет...
источник

A

Asdqwert in Puppet — русскоговорящее сообщество
Что-то не то получается, когда передаю несколько файлов:
  docker_compose { 'test1':
   compose_files => ['/root/docker-compose/docker-compose-1.yml','/root/docker-compose/docker-compose-2.yml','/root/docker-compose/docker-compose-3.yml'],
   ensure  => present,
 }

В логах ошибок нет, но ни одного контейнера запущенного не вижу. Ожидал хотя бы 1.

По доке они должны merge'иться (https://forge.puppet.com/modules/puppetlabs/docker > To supply multiple overide compose files add the following to the manifest file), но у меня они все разделены по сервисам и по идее при любом порядке merge не должны друг друга заменить, да и хотя бы 1 то должен был остаться и запуститься...

# cat docker-compose-1.yml
version: "3.8"
services:
 puppet-test-1:
   hostname: puppet-test-1
   container_name: puppet-test-1
   image: ubuntu:20.04
   restart: unless-stopped
   command: /bin/sh -c "while true; do echo puppet-test; sleep 30; done"

# cat docker-compose-2.yml
version: "3.8"
services:
 puppet-test-2:
   hostname: puppet-test-2
   container_name: puppet-test-2
   image: ubuntu:20.04
   restart: unless-stopped
   command: /bin/sh -c "while true; do echo puppet-test; sleep 30; done"

# cat docker-compose-3.yml
version: "3.8"
services:
 puppet-test-3:
   hostname: puppet-test-3
   container_name: puppet-test-3
   image: ubuntu:20.04
   restart: unless-stopped
   command: /bin/sh -c "while true; do echo puppet-test; sleep 30; done"


А когда передаю отдельно, то всё ок запускается:
  docker_compose { 'test1':
   compose_files => ['/root/docker-compose/docker-compose-1.yml'],
   ensure  => present,
 }

 docker_compose { 'test2':
   compose_files => ['/root/docker-compose/docker-compose-2.yml'],
   ensure  => present,
 }

 docker_compose { 'test3':
   compose_files => ['/root/docker-compose/docker-compose-3.yml'],
   ensure  => present,
 }


Что не так?
источник

A

Asdqwert in Puppet — русскоговорящее сообщество
Попробовал с помощью yq 3 файла смёрджить, всё выглядит валидно:

# yq eval-all 'select(fileIndex == 0) * select(fileIndex == 1) * select(fileIndex == 2)' docker-compose-1.yml docker-compose-2.yml docker-compose-3.yml

version: "3.8"
services:
 puppet-test-1:
   hostname: puppet-test-1
   container_name: puppet-test-1
   image: ubuntu:20.04
   restart: unless-stopped
   command: /bin/sh -c "while true; do echo puppet-test; sleep 30; done"
 puppet-test-2:
   hostname: puppet-test-2
   container_name: puppet-test-2
   image: ubuntu:20.04
   restart: unless-stopped
   command: /bin/sh -c "while true; do echo puppet-test; sleep 30; done"
 puppet-test-3:
   hostname: puppet-test-3
   container_name: puppet-test-3
   image: ubuntu:20.04
   restart: unless-stopped
   command: /bin/sh -c "while true; do echo puppet-test; sleep 30; done"
источник

A

Asdqwert in Puppet — русскоговорящее сообщество
/opt/puppetlabs/bin/puppet agent --test --debug
незаменимая вещь! :)
источник

М

Макс in Puppet — русскоговорящее сообщество
-td ;-)
источник

A

Asdqwert in Puppet — русскоговорящее сообщество
Выяснил, что при добавлении одного up_args => '--remove-orphans' в фактическую команду docker-compose up добавлялось 2 (почему не 3 хз) аргумента --remove-orphans что делало команду не валидной. Выглядит так:
Executing: '/usr/local/bin/docker-compose -f /root/docker-compose/docker-compose-1.yml -f /root/docker-compose/docker-compose-2.yml -f /root/docker-compose/docker-compose-3.yml -p test up --remove-orphans -d --remove-orphans'

Убрал up_args => '--remove-orphans' и всё заработало :)
источник

A

Andor in Puppet — русскоговорящее сообщество
тебе же вроде показывали что эта опция и так добавляется?
источник

A

Asdqwert in Puppet — русскоговорящее сообщество
Да, но во-первых этот конфиг был написан перед тем, как я это узнал, а во вторых эта опция вроде как не должна ломать функционал.
источник

A

Andor in Puppet — русскоговорящее сообщество
согласен, что могли бы и поумнее сделать
источник

A

Asdqwert in Puppet — русскоговорящее сообщество
Мне говорили, что puppet это enterprise решение и forge модули очень хорошо тестируются. Да, я вижу, что создаётся целая пачка всего, когда генерирую модуль с помощью sdk или как там оно называется, но по факту модуль, который вроде как должен быть одним из очень интенсивно используемых как-то странно работает даже с базовым функционалом. Боюсь подумать что будет дальше.
источник

A

Andor in Puppet — русскоговорящее сообщество
вряд ли этот модуль действительно интенсивно используется
источник

A

Asdqwert in Puppet — русскоговорящее сообщество
Конечно я вижу код и могу заморочиться и всё это сам поправить, но как-то я себе это не так представлял.
источник

A

Andor in Puppet — русскоговорящее сообщество
кстати вижу в этой строчке грубый баг:
args = [compose_files, '-p', name, 'up', '-d', '--remove-orphans'].insert(3, resource[:options]).insert(5, resource[:up_args]).compact
источник

A

Asdqwert in Puppet — русскоговорящее сообщество
Пока кубер не появился все сидели на compose, что же тогда использовали?
источник

A

Andor in Puppet — русскоговорящее сообщество
зачем тебе композ если можно просто папет?
источник

A

Andor in Puppet — русскоговорящее сообщество
лично я на докер-композе только девелоперское окружение делал на прошлой работе
источник