Я спустился, большой длинный тракт проигрывания с изменением wget произвел на лету, потому что я не мог изобразить это также. Затем я нашел этот debian bugreport, который привел меня к -e dotbytes=X
опция в wget. Я протестировал это, и это работает с моим wget-1.12:
wget blah --progress=dot -e dotbytes=10M
печатает точку для каждого 10M вывода. Можно использовать 1000M или независимо от того, что Вам нравится.
Обычным шаблоном при использовании марионетки является управление установкой, конфигурацией и статусом обслуживания пакета. Ваш последний шаг также может быть достигнут, если вы обеспечите идемпотентность. (Очень) простой скелет для такого рода задач:
class foo (
$some_param_in_hiera,
){
package {
'foo_pkg':
ensure => installed,
}
service {
'foo_svc':
ensure => running,
enable => true,
hasstatus => true,
require => Package['foo_pkg'];
}
file {
'/etc/foo/some.conf':
mode => '0644',
owner => root,
group => root,
source => 'puppet:///modules/foo/some.conf',
#content => template('foo/some.conf.erb'),
require => Package['foo_pkg'],
notify => Service['foo_svc'];
}
exec {
'some_task':
command => 'echo 'foo bar baz'',
refreshonly => true,
creates => '/some/file/to/ensure/idempotency'
}
}
Также проверьте Puppet Forge на предмет уже существующего кода, который делает то, что вы хотите.
Первые три шага определенно относятся к сфере Марионетки. Установка - это ресурс пакета
, initdb может быть выполнен с помощью exec
, если пакет не делает этого сам, а запуск службы - это ресурс service
.
Но заполнение базы данных, вероятно, не лучший вариант использования Puppet. Вероятно, вы могли бы сделать это с помощью большого количества настраиваемого кода (например, отдельного типа ресурса для таблицы, функции, и т. д.), но это было бы много работы и несколько неизведанная территория. Я предлагаю вам найти другой способ сделать это.