centurion 1.0.8 → 1.0.9
Sign up to get free protection for your applications and to get access to all the features.
- data/CONTRIBUTORS.md +41 -21
- data/Gemfile +0 -1
- data/LICENSE +1 -1
- data/README.md +10 -8
- data/bin/centurionize +13 -11
- data/lib/centurion/version.rb +1 -1
- data/lib/tasks/deploy.rake +1 -1
- metadata +2 -2
data/CONTRIBUTORS.md
CHANGED
@@ -19,24 +19,44 @@ time of public release, here's how the contributors list looked:
|
|
19
19
|
* 0 releases
|
20
20
|
* 19 contributors
|
21
21
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
22
|
+
Contributor | Commits | Additions | Deletions
|
23
|
+
----------------------------------------------|------------|-----------|----------
|
24
|
+
[Karl Matthias][relistan] | 97 commits | 3,870 ++ | 3,658 --
|
25
|
+
[Nic Benders][benders] | 36 commits | 1,481 ++ | 971 --
|
26
|
+
[Bryan Stearns][bryanstearns] | 15 commits | 355 ++ | 236 --
|
27
|
+
[Andrew Bloomgarden][aughr] | 47 commits | 326 ++ | 55 --
|
28
|
+
[Jesse Dearing][jessedearing] | 31 commits | 300 ++ | 152 --
|
29
|
+
[Jon Guymon][gnarg] | 17 commits | 242 ++ | 26 --
|
30
|
+
[David Kerr][kerr23] | 7 commits | 212 ++ | 6 --
|
31
|
+
[Aaron Bento][rkive] | 2 commits | 111 ++ | 23 --
|
32
|
+
[Bill Kayser][bkayser] | 7 commits | 106 ++ | 74 --
|
33
|
+
[Joe Lepper][joeLepper] | 7 commits | 96 ++ | 46 --
|
34
|
+
[Didip Kerabat][didip] | 5 commits | 93 ++ | 18 --
|
35
|
+
[David Celis][davidcelis] | 4 commits | 66 ++ | 12 --
|
36
|
+
[Jonathan Thurman][jthurman42] | 2 commits | 40 ++ | 6 --
|
37
|
+
[Amjith Ramanujam][amjith] | 7 commits | 38 ++ | 22 --
|
38
|
+
[Brett Holt][holtbp] | 1 commit | 26 ++ | 0 --
|
39
|
+
[Merlyn Albery-Speyer][curious-attempt-bunny] | 2 commits | 15 ++ | 2 --
|
40
|
+
[Jonathan Owens][intjonathan] | 1 commit | 13 ++ | 10 --
|
41
|
+
[Emily Hyland][duien] | 5 commits | 6 ++ | 2 --
|
42
|
+
[Franky Wahl][frankywahl] | 1 commit | 2 ++ | 0 --
|
43
|
+
|
44
|
+
[relistan]: https://github.com/relistan
|
45
|
+
[benders]: https://github.com/benders
|
46
|
+
[bryanstearns]: https://github.com/bryanstearns
|
47
|
+
[aughr]: https://github.com/aughr
|
48
|
+
[jessedearing]: https://github.com/jessedearing
|
49
|
+
[gnarg]: https://github.com/gnarg
|
50
|
+
[kerr23]: https://github.com/kerr23
|
51
|
+
[rkive]: https://github.com/rkive
|
52
|
+
[bkayser]: https://github.com/bkayser
|
53
|
+
[joeLepper]: https://github.com/joeLepper
|
54
|
+
[didip]: https://github.com/didip
|
55
|
+
[davidcelis]: https://github.com/davidcelis
|
56
|
+
[jthurman42]: https://github.com/jthurman42
|
57
|
+
[amjith]: https://github.com/amjith
|
58
|
+
[holtbp]: https://github.com/holtbp
|
59
|
+
[curious-attempt-bunny]: https://github.com/curious-attempt-bunny
|
60
|
+
[intjonathan]: https://github.com/intjonathan
|
61
|
+
[duien]: https://github.com/duien
|
62
|
+
[frankywahl]: https://github.com/frankywahl
|
data/Gemfile
CHANGED
data/LICENSE
CHANGED
data/README.md
CHANGED
@@ -2,9 +2,9 @@ Centurion
|
|
2
2
|
=========
|
3
3
|
|
4
4
|
A deployment tool for Docker. Takes containers from a Docker registry and runs
|
5
|
-
them on a fleet of hosts with the correct environment variables, host
|
6
|
-
and port mappings. Supports rolling deployments out of the box, and
|
7
|
-
easy to ship applications to Docker servers.
|
5
|
+
them on a fleet of hosts with the correct environment variables, host volume
|
6
|
+
mappings, and port mappings. Supports rolling deployments out of the box, and
|
7
|
+
makes it easy to ship applications to Docker servers.
|
8
8
|
|
9
9
|
We're using it to run our production infrastructure.
|
10
10
|
|
@@ -35,7 +35,7 @@ Installation
|
|
35
35
|
Centurion is a Ruby gem. It assumes that you have a working, modern-ish Ruby
|
36
36
|
(1.9.3 or higher). On Ubuntu 12.04 you can install this with the `ruby-1.9.1`
|
37
37
|
system package, for example. On OSX this is best accomplished via `rbenv` and
|
38
|
-
`ruby-build` which can be installed with [Homebrew](http://brew.sh/) or from
|
38
|
+
`ruby-build` which can be installed with [Homebrew](http://brew.sh/) or from
|
39
39
|
[GitHub](https://github.com/sstephenson/rbenv).
|
40
40
|
|
41
41
|
Once you have a running, modern Ruby, you simply:
|
@@ -110,7 +110,7 @@ namespace :environment do
|
|
110
110
|
env_vars MY_DB: 'radio-db.example.com'
|
111
111
|
host_port 10234, container_port: 9292
|
112
112
|
host_port 10235, container_port: 9293
|
113
|
-
|
113
|
+
host_volume '/mnt/volume1', container_volume: '/mnt/volume2'
|
114
114
|
end
|
115
115
|
|
116
116
|
desc 'Production environment'
|
@@ -144,9 +144,11 @@ distributed containers easy. Here are some examples:
|
|
144
144
|
|
145
145
|
A rolling deployment will stop and start each container one at a time to make
|
146
146
|
sure that the application stays available from the viewpoint of the load
|
147
|
-
balancer.
|
148
|
-
|
149
|
-
|
147
|
+
balancer. As the deploy runs, a health check will hit each container to ensure
|
148
|
+
that the application booted correctly. By default, this will be a GET request to
|
149
|
+
the root path of the application. This is configurable by adding
|
150
|
+
`set(:status_endpoint, '/somewhere/else')` in your config. The status endpoint
|
151
|
+
must respond with a valid response in the 200 status range.
|
150
152
|
|
151
153
|
````bash
|
152
154
|
$ bundle exec centurion -p radio-radio -e staging -a rolling_deploy
|
data/bin/centurionize
CHANGED
@@ -22,25 +22,27 @@ unless File.exists?(project_file)
|
|
22
22
|
namespace :environment do
|
23
23
|
task :common do
|
24
24
|
set :image, '#{opts[:registry_base]}#{opts[:project]}'
|
25
|
+
# Point this to an appropriate health check endpoint for rolling deploys (defaults to '/')
|
26
|
+
# set :status_endpoint, '/status/check'
|
25
27
|
end
|
26
|
-
|
28
|
+
|
27
29
|
desc 'Staging environment'
|
28
30
|
task :staging => :common do
|
29
31
|
set_current_environment(:staging)
|
30
|
-
#env_vars YOUR_ENV: 'staging'
|
31
|
-
#host_port 10234, container_port: 9292
|
32
|
-
#host 'docker-server-staging-1.example.com'
|
33
|
-
#host 'docker-server-staging-2.example.com'
|
32
|
+
# env_vars YOUR_ENV: 'staging'
|
33
|
+
# host_port 10234, container_port: 9292
|
34
|
+
# host 'docker-server-staging-1.example.com'
|
35
|
+
# host 'docker-server-staging-2.example.com'
|
34
36
|
end
|
35
|
-
|
37
|
+
|
36
38
|
desc 'Production environment'
|
37
39
|
task :production => :common do
|
38
40
|
set_current_environment(:production)
|
39
|
-
#env_vars YOUR_ENV: 'production'
|
40
|
-
#host_port 23235, container_port: 9293
|
41
|
-
#host 'docker-server-prod-1.example.com'
|
42
|
-
#host 'docker-server-prod-2.example.com'
|
43
|
-
#host_volume '/mnt/volume1', container_volume: '/mnt/volume1'
|
41
|
+
# env_vars YOUR_ENV: 'production'
|
42
|
+
# host_port 23235, container_port: 9293
|
43
|
+
# host 'docker-server-prod-1.example.com'
|
44
|
+
# host 'docker-server-prod-2.example.com'
|
45
|
+
# host_volume '/mnt/volume1', container_volume: '/mnt/volume1'
|
44
46
|
end
|
45
47
|
end
|
46
48
|
EOS
|
data/lib/centurion/version.rb
CHANGED
data/lib/tasks/deploy.rake
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: centurion
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.9
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -21,7 +21,7 @@ authors:
|
|
21
21
|
autorequire:
|
22
22
|
bindir: bin
|
23
23
|
cert_chain: []
|
24
|
-
date: 2014-06-
|
24
|
+
date: 2014-06-13 00:00:00.000000000 Z
|
25
25
|
dependencies:
|
26
26
|
- !ruby/object:Gem::Dependency
|
27
27
|
name: trollop
|