Categories: Added, Removed, Changed, Fixed, Nonfunctional, Deprecated
iam_role
capability forstack-config
- Support for complex data for
resolvers
andhooks
- Hooks support for
launch
command
- Replace JSON with YAML as default Cloudformation format in documentation
- Broken cross-page references in documentation
- Jinja autoescape vulnerability
- Connection manager imports
rel_paths
for_call_sceptre_handler
intemplate.py
- Linting as a side-effect of upgrading flake package
- Add documentation clean target
- Clean up code blocks in documentation
- Clarify pip vs. Docker installation in documentation
- Fix documentation version links
- Add autocomplete doc for ZSH shell
- Update integration test instructions
- Allow to keep specific versions of documentation
- Keep version
1.3.4
and1.4.2
active on github pages - Fix formatting error in
terminology.rst
- Upgrade Dockerfile to Alpine 3.10
- Improve error message for
stack_output
dependencies - Improve
sceptre generate
formatting - Unpinned some requirements to avoid conflict with other packages
typing
install dependency for Python version < 3.5- Race condition in stacks causing RecurrsiveGet exception
- Meaningful Jinja Template exception output handling
- Recursion in
sceptre_user_data
becoming infinite - AWS
rate_exceeded
error when hitting AWS API too frequently - Readme links
- StackGraph debugging output
- Moved CircleCI Dockerfile to its own repository
- Add SonarQube analysis
- Change CircleCI setup to use context over environment variables
- Removed redundant test code
- Add badges to README
- Adjust Coverage fail-level to 92%
- Update CONTRIBUTING Guide
- Fix missing
Fn::Split
from CFN Functions in cligenerate
- Fix Docker deploy latest image
- Fix setup.py supported programming language
- Fix CircleCI docs deploy to allow empty commits
- Fix CircleCI workflow to add docker build to tagged docker deployments
- Fix README git conflict issues
- Add DockerHub repo link in README
- CLI to use correct JSON formatting as default
sceptre generate
for non-trivial JSON and YAML- Support for nested dicts in CLI
--var
flag - Error handling for missing AWS credentials
stack_output
resolver windows path- Stack update error hadnling
- Overwritten
project_code
instack_output
dependencies - Typo in terminology documentation
- Add Official Docker image and automatic DockerHub releases
- Change target git repository to deploy docs
- Officially support Python 3.7
- Update README documentation links
- Fix
stack_name
for s3 upload in Windows environment.
- Fix
stack_output
resolver recursion error.
### Fixed
-
Fix CLI list output export issue.
-
Fix path separators between operating systems.
-
Fix S3 uploads to support China regions.
-
Upgrade to PyYaml 5.1.
-
Update custom hook docs.
-
Improve documentation site.
-
Support for SAM templates.
-
Improve handling of missing config attributes.
-
Update colorama dependency version.
-
Fix circleci build
-
Fix ConfigReader to follow symbolic links.
-
Fix output of
--output yaml
with Python objects. -
Fix CLI
update change-set
command.
-
Improve Documentation.
-
Fix Migration Guide documentation on
tags
vsstack_tags
. -
Improve formatting of CLI
--help
command. -
Update
six
dependency version.
-
Fix
write
method insceptre.cli.helpers
to better handleyaml
andjson
output format. -
Fix
sceptre generate
in CLI so that it respects--output
flag. -
Update
PyYaml
dependency version to fixCVE-2017-18342
. -
Fix
--export
option forsceptre list outputs
for setting environment variables.
-
Improve
sceptre.stack.Stack.__repr__()
so that objects and lists are not contained in strings. -
Remove duplicate timestamp from logging in
plan.actions
. -
Fix minor documentation typo in
stack_group_config.md
stack example. -
Remove redundant
status
self-assignment insceptre.plan.actions.launch()
-
Fix
list
anddescribe
cli output -
Fix circleci and Makefile config
-
Fix accessing
command_path
as list in templates -
Fix adding implicit dependencies for
stack_output
resolver
-
Improve delete stack confirmation message
-
Improve delete change set message
-
Add newline in
cli.md
docs to format code block correctly -
Update docs for Custom Resolver
setup.py
-
Update Custom Resolver docs
-
Clarify docs on stack_output resolver
-
Support for
stack_group_config
via theStack()
API. -
Support for accessing
stack_group_config
in Templates -
--ignore-dependencies
flag to CLI and API.
write()
fromsceptre.config.graph.StackGraph
-
Describe commands output formatting
-
Website Page titles
-
Updated Project docs
-
Updated Website Documentation
-
Removed unnecessary string from CLI output
- Added missing
stack_group_config
attributes to Stack.
-
StackGraph (5171ae0)
-
SceptreContext (c17cfc5)
-
SceptrePlan (ab38157)
-
SceptrePlanExecutor (ab38157)
-
Support for cross-StackGroup dependencies (0b104db)
-
StackActions (e8e34e8)
- Environments. Stacks & their relationships are now held in StackGraph (0b104db)
-
Config.yaml
template_path
attribute. By default Sceptre uses "templates" as the root directory fortemplate_path
so the user should not specifytemplates/
as part of thetemplate_path
attribute (0b104db) -
Update docstrings (0b104db)
-
Stack class. The functions available to Stacks are stored in StackActions (0b104db)
- Updated project documentation such as README (0b104db)
- Changed project cocs to use Markdown format (README, CHANGELOG, CONTRIBUTING) (0b104db)
- Fix Config dict merge strategy returning None
- Fix KeyError when merging configs
- Update Click and PyYaml dependency versions
- Improve delete-change-set output message
- Add stack configuration merging strategies
- Add AMI Resolver to contrib/
- Fix launch environment dependency path
- Add error message for non-leaf environments
- Add KMS resolver to contrib
- SSM resolver to contrib
- Improve error handling in CLI and StackOutput
- Amend linting for integration tests and docs
- Decrease the number of circleci parallel runs
- Update Jinja dependency version to
<=2.8
- Add ".template" as allowed file extensions for templates
- Add bash-completion script to contrib
- Add a contrib directory for non-core community contributions
- Update docs Makefile
- Add HTML title header and icon to docs
- Fixed CircleCi PyPi Deployment
- Update Boto3 requirements
##1.3.3 (2018-02-19)
- Released in Error. Contained breaking changes from v2. Fixed in 1.3.4.
- Improving stack dependency resolution.
- Improving CLI output for validate template command.
- Consolidating pip requirements files.
- Fixing Python 3 support.
- Fixing documentation typos.
- Removing sceptre diff command.
- Adding support for the stack notifications attribute in stack config.
- Fixing bug which caused session re-creation on every boto call.
- Re-adding the ability to specify credential profile in the environment config.
- Adding init project command to help initialize a new Sceptre project.
- Adding init env command to help initialize a new Environment config.
- Adding diff command to display differences between the local and deployed stack template.
- Fixed error message displayed for empty environments.
- Adding
environment_config
to config template rendering. - Adding
on_failure
parameter to stack config. - Adding automatic renewal of expired credentials when assuming IAM Roles.
- Deprecating use of
bash
hook in favour ofcmd
hook. - Deprecating use of
asg_scheduled_actions
hook in favour ofasg_scaling_processes
hook. - Adding status colouring for output of describe-env command.
- Fix spelling mistakes in documentation.
- Changing Jinja rendering for templates only with '.j2' extension.
- Fixing broken links in documentation website.
- Updating references to Python templates instead of Troposphere templates.
- Increasing maximum number of boto call retires from 5 to 30.
- Adding support Jinja rendering for stack templates.
- Adding stricter requirements for existing stack state when launch environments.
- Adding
cmd
hook for better cross platform support. - Adding documentation around architecture of Sceptre projects.
- Adding versioned documentation.
- Improving documentation formatting.
- Fixing path error bug when using environment level commands on Windows.
- Fixing bug to correctly throw an AtrributeError in a Python stack template.
- Fixing bug for
protect
in stack config.
- Respect --dir when loading custom resolvers and hooks.
- Include Scope in
update-stack-cs
output. - Updates to documentation.
- Removing deprecation notices.
- Updating documentation.
- Changing syntax used for resolvers and hooks in config files.
- Deprecating use of
sceptre_get_template
function in Troposphere templates. - Deprecating the accessing of Troposphere templates returned from
sceptre_get_template
. - Deprecating the accessing of Troposphere templates from the global variable
t
. - Deprecating the global variable
SCEPTRE_USER_DATA
. - Adding support for
sceptre_handler
function in Troposphere templates. - Adding support for pure CloudFormation JSON strings returned by
sceptre_handler
. - Adding support for
sceptre_user_data
passed tosceptre_handler
. - Fixing bug in update-stack-cs.
- Adding project-variables resolver.
- Adding documentation for CloudFormation Service Role.
- Updating documentation on hooks.
- Adding support for CloudFormation Service Role.
- Adding support for custom stack names.
- Removing (before|after)_launch hook.
- Changing documentation styling.
- Adding Python 3 support.
- Adding --verbose argument to describe-change-set.
- Adding support for launching stacks without uploading the template to S3.
- Adding a FAQ section on
parameters
vssceptre_user_data
. - Adding support for CloudFormation template written in YAML.
- Bumping boto3 requirement.
- Adding more intuitive delete stack message.
- Removing profile.
- Fixing a multithreading bug.
- Improve CLI UX by printing only an exception's message, not the whole stack trace.
- Adding environment path check.
- Refactoring out code that fetches stack status.
- Fixing StackStatusColourer: UPDATE_FAILED wan't coloured.
- Fixing bug from uploading templates to S3 from Windows.
- Improving exception thrown when a user tries to use the stack output resolve on a stack with no outputs.
- Launch now deletes stacks in the CREATE_FAILED or ROLLBACK_COMPLETE states before re-creating them.
- Adding support for Troposphere<1.10.0.
- Adding support for multiple environments.
- Speeding up integration tests.
- Switching to CircleCI for continuous integration and deployment of documentation.
- Changing template S3 key to use a UTC timestamp rather than seconds since epoch.
- Changing update-stack-cs to delete the change set by default.
- Stopping appending region to template bucket name.
- Refactoring logger.
- Changing exception names from Exception to Error.
- Publishing development docs to http://sceptre-dev.ce-tools.cloudreach.com/.
- Adding support for Troposphere 1.8.
- Adding stack protection support.
- Adding support for allowing Troposphere templates to import modules from parent directories.
- Adding documentation section for IAM role setup.
- Fixing bug in update-wth-cs command.
- Adding require_version.
- Renaming --machine-readable to --output.
- Refactoring hook.py.
- Improving logging.
- Updating CONTRIBUTING.rst.
- Fixing multithreaded S3 bucket create bug.
- Deprecating the CLI flags --iam-role, --profile, --region.
- Adding machine readable output support.
- Adding support for CAPABILITY_NAMED_IAM.
- Adding Resolver support for sceptre_user_data.
- Adding plugin support for Parameter Resolvers and Hooks.
- Fixing exit status bug.
- Updating requirements.
- Add sceptre_hooks.
- Add builtin suspend and resume asg scaling actions.
- Adding deprecation warning for --profile, --region, --iam_role.
- Combining account_id and iam_role into a single parameter, iam_role, which is now the ARN of the IAM Role to assume.
- Fixing bug in integration tests.
- Updating docs.
- Updating docstrings.
- Removing autocomplete as it broke integration tests.
- Fixing integration tests.
- Adding the ability to tag stacks created by Sceptre.
- Adding templating support to config files.
- Fixing permissions on autocomplete files.
- Sceptre now encrypts templates uploaded to S3 using AES256 by default.
- Adding autocomplete support for bash and zsh.
- Specify sceptre directory via --dir flag.
- Refactoring how parameters are handled internally.
- Adding stack_output_external resolver.
- Adding the ability to explicitly specify dependencies.
- Adding sceptre-update-cs.
- Tail stack events for sceptre execute-change-set.
- Added formatted output for sceptre describe-change-set.
- Fixing CI bug in 0.29.0.
- Adding automatic support for no-colour'ed output.
- Adding --no-colour flag.
- Updating docs to add get-stack-policy and set-stack-policy.
- Patching unittests and lint from previous release.
- Adding get-stack-policy and set-stack-policy.
- Changing ConfigReader object to Config object.
- Adding more integration tests.
- Fixing UnrecognisedHookTaskTypeException import in hook.py.
- Adding describe-env command.
- Updating documentation.
- Ability to specify the region via the cli.
- Ability to specify a profile via the cli or config.yml.
- Ability to specify a role via the cli.
- Skip role assume when no role is specified in config.yaml or via the cli.
- Moving upload_template_to_s3 into the Template object.
- Adding support for the cascading of <stack_name>.yaml files.
- Moved --debug flag to be after sceptre keyword ($ sceptre --debug ).
- Refactor how config is handled internally.
- Lazy load stack config and templates.
- Adding dependency resolving to create-change-set.
- Adding hooks.
- Refactoring connection_manager.
- Fixing bug in template.py.
- Adding sceptre describe-stack-outputs command.
- Switching from TROPOSPHERE_DATA to SCEPTRE_USER_DATA.
- Switching from configure to PyYaml.
- Fixing a print stack events error.
- Adding Boto3 call retries when request limits are hit.
- Removing a potential race condition when storing templates in S3.
- Tidying up method names in the Stack() object.
- Moving to using threading to launch/delete environments.
- Create/update/launch/delete commands now return non-zero if the command fails.
- Adding basic integration tests.
- Bumping to Troposphere 1.6.0.
- Switching from Docopt to Click, improving support for use as a Python module.
- Bumping boto3 dependency version to 1.3.1.
- Defend against troposphere_data being a string in yaml.
- Moving exceptions into their own file,
exceptions.py
.
- Support for automatic reading in of arbitrary files.
- Refactor
workplan.py
.
- Adding change set support.
- Moving dependency resolver code from
workplan.py
tostack.py
.
- Refactoring
stack.py
.
- Improving troposphere template not found exception.
- Adding
$ sceptre --version
.
- Hiding internal class names.
- Adding support for reading in environment variables for use as CloudFormation parameters.
- Adding
continue-update-rollback
command.
- Refactoring ConfigReader.
- Updating documentation.
- Adding Troposphere data injection support.
- Minor refactor.
- Adding --debug option.
- Adding date time to printed out stack events.
- Fixing bug in generate-template.
- Sceptre now prints out stack events as stacks are being launched or deleted.
- Refactoring interactor commands.
- Adding lock-stack and unlock-stack commands.
- Adding improved error handling for when users enter incorrect stack names.
- Adding improved error handling for when users enter incorrect environment paths.
- Refactoring config_reader
- Updating documentation.
- Adding support for user-defined config directory structure.
- Sceptre waits after checking a stack's status. This update drops the wait time from 3s to 1s.
- Adds sceptre validate-template <stack_name> command.
- Sceptre now creates, updates and launches stacks from a template it uploads to s3.
- Fixing create_bucket for region us-east-1.
- Sceptre removes trailing slash from template_bucket_name.
- Sceptre now appends time since epoch to uploaded JSON template names.
- Sceptre now appends region to supplied bucket name.
- Adding support for subdirectories in the template_bucket_name param.
- Updating Troposphere to version 1.5.0.
- Updating tox to only support Python 2.6 versions > 2.6.9.
- Changing how parameter chaining is stated in yaml files.
- First release.