Как уменьшить дублирование директив конфигурации в файлах модулей systemd?

Предположим, у меня есть два сервисных подразделенияbar@%i.serviceиbaz@%i.serviceкоторые оба являются частью целевого подразделенияfoo@%i.targetи использовать множество общих директив конфигурации, как показано ниже. (На самом деле у меня более двух сервисных подразделений.)

      # bar@%i.service

[Unit]
PartOf=foo@%i.target

[Service]
Restart=always
RestartSec=1
StartLimitInterval=0
EnvironmentFile=/srv/foo/env
Environment=PATH=/srv/foo/bin
WorkingDirectory=/srv/foo
ExecStop=/srv/foo/stop

ExecStart=/srv/foo/bar/start
StandardError=append:/srv/foo/bar/stderr
StandardOutput=append:/srv/foo/bar/stdout
      # baz@%i.service

[Unit]
PartOf=foo@%i.target

[Service]
Restart=always
RestartSec=1
StartLimitInterval=0
EnvironmentFile=/srv/foo/env
Environment=PATH=/srv/foo/bin
WorkingDirectory=/srv/foo
ExecStop=/srv/foo/stop

ExecStart=/srv/foo/baz/start
StandardError=append:/srv/foo/baz/stderr
StandardOutput=append:/srv/foo/baz/stdout

Как я могу уменьшить дублирование директив конфигурации, общих для всех файлов сервисных модулей? Можно ли указать общие директивы в целевом файле модуля, а не в каждом файле модуля службы? Я подумывал о написании сценария для создания файлов сервисных модулей на основе шаблона, но, может быть, в systemd есть встроенное решение?

0 ответов

Другие вопросы по тегам