shell 执行失败重试_console-retry-此实用程序设计用于运行任何shell命令,并在指定超时内没有新行写入到tdout时重试-Kristofer Borgström...

作者:Kristofer Borgström

作者邮箱:

首页:https://github.com/NaturalCycles/console-retry

文档:None

下载链接

console-retry

This utility is designed to run any shell command and retry if no new line was written to stdout within a specified timeout. Especially useful in CI to retry flaky tests/scripts

The default timeout applies to lines written to stdout of the shell command.

Retry is triggered when: * No new line was written to stdout after specified timeout

Retry is not triggered when: * The command as a whole takes longer than specified timeout * The command returns a non-zero (error) return code

To be a good bash-citizen the return code is mirrors the return code of the subcommand or 1 if the command never finished in the specified timeout.

Example use / tests

console-retry -t 10 "echo abcd ; false" # Immediate fail

console-retry -r 1 "sleep 70" # Fail after default timeout = 60

console-retry -s -r 1 -t 10 "sleep 15" # Should "skip timeout and therefore succeed after 15s"

console-retry -t 10 "echo abcd ; true" # Immediate success

console-retry -p -o abcd -t 10 " sleep 5; echo abc ;sleep 20; false" # Should Complete with error on second try

console-retry -o abcd -t 10 " sleep 5; echo abc ;sleep 20; false" # Should fail after retrymax (no progressive)

console-retry -o abc -t 10 " sleep 5; echo abc ; false" # Should retry max but never with ok

console-retry -o abc -t 10 ">&2 echo abc ; false" # stderr, should retry max

console-retry -o nomatch -t 10 ">&2 echo abc ; false" # stderr, should fail immediately

console-retry -o abc -t 10 "echo abc ; true" # stderr, should succeed immediately

console-retry -o nomatch -t 10 ">&2 echo abc ; sleep 2; echo def; true" # Output should be: abc \ndef

console-retry -t 10 ">&2 echo abc ; sleep 10; echo def; sleep 10; true" # Staggered output

Copy from pypi.org

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值