guidsdo / eisd

Execute in sub directories
Apache License 2.0
23 stars 2 forks source link

Execute In SubDirectories

Execute your favorite command in SubDirectories. Use it like: eisd <command> [options] <directories...> (Example: eisd 'yarn build' --async client server scripts)

npm version code style: prettier

Click here for the yarn install version!

Click here for the npm install version!

Usage

  Usage: eisd <command> [options] <directories...>

  Options:
    -a, --async                             Execute commands async across all folders, output will be a mess
    -e, --allowErrors                       Allow errors (at default we stop when there is one). NOTE: always true when in async mode
    -y, --yarnWorkspaces                    Use yarn workspaces for the directories to run the command in
    -d, --envDirectories [environment_key]  Environment variable that contains the directories, for example a package.json config var would be: npm_config_myVar
    -v, --verbose                           More verbose output
    -h, --help                              output usage information

Examples

Cli: eisd 'yarn install' --ignoreRegex '^warning' --async client server testSetup/mockServer

Package.json:

{
  "name": "Root",
  "version": "0.0.1",
  "description": "mainFolder",
  "scripts": {
    "postinstall": "yisd client server",
    "build": "eisd 'yarn build' client server scripts",
    "lint": "eisd 'npm run lint' -d npm_package_config_components"
  },
  "config": {
    "components": "client server scripts"
  }
}

Compatibility

Works on Linux and Mac, should also work on Windows (will test it soon). If not, create an issue and I will fix it. :-)