Subsections of Change Log

Attini CLI

Version 2.5.8

Date: 28 March 2023

Version 2.5.7

Date: 11 March 2023

  • Bug fix: Environment configuration scripts will now work as intended.

Version 2.5.6

Date: 2 March 2023

  • Bug fix: Will now exclude symlink files when coping working directory during package. This created 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 the attini deploy run command
  • Bug 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 to attini 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.2

Date: 26 October 2022

  • Bug fixes.

Version 2.2.1

Date: 19 October 2022

  • Added the attini deploy continue command to resume deployments paused by the AttiniManalApproval.
  • 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 and attini 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 to attini deploy run, attini deploy describe and attini package commands.

Version 2.0.0

Date: 20 September 2022

  • attini context is now attini environment context.
  • Added attini distribution parent command.
  • attini package is now attini distribution package.
  • Added the attini distribution inspect command.
  • Added the attini distribution download command.
  • Added the --environment option to the attini context command.
  • Added the --distribution-name option to the attini context command.
  • Added the attini ops parent command.
  • attini report rogue-stacks is now attini ops rogue-stacks.
  • attini export-logs is now attini ops export-logs.
  • attini delete-stack-resource is now attini ops delete-stack-resource.
  • Added the --delete-stack flag to the attini 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 and attini package commands. You can now specify an image in your attini-config that will be used for packaging your distribution
  • Added 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 and attini 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 Cloud​Formation deployments.
  • Added attini configure set-tag command to easily set/update tags for Cloud​Formation deployments.
  • Added attini configure set-dist-id command easily set/update distribution id.

Attini Framework

Version 1.7.0

Date: 14 March 2023

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 set GiveAdminAccess=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.4

Date: 10 February 2023

  • Templates no longer need the / prefix
  • Minor fixes

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 to write 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.3

Date: 5 January 2023

  • The runner will now handle none Json output

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.1

Date: 21 November 2022

  • Bug fixes and improved performance.

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.33

Date: 26 October 2022

  • Bug fixes.

Version 1.3.30

Date: 19 October 2022

  • Added the AttiniManualApproval step. See the AttiniManalApproval 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.25

Date: 12 October 2022

  • Bug fixes.

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 type to the deployment plan.

Version 1.3.3

Date: 2 September 2022

  • Support for UAE (me-central-1) region

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.
  • 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 and cfnGlobalOutput 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 some attini-setup parameters.

Version 0.0.455

Date: 8 November 2021

  • Attini core functionality.
  • Added support for Attini license agreement acceptance.
  • Bug fixes.