6 releases (breaking)

0.6.0 Jun 28, 2024
0.5.0 Nov 10, 2023
0.4.0 Aug 19, 2023
0.3.0 Aug 19, 2023
0.1.0 Aug 19, 2023

#2424 in Command line utilities

Download history 10/week @ 2024-09-11 7/week @ 2024-09-18 6/week @ 2024-09-25 5/week @ 2024-10-02

308 downloads per month

Apache-2.0

24KB
582 lines

Run Tool

A multi-purpose tool to aid developers in executing common tasks. Aiming to suit modern requirements, whilst not replicating make.

Whilst fairly stable, it is still in development and features may change

Docs can be found here: run-tool.docs.enchantedcode.co.uk

Features

  • Configuration uses YAML
  • Per project configuration file (if added at root of project)
  • Supporting a global configuration (per user)
  • Customisable targets
    • Arguments
    • Environment variables
    • Settable current working directory
    • Hooks (before and after target run)
    • Conditional runs (only run target when conditions are met)
  • Watch for file/folder changes

Use Case

  • Running a project
  • Building a project
  • Run tests
  • One-off commands, e.g. downloading test data

Goals

  • Fast and easy to use
  • Human readable configuration
  • Cross-platform (for core functionality)
  • Support mono-repos
  • Support use in CI/CD

Non-Goals

  • Be a complete replacement to make

Install

Currently the only way to install is using Cargo:

cargo install run-tool

License

This project is Copyright (c) 2024 Leo Spratt, licence shown below:

Apache-2.0. Full license found in `LICENSE.txt`

Dependencies

~6–19MB
~225K SLoC