Skip to content

tamada/btmeister

Repository files navigation

btmeister

build Coverage Status Rust Report Card

Version License Docker

Homebrew

Detecting the build tools in use.

btmeister_logo

🗣️ Description

This tool aims to detect the build tools in use for the project for surveying the share of the build tools. The build tools build a project along with the rules defined in the build files. The default names of the build files are fixed for each build tool. This tool finds the build files from the specified directories, and identifies the build tools in use.

🏃 Usage

btmeister v0.5.0
Haruaki TAMADA
A tool for detecting build tools in use of the projects

USAGE:
    btmeister [OPTIONS] [PROJECTs]...

ARGS:
    <PROJECTs>...    The target project directories for btmeister.

OPTIONS:
    -@ <INPUT>                       Specify the file contains project path list. If INPUT is dash
                                     ('-'), read from STDIN.
        --append-defs <DEFS_JSON>    Specify the additional definitions of the build tools.
    -d, --definition <DEFS_JSON>     Specify the definition of the build tools.
    -f, --format <FORMAT>            Specify the output format [default: default] [possible values:
                                     default, json, yaml, xml]
    -h, --help                       Print help information
    -L, --list-defs                  Print the build tools' definition list
        --no-ignore                  Do not respect ignore files (.ignore, .gitignore, etc.)
    -V, --version                    Print version information

Sample Output

$ btmeister . ~/go/src/github.com/tamada/rrh
cargo       ./Cargo.toml
make        /Users/tamada/go/src/github.com/tamada/rrh/Makefile
$ btmeister --format json . ~/go/src/github.com/tamada/rrh | jq .
[
  {
    "project":"btmeister",
    "path":"./",
    "build-tools":[
      {
        "file-name":"Cargo.toml",
        "tool-name":"cargo"
      }
    ]
  },
  {
    "project":"rrh",
    "path":"/Usrs/tamada/go/src/github.com/tamada/rrh",
    "build-tools":[
      {
        "file-name":"Makefile",
        "tool-name":"make"
      }
    ]
  }
]

🐳 Docker

docker run --rm -it -v $PWD:/home/btmeister ghcr.io/tamada/btmeister:latest .
  • Container OS
    • Working directory: /home/btmeister
    • entry point: /opt/btmeister/btmeister
    • user: btmeister

🛠️ Related Tools

  • Licensee
    • License detector for the projects.
  • linguist
    • Programming languages detector for the projects.