Change log¶
Attini Framework¶
Version 1.6.3¶
Date: 6 March 2023
Fixed misleading error message when starting/stopping ECS tasks.
Fixed a bug when the Attini runner would cold start twice during the first deployment of a distribution.
Version 1.6.2¶
Date: 2 March 2023
Updated the default runner image to include the latest Attini CLI.
The AttiniCdk step will now use the –all option for the deploy command unless stacks are specified.
SQS message retention is now set to 12 hours instead of the default 4 days.
Attini actions minimum access policy has been given the ecs:StopTask permission.
Version 1.6.1¶
Date: 20 February 2023
Added RoleArn to the AttiniCdk step.
The runner will print the CloudWatch log url if the startup commands fail.
Fixed a bug that would sometimes cause the runner to cold start even if the configuration has not changed.
Version 1.6.0¶
Date: 17 February 2023
AttiniCdk Step was added.
Changed the configuration of the default runner to:
Use ECS cluster “attini-default”.
“IdleTimeToLive” is now 1 hour.
It now has 3 GB memory.
It now has 0.5 CPUs.
“GiveAdminAccess” parameter was added to the Attini setup as a replacement for the deprecated “UseAdministratorAccessForDeployingCloudformation” parameter.
Note
If you have onboarded the Attini framework with the configuration
UseAdministratorAccessForDeployingCloudformation=true
, you need to setGiveAdminAccess=true
next time you update the framework.This is easily done with the command
attini setup --give-admin-access
.
Recommended CLI version 1.5.5 or higher
Version 1.5.3¶
Date: 31 January 2023
Added support for Asia Pacific (Melbourne) ap-southeast-4
Resource Groups support in Middle East (UAE) me-central-1
Dependencies can now specify specific versions
Version 1.5.2¶
Date: 26 January 2023
Bug fix. Path in AttiniSam steps no longer need to start with a slash
The manual approval step now has an “abort” option
Version 1.5.0¶
Date: 17 January 2023
Added support for setting default in the deployment plan payloads output section.
Can now specify a image directly in the Runner definition, eliminating the need for writing a TaskDefinition if you want to use your own image.
The init stacks parameters will now be available via the deployment plans payload.
Version 1.4.4¶
Date: 9 January 2023
Fixed bug in runner resulting from deleting the attini_data folder.
Version 1.4.2¶
Date: 7 December 2022
Added iam:UpdateAssumeRolePolicy and iam:ListRoles permission to the default init role.
Some minor improvements to error handling.
Version 1.4.0¶
Date: 21 November 2022
Added support for the AttiniSam step.
Added additional validation of the init template to the macro in order to catch deployment plan errors earlier.
The Attini Framework now creates a default ecs cluster with a default Attini Runner configured. This runner is in the first release only used for performing AWS SAM package for the AttiniSam steps.
Added support for semantic versioning of distributions.
Version 1.3.30¶
Date: 19 October 2022
Added the AttiniManualApproval step. See the AttiniManalApproval documentation for more information.
Parameter values for the init stack can now be imported from the output of distributions declared as dependencies. See the Attini configuration documentation for more information.
Version 1.3.19¶
Date: 10 October 2022
Added support for the new improved follow function in the CLI (Require CLI version 2.1.0 or greater).
Will now use attini-runner 1.1.0 if no runner is installed on the ECS task image used.
Version 1.3.10¶
Date: 20 September 2022
Added the AttiniImport step. See the AttiniImport documentation for more information.
Version 1.3.2¶
Date: 1 September 2022
Attini Runner is now generally available.
Improved error handling for deployment plan configuration.
Made error messages for invalid configuration more informative.
Version 1.2.79¶
Date: 22 August 2022
Added support for EnableTermination support for Cloudformation stacks.
Added support for dependencies. A distribution can now be dependent on other distributions. See the Attini configuration documentation for more information.
Improved error handling for Attini runner. The deployment plan will now no longer freeze if the ECS task definition uses a broken image or breaks during startup.
Fixed issues in the basic execution policy for the Attini runner.
Version 1.2.75¶
Date: 5 August 2022
VPC configuration is now optional for runners. If not specified, the default VPC will be used.
Startup section for runners, these commands will only run when the ECS task is started.
Added a basic execution policy for the Attini runner.
Will now delete all metadata regarding Attini runners if the related init stack is deleted.
Version 1.2.65¶
Date: 22 June 2022
Will now save additional data about distributions. This is to improve the behavior of the
attini context
CLI command.Added permissions to the Attini default roles to make it easier to work with the Attini runner.
Minor fixes to Attini runner start-up logs.
Version 1.2.51¶
Date: 10 June 2022
The Init deploy stack will now only update if there are changes in the stack or in its input from the attini-config file.
Added the “forceUpdate” option to the attini-config file. If true then the Init deploy stack will always update.
Version 1.2.47¶
Date: 1 June 2022
Added support for the Attini runner (Beta).
Added support for using S3 URIs when referencing CloudFormation templates in a Attini CFN step.
Fixed bug when the merge step would fail when merging fields if the value from the first branch was null.
Version 1.2.33¶
Date: 21 April 2022
Variables for configuration files can now be specified in the attini-config file the same way as tags and parameters. This is useful if you want a variable to be globally accessible. It can also be used to set defaults or have predefined different values for different environments.
Improved error reporting for errors in the init stack.
Version 1.2.30¶
Date: 22 Mars 2022
Enabled real-time error reporting for CLI. Requires CLI version 1.1.5 or greater.
Minor bug fixes.
Version 1.2.19¶
Date: 1 Mars 2022
Added the “Action” config option. Can be set to “Delete” or “Deploy” depending on if the stack should be deleted or deployed. Default is “Deploy”.
Added the AttiniLambdaInvoke step. A convenient way to invoke a lambda in a deployment plan while preserving the payload for subsequent steps.
Version 1.2.12¶
Date: 11 February 2022
Bug fix: The attini-step-guard lambda wrongly logged errors in some scenarios.
Bug fix: Fixed a bug that happened when a deployment plan containing a stack with a transformation was triggered twice. This lead to the deployment plan freezing.
Version 1.2.8¶
Date: 31 January 2022
Support added for the describe deployment command in the CLI.
Email is no longer required when installing the framework (If installing via the CLI version 1.1.1 is required)
Bug fixes.
Version 1.2.0¶
Date: 14 January 2022
Note
Requires Attini CLI version 1.1.0 or higher.
Attini will now publish events on the attini-deployment-status SNS topic everytime it deploys a Cloudformation stack.
Events attini-deployment-status now contains message attributes to make it easier to subscribe to specific events, for example if a Cloudformation stack fails.
All events that Attini publishes to the attini-deployment-status SNS topic is now saved to the new AttiniDeploymentEventsV1 DynamoDB table.
Added version to all DynamoDB table names used by Attini.
Changed naming convention of attributes in the AttiniResourceStates table to make it more uniform.
Attini will now delete any resources in DynamoDB belonging to a Cloudformation stack if the stack is deleted, even if the stack is deleted manually.
Bug fixes.
Version 1.1.2¶
Date: 22 December 2021
Removed old cfnOutput payload (replaced with output). This means that users can no longer read stack outputs from the cfnOutput payload and user will have to switch to reading from the output payload.
Added support for getting parameters and tags from SSM Parameter store.
Fixed bug with recursive config inheritance (if a configuration file extended itself).
Variable substitution will now work on all configurations, including extension paths.
Added support for Asia Pacific (Jakarta) ap-southeast-3 region.
Version 1.0.37¶
Date: 30 November 2021
Email option is now required for
attini setup
when installing Attini for the first time.Added improved monitoring capability’s.
Version 1.0.30¶
Date: 23 November 2021
Added new output section to the deployment plan payload. This will replace the
cfnOutput
andcfnGlobalOutput
section.
Version 1.0.13¶
Date: 16 November 2021
Note
This change will not break any of your current deployments but next time you update attini-setup
CloudFormation stack you will need to apply new configuration.
Attini core functionality.
Added support for Attini license agreement acceptance and license token.
Added support for Attini resource allocation (AWS Lambda reserved concurrency).
Bug fixes.
Changed names on attini resources which breaks trust with any ExecutionsRoles used by the AttiniCfn Step, see new documentation here.
Changed names on some
attini-setup
parameters.
Version 0.0.455¶
Date: 8 November 2021
Attini core functionality.
Added support for Attini license agreement acceptance.
Bug fixes.
Attini CLI¶
Version 2.5.6¶
Date: 2 March 2023
Bug fix: Will now exclude symlink files when coping working directory during package. This
was create problems for container builds.
Version 2.5.5¶
Date: 17 February 2023
Added support for new features in the Attini framework version 1.6.0.
Recommended framework version 1.6.0 or higher
Version 2.5.4¶
Date: 7 February 2023
Will now exclude node_modules, .DS_Store and .vscode when copying files to the temp working directory for packaging a distribution.
attini dist inspect
command now shows the distribution version.
Version 2.5.3¶
Date: 26 January 2023
Added an AWS SAM project to
attini init-project
commands.Bug fix. Path for sam project no longer has to start with a slash.
Version 2.5.2¶
Date: 20 January 2023
Added the “–abort” option to the
attini deploy continue
command.
Version 2.5.1¶
Date: 17 January 2023
Increased timeouts for S3 as it sometimes timed out for big distribution when working with a poor internet connection.
Bug fix. Fixed a bug when the AWS SDK SSO implementation would throw a “token expired” error before the token expired.
Version 2.5.0¶
Date: 5 January 2023
Now adds the AttiniMergeOutput step automatically after a parallel step if using the simple syntax.
Version 2.4.4¶
Date: 12 December 2022
Bug fix. The rollback command now works together with the production environment confirmation prompt.
Bug fix. Now you can combine
--container-build
and--environment-config-script
in theattini deploy run
commandBug fix. CloudFormation shorthand conditions now work in the deployment plan template.
Version 2.4.2¶
Date: 9 December 2022
Some minor changes to the presentation.
Updated the following deployment function to link to the new StepFunction console.
Distribution name is now mandatory. It will no longer be resolved from the folder name if absent.
Version 2.4.1¶
Date: 7 December 2022
Added support for a simple deployment plan syntax (Beta).
Some minor changes to the presentation.
Version 2.4.0¶
Date: 30 November 2022
Improved visuals when following a deployment.
Added
--disable-least-privilege-init-deploy-policy
option toattini setup
command.Improved validation.
Will now retain files in sam project folders.
Added node_modules to default ignores.
Will now fail during package if a sam template in an AttiniSam step uses “PackageType: Image” as it is not supported.
Version 2.3.0¶
Date: 21 November 2022
Now creates a metadata file when packaging a distribution in order the be pass data available during the package phase to the framework.
Added support for the AttiniSam step.
Added additional validation of the init-stack during the package phase.
Added support for semantic versioning of distributions.
Version 2.2.1¶
Date: 19 October 2022
Added the attini deploy continue` command to resume deployments paused by the AttiniManalApproval step.
Bug fixes.
Version 2.1.1¶
Date: 13 October 2022
Bug fixes.
Command
attini deploy run
now have a smoother cross account deployment experience. When deploying straight from an S3 bucket,s3:GetBucketLocation
permissions is now required.Status on deployment plan in
attini deploy history
command
Version 2.1.0¶
Date: 10 October 2022
Completely rebuilt the follow deployment function used for
attini deploy run
andattini deploy describe
. It will now print outputs from different steps as well as any output from scripts executed with the attini runner.Added the
--json
option toattini deploy run
,attini deploy describe
andattini package
commands.
Version 2.0.0¶
Date: 20 September 2022
attini context
is nowattini environment context
.Added
attini distribution
parent command.attini package
is nowattini distribution package
.Added the
attini distribution inspect
command.Added the
attini distribution download
command.Added the
--environment
option to theattini context
command.Added the
--distribution-name
option to theattini context
command.Added the
attini ops
parent command.attini report rogue-stacks
is nowattini ops rogue-stacks
.attini export-logs
is nowattini ops export-logs
.attini delete-stack-resource
is nowattini ops delete-stack-resource
.Added the
--delete-stack
flag to theattini delete-stack-resource
command.Commands with json or yaml output will now also output errors in the same format.
Added the me-central-1 region to the auto-completion candidates.
Version 1.2.1¶
Date: 1 September 2022
Fixed a bug when the specified profile region was not used for AWS calls.
Fixed bugs in the information prompt when deploying to production.
Version 1.2.0¶
Date: 31 August 2022
Added
attini update-cli
command. It will update the CLI…Users will now be informed when they are using an older version of the CLI when deploying or packaging distributions.
Added more information to the prompt when deploying to production environment.
The
attini environment list
command will now print errors in yaml or json format.
Version 1.1.13¶
Date: 22 August 2022
Added some validation for attini-config during the package phase.
Minor bug fixes.
Version 1.1.12¶
Date: 05 August 2022
Fixed bug in the
attini context
command. The timestamp for the latest deployment will now print the correct format.
Version 1.1.11¶
Date: 22 June 2022
Fixed bug in the
attini context
command. Will now correctly show distributions even if the StepFunction logs have been cleared (after 90 days). This required the distribution to be deployed with version 1.2.54 or later of the Attini framework.Improved performance of the
attini context
command.ANSI colors can now be disabled by setting the ATTINI_DISABLE_ANSI_COLOR environment variable.
Introduced environment types. An environment can now be either a “test” or a “production” environment.
Added confirmation prompt when deploying to a production environment.
Added the
--force
option for deployment commands. This will make the CLI skip the confirmation prompt.
Version 1.1.10¶
Date: 10 June 2022
The follow deployment function now supports change detection for the Init-deployment-stack.
Version 1.1.9¶
Date: 31 May 2022
All commands now have a –help option
All commands returning lists will now return a list in either json or yaml format depending on if the the –json option is set.
Version 1.1.8¶
Date: 21 April 2022
Bug fix: The attini_dist folder will now always be deleted completely before package.
Version 1.1.7¶
Date: 30 Mars 2022
Bug fix: Fixed error when
attini package
would freeze if executed in an environment with 2 or less available threads.Bug fix: Fixed error when
attini package
would crash if executed in an environment without the “SHELL” environment variable set.
Version 1.1.6¶
Date: 22 Mars 2022
Bug fix: Fixed bug when installing Attini in a new account.
Bug fix:
attini deploy describe
now behave as intended.Bug fix: Fixed bug when redeploying an init-stack right after it failed gave a misleading error message.
Version 1.1.5¶
Date: 22 Mars 2022
Note
Requires Attini Framework version 1.2.8 or higher.
Improved error reporting when following a deployment. CloudFormation errors will now be printed in real time. This feature is not available for cross account or cross region deployments.
Version 1.1.4¶
Date: 2 Mars 2022
Bug fix:
attini report rogue-stacks
now behave as intended when there are multiple environments in the same account.
Version 1.1.3¶
Date: 14 February 2022
Can now specify options to pass to docker when doing container builds. Options are specified in the attini-config file.
Environment configuration files specified with the
--environment-config-script
option is now required to be located in the distribution project folder, or in a subdirectory to it.A relative path specified via the
--environment-config-script
option is now relative from where the command is executed, not relative to the distribution root.Bug fix: package using container build will now handle absolute paths for the
--environment-config-script
option.
Version 1.1.2¶
Date: 8 February 2022
Added container build option for
attini deploy run
andattini package
commands. You can now specify an image in your attini-config that will be used for packaging your distributionAdded
attini report rogue-stacks
command to help manage stacks no longer managed by a distribution.Added
attini delete-stack-resources
command that will remove any resources Attini created in order to manage a Cloudformation stack. Will not delete the actual stack.attini deploy run
andattini package
commands will now put the finished distribution in a folder called attini_dist inside the distributions project folder.Added support for aarch64 CPU.
Version 1.1.1¶
Date: 31 January 2022
Note
Requires Attini Framework version 1.2.8 or higher.
Added
attini deploy describe
command to follow deployment started by others or get information about previous deployments.attini setup
command no longer require –contact-email.Minor bug fixes.
Version 1.1.0¶
Date: 14 January 2022
Note
Requires Attini Framework version 1.2.0 or higher.
Bug fix: Context command will no longer fail on distributions without deployment plans
attini context
command will now print what version of the Attini framework is installed in your AWS account.Added
attini init-project
command with various subcommands to help get started with new projects.Added
attini deploy history
command now prints in yaml format by default.Added
attini deploy history
command no longer require environment to be specified if there is only one environment in account.Added
attini deploy rollback
command no longer require environment to be specified if there is only one environment in account.Added
attini deploy run
command no longer require environment to be specified if there is only one environment in account.
Version 1.0.7¶
Date: 21 December 2021
Environments are no longer created automatically when deploying to them for the first time. This is to prevent creating environments in the wrong account by accident. Instead a user is required to create environments via the CLI.
Added
attini environment create <env-name>
command.Added
attini environment remove <env-name>
command.Added
attini environment list
command.Added
attini context
command to get information about the current environments/account. Only works for distributions deployed with version 1.1.1 or greater of the Attini framework.
Version 1.0.6¶
Date: 9 December 2021
Bug fix: fixed error when package commands some times abort the executions even with correct exit code.
Version 1.0.5¶
Date: 16 November 2021
Added
attini package --environment-config-script
option.Added
attini deploy run --environment-config-script
option.Bug fix:
attini setup
will no longer require user to enter the--create-init-deploy-default-role
or--init-deploy-role-arn
when updating the framework.Bug fix: Errors from pre or post package commands will now print the entire error message, not just the first row.
Email option is now required for
attini setup
when installing Attini for the first time.
Version 1.0.4¶
Date: 16 November 2021
Added
attini setup --create-deployment-plan-default-role
flag.Added
attini setup --create-init-deploy-default-role
flag.
Version 1.0.3¶
Date: 8 November 2021
Added
attini package
command.Added support for pre and post package command.
Added
attini setup --accept-license-agreement
flag.Added
attini setup --keep-version
flag.Added
attini configure set-init-deploy-parameter
command to easily set/update parameters for init-deploy.Added
attini configure set-init-deploy-tag
command to easily set/update tags for init-deploy.Added
attini configure set-parameter
command to easily set/update parameters for CloudFormation deployments.Added
attini configure set-tag
command to easily set/update tags for CloudFormation deployments.Added
attini configure set-dist-id
command easily set/update distribution id.