Skip to main content

This script use ecs client of boto3 to instigate an automatic blue/green deployment.

Project description

# python-ecs-deploy

[![GitHub](https://img.shields.io/github/license/qiqiming/python-ecs-deploy.svg)](https://github.com/qiqiming/python-ecs-deploy/blob/master/LICENSE)
[![PyPI](https://img.shields.io/pypi/v/python-ecs-deploy.svg?style=popout)](https://pypi.org/project/python-ecs-deploy/)

inspired by <https://github.com/silinternational/ecs-deploy>, rewrite use python3

This script use ecs client of boto3 to instigate an automatic blue/green deployment.
It only updates the tag of the images in the task definition with the same image name you provided
This allows you to easily implement CI/CD

## usage
```
ecs-deploy

optional arguments:
-h, --help show this help message and exit
-k AWS_ACCESS_KEY, --aws-access-key AWS_ACCESS_KEY AWS Access Key ID. May also be set as environment variable AWS_ACCESS_KEY_ID
-s AWS_SECRET_ACCESS_KEY, --aws-secret-key AWS_SECRET_ACCESS_KEY AWS Secret Access Key. May also be set as environment variable AWS_SECRET_ACCESS_KEY
-r region_name, --region region_name AWS Region Name. May also be set as environment variable AWS_DEFAULT_REGION
-c cluster_name, --cluster cluster_name Name of ECS cluster
-n service_name, --service-name service_name Name of service to deploy
-i images [images ...], --images images [images ...] Name of Docker image to run(support multiple images)
ex: --images repo/image:1.0 repo2/image2:8.0
--scale nums Modifies the number(positive) of container instances of the current Task Definition
```

## example

You have a task definition that contains two docker images(aaa/foo:1.0, bbb/bar:2.0)

Update the service with the new image:

```
ecs-deploy -c test_cluster -n test_service -i aaa/foo:1.1 bbb/bar:3.0
```

Scale current service number of tasks

```
ecs-deploy -c test_cluster -n test_service --scale 5
```

## Installation

```
pip install python-ecs-depl
```




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

python-ecs-deploy-0.0.4.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

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

python_ecs_deploy-0.0.4-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file python-ecs-deploy-0.0.4.tar.gz.

File metadata

  • Download URL: python-ecs-deploy-0.0.4.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.1

File hashes

Hashes for python-ecs-deploy-0.0.4.tar.gz
Algorithm Hash digest
SHA256 60a5a2cf5794d47dcba58e97a73cc420305658ccc06133060428c932a525116c
MD5 d14ef5594a357e39758c4ebbd88d6b1f
BLAKE2b-256 c242dbe17f5fa00db7eb8c9d7b21e2f22cf49c3fda39ad1f4543b5c0f28f93fd

See more details on using hashes here.

File details

Details for the file python_ecs_deploy-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: python_ecs_deploy-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.1

File hashes

Hashes for python_ecs_deploy-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 ab96a79f4e454bc67fa2eea126a9c79b08f29d8d7440095cccdff33ca126096f
MD5 4de8775a20a93adafcc7031861e73b12
BLAKE2b-256 83da2e09bca370a2697bdd443f692da30c50d409b450aa6dae37c78557af4b5a

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