Skip to main content

Trivial AWS CloudFormation updater

Project description

cf-upgrade
==========

This package contains a simple strict to update an existing CloudFormation
stack. It is intended to be used as part of a CI/CD flow to update a
deployment.

Usage is simple, since there are only two commands. First you can list
all CloudFormation stacks using the `list` command:

```shell
$ cf-upgrade list
Stack Status
---------------- ---------------
my-example-stack UPDATE_COMPLETE
```

To update a stack use the `upgrade` command. In its simplest version you can
pass a version number which will be used for a `Version` parameter:

```shell
$ cf-upgrade my-example-stack 1.2.0
Stack updating, waiting to complete... done
```

If you want to modify another parameter, or a different one you can also
provide one or more key=value options:

```shell
$ cf-upgrade my-example-stack ApiVersion=1.1.0 Nginx=1.13.4
Stack updating, waiting to complete... done
```

Credentials
-----------

This command assumes you have [AWS CLI credentials configured](http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html).
You can use the `--profile` and `--region` options to indicate which AWS profile
and region to use.

Permissions
-----------

In order to operate this your will need to use an AWS user with permissions to
find our existing stack template and update it. In addition you must grant any
permissions necessary to update your resources.

Here is a sample policy document to allow updating of ECS services:

```json
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudformation:DescribeStacks",
"cloudformation:ListStacks",
"cloudformation:GetTemplate",
"cloudformation:GetTemplateSummary",
"cloudformation:UpdateStack",

"iam:GetRole",
"iam:PassRole",

"ecs:UpdateService",
"ecs:DeregisterTaskDefinition",
"ecs:DescribeServices",
"ecs:RegisterTaskDefinition"
],
"Resource": "*"
}
]
}

Changelog
=========

1.0 - September 4, 2017
-----------------------

First release


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cf_upgrade-1.0.tar.gz (3.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cf_upgrade-1.0-py2.py3-none-any.whl (5.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file cf_upgrade-1.0.tar.gz.

File metadata

  • Download URL: cf_upgrade-1.0.tar.gz
  • Upload date:
  • Size: 3.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for cf_upgrade-1.0.tar.gz
Algorithm Hash digest
SHA256 faa4cbb26966556dc1b1fb2707dbf51f04c1d098fcc3833da4ed33db65bc73d5
MD5 17066548d0af4585a1868ffe77c4e1c6
BLAKE2b-256 3ad3e2c776b8124dddcce8ea781aa5bf77a30b3cc81d109222d1fcc615b043d7

See more details on using hashes here.

File details

Details for the file cf_upgrade-1.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for cf_upgrade-1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7f89e8d76dad895f8e8d245f21c2c132164265c2e9fae8e3e1f9996e13f3bbce
MD5 d3b8eb91accad50a2484c7e64b24ae00
BLAKE2b-256 c5007059a84d4425a927ebe4c88f1c574f6555549c4dfe30b54e9a1f2c0b9e8d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page