compose/ecs
Nicolas De Loof 3e30f2cd1a
Create CloudWatch LogGroup and IAM TaskExecutionRole
As part of the CloudFormation template, create a LogGroup and configure
task with awslogs log-driver. Also create a dedicated IAM Role, with
AmazonECSTaskExecutionRolePolicy. This one will later be fine-tuned to
grant access to secrets/config and other AWS resources according to
custom extensions

close #42

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:45 +02:00
..
cmd implement secret management 2020-08-17 21:25:42 +02:00
pkg Create CloudWatch LogGroup and IAM TaskExecutionRole 2020-08-17 21:25:45 +02:00
LICENSE Project skaffloding 2020-04-10 16:10:52 +02:00
Makefile implement secret management 2020-08-17 21:25:42 +02:00
README.md Basic architecture documentation 2020-04-22 15:39:02 +02:00
go.mod API mock and a test case relying on it 2020-04-28 10:59:00 +02:00
go.sum API mock and a test case relying on it 2020-04-28 10:59:00 +02:00
golangci.yaml Setup Github Action for CI 2020-04-28 10:50:27 +02:00

README.md

Docker CLI plugin for Amazon ECS

Architecture

ECS plugin is a Docker CLI plugin root command ecs require aws profile to get API credentials from ~/.aws/credentials as well as AWS region - those will later be stored in a docker context

A compose.yaml is parsed and converted into a CloudFormation template, which will create all resources in dependent order and cleanup on down command or deployment failure.

  +-----------------------------+
  | compose.yaml file           |
  +-----------------------------+
- Load
  +-----------------------------+
  | compose-go Model            |
  +-----------------------------+
- Convert
  +-----------------------------+
  | CloudFormation Template     |
  +-----------------------------+
- Apply
  +---------+      +------------+  
  | AWS API |  or  | stack file |
  +---------+      +------------+

(if this sounds familiar, see Kompose)