ufo 3.1.2 → 3.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (95) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/bin/commit_docs.sh +26 -0
  3. data/.circleci/config.yml +13 -0
  4. data/CHANGELOG.md +6 -0
  5. data/Gemfile.lock +6 -4
  6. data/Rakefile +7 -0
  7. data/docs/_config.yml +3 -0
  8. data/docs/_docs/conventions.md +3 -3
  9. data/docs/_docs/install.md +5 -5
  10. data/docs/_docs/settings.md +3 -3
  11. data/docs/_docs/structure.md +2 -2
  12. data/docs/_docs/tutorial-ufo-docker-build.md +1 -1
  13. data/docs/_docs/tutorial-ufo-init.md +1 -1
  14. data/docs/_docs/tutorial-ufo-ship.md +3 -7
  15. data/docs/_docs/tutorial-ufo-ships.md +2 -2
  16. data/docs/_docs/tutorial-ufo-tasks-build.md +7 -7
  17. data/docs/_docs/tutorial.md +1 -1
  18. data/docs/_docs/ufo-env.md +5 -5
  19. data/docs/_docs/ufo-tasks-register.md +0 -4
  20. data/docs/_docs/variables.md +6 -7
  21. data/docs/_includes/content.html +5 -0
  22. data/docs/_includes/css/main.css +23 -4
  23. data/docs/_includes/css/ufo.css +9 -9
  24. data/docs/_includes/reference.md +5 -0
  25. data/docs/_includes/subnav.html +16 -33
  26. data/docs/_reference/ufo-completion.md +46 -0
  27. data/docs/_reference/ufo-completion_script.md +27 -0
  28. data/docs/_reference/ufo-deploy.md +51 -0
  29. data/docs/_reference/ufo-destroy.md +34 -0
  30. data/docs/{_docs → _reference}/ufo-docker-base.md +36 -17
  31. data/docs/_reference/ufo-docker-build.md +81 -0
  32. data/docs/_reference/ufo-docker-clean.md +44 -0
  33. data/docs/_reference/ufo-docker-help.md +15 -0
  34. data/docs/_reference/ufo-docker-name.md +37 -0
  35. data/docs/_reference/ufo-docker-push.md +49 -0
  36. data/docs/_reference/ufo-docker.md +35 -0
  37. data/docs/_reference/ufo-init.md +74 -0
  38. data/docs/_reference/ufo-scale.md +30 -0
  39. data/docs/_reference/ufo-ship.md +100 -0
  40. data/docs/_reference/ufo-ships.md +77 -0
  41. data/docs/_reference/ufo-task.md +37 -0
  42. data/docs/_reference/ufo-tasks-build.md +179 -0
  43. data/docs/_reference/ufo-tasks-help.md +15 -0
  44. data/docs/_reference/ufo-tasks-register.md +29 -0
  45. data/docs/_reference/ufo-tasks.md +35 -0
  46. data/docs/_reference/ufo-upgrade3.md +23 -0
  47. data/docs/_reference/ufo-version.md +23 -0
  48. data/docs/articles.md +2 -0
  49. data/docs/docs.md +3 -3
  50. data/docs/quick-start.md +2 -2
  51. data/docs/reference.md +18 -0
  52. data/lib/ufo/cli.rb +13 -13
  53. data/lib/ufo/docker.rb +5 -5
  54. data/lib/ufo/ecr/auth.rb +6 -1
  55. data/lib/ufo/ecr/cleaner.rb +1 -1
  56. data/lib/ufo/help/completion.md +1 -1
  57. data/lib/ufo/help/completions.md +1 -1
  58. data/lib/ufo/help/deploy.md +5 -1
  59. data/lib/ufo/help/destroy.md +7 -3
  60. data/lib/ufo/help/docker.md +1 -1
  61. data/lib/ufo/help/docker/base.md +34 -4
  62. data/lib/ufo/help/docker/build.md +59 -4
  63. data/lib/ufo/help/docker/clean.md +12 -6
  64. data/lib/ufo/help/docker/name.md +10 -10
  65. data/lib/ufo/help/docker/push.md +23 -6
  66. data/lib/ufo/help/hello.md +1 -1
  67. data/lib/ufo/help/init.md +43 -5
  68. data/lib/ufo/help/scale.md +4 -3
  69. data/lib/ufo/help/ship.md +59 -8
  70. data/lib/ufo/help/ships.md +35 -9
  71. data/lib/ufo/help/task.md +1 -1
  72. data/lib/ufo/help/tasks.md +1 -1
  73. data/lib/ufo/help/tasks/build.md +155 -4
  74. data/lib/ufo/help/tasks/register.md +12 -3
  75. data/lib/ufo/ship.rb +2 -4
  76. data/lib/ufo/tasks.rb +2 -2
  77. data/lib/ufo/version.rb +1 -1
  78. data/spec/lib/ship_spec.rb +2 -1
  79. data/ufo.gemspec +3 -3
  80. metadata +44 -21
  81. data/docs/_docs/commands.md +0 -10
  82. data/docs/_docs/ufo-deploy.md +0 -30
  83. data/docs/_docs/ufo-destroy.md +0 -19
  84. data/docs/_docs/ufo-docker-build.md +0 -79
  85. data/docs/_docs/ufo-docker-clean.md +0 -27
  86. data/docs/_docs/ufo-docker-name.md +0 -15
  87. data/docs/_docs/ufo-docker-push.md +0 -43
  88. data/docs/_docs/ufo-help.md +0 -22
  89. data/docs/_docs/ufo-init.md +0 -54
  90. data/docs/_docs/ufo-scale.md +0 -21
  91. data/docs/_docs/ufo-ship.md +0 -75
  92. data/docs/_docs/ufo-ships.md +0 -52
  93. data/docs/_docs/ufo-tasks-build.md +0 -166
  94. data/lib/ufo/completion.rb +0 -15
  95. data/lib/ufo/sub.rb +0 -12
@@ -0,0 +1,44 @@
1
+ ---
2
+ title: ufo docker clean
3
+ reference: true
4
+ ---
5
+
6
+ ## Usage
7
+
8
+ ufo docker clean IMAGE_NAME
9
+
10
+ ## Description
11
+
12
+ Clean up old images. Keeps a specified amount.
13
+
14
+ Ufo comes with a handy command to clean up old images that ufo generates. Ufo only deletes images from the docker daemon and does not remove any images from any registry. To use it you pass the base portion of the image name to the command.
15
+
16
+ Say you currently have these images:
17
+
18
+ tongueroo/hi:ufo-2016-10-15T19-29-06-88071f5
19
+ tongueroo/hi:ufo-2016-10-16T19-29-06-88071f5
20
+ tongueroo/hi:ufo-2016-10-17T19-29-06-88071f5
21
+ tongueroo/hi:ufo-2016-10-18T19-29-06-88071f5
22
+
23
+ To clean them up and keep the 3 more recent:
24
+
25
+ $ ufo docker clean tongueroo/hi
26
+ Cleaning up docker images...
27
+ Running: docker rmi tongueroo/hi:ufo-2016-10-15T19-29-06-88071f5
28
+
29
+ This will remove tongueroo/hi:ufo-2016-10-15T19-29-06-88071f5.
30
+
31
+ By default the clean command keeps the most 3 recent docker images. If you would like to override this setting you can use the `--keep` option. Example:
32
+
33
+ ufo docker clean tongueroo/hi --keep 5
34
+
35
+
36
+ ## Options
37
+
38
+ ```
39
+ [--keep=N]
40
+ # Default: 3
41
+ [--tag-prefix=TAG_PREFIX]
42
+ # Default: ufo
43
+ ```
44
+
@@ -0,0 +1,15 @@
1
+ ---
2
+ title: ufo docker help
3
+ reference: true
4
+ ---
5
+
6
+ ## Usage
7
+
8
+ ufo docker help [COMMAND]
9
+
10
+ ## Description
11
+
12
+ Describe subcommands or one specific subcommand
13
+
14
+
15
+
@@ -0,0 +1,37 @@
1
+ ---
2
+ title: ufo docker name
3
+ reference: true
4
+ ---
5
+
6
+ ## Usage
7
+
8
+ ufo docker name
9
+
10
+ ## Description
11
+
12
+ Display the full docker image with tag that was last generated.
13
+
14
+ It is sometimes handy to grab the name of the Docker image that was just generated. Let's say ou needed the image name so you can feed it into another script that you have. The command `ufo docker name` returns the image of the most recently built Docker image.
15
+
16
+ ## Examples
17
+
18
+ ufo docker build # stores the docker image name in the .ufo/data folder
19
+ ufo docker name # fetches image name from .ufo/data folder
20
+
21
+ An example image name would look something like this: `tongueroo/hi:ufo-2018-02-15T19-29-06-88071f5`
22
+
23
+ Note, the `.ufo/data` folder is an internal data folder and it's structure can change in future releases.
24
+
25
+ If you want to generate a brand new name for whatever purpose, you can use the `--generate` flag. The generate does not write to the `.ufo/data` folder. It only generates a fresh name to stdout. If you run it multiple times, it will generate new names. You can notice this by seeing that the timestamp will always update:
26
+
27
+ ufo docker name --generate # example: tongueroo/hi:ufo-2018-02-15T10-00-00-88071f5
28
+ ufo docker name --generate # example: tongueroo/hi:ufo-2018-02-15T10-00-08-88071f5
29
+ ufo docker name --generate # example: tongueroo/hi:ufo-2018-02-15T10-00-16-88071f5
30
+
31
+
32
+ ## Options
33
+
34
+ ```
35
+ [--generate], [--no-generate] # Generate a name without storing it
36
+ ```
37
+
@@ -0,0 +1,49 @@
1
+ ---
2
+ title: ufo docker push
3
+ reference: true
4
+ ---
5
+
6
+ ## Usage
7
+
8
+ ufo docker push IMAGE
9
+
10
+ ## Description
11
+
12
+ Push the docker image.
13
+
14
+
15
+ The `ufo docker push` command pushes the most recent Docker image built by `ufo docker build` to a registry. This command pushes a docker image up to the registry. By default it pushes the last image that was built with `ufo docker build`. To see what the image name is you can run `ufo docker name`. Example:
16
+
17
+ ufo docker build # to build the image
18
+ ufo docker name # to see the image name
19
+ ufo docker push # push up the registry
20
+
21
+ You'll see that `ufo docker push` simply shells out and calls `docker push`:
22
+
23
+ $ ufo docker push
24
+ => docker push 123456789.dkr.ecr.us-east-1.amazonaws.com/hi:ufo-2018-02-13T10-51-44-e0cc7be
25
+ The push refers to a repository [123456789.dkr.ecr.us-east-1.amazonaws.com/hi]
26
+ 399c739c257d: Layer already exists
27
+ ...
28
+ Pushed 123456789.dkr.ecr.us-east-1.amazonaws.com/hi:ufo-2018-02-13T10-51-44-e0cc7be docker image. Took 1s.
29
+ $
30
+
31
+ You can also push up a custom image by specifying the image name as the first parameter.
32
+
33
+ ufo docker push my/image:tag
34
+
35
+ You could also use the `--push` flag as part of the `ufo docker build` command to achieve the same thing as `ufo docker push`. The `ufo docker push` command might be more intutitive.
36
+
37
+ ufo docker build --push # same as above
38
+
39
+ ## Docker Authorization
40
+
41
+ Note in order to push the image to a registry you will need to login into the registry. If you are using DockerHub use the `docker login` command. If you are using AWS ECR then, ufo will automatically try to authorize you and configure your `~/.docker/config.json`. If can also use `aws ecr get-login` command.
42
+
43
+
44
+ ## Options
45
+
46
+ ```
47
+ [--push], [--no-push]
48
+ ```
49
+
@@ -0,0 +1,35 @@
1
+ ---
2
+ title: ufo docker
3
+ reference: true
4
+ ---
5
+
6
+ ## Usage
7
+
8
+ ufo docker SUBCOMMAND
9
+
10
+ ## Description
11
+
12
+ docker subcommands
13
+
14
+ ## Examples
15
+
16
+ ufo docker build
17
+ ufo docker tag
18
+
19
+ ## Subcommands
20
+
21
+ * [ufo docker base]({% link _reference/ufo-docker-base.md %}) - Build docker image from `Dockerfile.base` and update current `Dockerfile`.
22
+ * [ufo docker build]({% link _reference/ufo-docker-build.md %}) - Build docker image.
23
+ * [ufo docker clean]({% link _reference/ufo-docker-clean.md %}) - Clean up old images. Keeps a specified amount.
24
+ * [ufo docker name]({% link _reference/ufo-docker-name.md %}) - Display the full docker image with tag that was last generated.
25
+ * [ufo docker push]({% link _reference/ufo-docker-push.md %}) - Push the docker image.
26
+
27
+ ## Options
28
+
29
+ ```
30
+ [--verbose], [--no-verbose]
31
+ [--mute], [--no-mute]
32
+ [--noop], [--no-noop]
33
+ [--cluster=CLUSTER] # Cluster. Overrides ufo/settings.yml.
34
+ ```
35
+
@@ -0,0 +1,74 @@
1
+ ---
2
+ title: ufo init
3
+ reference: true
4
+ ---
5
+
6
+ ## Usage
7
+
8
+ ufo new --app=APP --image=IMAGE
9
+
10
+ ## Description
11
+
12
+ Set up initial ufo files.
13
+
14
+ The `ufo init` command provides a way to quickly setup a project to be ufo ready. It creates a ufo folder with all the starter supporting files in order to use ufo. This page demonstrates how to use `ufo init`. The command requires these options: `--app` and `--image`.
15
+
16
+ ## Examples
17
+
18
+ For this example we will use [tongueroo/hi](https://github.com/tongueroo/hi) which is a small test sinatra app. Let's run the command in our newly clone project.
19
+
20
+ $ git clone https://github.com/tongueroo/hi.git
21
+ $ cd hi
22
+ $ ufo init --app=hi --image=tongueroo/hi
23
+ Setting up ufo project...
24
+ create .ufo/settings.yml
25
+ create .ufo/task_definitions.rb
26
+ create .ufo/templates/main.json.erb
27
+ create .ufo/variables/base.rb
28
+ create .ufo/variables/development.rb
29
+ create .ufo/variables/production.rb
30
+ create Dockerfile
31
+ create bin/deploy
32
+ append .gitignore
33
+ Starter ufo files created.
34
+
35
+ ## Options: app and image
36
+
37
+ The `app` is that application name that you want to show up on the ECS dashboard. It is encouraged to have the app name be a single word.
38
+
39
+ The `image` is the base portion of image name that will be pushed to the docker registry, ie: DockerHub or AWS ECR. The image should **not** include the tag since the tag is generated upon a `ufo ship`. For example:
40
+
41
+ tongueroo/hi => tongueroo/hi:ufo-2018-02-08T21-04-02-3c86158
42
+
43
+ The generated `tongueroo/hi:ufo-2018-02-08T21-04-02-3c86158` image name gets pushed to the docker registry.
44
+
45
+ ## Directory Structure
46
+
47
+ The standard directory structure of the `.ufo` folder that was created looks like this:
48
+
49
+ ufo
50
+ ├── output
51
+ ├── settings.yml
52
+ ├── task_definitions.rb
53
+ ├── templates
54
+ ├ └── main.json.erb
55
+ └── variables
56
+ ├── base.rb
57
+ ├── production.rb
58
+ └── development.rb
59
+
60
+ For a explanation of the folders and files refer to [Structure]({% link _docs/structure.md %}).
61
+
62
+
63
+ ## Options
64
+
65
+ ```
66
+ [--force] # Bypass overwrite are you sure prompt for existing files.
67
+ --image=IMAGE # Docker image name without the tag. Example: tongueroo/hi. Configures ufo/settings.yml
68
+ --app=APP # App name. Preferably one word. Used in the generated ufo/task_definitions.rb.
69
+ [--verbose], [--no-verbose]
70
+ [--mute], [--no-mute]
71
+ [--noop], [--no-noop]
72
+ [--cluster=CLUSTER] # Cluster. Overrides ufo/settings.yml.
73
+ ```
74
+
@@ -0,0 +1,30 @@
1
+ ---
2
+ title: ufo scale
3
+ reference: true
4
+ ---
5
+
6
+ ## Usage
7
+
8
+ ufo scale SERVICE COUNT
9
+
10
+ ## Description
11
+
12
+ Scale the ECS service.
13
+
14
+ Ufo provides a command to scale up and down an ECS service quickly. It is a simple wrapper for `aws ecs update-service --service xxx ----desired-count xxx`. Here's an example of how you use it:
15
+
16
+ $ ufo scale hi-web 3
17
+ Scale hi-web service in stag cluster to 3
18
+
19
+ While scaling via this method is quick and convenient the [ECS Service AutoScaling](http://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-auto-scaling.html) that is built into ECS is a much more powerful way to manage scaling your ECS service.
20
+
21
+
22
+ ## Options
23
+
24
+ ```
25
+ [--verbose], [--no-verbose]
26
+ [--mute], [--no-mute]
27
+ [--noop], [--no-noop]
28
+ [--cluster=CLUSTER] # Cluster. Overrides ufo/settings.yml.
29
+ ```
30
+
@@ -0,0 +1,100 @@
1
+ ---
2
+ title: ufo ship
3
+ reference: true
4
+ ---
5
+
6
+ ## Usage
7
+
8
+ ufo ship SERVICE
9
+
10
+ ## Description
11
+
12
+ Builds and ships container image to the ECS service.
13
+
14
+ The main command you use when using ufo is: `ufo ship`. This command:
15
+
16
+ 1. builds the docker image
17
+ 2. registers the generated ECS task definition
18
+ 3. deploys the definition to AWS ECS
19
+
20
+ Basic usage is:
21
+
22
+ ufo ship hi-web
23
+
24
+ The ECS service gets created if the service does not yet exist on the cluster.
25
+
26
+ ### Conventions
27
+
28
+ By convention the task and service names match. If you need override to this convention then you can specific the task. For example if you want to ship to the `hi-web-1` service and use the `hi-web` task, run:
29
+
30
+ ufo ship hi-web-1 --task hi-web
31
+
32
+ ## Options in Detail
33
+
34
+ The command has a decent amount of options, you can see the options available with `ufo ship -h`. The table below covers some of the options in detail:
35
+
36
+ {% include ufo-ship-options.md %}
37
+
38
+ As you can see there are plenty of options for `ufo ship`. Let's demonstrate usage of them in a few examples.
39
+
40
+ ### Load Balancer Target Group
41
+
42
+ When you are deploying to a service with the word 'web' in it, ufo assumes that this is a web service that uses a load balancer in front of it. This is also covered a in the [Conventions]({% link _docs/conventions.md %}) page. The deploy will prompt you for the ELB `--target-group` if the ECS does not yet exist. For non-web container the `--target-group` option gets ignored. The prommpt can be bypassed by specifying a valid `--target-group` option or specifying the `---no-target-group-prompt` option.
43
+
44
+ ufo ship hi-web --no-target-group-prompt
45
+
46
+ Or if you would like to specify the target-group upfront and not be bother with the prompted later you can use the `--target-group` option.
47
+
48
+ ufo ship hi-web --target-group=arn:aws:elasticloadbalancing:us-east-1:12345689:targetgroup/hi-web/12345
49
+
50
+ ### Deploying Task Definition without Docker Build
51
+
52
+ Let's you want skip the docker build phase and only want use ufo to deploy a task definition. You can do this with the `ufo deploy` command. Refer to [ufo deploy](http://ufoships.com/reference/ufo-deploy/) for more info.
53
+
54
+ ### Waiting for Deployments to Complete
55
+
56
+ By default when ufo updates the ECS service with the new task definition it does so asynchronuously. You then normally visit the ECS service console and then refresh until you see that the deployment is completed. You can also have ufo poll and wait for the deployment to be done with the `--wait` option
57
+
58
+ ufo ship hi-web --wait
59
+
60
+ You should see output similar to this:
61
+
62
+ Shipping hi-web...
63
+ hi-web service updated on cluster with task hi-web
64
+ Waiting for deployment of task definition hi-web:8 to complete
65
+ ......
66
+ Time waiting for ECS deployment: 31s.
67
+ Software shipped!
68
+
69
+ ### Cleaning up Docker Images Automatically
70
+
71
+ Since ufo builds the Docker image every time there's a deployment you will end up with a long list of docker images. Ufo automatically cleans up older docker images at the end of the deploy process if you are using AWS ECR. By default ufo keeps the most recent 30 Docker images. This can be adjust with the `--ecr-keep` option.
72
+
73
+ docker ship hi-web --ecr-keep 2
74
+
75
+ You should see something like this:
76
+
77
+ Cleaning up docker images...
78
+ Running: docker rmi tongueroo/hi:ufo-2017-06-12T06-46-12-a18aa30
79
+
80
+ If you are using DockerHub or another registry, ufo does not automatically clean up images.
81
+
82
+
83
+ ## Options
84
+
85
+ ```
86
+ [--task=TASK] # ECS task name, to override the task name convention.
87
+ [--target-group=TARGET_GROUP] # ELB Target Group ARN.
88
+ [--target-group-prompt], [--no-target-group-prompt] # Enable Target Group ARN prompt
89
+ # Default: true
90
+ [--wait], [--no-wait] # Wait for deployment to complete
91
+ [--pretty], [--no-pretty] # Pretty format the json for the task definitions
92
+ # Default: true
93
+ [--stop-old-tasks], [--no-stop-old-tasks] # Stop old tasks after waiting for deploying to complete
94
+ [--ecr-keep=N] # ECR specific cleanup of old images. Specifies how many images to keep. Only runs if the images are ECR images. Defaults keeps all images.
95
+ [--verbose], [--no-verbose]
96
+ [--mute], [--no-mute]
97
+ [--noop], [--no-noop]
98
+ [--cluster=CLUSTER] # Cluster. Overrides ufo/settings.yml.
99
+ ```
100
+
@@ -0,0 +1,77 @@
1
+ ---
2
+ title: ufo ships
3
+ reference: true
4
+ ---
5
+
6
+ ## Usage
7
+
8
+ ufo ships [LIST_OF_SERVICES]
9
+
10
+ ## Description
11
+
12
+ Builds and ships same container image to multiple ECS services.
13
+
14
+ The `ufo ships` command allows you to deploy the *same* Docker image and task definition to multiple ECS services. It is a common pattern to have the same code base running on different roles. For example, say you have an application with 3 roles:
15
+
16
+ 1. web - serves web requests.
17
+ 2. worker - processes background jobs.
18
+ 3. clock - schedules background jobs.
19
+
20
+ Instead of using the [ufo ship]({% link _reference/ufo-ship.md %}) and build and deploying the code 3 times you can instead use `ufo ships`. This will result in the *same* Docker image and *same* task definition being deployed to all 3 services. Example usage:
21
+
22
+ ufo ships hi-web hi-worker hi-clock
23
+
24
+ ## Shell expansion
25
+
26
+ Since the ECS service names are provided as a list you can shorten the command by using bash shell expansion 😁
27
+
28
+ ufo ships hi-{web,worker,clock}
29
+
30
+ If you're new to shell expansion, run this to understand why above works just as well:
31
+
32
+ $ echo hi-{web,worker,clock}
33
+ hi-web hi-worker hi-clock
34
+
35
+ ## Overriding convention
36
+
37
+ As explained in detail in [Conventions]({% link _docs/conventions.md %}) the task definition and service name are the same by convention. This convention also applies for each of the services being shipped in the list. The task definition and service names match for each of the services in the list. If you would like to override the convention as part of the ships command then you use a special syntax. In the special syntax the service and task definition is separated by a colon. Examples:
38
+
39
+ ufo ships hi-web-1:hi-web hi-clock-1 hi-worker-1
40
+ ufo ships hi-web-1:my-task hi-clock-1:another-task hi-worker-1:third-task
41
+
42
+ ## ufo ships Options
43
+
44
+ The `ufo ships`, `ufo ship`, `ufo deploy` command support the same options. The options are presented here again for convenience:
45
+
46
+ {% include ufo-ship-options.md %}
47
+
48
+ Note: The `--task` option is not used with the `ufo ships` command.
49
+
50
+ ## ELB Target Group
51
+
52
+ For each service being deployed to, ufo will create the ECS service if the service does not yet exist on the cluster. The deploy process will prompt you for the ELB `--target-group` if you are deploying to a 'web' service that does not yet exist. Ufo determines that it is a web service by the name of the service. If the service has 'web' in the name then it is considered a web service. If it is not a web service then the `--target-group` option gets ignored.
53
+
54
+ The prommt can be bypassed by specifying a valid `--target-group` option or specifying the `---no-target-group-prompt` option. ## Examples
55
+
56
+ ufo ships hi-web hi-clock hi-worker --target-group arn:aws:elasticloadbalancing:us-east-1:123456789:targetgroup/hi-web/jsdlfjsdkd
57
+ ufo ships hi-web hi-clock hi-worker --no-target-group-prompt
58
+
59
+
60
+ ## Options
61
+
62
+ ```
63
+ [--task=TASK] # ECS task name, to override the task name convention.
64
+ [--target-group=TARGET_GROUP] # ELB Target Group ARN.
65
+ [--target-group-prompt], [--no-target-group-prompt] # Enable Target Group ARN prompt
66
+ # Default: true
67
+ [--wait], [--no-wait] # Wait for deployment to complete
68
+ [--pretty], [--no-pretty] # Pretty format the json for the task definitions
69
+ # Default: true
70
+ [--stop-old-tasks], [--no-stop-old-tasks] # Stop old tasks after waiting for deploying to complete
71
+ [--ecr-keep=N] # ECR specific cleanup of old images. Specifies how many images to keep. Only runs if the images are ECR images. Defaults keeps all images.
72
+ [--verbose], [--no-verbose]
73
+ [--mute], [--no-mute]
74
+ [--noop], [--no-noop]
75
+ [--cluster=CLUSTER] # Cluster. Overrides ufo/settings.yml.
76
+ ```
77
+