7.14.9 (2024-04-27)
- schema: CloudFormation Updates (8411d38)
7.14.8 (2024-04-22)
- schema: CloudFormation Updates (4616928)
7.14.7 (2024-04-15)
- schema: CloudFormation Updates (1966587)
7.14.6 (2024-04-05)
- schema: CloudFormation Updates (42b62d6)
7.14.5 (2024-04-01)
- schema: CloudFormation Updates (abdae93)
7.14.4 (2024-03-23)
- schema: CloudFormation Updates (4cc363a)
7.14.3 (2024-03-22)
- schema: CloudFormation Updates (7518bf6)
7.14.2 (2024-03-15)
- schema: CloudFormation Updates (51910fb)
7.14.1 (2024-03-08)
- schema: CloudFormation Updates (4bd6a73)
7.14.0 (2024-03-06)
7.13.2 (2024-03-06)
- schema: CloudFormation updates (5dfc11a)
7.13.1 (2024-01-17)
- schema: CloudFormation Updates (43c51be)
7.13.0 (2024-01-11)
- remove Go entities that don't exist anymore (87cd632)
7.12.17 (2024-01-11)
- schema: CloudFormation Updates (f482dc7)
7.12.16 (2024-01-11)
- remove file that doesn't exist anymore (cc386b7)
7.12.15 (2023-12-15)
- schema: CloudFormation Updates (17006b2)
7.12.14 (2023-12-12)
- schema: CloudFormation Updates (ec540cb)
7.12.13 (2023-12-08)
- schema: CloudFormation Updates (be36ee0)
7.12.12 (2023-12-02)
- schema: CloudFormation Updates (728f824)
7.12.11 (2023-11-10)
- schema: CloudFormation Updates (ecdb915)
7.12.10 (2023-11-04)
- schema: CloudFormation Updates (ee27593)
7.12.9 (2023-10-28)
- schema: CloudFormation Updates (d6d5f89)
7.12.8 (2023-10-20)
- schema: CloudFormation Updates (9596ea8)
7.12.7 (2023-10-13)
- schema: CloudFormation Updates (bbf810f)
7.12.6 (2023-10-06)
- schema: CloudFormation Updates (5e536c5)
7.12.5 (2023-10-04)
- schema: CloudFormation Updates (cf3b23a)
7.12.4 (2023-09-23)
- schema: CloudFormation Updates (e538ceb)
7.12.3 (2023-09-15)
- schema: CloudFormation Updates (ba9ea96)
7.12.2 (2023-09-14)
- schema: CloudFormation Updates (ddc5f72)
7.12.1 (2023-09-01)
- schema: CloudFormation Updates (94ac559)
7.12.0 (2023-08-30)
7.11.1 (2023-08-25)
7.11.0 (2023-08-24)
- lambda_function: add FunctionUrlConfig property (25103fc)
7.10.0 (2023-08-22)
7.9.2 (2023-08-18)
- schema: CloudFormation Updates (5e99a59)
7.9.1 (2023-08-11)
7.9.0 (2023-08-11)
- force release (354d4cb)
7.8.7 (2023-08-11)
7.8.6 (2023-08-08)
7.8.5 (2023-07-21)
- schema: CloudFormation Updates (976990f)
7.8.4 (2023-06-30)
7.8.3 (2023-06-23)
7.8.2 (2023-06-16)
7.8.1 (2023-06-09)
7.8.0 (2023-06-09)
7.7.11 (2023-06-09)
7.7.10 (2023-06-02)
7.7.9 (2023-05-26)
7.7.8 (2023-05-22)
7.7.7 (2023-05-12)
7.7.6 (2023-05-09)
7.7.5 (2023-05-01)
7.7.4 (2023-04-21)
7.7.3 (2023-04-14)
7.7.2 (2023-04-07)
7.7.1 (2023-03-31)
7.7.0 (2023-03-30)
7.6.0 (2023-03-30)
7.5.0 (2023-03-30)
7.4.1 (2023-03-30)
- schema: CloudFormation Updates (ca2da2e)
7.4.0 (2023-03-30)
7.3.8 (2023-03-17)
7.3.7 (2023-03-10)
7.3.6 (2023-03-09)
7.3.5 (2023-03-03)
7.3.4 (2023-02-24)
7.3.3 (2023-02-17)
7.3.2 (2023-02-11)
7.3.1 (2023-02-04)
7.3.0 (2023-02-01)
7.2.6 (2023-01-27)
7.2.5 (2023-01-20)
7.2.4 (2023-01-20)
7.2.3 (2023-01-18)
7.2.2 (2023-01-18)
7.2.1 (2023-01-14)
7.2.0 (2023-01-13)
- ci: bump semantic-release-action (510f9c6)
7.1.3 (2023-01-06)
7.1.2 (2022-12-31)
7.1.1 (2022-12-23)
7.1.0 (2022-12-20)
7.0.7 (2022-12-06)
7.0.6 (2022-12-01)
- generation of AppFlow properties without type (bfcd40f)
- schema: CloudFormation Updates (#524) (4fbffa5)
7.0.5 (2022-10-26)
- schema: CloudFormation Updates (065bf7e)
7.0.4 (2022-10-22)
- schema: CloudFormation Updates (590b489)
7.0.3 (2022-10-15)
7.0.2 (2022-10-08)
- schema: CloudFormation Updates (998c192)
7.0.1 (2022-09-30)
- schema: CloudFormation Updates (cdcc602)
7.0.0 (2022-09-30)
- feat!: bump release to v7 (a30de92)
- Pointers are not used for Lists, Maps and interface{} members.
6.11.0 (2022-09-30)
7.0.0-beta.1 (2022-09-29)
- feat(generate)!: Exclude Map and List from pointer (aec3913)
- Goformation no longer generates pointer types for Lists, Maps and interface{} types.
6.10.0 (2022-09-02)
- sam: add missing fields to ScheduledEvents and remove required versions from IAM (33395af)
6.9.0 (2022-09-02)
- schema: serverless http api cors configuration (a90bb03)
6.8.0 (2022-09-02)
- generator: remove generation of interface pointers (315dde3)
6.7.2 (2022-09-02)
- schema: CloudFormation Updates (7e80942)
6.7.1 (2022-08-19)
- schema: CloudFormation Updates (7fedc99)
6.7.0 (2022-08-17)
- if intrinsics: generalized solution to support more types (c66e47b)
6.6.6 (2022-08-15)
- generator: remove unused import (cf87ba6)
- resource.template: remove print to standard output when JSON unmarshal in a resource fails (d64f719)
- resource.template: remove print to standard output when JSON unmarshal in a resource fails (output of go generate) (c039ac4)
6.6.5 (2022-08-15)
- schema: CloudFormation Updates (83f2d49)
6.6.4 (2022-08-06)
- schema: CloudFormation Updates (bd8a2ac)
6.6.3 (2022-07-23)
- schema: CloudFormation Updates (af4f471)
6.6.2 (2022-07-16)
- schema: CloudFormation Updates (5d02a2b)
6.6.1 (2022-07-15)
- schema: CloudFormation Updates (35a4b24)
6.6.0 (2022-07-12)
- intrinsics: add intrinsics ptr versions (ffdc5af)
6.5.4 (2022-07-08)
- schema: CloudFormation Updates (bc360ab)
6.5.3 (2022-07-01)
- schema: CloudFormation Updates (0f4ade8)
6.5.2 (2022-06-24)
- schema: CloudFormation Updates (0de7ca4)
6.5.1 (2022-06-17)
- schema: CloudFormation Updates (dcee612)
6.5.0 (2022-06-14)
- schema: re-generated schema (eae0a91)
- generator: add support for new sagemaker properties (bfd39c4)
6.4.1 (2022-06-02)
- schema: Add AddDefaultAuthorizerToCorsPreflight to Serverless Auth (637150c)
6.4.0 (2022-05-03)
- schema: Support condition properties in resources (b3b7397)
6.3.0 (2022-05-03)
- schema: Support custom resource types (1274ccd)
6.2.1 (2022-04-30)
- schema: CloudFormation Updates (7858395)
6.2.0 (2022-04-26)
- schema: Add RequestModel and RequestParameters for AWS::Serverless::Function.EventSource (e0c2673)
- schema: Fix JSON Schema generation commas for InclusivePrimitiveItemTypes (28db940)
- schema: Add the ability to create items using pattern properties rather than normal references (7b60160)
6.1.1 (2022-04-25)
- schema: Add Version property into IAMPolicyDocument and fix Statement type (846268a)
6.1.0 (2022-04-25)
- generate: remove duplicated line (a18d04c)
- schema: Support generation of array items that should be combined in one anyOf (d5e468f)
6.0.15 (2022-04-22)
- schema: string should be a primitivetype (5fa746c)
6.0.14 (2022-04-22)
- schema: Add S3WritePolicy to sam policy template (c9f775e)
6.0.13 (2022-04-22)
- schema: Add SSMParameterReadPolicy and AWSSecretsManagerGetSecretValuePolicy into AWS::Serverless::Function.SAMPolicyTemplate (7a85ab9)
6.0.12 (2022-04-22)
- schema: Add DynamoDBWritePolicy to sam policy template (6f08c13)
6.0.11 (2022-04-22)
- schema: Add Domain in AWS::Serverless::API schema (dff256a)
6.0.10 (2022-04-22)
- schema: CloudFormation Updates (319d00f)
6.0.9 (2022-04-15)
- schema: CloudFormation Updates (8432365)
6.0.8 (2022-04-14)
- reduce JSON CloudFormation template size (f893af7)
6.0.7 (2022-04-08)
- schema: CloudFormation Updates (68156bc)
6.0.6 (2022-04-02)
- schema: CloudFormation Updates (d2d083a)
6.0.5 (2022-04-01)
- schema: CloudFormation Updates (9ce0a19)
6.0.4 (2022-03-26)
- schema: CloudFormation Updates (d59706b)
6.0.3 (2022-03-18)
- schema: CloudFormation Updates (801c7f8)
6.0.2 (2022-03-11)
- schema: CloudFormation Updates (e06f6e2)
6.0.1 (2022-03-04)
- schema: CloudFormation Updates (13095ef)
6.0.0 (2022-02-25)
- generate: DependsOn should also accept a string (09908b6), closes #407
- policies: re-create deleted files (bdd5860)
- schema: generated schema acording to new rules (d9dc863)
- schema: re-generate schema (58dc56b)
- schema: regenerated with latest code (33f99bf)
- types: added utils to create pointer types (4a68a60)
- generate: allow for optional params (d9bfdff)
- go: drop support for go 1.13 and 1.14 (05bb704)
- go: drop support for go 1.15 (2e45a2b)
- generate: DependsOn can now parse a single string instead of just a list of strings.
- types: use cloudformation.{String,Int,...} as helpers for creating pointer types.
- generate: optional parameters are now marked as a pointer.
6.0.0-beta.1 (2022-02-23)
-
build: build the project again (5b8ac7d)
-
change version to v6 (68254e2)
-
policies: add policies back (2e26547)
-
schema: generated schema acording to new rules (4321f42)
-
schema: re-generate schema (b0ccc0a)
-
tags: bring tag back. (a3b2b57)
-
feature(types)!: added utils to create pointer types (bbf53ec)
-
feat(generate)!: allow for optional params (43a094e)
- use cloudformation.{String,Int,...} as helpers for creating pointer types.
- optional parameters are now marked as a pointer.
5.4.10 (2022-02-25)
- schema: CloudFormation Updates (c5b4ae3)
5.4.9 (2022-02-21)
- schema: CloudFormation Updates (2f3e802)
5.4.8 (2022-02-11)
- generator: updated resources that support update/creation policy (18c08b9)
5.4.7 (2022-02-11)
- schema: CloudFormation Updates (bbbbbed)
5.4.6 (2022-02-08)
5.4.5 (2022-01-18)
5.4.4 (2022-01-03)
- sam: AWS::Serverless::Function Properties Architectures property should have a primitive type specified (#420) (3aa91ed)
5.4.3 (2021-12-30)
5.4.2 (2021-12-30)
5.4.1 (2021-12-13)
5.4.0 (2021-11-22)
5.3.0 (2021-11-22)
- intrinsics: add support for base64 encoded string in instrinsic if function (#414) (652501b), closes #412
5.2.12 (2021-11-22)
5.2.11 (2021-10-06)
5.2.10 (2021-10-05)
5.2.9 (2021-09-03)
5.2.8 (2021-08-27)
5.2.7 (2021-08-11)
5.2.6 (2021-07-16)
- schema: Allow any type for Parameter AllowedValues (#392) (ccc7fb0)
- schema: CloudFormation Updates (#390) (ac83603)
5.2.5 (2021-07-16)
5.2.4 (2021-07-05)
5.2.3 (2021-06-29)
5.2.2 (2021-06-25)
5.2.1 (2021-06-21)
5.2.0 (2021-06-20)
5.1.0 (2021-06-20)
5.0.0 (2021-06-20)
- schema: Improved implementation of Globals (in SAM tempates)
This PR introduces a new implementation for both defining SAM templates with Global
values, as well as parsing templates containing them.
Note: Globals only apply to SAM templates - if you are using regular CloudFormation templates this breaking change should not impact you. The only impact you might see is if you are creating cloudFormation.Template
structs manually rather than using the cloudformation.NewTemplate()
constructor. As part of this change, a new field (Globals
) was added to the Template{}
struct. If you are not using the constructor, your compiler will probably complain that this field is missing from the struct instantiation in your code.
For more information about what Globals
are in SAM templates, see this link:
https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-template-anatomy-globals.html
In previous versions of Goformation (before v5), goformation was able to parse SAM templates that contained a Globals
section, however the implementation just overwrote the resource properties in the template, with the global values at parse time.
This meant that:
- It was not possible to compose a template in Go that had a Globals section.
- The JSON Schema generated by this repo, had no concept of Globals.
This new implementation DOES NOT does not overwrite the values in the template, like the previous implementation did. It replaces the old implementation completely, and exposes Globals as a series of structs that are marshalled/unmarshalled to/from JSON/YAML.
This allows you to compose a template:
template := cloudformation.NewTemplate()
template.Globals["Function"] = &global.Function{
Timeout: 1800,
}
As well as parse a JSON/YAML template, and inspect the global properties:
template, err := goformation.Open("../some-template-with-globals.yml")
if err != nil {
fmt.Printf("failed to open template: %s\n", err)
os.Exit(1)
}
fmt.Printf("%v", template.Globals["Function"])
// You can view the global as above, however it's type is downcast to a basic interface.
// If you want to inspect properties specific to the global type (e.g. the timeout for a Lambda function)
// then use the following helper methods to get the various global types from the template:
globalAPI, _:= template.GetServerlessGlobalApi()
globalFunction, _ := template.GetServerlessGlobalFunction()
globalHttpApi, _ := template.GetServerlessGlobalHttpApi()
globalSimpleTable, _ := template.GetServerlessGlobalSimpleTable()
fmt.Printf("Global Function Timeout: %d\n", globalFunction.Timeout)
4.19.5 (2021-06-10)
4.19.4 (2021-05-31)
4.19.3 (2021-05-21)
4.19.2 (2021-05-18)
4.19.1 (2021-04-17)
4.19.0 (2021-04-17)
4.18.3 (2021-04-07)
4.18.2 (2021-03-23)
4.18.1 (2021-03-08)
4.18.0 (2021-03-08)
4.17.0 (2021-02-25)
4.16.4 (2021-02-20)
4.16.3 (2021-02-17)
4.16.2 (2021-02-09)
4.16.1 (2021-02-09)
4.16.0 (2021-02-03)
4.15.9 (2021-01-29)
4.15.8 (2021-01-23)
4.15.7 (2021-01-05)
- schema: S3Location or String support for AWS::Serverless::LayerVersion.ContentUri (#339) (6e39ebe), closes #337
4.15.6 (2020-11-22)
4.15.5 (2020-11-06)
4.15.4 (2020-11-01)
4.15.3 (2020-10-23)
4.15.2 (2020-10-11)
4.15.1 (2020-10-11)
4.15.0 (2020-08-16)
- schema: dummy commit - trigger CI for schema update (66bc344)
4.14.0 (2020-07-26)
4.13.1 (2020-07-26)
4.13.0 (2020-07-26)
4.12.0 (2020-07-21)
4.11.0 (2020-06-28)
4.10.1 (2020-06-22)
- generator: update the generation making it easier to fix CF schema errors to generate (#285) (6751e5b)
4.10.0 (2020-06-22)
4.9.0 (2020-06-22)
4.8.0 (2020-04-04)
- schema: Add UpdateReplacePolicy to the templates and the policies so that it is generated for every resource (#272) (696c515)
4.7.1 (2020-04-04)
4.7.0 (2020-02-28)
4.6.0 (2020-02-22)
4.5.1 (2020-02-14)
4.5.0 (2020-02-13)
4.4.0 (2020-01-30)
4.3.0 (2020-01-30)
4.2.0 (2020-01-29)
4.1.0 (2019-12-09)
4.0.3 (2019-11-30)
4.0.2 (2019-11-30)
4.0.1 (2019-11-30)
4.0.0 (2019-11-30)
- This change refactors the DependsOn, Metadata, CreationPolicy, UpdatePolicy and DeletionPolicy methods on each resource to a new name. This is required, as some CloudFormation resources use these keywords as properties (AWS::AppMesh::Route.GrpcRouteMatch has a Metadata field for example), which causes a conflict.
resource.DependsOn()
method is refactored to resource.AWSCloudFormationDependsOn
field.
resource.SetDependsOn()
method is refactored to resource.AWSCloudFormationDependsOn
field.
resource.Metadata()
method is refactored to resource.AWSCloudFormationMetadata
field.
resource.SetMetadata()
method is refactored to resource.AWSCloudFormationMetadata
field.
resource.CreationPolicy()
method is refactored to resource.AWSCloudFormationCreationPolicy
field.
resource.SetCreationPolicy()
method is refactored to resource.AWSCloudFormationCreationPolicy
field.
resource.UpdatePolicy()
method is refactored to resource.AWSCloudFormationUpdatePolicy
field.
resource.SetUpdatePolicy()
method is refactored to resource.AWSCloudFormationUpdatePolicy
field.
resource.DeletionPolicy()
method is refactored to resource.AWSCloudFormationDeletionPolicy
field.
resource.SetDeletionPolicy()
method is refactored to resource.AWSCloudFormationDeletionPolicy
field.
3.1.0 (2019-10-29)
3.0.1 (2019-10-29)
3.0.0 (2019-10-27)
- this change moves all Cloudformation resources to packages based on the AWS service name. The main motivation for this is that building goformation on some platforms (Windows) failed due to too many files in the old cloudformation/resources package. This new package style has a nice benefit of slightly nicer to use API, but is a breaking change and will require refactoring existing codebases to update to v3.
Old usage:
import "github.com/awslabs/goformation/v2/cloudformation/resources"
... snip ...
topic := &resources.AWSSNSTopic{}
New usage:
import "github.com/awslabs/goformation/v4/cloudformation/sns"
...snip...
topic := &sns.Topic{}
Most tests are still failing at this point and need refactoring.
- fix(schema): Tag handling
Fixed tag handling for new grouped resources style (via new tags.Tag struct).
- fix(schema): SAM specification
SAM Specification now generates nicely with new grouped resources format. Also all tests are now passing \o/
2.3.0 (2019-03-20)
- parser: Unmarshalling of resources with polymorphic properties (like S3 events) now works (#188) (8eff90a)
- sam: Add support for
AWS::Serverless::Api.TracingEnabled
,AWS::Serverless::Function.PermissionsBoundary
,AWS::Serverless::Function.DynamoEvent.Enabled
,AWS::Serverless::Function.KinesisEvent.Enabled
, andAWS::Serverless::Function.SQSEvent.Enabled
(#191) (38f0187) - schema: AWS CloudFormation Update (2019-03-15) (#189) (8b332a4)
2.2.2 (2019-03-13)
2.2.1 (2019-03-10)
2.2.0 (2019-03-10)
- schema: regenerated resources to apply SAM schema fixes from previous PR (b30c019)
2.1.5 (2019-03-10)
- parser: do not break if a non-intrinsic
Condition
statement is found in a YAML template (#169) (e4671e3)
2.1.4 (2019-03-10)
2.1.3 (2019-03-10)
- schema: maps within YAML templates should allow unknown fields/properties (3b6e359)
2.1.2 (2019-03-10)
2.1.1 (2019-03-10)
2.1.0 (2019-03-10)
- CI: auto-generate AUTHORS.md file (b37af7b)
2.0.0 (2019-03-10)
- generator: this PR refactors the auto-generated CloudFormation resources out of the cloudformation package and into a dedicated package (resources). This helps keep the auto generated files separate from others.
E.g. cloudformation.AWSSnsTopic{} becomes resources.AWSSnsTopic{}
1.4.1 (2019-03-10)
- spec: corrected AWS::Serverless::Api.Auth.Authorizers to be of type JSON rather than string (#164) (4cf1bee)
1.4.0 (2019-03-09)
1.3.0 (2019-03-09)
- CI: speed up PR builds by only downloading the cfn spec and regenerating resources on cron schedule (not on every build) (7ae2a32)
- CI: Update TravisCI configuration based on https://github.com/se… (#180) (88e1e85)
- CI: Update TravisCI configuration for semantic-release to use jobs (f6c2fee)