Skip to content

Configuration Inheritance/Support Extends #1281

@mlavina

Description

@mlavina

Other config based tooling such as typescript and tslint already support a way to extend their json configurations from another root.

microsoft/TypeScript#9876

Similar to the reasons in the issue above for typescript our company is trying to easily share a base config for a variety of users that they can extend as they need for their unique repos.

Expected Behavior

Have a property extends that allows you to load another config and merge them together. Mirror the tsconfig's extends property.

Current Behavior

There is no way to extend off a base lerna.json

Possible Solution

Read in the config from an extends property and merge the configs before continuing with the normal lerna commands.

Steps to Reproduce (for bugs)

N/A

Context

We have a single base company standard for our lerna.json that uses our internal conventional-changelog for example. We would like to distribute this base config in our mono-repo build tools so that we can make guarantees that employees using lerna through the build will have the correct base lerna configuration. However, we also want to give them the option to include some other options if they have specific workflow in their project that requires extra configuration in their lerna.json. We would like to avoid, is possible, from just copying and pasting the same json file in multiple repos.

Your Environment

N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions