Runat: A Tiny Replacement for Crontab
Welcome to Runat, a CLI tool that offers a simple and efficient way to replace crontab. It provides a reliable solution for various use cases, including running it inside containers, when crontab is broken, for security compliance, and anything else you may need.
Installation
Runat is easy to install via pip. You can install it using the following command:
pip install runat
Options
To learn more about Runat's options, you can type runat --help. The following optional arguments are available:
Usage: runat [OPTIONS]
A tiny replacement for cron for different usages.
Args: cron (str): Cron-like syntax string. do_ (str): List of
command or shell script.
Options:
-c, --cron TEXT Cron like syntax "22 23 * * *" [required]
-d, --do TEXT List of command or shell script [required]
--help Show this message and exit.
Usage
Here's how you can use Runat:
runat --cron "01 23 * * *" --do "cd /srv/;bash cleanTemp.sh | tee -a /var/log/cleanTemp.log"
Example Output
Here's an example of what Runat's output might look like:
runat --cron "01 23 * * *" --do "cd /srv/;bash cleanTemp.sh | tee -a /var/log/cleanTemp.log"
> The next run in 23.0 hours, 59.0 minutes, 56.0 seconds
Installation via PyPI
To install Runat via PyPI, simply run the following command:
pip install runat
Development
Runat includes a number of helpers in the Makefile to streamline common development tasks. You can set up your development environment using the following steps:
### create a virtualenv for development
$ make virtualenv
$ source env/bin/activate
### run runat cli application
$ runat --help
Deployments
Docker
Note
If you want to work on local file, you should mount it to the container using -v.
To build and distribute Runat using Docker, you can use the following commands:
$ make docker
$ docker run -it runat --help
License
Runat is licensed under the GNU GENERAL PUBLIC LICENSE.
Author Information
The tool was originally developed by Ali Saleh Baker.
Metadata
Release files for runat 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| runat-1.0.2.tar.gz | 16.1 kB | Without provenance | Details for runat-1.0.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| runat-1.0.2-py3-none-any.whl | Python 3 | none | any | Details for runat-1.0.2-py3-none-any.whl |
Total release size: 32.3 kB
Release files / runat-1.0.2.tar.gz
| Download URL | runat-1.0.2.tar.gz |
|---|---|
| Size | 16.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
874f5906dcc111a9bbbcb1027b8729eb83e9a62bfdb65bb3f0da5f59b8e2cd03
|
|
BLAKE2b-256 checksum How to use checksums |
d32615979cf1967c8591e23699e96b07ef1641ac36e57ed5e09a5f0644d0eba3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.4.2 requests/2.28.1 setuptools/65.6.3 requests-toolbelt/0.8.0 tqdm/4.64.1 CPython/3.8.10
|
Release files / runat-1.0.2-py3-none-any.whl
| Download URL | runat-1.0.2-py3-none-any.whl |
|---|---|
| Size | 16.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b871a4da02acc16a8b7e3aa9164946200f56c1a075460f8057254ef51de9d3c4
|
|
BLAKE2b-256 checksum How to use checksums |
9abc05990faa477cc7ce3868617e20f0372625fc12117f881b23f95212919f21
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.4.2 requests/2.28.1 setuptools/65.6.3 requests-toolbelt/0.8.0 tqdm/4.64.1 CPython/3.8.10
|
Security for runat 1.0.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.