
Eu tenho 2 serviços systemd test-dl.service
test-db.service
que devem ser executados em ordem sequencial somente quando o primeiro serviço for bem-sucedido.
estou a usar
- a
After
opção de definir uma ordem sequencial entre os dois serviços. - a
RequiredBy
opção de acionar o serviço db quando o serviço dl for bem-sucedido.
A documentação RequiredBy/Requires diz "Se esta unidade for ativada, as unidades listadas também serão ativadas. Se uma das outras unidades falhar na ativação e uma dependência de pedido After= na unidade com falha for definida, esta unidade não será iniciado."
No entanto, observo que o segundo serviço é iniciado mesmo quando o primeiro serviço falha.
Meu trecho de código com o test-dl.service
que falha e o test-db.service
que é acionado inesperadamente.
test-dl.service
[Unit]
Description=The downloader.
After=network-online.target
[Service]
Type=oneshot
ExecStart=/bin/bash -c 'sleep 10 ; exit 5'
test-db.service
[Unit]
Description=The parser.
After=test-dl.service
[Service]
Type=oneshot
ExecStart=/bin/bash -c 'exit 0'
[Install]
RequiredBy=test-dl.service
obrigado pela ajuda