yu 0.1.8 → 0.1.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/yu/version.rb +1 -1
- data/lib/yu.rb +27 -6
- data/yu.gemspec +2 -2
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dd3824a53191a99f7c6da12dda59c1ff08080709
|
4
|
+
data.tar.gz: a891208973e0ae7ed12784ce34b62eeb40a8b3fe
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 095bd25242b2735fe190e580dbd6c79365954804af2283edb994d34cd3ec6d1fd798918f56c80a4764d5e84c3cfbc042ccb3e2d9ef817f9339fdd3f4691dd522
|
7
|
+
data.tar.gz: 3f6213b30b94f5a24779db181c770a542d816f1a8c544782dd535349826c1ed5deeb6898fb1cfd6b707f053a668db6bdab5a4c6bff9e5683f8662671c59f110f
|
data/README.md
CHANGED
data/lib/yu/version.rb
CHANGED
data/lib/yu.rb
CHANGED
@@ -16,7 +16,7 @@ module Yu
|
|
16
16
|
def call
|
17
17
|
program :name, 'yu'
|
18
18
|
program :version, VERSION
|
19
|
-
program :description, '
|
19
|
+
program :description, 'A container framework based on docker-compose'
|
20
20
|
|
21
21
|
command :test do |c|
|
22
22
|
c.syntax = 'yu test'
|
@@ -59,7 +59,7 @@ module Yu
|
|
59
59
|
command :start do |c|
|
60
60
|
c.syntax = 'yu start'
|
61
61
|
c.description = 'Start containers containers for service(s)'
|
62
|
-
c.action(method(:
|
62
|
+
c.action(method(:start))
|
63
63
|
end
|
64
64
|
|
65
65
|
command :recreate do |c|
|
@@ -74,6 +74,12 @@ module Yu
|
|
74
74
|
c.action(method(:service))
|
75
75
|
end
|
76
76
|
|
77
|
+
command :run do |c|
|
78
|
+
c.syntax = 'yu run'
|
79
|
+
c.description = 'Create a temp container to run a command'
|
80
|
+
c.action(method(:run))
|
81
|
+
end
|
82
|
+
|
77
83
|
global_option('-V', '--verbose', 'Verbose output') { $verbose_mode = true }
|
78
84
|
|
79
85
|
run!
|
@@ -137,10 +143,7 @@ module Yu
|
|
137
143
|
run_command "docker-compose rm --force"
|
138
144
|
info "Building fresh images"
|
139
145
|
run_command "docker-compose build #{'--no-cache' if options.without_cache}"
|
140
|
-
|
141
|
-
info "Seeding system state"
|
142
|
-
run_command "./seed"
|
143
|
-
end
|
146
|
+
run_seed
|
144
147
|
info "Bringing containers up for all services"
|
145
148
|
run_command "docker-compose up -d --no-recreate"
|
146
149
|
end
|
@@ -161,6 +164,11 @@ module Yu
|
|
161
164
|
info "Everything looks good."
|
162
165
|
end
|
163
166
|
|
167
|
+
def start(args, options)
|
168
|
+
service_list = args.map(&method(:normalise_service_name_from_dir)).join(" ")
|
169
|
+
run_command "docker-compose up -d --no-recreate #{service_list}"
|
170
|
+
end
|
171
|
+
|
164
172
|
def restart(args, options)
|
165
173
|
service_list = args.map(&method(:normalise_service_name_from_dir)).join(" ")
|
166
174
|
run_command "docker-compose kill #{service_list}"
|
@@ -173,6 +181,12 @@ module Yu
|
|
173
181
|
run_command "docker-compose kill #{service_list}"
|
174
182
|
run_command "docker-compose rm --force #{service_list}"
|
175
183
|
run_command "docker-compose up -d #{service_list}"
|
184
|
+
run_seed
|
185
|
+
end
|
186
|
+
|
187
|
+
def run(args, options)
|
188
|
+
command = args.join(" ")
|
189
|
+
execute_command "docker-compose run --rm #{command}"
|
176
190
|
end
|
177
191
|
|
178
192
|
def service(args, options)
|
@@ -190,6 +204,13 @@ module Yu
|
|
190
204
|
end
|
191
205
|
end
|
192
206
|
|
207
|
+
def run_seed
|
208
|
+
if File.exists? 'seed'
|
209
|
+
info "Seeding system state"
|
210
|
+
run_command "./seed"
|
211
|
+
end
|
212
|
+
end
|
213
|
+
|
193
214
|
def get_existing_services(service_names)
|
194
215
|
service_names.select { |service_name| Pathname(service_name).exist? }
|
195
216
|
end
|
data/yu.gemspec
CHANGED
@@ -9,8 +9,8 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ["Mike Kelly"]
|
10
10
|
spec.email = ["mikekelly321@gmail.com"]
|
11
11
|
|
12
|
-
spec.summary = %q{
|
13
|
-
spec.description = %q{
|
12
|
+
spec.summary = %q{A simple docker container framework}
|
13
|
+
spec.description = %q{Framework for managing docker containers based on docker-compose}
|
14
14
|
spec.homepage = "https://github.com/mikekellly/yu"
|
15
15
|
spec.license = "MIT"
|
16
16
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Kelly
|
@@ -66,7 +66,7 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '10.0'
|
69
|
-
description:
|
69
|
+
description: Framework for managing docker containers based on docker-compose
|
70
70
|
email:
|
71
71
|
- mikekelly321@gmail.com
|
72
72
|
executables:
|
@@ -119,5 +119,5 @@ rubyforge_project:
|
|
119
119
|
rubygems_version: 2.4.5
|
120
120
|
signing_key:
|
121
121
|
specification_version: 4
|
122
|
-
summary:
|
122
|
+
summary: A simple docker container framework
|
123
123
|
test_files: []
|