salmon.cloudformation/template component. This is useful for
validating a template that is used by more than one stack or change-set.salmon.signal/early-validate/conf would not
validate properly when refs were in the component's config.salmon.util/->ex-info should return an
ex-info, not throw it.salmon.cloudformation/change-set to create and manage change sets
for cloudformation stacks. This makes it easier to analyze what
changes will be made to a stack.:change-set option to salmon.cloudformation/stack. This allows
providing a change set as the source of stack updates instead of
providing parameters and a template.salmon.util/aws-error-code and salmon.util/aws-error-message
to find error codes and messages in responses that return a
top-level :Error map, such as the response to :DeleteBucket.
They would previously return nil for these responses.salmon.cleanup/full-delete-all-stacks! for deleting
resources in test accounts:termination-protection? option to salmon.cloudformation/stack.
This can be used to enable or disable termination protection.salmon.util/pages-seq for handling paginated responses.salmon.cleanup/deregister-all-amis! for cleaning up AMIs in test accounts.salmon.cleanup/delete-orphaned-snapshots! for cleaning up snapshots in test accounts.:cognitect.aws.error/code to find the error code in salmon.util/aws-error-code.salmon.util/->ex-info.salmon.util/aws-error-code and salmon.util/aws-error-message
to find error codes and messages in responses that return a
top-level :Error map, such as the response to :DeleteBucket.
They would previously return nil for these responses.salmon.cleanup/full-delete-all-stacks! for deleting
resources in test accounts:termination-protection? option to salmon.cloudformation/stack.
This can be used to enable or disable termination protection.salmon.util/pages-seq for handling paginated responses.salmon.cleanup/deregister-all-amis! for cleaning up AMIs in test accounts.salmon.cleanup/delete-orphaned-snapshots! for cleaning up snapshots in test accounts.:cognitect.aws.error/code to find the error code in salmon.util/aws-error-code.salmon.util/->ex-info.Add logging messages when creating, updating, or deleting a stack, and when waiting for a stack to enter a new state.
(breaking) When a CloudFormation stack fails during creation, it enters the ROLLBACK_COMPLETE status. Previously, salmon would fail during stack start when the named stack is in ROLLBACK_COMPLETE status. Now salmon deletes the stack and creates a new stack with the same name.
Upgrade deps
Add logging messages when creating, updating, or deleting a stack, and when waiting for a stack to enter a new state.
(breaking) When a CloudFormation stack fails during creation, it enters the ROLLBACK_COMPLETE status. Previously, salmon would fail during stack start when the named stack is in ROLLBACK_COMPLETE status. Now salmon deletes the stack and creates a new stack with the same name.
salmon.construct code. This code has been moved to the salmon.construct repo.
io.staticweb/cloudformation-templating dependency.salmon.test/bucket-name-schema should prohibit dashes next to periods.clojure.tools.logging as a direct dependency.:lint? stack option was ignored.salmon.cleanup/delete-all! to delete-all-stacks! and add required argument :regions.salmon.resource.certificate/dns-validated. This creates a
resource that defines an automatically-validated AWS Certificate Manager
(ACM) certificate.salmon.construct.static-site.simple. This provides a single
high-performance static website backed by S3 and CloudFront. Note: This is not stable and can only be accessed via a private var.
io.staticweb/cloudformation-templating as a dependency.IN_PROGRESS state and a start or
delete signal is attempted, stacks would previously return an error.
They now wait for a COMPLETE state before trying to apply the signal again.salmon.util functions ->ex-info and invoke! for calls to the
AWS API that should throw exceptions on failure.salmon.util functions aws-error-code and aws-error-message parsing of
errors found in (-> response :Response :Errors) rather than
(-> response :ErrorResponse).salmon.ec2/list-orphaned-snapshots to list snapshots that can
safely be deleted.
com.cognitect.aws/ec2 as a dependency.salmon.uberjar namespace for building deployable uberjars.
io.github.clojure/tools.build as a dependency.salmon.ssm namespace for AWS Systems Manager operations. This is currently used to fetch the Debian AMI IDs used in tests.
com.cognitect.aws/ssm as a dependency.salmon.packer namespace for building AMIs.
clojure.java.process namespace can be used. This is preferable to adding a new dependency.org.clojure/data.csv as a dependency.salmon.util functions full-name, tags, and resource.
These are useful when building CloudFormation templates.:tags option to stack for defining stack-level tags.:tags and :tags-raw maps to stack and stack-properties
instances.party.donut/system 0.0.218.salmon.s3/upload! for uploading to a bucket.
com.cognitect.aws/s3 as a dependency.:client and :region options to stack and stack-properties
components.anomaly?, aws-error-code, and aws-message-fns to salmon.util
and make them public.salmon.route53/fetch-hosted-zone-id as a simple way to look up
which hosted zone id to attach RecordSets and RecordSetGroups to.
com.cognitect.aws/route53 as a dependency.party.donut/system 0.0.215.:resources from a seq to a map with
each resource's LogicalResourceId as keys. This allows individual resources to be
the target of donut.system refs.
(e.g., (ds/local-ref [:MyStack :resources :MyBucket :PhysicalResourceId])):donut.system/resolve-refs. Custom
resolution fns will prevent early validation.salmon.validation/resolve-refs now takes a
referencing-component-id argument so that it can handle local-refs.:parameters and :parameters-raw maps to stack and stack-properties
instances.:describe-stack-raw to stack and stack-properties instances. This provides
access to the raw DescribeStack response.salmon.signal fns.salmon.validation/refs-resolveable? now takes a component-id argument so that it can handle local-refs.:name to stack instance.Can you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |