@ennate/lazy-composer

1.0.2 • Public • Published

Lazy Composer

A tool for quickly cloning all your applications, installing dependencies and bootstrapping them instead of running them one by one from different folders.

Harness the power of composer and go get a coffee while composer starts all the applications for you.

Installation

run npm i -g @ennate/lazy-composer

compose.json

If you are using composer, majority of your time would be spent in this file. Please refer to the examples folder to see sample compose.json files with various types of configurations.

Here are the list of options that are available within composer:

Name Value Description
outputDir String (Required) Target directory where all the composed apps must be cloned and run from.
name String (Required) Name of the application.
gitRepo String Git repository link from where the application must be cloned (ssh or https).
dependencies Array of strings Commands to install dependencies for that application, if not provided compose would skip installing dependencies.
run String Commands to run the application, if not provided compose would skip running the application.
branch String (Default: master) Git branch which should be checked out before running dependencies and starting the application, if not provided compose would defauld it to master.
path String (Required if dependencies or run is present) The directory path where application dependencies can be installed and started.

Here is a sample compose.json:

{
  "outputDir": "../../composer-example-apps",
  "appSources": {
    "git": [
      {
        "gitRepo": "https://github.com/cagataygurturk/spring-boot-boilerplate.git",
        "apps": [
          {
            "name": "spring-app",
            "branch": "master",
            "path": "spring-boot-boilerplate/"
          }
        ]
      },
      {
        "gitRepo": "https://github.com/ngx-rocket/starter-kit.git",
        "apps": [
          {
            "name": "ng-rocket-app",
            "path": "starter-kit/",
            "dependencies": [
              "npm install"
            ],
            "run": "npm start"
          }
        ]
      }
    ]
  }
}

Here are the list of things composer can perform:

run multiple applications cloned from the same or different git repositories

install dependencies of applications without starting them by removing run field

start applications without running dependencies (after dependencies are installed) by removing dependencies field

Usage

To use composer, simply go into the folder with your composer configuration and run the following command:

compose

By default composer would look for compose.json file if no explicit path to the configuration is passed.

If you have your composer configuration saved at a custom location, you can invoke composer as follows:

compose /path/to/compose.json

Contibuting

visit CONTRIBUTING.md for details

Package Sidebar

Install

npm i @ennate/lazy-composer

Weekly Downloads

0

Version

1.0.2

License

MIT

Unpacked Size

24.2 kB

Total Files

13

Last publish

Collaborators

  • ennatelabs
  • mpnaidu26