Commit Graph

1527 Commits

Author SHA1 Message Date
Nicolas De Loof 1fdac494f3
Create CloudFormation template with parameters
so we don't need AWS API to resolve IDs and can run conversion offline

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:51 +02:00
Guillaume Lours 69a7ef0763
Make cluster optional in context setup
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:51 +02:00
Nicolas De Loof 4ab37f8229
Implement Hostname-only service discovery using LOCALDOMAIN
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:50 +02:00
Guillaume Lours 0864513bfe
Switch automatically to interactive mode if one of the required flag is not set
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:50 +02:00
Guillaume Lours 51e04a4702
Add interactive context setup
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:50 +02:00
Guillaume Lours 895dc249b4
Manage aws credentials within setup command
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:49 +02:00
aiordache 3a678fd7dc
cleanup
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:49 +02:00
aiordache d09c8c7236
add private images support
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:49 +02:00
aiordache 57d7474f7d
set secrets in cloudformation template
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:48 +02:00
aiordache f95bd4fdbf
mapping cpu and memory to fargate values
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:48 +02:00
Guillaume Lours 3e785e2cb0
Fix initialization issue of aws context with PreRun function
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:47 +02:00
Nicolas De Loof 1889d04d83
Implement "network" using SecurityGroups
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:47 +02:00
Guillaume Lours 6febf68748
Add e2e tests for plugin behavior and commands
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:47 +02:00
Guillaume Lours aa8587095f
Add setup command to define a docker context for ecs-plugin
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:46 +02:00
Nicolas De Loof 09871400ef
Register services within Cloud Map
close #35

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:46 +02:00
Nicolas De Loof 0eab586106
Create CloudMap private namespace and register services
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:46 +02:00
Nicolas De Loof 9a6fe86a86
Introduce "Validate" phase to check/make app ECS-compliant
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:45 +02:00
Nicolas De Loof 2544307f55
drop GetEcsTaskExecutionRole which is not in used anymore
We need to define a way for compose-user to declare additional Policies
to be added to TaskExecutionRole

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:45 +02:00
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
Nicolas De Loof 99b4ed0bfd
Capture first failure to report root error to user on command completion
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:44 +02:00
Nicolas De Loof a8e963a304
Query stack events by stack ID (not name)
This prevent a race condition on `down` as stack is deleted and we still
ask for stack events as we didn't recieved the DELETE_COMPLETE one

Use WaitUntilStack* to detect stack operation completion

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:44 +02:00
Nicolas De Loof f69ada632a
use faint for "in progress" to distingish completed/failed
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:43 +02:00
Nicolas De Loof 814259ae33
Also wait for deletion events
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:43 +02:00
Nicolas De Loof 5d61fc119a
Format stack events as a set of resources with progress status
This mimic how docker-compose report containers creation

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:43 +02:00
Nicolas De Loof 678f4018f0
Collect events while waiting for stack to complete
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:42 +02:00
aiordache 41aaf802e3
implement secret management
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:42 +02:00
aiordache 2ad9504d15
add secret interface
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:42 +02:00
Nicolas De Loof de365f41e9
Fix test by regenerating mock
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:41 +02:00
aiordache 4a6fec63d2
yet another rebase
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:41 +02:00
aiordache cec44fbb7b
move to sdk
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:41 +02:00
aiordache 95c88acfb4
Set existing vpc as default external network in the compose file
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:40 +02:00
aiordache 39a59ae55f
Deploy with user-defined vpc id
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:40 +02:00
Nicolas De Loof b6be4a0ac3
Use `WithContext` SDK APIs so we can implement cancelation
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:40 +02:00
Nicolas De Loof 4642bfa172
Fix linter warnings
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:39 +02:00
Nicolas De Loof 30029fa701
ComposeDown only require stack name
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>

g Sur la branche api

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:39 +02:00
Nicolas De Loof 541bda3af8
Remove ALB related options to be defined on phase 2
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:38 +02:00
Nicolas De Loof 096c800c1b
use go:generate to automatically run mockgen on build
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:38 +02:00
Guillaume Lours 95de770e87 Update or add license header which are not valid
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
2020-08-17 16:55:25 +02:00
Guillaume Lours 97a50f8d51 Add CI step to check license headers
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
2020-08-17 16:55:25 +02:00
Guillaume Lours e749155839
Merge pull request #499 from glours/add_license
Add LICENSE and NOTICE files
2020-08-17 16:53:04 +02:00
Chris Crone 51f1968668
Merge pull request #464 from docker/bump-go-1.15
Bump Go to 1.15
2020-08-17 11:36:47 +02:00
Guillaume Lours d7d9bb28bb Add LICENSE and NOTICE files
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
2020-08-17 10:20:49 +02:00
Guillaume Tardif e2421ad9a4
Merge pull request #480 from docker/dependabot/go_modules/gopkg.in/ini.v1-1.58.0
build(deps): bump gopkg.in/ini.v1 from 1.57.0 to 1.58.0
2020-08-17 10:02:53 +02:00
Guillaume Tardif 27e7a0ced3
Merge pull request #475 from docker/aci_volume_keys
Get storage account key from azure login, no need to specify it in compose file or run -v option
2020-08-14 17:55:56 +02:00
Guillaume Tardif 4ee5aa6267 More renaming 2020-08-14 17:07:33 +02:00
Guillaume Tardif 274dc8283f Use proper context in storage key retrieval 2020-08-14 17:01:44 +02:00
Guillaume Tardif 6552a00004 Use SDK storage.AccountClient.ListKeys. Needed to refactor code to avoid cyclic dependencies 2020-08-14 16:41:38 +02:00
Chris Crone d902c968e7
Merge pull request #481 from ulyssessouza/fix-golang114-e2e-local-tests
Fix e2e-local tests when compiled with go1.14
2020-08-14 14:32:46 +02:00
Chris Crone af36429cc5
Merge pull request #484 from docker/slow_windows_tests
Slightly update timeout, failing on windows nodes
2020-08-14 13:35:47 +02:00
Guillaume Tardif a86854effd Slightly update timeout, failing on windows nodes (https://github.com/docker/api/runs/984443961). Didn’t want to make it too long either, avoid waiting 2 mins to see when it’s failing. We’ll update this again if we see it’s not enough. 2020-08-14 12:42:19 +02:00