Skip to content

feat(breaking): move existing commands into their own plugins #141

@kirederik

Description

@kirederik

Context

In #140, we gave the CLI the ability to execute plugins. The current command set of the CLI are all related to scaffolding/building promises. To make the command tree of the CLI consistent, we would like to bundle the existing promise building commands into its own plugin. We would also like to move the build commands into their own plugin

Engineering notes

  • These plugins should be included by default with the Kratix CLI (i.e., the plugin root should be included in the kratix cli rootCmd).
  • Move the commands to a plugins directory, with the plugin name (i.e. scaffold) as a subdir.
  • Proposed command tree as follows (scaffold and build are part of this story):
Image
  • This is a breaking change! Let's make sure to signal that with a proper major release
  • Some commands require a significant change (like the add stage that is now update stage). If this proves too complicated, please break those down into smaller stories.
  • The diagram above include commands that do not exist (like the subcommands under platform). Don't build them 😅

Acceptance

Given I want to learn about the Kratix Scaffold plugin
When I run "kratix help"
Then I see the "scaffold" subcommand

Given I want to write promises
When I run "kratix scaffold help"
Then I see the "scaffold" subcommand

Given I want to learn about the Kratix Build plugin
When I run "kratix help"
Then I see the "build" subcommand

Given I want to build some things
When I run "kratix build help"
Then I see the "build" subcommand

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions