Giter Club home page Giter Club logo

wercker-aws-ecs's Introduction

Wercker step for AWS ECS

This wercker step allows to deploy Docker containers with AWS ECS service or run a task outside of a service.

Please read the AWS ECS documentation and API before using this step.

The step is written in Python 2.7 and use Pip and Boto3 module.

AWS ECS workflow

To deploy an application with AWS ECS, the Wercker step follow this steps:

There is two different flows depending if the Wercker step is running in "service mode" or in "task only mode". If service-name is provided in the configuration, the service mode is used.

This initial step consists on configuring AWS.

The following configuration allows to setup this step :

  • key (required): AWS Access Key ID
  • secret (required): AWS Secret Access Key
  • region (optional): Default region name

This step register a new task definition for the service.

The following configuration allows to setup this step :

  • task-definition-name (required): The name of the task definition
  • task-definition-file (required): The file containing the task definition

In service mode:

This step check a previously created ECS cluster exists.

The following configuration allows to setup this step :

  • cluster-name (optional): The name of the cluster to deploy the service

Step Checking ECS Service (Skipped in task only mode)

This step check a previously created ECS service exists. The service MUST be created before using this step.

The following configuration allows to setup this step :

  • service-name (optional): The name of the service to deploy

This step update the service with the new revision.

In task only mode:

This step run a task on a single node and wait for its completion. The step fail if the task can't be run or if its command exit code is different from 0.

Example

The following example deploy an hello service on ECS :

deploy:
  steps:
    - ton-katsu/aws-ecs:
        key: aws_access_key_id
        secret: aws_access_secret_id
        task-definition-name: hello-migrate-db
        task-definition-file: /app/hello-migrate-db-task-definition.json
    - ton-katsu/aws-ecs:
        key: aws_access_key_id
        secret: aws_access_secret_id
        cluster-name: staging
        task-definition-name: hello-migrate-db
        task-definition-file: /app/hello-migrate-db-task-definition.json
    - ton-katsu/aws-ecs:
        key: aws_access_key_id
        secret: aws_access_secret_id
        cluster-name: staging
        service-name: hello
        task-definition-name: hello
        task-definition-file: /app/hello-task-definition.json
        task-definition-volumes-file: /app/hello-task-definition-volumes.json

wercker-aws-ecs's People

Contributors

ton-katsu avatar nhuray avatar toonverbeek avatar tomfrost avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.