Added
- [Resolve 1283] Introducing `sceptre_role`, `cloudformation_service_role` (1295)
- These are just iam_role and role_arn renamed to be a lot clearer. See "Deprecations" below.
Changed
- [Resolve 1299] Making the ConnectionManager a more "friendly" interface for hooks, resolvers,
and template handlers (1287, 1300)
- This creates adds the public `get_session()` and
`create_session_environment_variables()` methods to make AWS interactions
easier and more consistent with individual stack configurations for
iam_role, profile, and region configurations.
- The `call()` method now properly distinguishes between default stack
configurations for profile, region, and `sceptre_role` and setting those to
`None` to nullify them.
- Preventing Duplicate Deprecation Warnings from being emitted (1297)
_Potentially_ Breaking Changes
- The !cmd hook now invokes the passed command using the AWS environment
variables that correspond with the stack's IAM configurations (i.e. iam_role,
profile, region). This means that the hook will operate the same as every
other part of Sceptre and regard how the stack is configured. This should make
it easier to invoke other tools like AWS CLI with your hooks. However, if
your project is setting environment variables with the intent to change how
the command authenticates with AWS (such as a different token, profile, or
region), these environment variables will be overridden. To maintain the same
functionality, you should prefix your command with
`export AWS_SESSION_TOKEN={{environment_variable.AWS_SESSION_TOKEN}} &&` (or
whatever other environment variable(s) you need to explicitly set).
Deprecations
- [Resolve 1283] Deprecating `iam_role`, `role_arn`, and `template_path` (1295)
- `iam_role` and `role_arn` have been aliased to `sceptre_role` and
`cloudformation_service_role`. Using these fields will result in a
DeprecationWarning.
- `template_path` has actually been slated for removal since v2.7. `template`
should be used instead. Using `template_path` will result in a
DeprecationWarning.
- All three deprecated StackConfig fields will be removed in v5.0.0.