Skip to content

essentialkaos/deadline

GitHub Actions CI Status GoReportCard codebeat badge GitHub Actions CodeQL Status

InstallationUsageBuild StatusContributingLicense


deadline is a simple utility for controlling application working time. Unlike timeout, deadline sends KILL signal for main processes and all child processes. This feature is very useful for shell scripts.

Installation

From sources

To build the deadline from scratch, make sure you have a working Go 1.19+ workspace (instructions), then:

go install github.com/essentialkaos/deadline@latest
sudo yum install -y https://pkgs.kaos.st/kaos-repo-latest.el$(grep 'CPE_NAME' /etc/os-release | tr -d '"' | cut -d':' -f5).noarch.rpm
sudo yum install deadline

Prebuilt binaries

You can download prebuilt binaries for Linux from EK Apps Repository.

To install the latest prebuilt version, do:

bash <(curl -fsSL https://apps.kaos.st/get) deadline

Usage

Usage: deadline {options} time:signal command…

Options

  --help, -h       Show this help message
  --version, -v    Show version

Examples

  deadline 5m my-script.sh arg1 arg2
  Run my-script.sh and send TERM signal in 5 minutes

  deadline 5m:KILL my-script.sh arg1 arg2
  Run my-script.sh and send KILL signal in 5 minutes

Build Status

Branch Status
master CI
develop CI

Contributing

Before contributing to this project please read our Contributing Guidelines.

License

Apache License, Version 2.0