Sparta v2.0.0 Release Notes

  • 💥 This is a BREAKING RELEASE with many breaking changes noted below.

    • 💥 :warning: BREAKING
      • Replaced all logrus.Logger usage by rs.zerolog
      • This was a widescale change that impacted most of the codebase. There were two reasons why this was done: (1) logrus.Logger is officially in maintenance mode. (2) zerolog has a larger backing community which I can only hope means longer term support.
      • Changed SpartaOptions to ExtendedOptions to eliminate golint warnings
      • Changed cloudformation.CloudFormationResourceName to cloudformation.ResourceName to eliminate golint warnings
      • Removed HandleAWSLambda legacy function in favor of NewAWSLambda
      • WorkflowHook function signatures were changed for more idiomatic go usage. They now return (context.Context, error) values to allow for mutating the context.Context objected supplied to each invocation.
    • :checkered_flag: CHANGES
      • Decoupled build from provision step to decouple building from packaging and deployment. Run go run main.go -h for the new application actions.
      • CloudFormation stack parameters are now expressed as explicit StackParameters rather than inline literals. The previously inlined values are represented as Template Metadata values. The precomputed template can be deployed using AWS CLI.
      • Added dockerFile argument to support OCI image creation. Dockerfiles may be used in liue of ZIP files for packaging.
      • Enabled new positional arguments with mage in the public Sparta magefile actions.
      • Added step.APIGatewayTaskState to support calling API Gateway
      • Added autogenerated code for all Step function choice states.
      • Added cloudtest package to bootstrap writing Lambda asynchronous event-based integration tests that are confirmed by log statements or invocation metrics.
      • Eliminated WorkflowHook single instance members in favor of slices.
      • Updated all AWS Architecture images to the versions in the Asset package
    • 🛠 :bug: FIXED