crossplane / crossplane-cli

Tools and commands for managing and developing Crossplane
Apache License 2.0
14 stars 12 forks source link

Build and publish: better configurability #40

Closed suskin closed 4 years ago

suskin commented 4 years ago

What is the problem?

Currently, the build and publish commands look for a stack.Makefile in the stack which is affected. This was originally created so that stack build logic would play nicely with kubebuilder-based scaffolding with minimal modification.

However, now that we have template stacks, it's a bit inconvenient to have a thin Makefile and a stack.Makefile, and it seems redundant.

What does this look like when it's done?

We would support running the build and publish commands with controller-based stacks and template stacks, without it feeling clunky. Because we expect template stacks to be more common than controller-based stacks, it should be okay to optimize for the template case a little bit.

The template case will likely have a single Makefile, so one way to do this would be to use stack.Makefile if it exists, but to use the Makefile if stack.Makefile does not exist. These would be changes in the build and publish commands.

prasek commented 4 years ago

@suskin can this be closed out with #41

suskin commented 4 years ago

Good find - forgot to close this. Closing now, since we implemented an initial solution. Thanks Phil!