This PR introduces outputs.Retriever.
The goal of this struct is to provide a simple, contract-based method for defining outputs in nullstone modules.
This is done through the use of struct tags on Outputs struct for each category+module type.
Since the Retriever is heavily tested, there is less likelihood of issues introduced when building for other app patterns and module types.
NOTE: I could see this going in another repo some day, but I left in the CLI until it becomes an issue.
As an example, the following structs define the outputs needed for performing actions on aws-fargate-service.
This PR introduces
outputs.Retriever
. The goal of this struct is to provide a simple, contract-based method for defining outputs in nullstone modules. This is done through the use of struct tags onOutputs
struct for each category+module type.Since the
Retriever
is heavily tested, there is less likelihood of issues introduced when building for other app patterns and module types.NOTE: I could see this going in another repo some day, but I left in the CLI until it becomes an issue.
As an example, the following structs define the outputs needed for performing actions on
aws-fargate-service
.// contracts/aws-fargate