mk 0.1.2

Yet another task runner 🦀
Documentation

mk (Make)

Crates.io Package Crates.io Downloads License Github Workflow Status

Efficiency is doing things right; effectiveness is doing the right things. This tool helps you do both.

Yet another task runner.

Usage

Using CLI

Here is a sample command line usage of mk.

mk -c tasks.yaml <task_name>

...or...

mk run <task_name>

Both commands above are same. The config file can be omitted as mk defaults to file tasks.yaml.

Sample taskfile yaml

Let's create a sample yaml file called tasks.yaml.

tasks:
  task1:
    commands:
      - command: |
          echo $FOO
          echo $BAR
        ignore_errors: false
        verbose: true
      - command: wel
        ignore_errors: true
        verbose: true
      - command: echo $BAR
        ignore_errors: false
        verbose: true
    depends_on:
      - name: task1
    description: This is a task
    labels: {}
    environment:
      FOO: bar
    env_file:
      - test.env

This yaml task named task1 can be run on mk with the command below:

mk task1

Installation

Binary for different OS distribution can be downloaded here. Linux, macOS, and Windows are supported.

From source

If you're into Rust, then mk can be installed with cargo. The minimum supported version of Rust is 1.37.0. The binaries produce may be bigger than expected as it contains debug symbols.

cargo install --locked mk

Manual installation

Follow the instruction below to install and use mk on your system.

  1. Download the binary for your OS distribution here.
  2. Copy it to your system binary directory (/usr/local/bin) or to your userspace binary directory ($HOME/.local/bin).

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

References: