mirror of
https://framagit.org/ppom/reaction
synced 2026-03-18 06:29:55 +01:00
44 lines
737 B
Jsonnet
44 lines
737 B
Jsonnet
// build a small shell program that intercepts SIGTERM and either exit or ignores it
|
|
local build_cmd(log, exit=true) = [
|
|
'sh',
|
|
'-c',
|
|
|||
|
|
t() {
|
|
echo sigterm >>%s
|
|
%s
|
|
}
|
|
trap t SIGTERM
|
|
while true; do sleep 1; done
|
|
|||
|
|
% [log, if exit then 'exit 0' else 'return'],
|
|
];
|
|
local dummy_filter = {
|
|
filt1: {
|
|
regex: [
|
|
@'abc',
|
|
],
|
|
actions: {
|
|
act: {
|
|
cmd: ['echo', '1'],
|
|
},
|
|
},
|
|
},
|
|
};
|
|
{
|
|
patterns: {
|
|
zero: {
|
|
regex: @'0',
|
|
},
|
|
},
|
|
|
|
streams: {
|
|
exit_on_sigint: {
|
|
cmd: build_cmd('log_term', exit=true),
|
|
filters: dummy_filter,
|
|
},
|
|
exit_on_sigkill: {
|
|
cmd: build_cmd('log_kill', exit=false),
|
|
filters: dummy_filter,
|
|
},
|
|
},
|
|
}
|