Skip to content

Extend config.yaml to read locations where to search for commands #7967

@alalazo

Description

@alalazo

TLDR

config.yaml should be extended with a key that specifies the locations where to search for commands

Rationale

Currently every command in Spack must reside in the lib/spack/spack/cmd folder as a standalone module. This makes extending Spack with commands that are not covering mainstream use cases (like #5545, #6166 or #7899) quite hard.

There are, on one side, rightful concerns over adding commands on top of the ~60 existing ones - especially if they are not fitting everybody's needs. On the other side, this makes it difficult for people to publish, maintain or share their extensions, as they need to constantly rebase or merge multiple repositories.

What I propose here is to add in config.yaml a key where to read a list of locations to be searched for commands. This would allow to maintain Spack extensions in a separate repository (even within the Spack organization if it makes sense).

If there's consensus around this, I wouldn't mind working on a PR. In the meanwhile I'll be waiting for feedback.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions