Commit Graph

417 Commits

Author SHA1 Message Date
Nicolas De Loof edb30e7e82
Revisit compose API so it uses compose-go Project as parameter
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-27 10:59:20 +02:00
Guillaume Tardif 4879e88b04 Fix last references to /docker/api
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-25 16:26:36 +02:00
Guillaume Tardif ad5c465bd1
Merge pull request #485 from docker/repo-rename
Rename docker/api -> docker/compose-cli
2020-08-25 15:58:51 +02:00
Guillaume Lours 10b7197e4a Remove version in test compose files
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
2020-08-24 10:15:42 +02:00
Chris Crone 4c6280b0e9 Rename docker/api -> docker/compose-cli
Signed-off-by: Chris Crone <christopher.crone@docker.com>
2020-08-21 17:28:39 +02:00
Nicolas De Loof 1b43e0c1d6
Poll ECS logs until context is canceled
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-21 16:03:49 +02:00
Nicolas De Loof 66e25937c6
Merge remote-tracking branch 'origin/main' into ecs-import
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-19 11:28:31 +02:00
Nicolas De Loof ec4615ae57
Apply linter recommendations
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-19 08:16:19 +02:00
Nicolas De Loof 0a6d7b1c6d
Reduce cyclomatic complexity
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-18 16:25:26 +02:00
Nicolas De Loof 55a21122d0
Copytight header
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-18 15:34:40 +02:00
Nicolas De Loof 2791542fea
Merge remote-tracking branch 'origin/main' into ecs
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-18 10:36:17 +02:00
Nicolas De Loof cfbd963c3d
Adjust commands to latest compose-go
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-18 10:01:32 +02:00
Nicolas De Loof 6e6a11aa73
Introduce Secrets API
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-18 09:43:15 +02:00
Nicolas De Loof 91427d0492
introduce `Convert` in compose API
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-18 08:58:37 +02:00
Nicolas De Loof e02d8d549b
Make ECS integration a compose-cli backend
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:30:49 +02:00
Nicolas De Loof 7715ee8e59
Import docker/ecs-plugin as ECS backend
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:29:40 +02:00
aiordache 9eb0a10517
Init progress writer in WaitStackCompletion
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:45 +02:00
Nicolas De Loof f74cc8f0aa
Allow user to customize Roles / ManagedPolicy
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:44 +02:00
Nicolas De Loof 8182c98abf
Don't pretend we know resources to be created
some resources are controlled by a CloudFormation Condition and as such
won't be created. If we add them to the progresswriter, the latter will
never receive status update.

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:44 +02:00
aiordache de99add26b
Use docker/api progress writer
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:43 +02:00
Nicolas De Loof 83d65c02a0
Fix flacky test
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:43 +02:00
Nicolas De Loof d281f6cb3e
Allow fine tunning of awslogs
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:43 +02:00
Nicolas De Loof 5ed328d8df
Add service.env_file support
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:42 +02:00
Nicolas De Loof 7d927ebe4f
Compute rolling update min/max limits
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:42 +02:00
Nicolas De Loof 8e538683d3
Update Golden
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:41 +02:00
Nicolas De Loof d74796aca2
Pass secret definition to init container as json struct
this avoid yet another new micro-formats that is poorly documented

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:41 +02:00
Nicolas De Loof 4bfab35007
TestCase for the secrets init container
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:41 +02:00
Nicolas De Loof 85b3cbd6ea
use an initContainer to inject secrets as /run/secrets/xx
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:40 +02:00
Nicolas De Loof b05af0c0ac
Claim support for healthcheck.retries
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:40 +02:00
Nicolas De Loof 59e8eaf744
Don't set targetGroup a name to avoid conflicts
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:39 +02:00
Nicolas De Loof 35019564e4
Configure Deployment controller
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:39 +02:00
Nicolas De Loof e7bc8081ba
Propagate service tags on Tasks
closes #188

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:39 +02:00
Nicolas De Loof 8582cb3928
update compose-go and adopt NewProjectOptions and functional parameters
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:38 +02:00
Nicolas De Loof 1a3c75fa29
Update aws go sdk and goformation
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:38 +02:00
Nicolas De Loof 9ac3ce772c
Better diagnostic message for "new ARN format" requirement
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:37 +02:00
David Killmon 0df99075cc
add shared config state to session
By adding this flag to the session, we force the AWS Go SDK to read
the ~/.aws/config file. By default, the Go SDK doesn't read this file
which is often not what we or customers expect. Many customers store
their assume role based prfoiles in the .aws/config file rather than
the .aws/credentials file.

(This is what the AWS CLI does, by default - but that's because this
parameter is enabled by default in the python SDK).

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:37 +02:00
aiordache 55531eb6b4
Remove `compose up` timeout
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:37 +02:00
aiordache cec3187bbb
Set task tags
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:36 +02:00
aiordache f5703310ef
Add template description
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:36 +02:00
aiordache 1cde947297
fix custom vpc setup
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:35 +02:00
aiordache 716fd13690
sort cpu values in conversion 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:26:35 +02:00
aiordache 94671e99e1
improve error message for unsupported resource combination
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:35 +02:00
aiordache ce3ab38e61
Add test for convert failure
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:34 +02:00
aiordache 2ef1e28f1d
Add support for deploy.resources
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:34 +02:00
aiordache 3706d8617f
Pointers value access fixes
Signed-off-by: aiordache <anca.iordache@docker.com>
(cherry picked from commit 65d6fe57546b4f7a58ecf878d8740155285bc19a)
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:33 +02:00
aiordache 12215130b5
generic URL/port/protocol retrieval for compose ps
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:33 +02:00
Nicolas De Loof 2d931dab9d
`up` can update an existing stack using CloudFormation Changeset
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:33 +02:00
Nicolas De Loof efeded2670
Remove Cluster from context
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:32 +02:00
Nicolas De Loof 37b9e74308
Implement `ps` without need for the original compose.yaml file
close #165

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:32 +02:00
Nicolas De Loof d7d5e63054
Introduce x-aws-cluster for cluster to deploy application to
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:31 +02:00
Christopher Crone 1b53dbf84f
readme: Update Docker Desktop links
Makes it easier to find the Edge build.

Signed-off-by: Christopher Crone <christopher.crone@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:31 +02:00
Nicolas De Loof dbbd24d270
Don't create a LoadBalancer if compose app has no port exposed
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:31 +02:00
Chad Metcalf b2a9019700
LoadBalancer names cannot be longer then 32 characters..
Longer names will fail with:

 AmazonElasticLoadBalancingV2; Status Code: 400; Error Code: ValidationError;

 Fairly straight forward approach, truncate at 32 characters.
 Considering that we append "LoadBalancer" to every name and it is 12
 characters the name should stay useful. We can decide later if "LB" is
 better then a truncated "LoadBalan".

 The golden test data needed to be updated because its names were also
 over 32 characters.

 Fixes #160.

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:30 +02:00
Nicolas De Loof 8ab544a770
Use env variables from os for interpolation
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:30 +02:00
Chad Metcalf b7d0b704e5
Change default context name to 'ecs'.
The ACI backend uses 'aci' as the default context name. The ECS backend
uses 'aws'. There may be other AWS or Azure backends so lets name them
for what they are.

Addresses issue #154.

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:29 +02:00
Nicolas De Loof 794ea3cc24
Check context created by `context` command
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:29 +02:00
Nicolas De Loof 1783716a6a
claim support for deploy.replicas
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:29 +02:00
Nicolas De Loof a0a785f19e
Clarify example/README about required secret NAME
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:28 +02:00
Christopher Crone 55d560badb
readme: Blog link fix
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:28 +02:00
Christopher Crone 0b5779b52d
readme: Add link to blog, install instructions
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:27 +02:00
Christopher Crone bcd9cda41c
docs: Fix download command
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:27 +02:00
Nicolas De Loof 16e7bbd697
Use compatibilityChecker to detect missing service image as a blocker
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:26 +02:00
Christopher Crone bdb8ad0b95
readme: Tidy and add docs link
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:26 +02:00
Christopher Crone 164e0d750d
readme: Add link to example
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:25 +02:00
Christopher Crone 52a64845c7
example: Add details and format
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:25 +02:00
Chad Metcalf 2586fa35d4
Adding the demo from AWS C3.
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:25 +02:00
Nicolas De Loof 6f916ab9ce
Update docs with download and docs links
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:24 +02:00
Nicolas De Loof ec58975524
Don't prepent docker.io to image URI. Let the container runtime apply default registry
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:24 +02:00
Nicolas De Loof 6664447d29
Fix setup command breaks if .aws/config does not exists
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:23 +02:00
Nicolas De Loof 98ec6c173b
Reject compose file that uses incompatible features
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:23 +02:00
Nicolas De Loof 242216cab1
Reject compose file not setting service image
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:23 +02:00
Nicolas De Loof 4700fed836
Unwrapp API errors to get user-friendly error message
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:22 +02:00
Nicolas De Loof f892ee1004
`ps` shows LoadBalancer URL
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:22 +02:00
Nicolas De Loof 324443deb6
Customize SDK requests to AWS API with user-agent
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:21 +02:00
Nicolas De Loof 2917251f5f
clarify project status
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:21 +02:00
Nicolas De Loof 5c53138a34
Drop use of mockgen made obsolete as we use CloudFormation
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:21 +02:00
Nicolas De Loof c0c31de0c8
testcase to check service mapping
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:20 +02:00
Nicolas De Loof 2bc1b710f2
Testcase to check resources get tagged
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:20 +02:00
Nicolas De Loof e2c903c85f
Set version by most recent Tag
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:19 +02:00
Nicolas De Loof d2911c1ea9
includes:"TAGS" is required for DescribeServices
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:19 +02:00
Nicolas De Loof 934e7ab9ea
don't set service `Name` so they can be updated by CloudFormation
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:19 +02:00
Nicolas De Loof a1eba59a46
`ps` do list services, not containers
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:18 +02:00
Nicolas De Loof cb74f7924e
Don't define service resource name
if we do, CloudFormation can't update resource and changeset fail with
"CloudFormation cannot update a stack when a custom-named resource
requires replacing"

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:18 +02:00
Nicolas De Loof 5e1f40b752
Document required AWS permissions
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:17 +02:00
Nicolas De Loof ed262a0461
Generate mock inside a container
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:17 +02:00
Nicolas De Loof 874be0873d
generate code inside Docker container
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:16 +02:00
Nicolas De Loof c5895fe09a
Use `Project` from compose-go
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:16 +02:00
Nicolas De Loof dcf84f2499
Fix broken build on master
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:15 +02:00
aiordache 1bb95134f0
match docker/api signature for up and down methods
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:15 +02:00
aiordache 9e8ddb63cc
fix lint issue - renamed CompatibilityChecker to Checker
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:15 +02:00
aiordache bb98dae082
code restructure
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:14 +02:00
Nicolas De Loof d36b9b104e
Fix broken master
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:14 +02:00
Nicolas De Loof 0f1a362664
Set FailureThreshold
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:13 +02:00
Nicolas De Loof d957987471
Unit tests for cobra commands
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:13 +02:00
Ulysses Souza a0500799d0
Fix and optimize build process
Kudos @chris-crone!

Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:12 +02:00
Ulysses Souza 1a09dc51ea
Refactor build process to build in containers
This is a re-apply from a previous commit

Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:12 +02:00
Nicolas De Loof 4be3562450
Revert "Refactor build process to build in containers"
This reverts commit adab0d1bdf7bf2cc242128aae7f5044bd5182ea1.

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:12 +02:00
Christopher Crone 2ab64ea10e
docs: Add Linux install instructions
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:11 +02:00
Nicolas De Loof f192904d42
fix Makefile to produce docker-ecs binary
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:11 +02:00
Ulysses Souza 5f628cd0e5
Refactor build process to build in containers
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:10 +02:00
aiordache d597e55f22
fix rebase
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:10 +02:00
aiordache 2c190f11f7
LB Type tests
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:10 +02:00
Nicolas De Loof 1d11e847fb
Test we create the expected policy document for pull_credentials
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:09 +02:00
Nicolas De Loof e88b11bc26
Introduce test to check CloudFormation conversion
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:09 +02:00
aiordache c0f1a8bf18
create different methods to get lb type and security groups
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:08 +02:00
aiordache 45dc8eda80
update test data
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:08 +02:00
aiordache c04950cdac
improve lb security groups parsing
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:08 +02:00
aiordache dad36e09f9
set ALB and security groups for http(s) protocol
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:07 +02:00
aiordache 7337c7520f
rename LB field 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:26:07 +02:00
aiordache 02cc644c5a
fix test data
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:06 +02:00
aiordache 2ea694a1c5
update test data
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:06 +02:00
aiordache 3194cc9b16
allow user defined LB
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:06 +02:00
Nicolas De Loof fbb5bdac6e
Fix resource naming
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:05 +02:00
Nicolas De Loof 37177e6d7a
Split long `Convert` func into smaller, focussed sub-func
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:05 +02:00
aiordache f71109be9e
update testdata
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:04 +02:00
aiordache eddaa70a9e
create NLB load balancer only
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:04 +02:00
aiordache 335806a179
create only one global load balancer - error out if exports port require different types
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:03 +02:00
aiordache e7f77ca3ef
add all service security groups to LB
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:03 +02:00
aiordache 92173eaf35
add SO link for issue if listener is not in service dependencies
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:02 +02:00
aiordache ae3101fe12
create unique load balancer per app and cleanup
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:02 +02:00
aiordache fc9b10fc91
add load balancer
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:02 +02:00
Nicolas De Loof b702065075
custom extension to select existing VPC and SecurityGroups
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:01 +02:00
Nicolas De Loof 1bf4bc9d46
Use distinct family per service definition
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:01 +02:00
Nicolas De Loof 7d4222a725
Implement depends_on using CloudFormation
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:00 +02:00
Nicolas De Loof ff88290302
Make `ps` order predictable
so one can run `watch docker ecs compose ps`

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:00 +02:00
Nicolas De Loof 5080a83242
prevent "Tasks cannot be empty" error
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:26:00 +02:00
Nicolas De Loof 5783b63556
Service can freely communicate within a network
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:59 +02:00
Nicolas De Loof 6c57fb9693
support deploy.replicas
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:59 +02:00
Nicolas De Loof be1c65d441
Get more from DescribeTask
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:59 +02:00
Nicolas De Loof da299f59e2
introduce 'ps' command
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:58 +02:00
Nicolas De Loof 564c369c3e
Compute resource names to avoid unsupported characters
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:58 +02:00
Nicolas De Loof 257f829679
Create service with project and service tags
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:57 +02:00
Nicolas De Loof 01e2b0c989
Present service logs with colored service prefix
This reproduce docker-compose behaviour to report logs with prefix
also moves log formating out from sdk.go

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:57 +02:00
Chad Metcalf 3bc5fc129e
Create the plugin directory if it doesn't exist.
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:57 +02:00
Nicolas De Loof a798c95963
Register services with a known port with SRV record
see
https://github.com/docker/docker_aws/issues/15#issuecomment-634357859

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:56 +02:00
Nicolas De Loof 3283bceac6
Support pull from ECR
close #58

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:56 +02:00
Guillaume Lours e9fe3b2864
Add e2e test deploying a compose application to an ECS cluster
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:55 +02:00
Nicolas De Loof 08bd18231d
Introduce `Normalize` and `Check` in compose model lifecycle
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:55 +02:00
Nicolas De Loof a5a925173c
SDK methods to query service tasks and retrieve public IP
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:55 +02:00
Guillaume Lours 6798ad1245
Add security group declaration in cloudformation conversion tests
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:54 +02:00
Nicolas De Loof ae4dc2e0db
Reject compose file with unsupported features
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:54 +02:00
Nicolas De Loof 8cd4a6fe9b
Fix golden files after rebase
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:54 +02:00
Guillaume Lours 07a57469db
Add unit tests version of migration tests instead of e2e one
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:53 +02:00
Guillaume Lours 4bbe3f1589
Add first compose to cloudformation conversion tests
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:53 +02:00
aiordache 3e5b118f26
add GetLogs to MockAPI
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:53 +02:00
aiordache 0492dacfee
remove redundant var init
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:52 +02:00
aiordache 9dbff1eb72
add logs command
Signed-off-by: aiordache <anca.iordache@docker.com>
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:52 +02:00
Nicolas De Loof 43d3d94c43
Create cluster by compose up
close #53

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-17 21:25:51 +02:00
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
Ulysses Souza a2c2d6aa5d Add Restart Policy support when running single container 2020-08-04 16:57:58 +02:00
aiordache 87245ef727 rename packages ( amazon to ecs and azure to aci )
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-07-30 11:34:34 +02:00
Nicolas De Loof 4138dcfb5a Split API interface by required SDK func per command
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-28 10:59:00 +02:00
Nicolas De Loof 3d8d982d4a format
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-28 10:59:00 +02:00
Nicolas De Loof 52c6177ff7 API mock and a test case relying on it
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-28 10:59:00 +02:00
Nicolas De Loof 8c0fee5abf Define amazon.API as a simplified and currated interface over AWS SDK
This makes code simpler to read and easier to mock within tests

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-28 10:59:00 +02:00
Nicolas De Loof 52440a4732 Setup Github Action for CI
close #1

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-28 10:50:27 +02:00
aiordache d612a4ab89 Project name parameter as alternative to compose file on down
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-04-27 09:21:58 +02:00
Nicolas De Loof f8bf0078aa Use DescribeCluster as ListCluster is a Paginated API
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-24 10:13:38 +02:00
Nicolas De Loof ea6d35a927 Fix minor issue after merge conflit resolution
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-23 16:19:47 +02:00
Nicolas De Loof a1c91ac4c2 Merge branch 'cluster-create' of github.com:aiordache/ecs-plugin into aiordache-cluster-create
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-23 14:55:41 +02:00
aiordache 3d7e062215 add delete-cluster flag on down cmd
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-04-23 14:50:18 +02:00
Nicolas De Loof 48096eeed8 DescribeStacks fail with error if stack does not exists
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-23 11:19:59 +02:00
aiordache 3c9905c474 tidy up go mod
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-04-23 09:45:50 +02:00
aiordache 55f2908c16 wait for stack removal on cluster delete
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-04-22 16:49:55 +02:00
Nicolas De Loof 5110cb6b85 Basic architecture documentation
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-22 15:39:02 +02:00
Nicolas De Loof 87f053d710 Detect stack already exists
This will later be used to switch to ChangeSet logic

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-22 15:37:39 +02:00
aiordache 30fd37b6ca ecs cluster create
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-04-22 15:06:01 +02:00
Nicolas De Loof 0972776e6d Ingress description to include service being exposed
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-21 14:48:51 +02:00
Nicolas De Loof b70f01d2f4 Adopt CloudFormation to create ECS app from compose.yaml
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-21 11:38:52 +02:00
Nicolas De Loof 4e72d1892a Prefer AWS API interface over actual implementation
This will help introduce mock-based tests

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-20 13:47:38 +02:00
Nicolas De Loof dd48cc4599 Introduct option to re-use LoadBalancer
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-16 16:18:06 +02:00
Nicolas De Loof a44ee2a4ed Expose services using a LoadBalancer
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-16 15:15:39 +02:00
Nicolas De Loof 17f3ff9db1 Convert services into TaskDefinition before creating resources
close #6

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-16 11:16:50 +02:00
Nicolas De Loof 7763de47eb Introduce "down" command
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-16 10:07:28 +02:00
Nicolas De Loof fc7266f3f7 Convert compose service into TaskDefinition
(code imported from prototype)

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-15 10:38:19 +02:00
Nicolas De Loof 4542e05ddf API calls to register services matching compose.yaml
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-14 18:03:33 +02:00
Nicolas De Loof 91daf0dcc0 Skeletton for "compose up" command
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-14 17:44:00 +02:00
Nicolas De Loof 40bf8c2dae Load a compose file and pass Project to cobra command
close #2

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-14 11:42:33 +02:00
Nicolas De Loof ba6c599de2 This is a CLI plugin
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-14 08:40:52 +02:00
Nicolas De Loof 1312eec077 Project skaffloding
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-04-10 16:10:52 +02:00