defenseunicorns / maru-runner

The Unicorn Task Runner
Apache License 2.0
8 stars 0 forks source link

Define project goals and non-goals #123

Open Racer159 opened 2 weeks ago

Racer159 commented 2 weeks ago

Describe what should be investigated or refactored

We need to define project goals / non-goals so that we can show where we may or may not mesh with Zarf and it's actions code.

This should cover:

Additional context

Currently we are API compatible with Zarf actions through the BaseAction struct - Zarf is also looking to simplify actions so we will need to determine where our goals mesh to define the best way to integrate. This could look like:

  1. Maintaining BaseAction as the interface with Zarf with Zarf eventually directly including it in their zarf.yaml spec
  2. Removing BaseAction as the interface with Zarf and instead providing an entrypoint at the task file level (i.e. Zarf just includes the task file in a package and then calls maru like uds run does).
  3. Zarf implements a plugin system and Maru is included in a container or in the plugin format Zarf chooses
  4. Zarf and Maru do not integrate and each project goes their own way.
  5. Zarf and Maru do not integrate and Maru is killed in favor of Dagger.