ufo 4.1.2 → 4.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.circleci/bin/commit_docs.sh +0 -0
- data/CHANGELOG.md +6 -0
- data/Gemfile.lock +21 -21
- data/README.md +8 -6
- data/docs/_includes/footer.html +2 -1
- data/docs/_includes/header.html +2 -2
- data/docs/_reference/ufo-deploy.md +15 -2
- data/docs/_reference/ufo-ship.md +3 -0
- data/docs/articles.md +7 -2
- data/docs/img/logos/ufo-logo-2.png +0 -0
- data/docs/quick-start.md +3 -3
- data/lib/ufo/cli.rb +1 -1
- data/lib/ufo/dsl/helper.rb +1 -1
- data/lib/ufo/help/deploy.md +3 -0
- data/lib/ufo/help/ship.md +3 -0
- data/lib/ufo/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 93c6b17c7c0722a44185ef2449241c9ad716838317d2cc64d4d328a027221721
|
|
4
|
+
data.tar.gz: 730ca94c0a44a9648fb9e10de9197c9f4c7e8f58bcca58ce0391876d6f3d5bd7
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 688ae4a1750d046d6e53251ba3867d35bcdf4b2d292e4c7d2744d25ba690ed58be19a92f822bfc1ba002735d7bbb90e7f6d0aae1f08e610932df7f8e83c1f5e3
|
|
7
|
+
data.tar.gz: 0f26fec4175b0788c606f4933f7b8ed5c243b45a8cb4a1f4efe9c7bc821b34b343b8222f8e1b333e22c92130750c44fd14c5634e89db23c6366a824ba969ff95
|
|
File without changes
|
data/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
This project *tries* to adhere to [Semantic Versioning](http://semver.org/), even before v1.0.
|
|
5
5
|
|
|
6
|
+
## [4.1.4]
|
|
7
|
+
- improve regexp for striping trailing comments in env files, fixes #47
|
|
8
|
+
|
|
9
|
+
## [4.1.3]
|
|
10
|
+
- build the task definition by default for ufo deploy
|
|
11
|
+
|
|
6
12
|
## [4.1.2]
|
|
7
13
|
- add --build option for ufo deploy
|
|
8
14
|
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
ufo (4.1.
|
|
4
|
+
ufo (4.1.3)
|
|
5
5
|
aws-sdk-cloudformation
|
|
6
6
|
aws-sdk-cloudwatchlogs
|
|
7
7
|
aws-sdk-ec2
|
|
@@ -19,34 +19,34 @@ PATH
|
|
|
19
19
|
GEM
|
|
20
20
|
remote: https://rubygems.org/
|
|
21
21
|
specs:
|
|
22
|
-
activesupport (5.2.
|
|
22
|
+
activesupport (5.2.1)
|
|
23
23
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
24
24
|
i18n (>= 0.7, < 2)
|
|
25
25
|
minitest (~> 5.1)
|
|
26
26
|
tzinfo (~> 1.1)
|
|
27
27
|
aws-eventstream (1.0.1)
|
|
28
|
-
aws-partitions (1.
|
|
28
|
+
aws-partitions (1.100.0)
|
|
29
29
|
aws-sdk-cloudformation (1.6.0)
|
|
30
30
|
aws-sdk-core (~> 3)
|
|
31
31
|
aws-sigv4 (~> 1.0)
|
|
32
|
-
aws-sdk-cloudwatchlogs (1.
|
|
32
|
+
aws-sdk-cloudwatchlogs (1.5.0)
|
|
33
33
|
aws-sdk-core (~> 3)
|
|
34
34
|
aws-sigv4 (~> 1.0)
|
|
35
|
-
aws-sdk-core (3.
|
|
35
|
+
aws-sdk-core (3.24.1)
|
|
36
36
|
aws-eventstream (~> 1.0)
|
|
37
37
|
aws-partitions (~> 1.0)
|
|
38
38
|
aws-sigv4 (~> 1.0)
|
|
39
39
|
jmespath (~> 1.0)
|
|
40
|
-
aws-sdk-ec2 (1.
|
|
40
|
+
aws-sdk-ec2 (1.42.0)
|
|
41
41
|
aws-sdk-core (~> 3)
|
|
42
42
|
aws-sigv4 (~> 1.0)
|
|
43
43
|
aws-sdk-ecr (1.4.0)
|
|
44
44
|
aws-sdk-core (~> 3)
|
|
45
45
|
aws-sigv4 (~> 1.0)
|
|
46
|
-
aws-sdk-ecs (1.
|
|
46
|
+
aws-sdk-ecs (1.17.0)
|
|
47
47
|
aws-sdk-core (~> 3)
|
|
48
48
|
aws-sigv4 (~> 1.0)
|
|
49
|
-
aws-sdk-elasticloadbalancingv2 (1.
|
|
49
|
+
aws-sdk-elasticloadbalancingv2 (1.12.0)
|
|
50
50
|
aws-sdk-core (~> 3)
|
|
51
51
|
aws-sigv4 (~> 1.0)
|
|
52
52
|
aws-sigv4 (1.0.3)
|
|
@@ -59,7 +59,7 @@ GEM
|
|
|
59
59
|
deep_merge (1.2.1)
|
|
60
60
|
diff-lcs (1.3)
|
|
61
61
|
docile (1.1.5)
|
|
62
|
-
i18n (1.0
|
|
62
|
+
i18n (1.1.0)
|
|
63
63
|
concurrent-ruby (~> 1.0)
|
|
64
64
|
jmespath (1.4.0)
|
|
65
65
|
json (2.1.0)
|
|
@@ -71,19 +71,19 @@ GEM
|
|
|
71
71
|
activesupport
|
|
72
72
|
colorize
|
|
73
73
|
tilt
|
|
74
|
-
rspec (3.
|
|
75
|
-
rspec-core (~> 3.
|
|
76
|
-
rspec-expectations (~> 3.
|
|
77
|
-
rspec-mocks (~> 3.
|
|
78
|
-
rspec-core (3.
|
|
79
|
-
rspec-support (~> 3.
|
|
80
|
-
rspec-expectations (3.
|
|
74
|
+
rspec (3.8.0)
|
|
75
|
+
rspec-core (~> 3.8.0)
|
|
76
|
+
rspec-expectations (~> 3.8.0)
|
|
77
|
+
rspec-mocks (~> 3.8.0)
|
|
78
|
+
rspec-core (3.8.0)
|
|
79
|
+
rspec-support (~> 3.8.0)
|
|
80
|
+
rspec-expectations (3.8.1)
|
|
81
81
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
82
|
-
rspec-support (~> 3.
|
|
83
|
-
rspec-mocks (3.
|
|
82
|
+
rspec-support (~> 3.8.0)
|
|
83
|
+
rspec-mocks (3.8.0)
|
|
84
84
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
85
|
-
rspec-support (~> 3.
|
|
86
|
-
rspec-support (3.
|
|
85
|
+
rspec-support (~> 3.8.0)
|
|
86
|
+
rspec-support (3.8.0)
|
|
87
87
|
simplecov (0.13.0)
|
|
88
88
|
docile (~> 1.1.0)
|
|
89
89
|
json (>= 1.8, < 3)
|
|
@@ -109,4 +109,4 @@ DEPENDENCIES
|
|
|
109
109
|
ufo!
|
|
110
110
|
|
|
111
111
|
BUNDLED WITH
|
|
112
|
-
1.16.
|
|
112
|
+
1.16.3
|
data/README.md
CHANGED
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
<img src="http://ufoships.com/img/logos/ufo-logo.png" />
|
|
3
3
|
</div>
|
|
4
4
|
|
|
5
|
-
#
|
|
5
|
+
# UFO - ECS Deployment Tool
|
|
6
6
|
|
|
7
7
|
[](https://circleci.com/gh/tongueroo/ufo)
|
|
8
8
|
[](https://gitter.im/tongueroo/ufo?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
9
9
|
[](https://boltops.com?utm_source=badge&utm_medium=badge&utm_campaign=ufo)
|
|
10
10
|
|
|
11
|
-
Ufo is a tool that
|
|
11
|
+
Ufo is a tool that builds Docker images and deploys them to [AWS ECS](https://aws.amazon.com/ecs/). The main command is `ufo ship`. Here's summary of what it does:
|
|
12
12
|
|
|
13
13
|
1. Builds a docker image.
|
|
14
14
|
2. Generates and registers the ECS template definition.
|
|
@@ -35,7 +35,7 @@ To quickly demonstrate how simple it is to use ufo we will use an example app fr
|
|
|
35
35
|
gem install ufo
|
|
36
36
|
git clone https:///github.com/tongueroo/demo-ufo.git demo
|
|
37
37
|
cd demo
|
|
38
|
-
ufo init --
|
|
38
|
+
ufo init --image=tongueroo/demo-ufo
|
|
39
39
|
ufo ship demo-web
|
|
40
40
|
|
|
41
41
|
Congratulations, you have successfully used ufo to deploy to an ECS service.
|
|
@@ -46,9 +46,11 @@ Ufo can also create a load balancer as part of creating the ECS service if you w
|
|
|
46
46
|
|
|
47
47
|
## Articles
|
|
48
48
|
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
|
|
49
|
+
* [UFO How to Create Unlimited Extra Environments](https://blog.boltops.com/2018/07/12/ufo-how-to-create-unlimited-extra-environments)
|
|
50
|
+
* [UFO and ECS Fargate Introduction Tutorial](https://blog.boltops.com/2018/07/11/ufo-and-ecs-fargate-introduction-tutorial)
|
|
51
|
+
* [UFO ECS Deployment Tool Introduction](https://blog.boltops.com/2018/07/06/ufo-ecs-deployment-tool-introduction)
|
|
52
|
+
* [UFO Version 4 Release: Load Balancer Support](https://blog.boltops.com/2018/07/05/ufo-version-4-release)
|
|
53
|
+
* [UFO Ship on AWS ECS Presentation](http://www.slideshare.net/tongueroo/ufo-ship-for-aws-ecs-70885296)
|
|
52
54
|
|
|
53
55
|
## Contributing
|
|
54
56
|
|
data/docs/_includes/footer.html
CHANGED
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
<div class="footer-col col-md-4">
|
|
7
7
|
<h3>More Tools</h3>
|
|
8
8
|
<ul class="list-unstyled tools">
|
|
9
|
-
<li><a href="http://
|
|
9
|
+
<li><a href="http://rubyonjets.com">Jets</a></li>
|
|
10
10
|
<li><a href="http://lono.cloud">Lono</a></li>
|
|
11
|
+
<li><a href="http://sonic-screwdriver.cloud">Sonic</a></li>
|
|
11
12
|
<li><a href="http://jack-eb.com">Jack</a></li>
|
|
12
13
|
<li><a href="https://boltops.com/toolbelt">Toolbelt</a></li>
|
|
13
14
|
</ul>
|
data/docs/_includes/header.html
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<!-- Header -->
|
|
2
|
-
<header>
|
|
2
|
+
<header style="background-color: #12153e">
|
|
3
3
|
<div class="container">
|
|
4
4
|
<div class="row">
|
|
5
5
|
<div class="col-lg-12">
|
|
6
|
-
<img class="img-responsive" src="/img/logos/ufo-logo.png" alt="">
|
|
6
|
+
<img class="img-responsive" src="/img/logos/ufo-logo-2.png" alt="">
|
|
7
7
|
<div class="intro-text">
|
|
8
8
|
<span class="name">UFO</span>
|
|
9
9
|
<hr class="star-light">
|
|
@@ -20,13 +20,13 @@ The above command does the following:
|
|
|
20
20
|
1. register the `.ufo/output/demo-web.json` task definition to ECS untouched.
|
|
21
21
|
2. deploys it to ECS by updating the service
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
## ufo tasks build
|
|
24
24
|
|
|
25
25
|
To regenerate a `.ufo/output/demo-web.json` definition:
|
|
26
26
|
|
|
27
27
|
ufo tasks build
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
## ufo ship
|
|
30
30
|
|
|
31
31
|
The `ufo deploy` command does less than the `ufo ship` command. Normally, it is recommended to use `ufo ship` over the `ufo deploy` command to do everything in one step:
|
|
32
32
|
|
|
@@ -38,6 +38,18 @@ The `ufo ships`, `ufo ship`, `ufo deploy` command support the same options. The
|
|
|
38
38
|
|
|
39
39
|
{% include ufo-ship-options.md %}
|
|
40
40
|
|
|
41
|
+
## Creating mutiple environments in parallel
|
|
42
|
+
|
|
43
|
+
If you would like to create multiple enviroments quickly in parallel, the `--no-wait` and `--build` option can help speed up the process. Example:
|
|
44
|
+
|
|
45
|
+
ufo ship # at least once
|
|
46
|
+
for i in {1..3}; do
|
|
47
|
+
UFO_ENV_EXTRA=$i ufo deploy --no-wait --build
|
|
48
|
+
done
|
|
49
|
+
|
|
50
|
+
A more detailed post is available here: [How to Create Unlimited Extra Environments
|
|
51
|
+
](https://blog.boltops.com/2018/07/12/ufo-how-to-create-unlimited-extra-environments).
|
|
52
|
+
|
|
41
53
|
|
|
42
54
|
## Options
|
|
43
55
|
|
|
@@ -55,6 +67,7 @@ The `ufo ships`, `ufo ship`, `ufo deploy` command support the same options. The
|
|
|
55
67
|
[--register], [--no-register] # Register task definition
|
|
56
68
|
# Default: true
|
|
57
69
|
[--build], [--no-build] # Build task definition
|
|
70
|
+
# Default: true
|
|
58
71
|
[--verbose], [--no-verbose]
|
|
59
72
|
[--mute], [--no-mute]
|
|
60
73
|
[--noop], [--no-noop]
|
data/docs/_reference/ufo-ship.md
CHANGED
|
@@ -73,6 +73,9 @@ By default when ufo updates the ECS service with the new task definition it does
|
|
|
73
73
|
|
|
74
74
|
ufo ship demo-web --no-wait
|
|
75
75
|
|
|
76
|
+
The `--no-wait` option is useful for creating multiple environments:: [How to Create Unlimited Extra Environments
|
|
77
|
+
](https://blog.boltops.com/2018/07/12/ufo-how-to-create-unlimited-extra-environments).
|
|
78
|
+
|
|
76
79
|
### Route 53 DNS Support
|
|
77
80
|
|
|
78
81
|
Ufo can automatically create a "pretty" route53 record an set it to the created ELB dns name. This is done in by configuring the `.ufo/settings/network/[profile].yml` file. Example:
|
data/docs/articles.md
CHANGED
|
@@ -2,8 +2,13 @@
|
|
|
2
2
|
title: Articles
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
*
|
|
6
|
-
|
|
5
|
+
* [How to Create Unlimited Extra Environments
|
|
6
|
+
](https://blog.boltops.com/2018/07/12/ufo-how-to-create-unlimited-extra-environments)
|
|
7
|
+
* [UFO and ECS Fargate Introduction Tutorial](https://blog.boltops.com/2018/07/11/ufo-and-ecs-fargate-introduction-tutorial)
|
|
8
|
+
* [UFO ECS Deployment Tool Introduction](https://blog.boltops.com/2018/07/06/ufo-ecs-deployment-tool-introduction)
|
|
9
|
+
* [UFO Version 4 Release: Load Balancer Support](https://blog.boltops.com/2018/07/05/ufo-version-4-release)
|
|
10
|
+
* [Heroku vs ECS Fargate vs EC2 On-Demand vs EC2 Spot Pricing Comparison](https://blog.boltops.com/2018/04/22/heroku-vs-ecs-fargate-vs-ec2-on-demand-vs-ec2-spot-pricing-comparison)
|
|
11
|
+
* [Ufo Ship on AWS ECS Presentation](http://www.slideshare.net/tongueroo/ufo-ship-for-aws-ecs-70885296)
|
|
7
12
|
|
|
8
13
|
<a id="prev" class="btn btn-basic" href="{% link _docs/auto-completion.md %}">Back</a>
|
|
9
14
|
<a id="next" class="btn btn-primary" href="{% link _docs/next-steps.md %}">Next Step</a>
|
|
Binary file
|
data/docs/quick-start.md
CHANGED
|
@@ -6,9 +6,9 @@ In a hurry? No sweat! Here's a quick start to using ufo that takes only a few mi
|
|
|
6
6
|
|
|
7
7
|
```sh
|
|
8
8
|
gem install ufo
|
|
9
|
-
git clone https://github.com/tongueroo/demo-ufo.git
|
|
10
|
-
cd demo
|
|
11
|
-
ufo init --
|
|
9
|
+
git clone https://github.com/tongueroo/demo-ufo.git demo
|
|
10
|
+
cd demo
|
|
11
|
+
ufo init --image=tongueroo/demo-ufo
|
|
12
12
|
ufo current --service demo-web
|
|
13
13
|
ufo ship
|
|
14
14
|
ufo ps
|
data/lib/ufo/cli.rb
CHANGED
|
@@ -47,7 +47,7 @@ module Ufo
|
|
|
47
47
|
long_desc Help.text(:deploy)
|
|
48
48
|
ship_options.call
|
|
49
49
|
option :register, type: :boolean, desc: "Register task definition", default: true
|
|
50
|
-
option :build, type: :boolean, desc: "Build task definition", default:
|
|
50
|
+
option :build, type: :boolean, desc: "Build task definition", default: true
|
|
51
51
|
def deploy(service=:current)
|
|
52
52
|
service = service == :current ? Current.service! : service
|
|
53
53
|
task_definition = options[:task] || service # convention
|
data/lib/ufo/dsl/helper.rb
CHANGED
|
@@ -41,7 +41,7 @@ module Ufo
|
|
|
41
41
|
def filtered_lines(text)
|
|
42
42
|
lines = text.split("\n")
|
|
43
43
|
# remove comment at the end of the line
|
|
44
|
-
lines.map! { |l| l.sub(
|
|
44
|
+
lines.map! { |l| l.sub(/\s+#.*/,'').strip }
|
|
45
45
|
# filter out commented lines
|
|
46
46
|
lines = lines.reject { |l| l =~ /(^|\s)#/i }
|
|
47
47
|
# filter out empty lines
|
data/lib/ufo/help/deploy.md
CHANGED
|
@@ -33,3 +33,6 @@ If you would like to create multiple enviroments quickly in parallel, the `--no-
|
|
|
33
33
|
for i in {1..3}; do
|
|
34
34
|
UFO_ENV_EXTRA=$i ufo deploy --no-wait --build
|
|
35
35
|
done
|
|
36
|
+
|
|
37
|
+
A more detailed post is available here: [How to Create Unlimited Extra Environments
|
|
38
|
+
](https://blog.boltops.com/2018/07/12/ufo-how-to-create-unlimited-extra-environments).
|
data/lib/ufo/help/ship.md
CHANGED
|
@@ -60,6 +60,9 @@ By default when ufo updates the ECS service with the new task definition it does
|
|
|
60
60
|
|
|
61
61
|
ufo ship demo-web --no-wait
|
|
62
62
|
|
|
63
|
+
The `--no-wait` option is useful for creating multiple environments:: [How to Create Unlimited Extra Environments
|
|
64
|
+
](https://blog.boltops.com/2018/07/12/ufo-how-to-create-unlimited-extra-environments).
|
|
65
|
+
|
|
63
66
|
### Route 53 DNS Support
|
|
64
67
|
|
|
65
68
|
Ufo can automatically create a "pretty" route53 record an set it to the created ELB dns name. This is done in by configuring the `.ufo/settings/network/[profile].yml` file. Example:
|
data/lib/ufo/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ufo
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.1.
|
|
4
|
+
version: 4.1.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Tung Nguyen
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2018-
|
|
11
|
+
date: 2018-08-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: aws-sdk-cloudformation
|
|
@@ -408,6 +408,7 @@ files:
|
|
|
408
408
|
- docs/img/docs/cloudformation-resources.png
|
|
409
409
|
- docs/img/logos/boltops-logo-full.png
|
|
410
410
|
- docs/img/logos/boltops-logo.png
|
|
411
|
+
- docs/img/logos/ufo-logo-2.png
|
|
411
412
|
- docs/img/logos/ufo-logo.png
|
|
412
413
|
- docs/img/logos/ufo-site-header.png
|
|
413
414
|
- docs/img/logos/ufo.jpg
|