dapp 0.2.4 → 0.2.6
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 +8 -8
- data/lib/dapp.rb +0 -1
- data/lib/dapp/build/stage/source_4.rb +1 -5
- data/lib/dapp/builder/chef.rb +9 -34
- data/lib/dapp/builder/shell.rb +0 -7
- data/lib/dapp/config/application.rb +2 -11
- data/lib/dapp/config/docker.rb +12 -11
- data/lib/dapp/helper/shellout.rb +1 -1
- data/lib/dapp/helper/streaming.rb +3 -3
- data/lib/dapp/stage_image.rb +1 -5
- data/lib/dapp/version.rb +1 -1
- metadata +2 -3
- data/lib/dapp/build/stage/chef_cookbooks.rb +0 -23
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MTIyNTY4OTdmNjMxOGJjYzE1NmI2ZmRhNGQ5ZmQ1YzAyNzQ1YWU3ZA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
YWViZjQ0NjA5ZWNlYzYwMGQ5MDU2MDZjOGE3NTc5MDczNDFjNGNiMg==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MDRiOTcwMDRiZDc1YzNhZTQ5NDM0NzFkNTRiMzZmM2YyNGQ2ZjdkMWUyMjc1
|
10
|
+
OTY1ZDBjMGY2Y2VhMTkyMjhiOTIwMGRhYjE4YzU4YzgzYTlmODNhMzdkZWQ5
|
11
|
+
MGIyYzQ2NDI4MmI3MGEyYzU5MThlNTM5OWNlZGY5NDk3NDA3YzI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
Njc0ZTllM2NjMjA1YjI0ZTY4NDU2Mjk1M2JlYWQzNjM3NWY1OTcxZTU5ODAz
|
14
|
+
MmM2NTQwOWQwMjk2ZDAwODY0ODVmYTYxYmE5YWU2MWMzMmYwYWMzOTIyZjE3
|
15
|
+
ZTg5YmM3NjgyYmYzOGU3NDJkOGNmNDIwYmQ4NmFlMGQxZmM0Y2Q=
|
data/lib/dapp.rb
CHANGED
@@ -53,7 +53,6 @@ require 'dapp/build/stage/infra_install'
|
|
53
53
|
require 'dapp/build/stage/infra_setup'
|
54
54
|
require 'dapp/build/stage/app_install'
|
55
55
|
require 'dapp/build/stage/app_setup'
|
56
|
-
require 'dapp/build/stage/chef_cookbooks'
|
57
56
|
require 'dapp/build/stage/source_1_archive'
|
58
57
|
require 'dapp/build/stage/source_1'
|
59
58
|
require 'dapp/build/stage/source_2'
|
@@ -6,14 +6,10 @@ module Dapp
|
|
6
6
|
MAX_PATCH_SIZE = 1024 * 1024
|
7
7
|
|
8
8
|
def initialize(application, next_stage)
|
9
|
-
@prev_stage =
|
9
|
+
@prev_stage = AppSetup.new(application, self)
|
10
10
|
super
|
11
11
|
end
|
12
12
|
|
13
|
-
def prev_source_stage
|
14
|
-
prev_stage.prev_stage.prev_stage
|
15
|
-
end
|
16
|
-
|
17
13
|
def next_source_stage
|
18
14
|
next_stage
|
19
15
|
end
|
data/lib/dapp/builder/chef.rb
CHANGED
@@ -12,8 +12,8 @@ module Dapp
|
|
12
12
|
metadata.json
|
13
13
|
recipes/%{stage}.rb
|
14
14
|
recipes/*_%{stage}.rb
|
15
|
-
files
|
16
|
-
templates
|
15
|
+
files/%{stage}/*
|
16
|
+
templates/%{stage}/*
|
17
17
|
).freeze
|
18
18
|
|
19
19
|
DEFAULT_CHEFDK_IMAGE = 'dappdeps/chefdk:0.15.16-3'.freeze # TODO: config, DSL, DEFAULT_CHEFDK_IMAGE
|
@@ -37,17 +37,6 @@ module Dapp
|
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
40
|
-
def chef_cookbooks_checksum
|
41
|
-
stage_cookbooks_checksum(:chef_cookbooks)
|
42
|
-
end
|
43
|
-
|
44
|
-
def chef_cookbooks(image)
|
45
|
-
image.add_commands(
|
46
|
-
"mkdir -p /usr/share/dapp/chef_repo",
|
47
|
-
"cp -a #{container_cookbooks_vendor_path} /usr/share/dapp/chef_repo/cookbooks"
|
48
|
-
)
|
49
|
-
end
|
50
|
-
|
51
40
|
private
|
52
41
|
|
53
42
|
def project_name
|
@@ -89,11 +78,9 @@ module Dapp
|
|
89
78
|
to_runlist_entrypoint[name, stage]
|
90
79
|
end.compact)
|
91
80
|
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
res.concat(application.config._app_runlist.map do |app_component|
|
96
|
-
to_runlist_entrypoint[project_name, [app_component, stage].join('_')]
|
81
|
+
res.concat(application.config._app_runlist.map(&:_name).map do |name|
|
82
|
+
subname_parts = name.split(project_name, 2)[1].split('-')
|
83
|
+
to_runlist_entrypoint[project_name, [*subname_parts, stage].join('_')]
|
97
84
|
end.compact)
|
98
85
|
end
|
99
86
|
end
|
@@ -136,18 +123,11 @@ module Dapp
|
|
136
123
|
else
|
137
124
|
install_cookbooks
|
138
125
|
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
_paths_checksum(stage_cookbooks_vendored_paths(stage, with_files: true)),
|
144
|
-
*application.config._chef._modules,
|
145
|
-
stage == :infra_install ? chefdk_image : nil
|
146
|
-
].compact
|
126
|
+
application.hashsum([_paths_checksum(stage_cookbooks_vendored_paths(stage, with_files: true)),
|
127
|
+
*application.config._chef._modules,
|
128
|
+
stage == :infra_install ? chefdk_image : nil].compact).tap do |checksum|
|
129
|
+
stage_cookbooks_checksum_path(stage).write "#{checksum}\n"
|
147
130
|
end
|
148
|
-
|
149
|
-
stage_cookbooks_checksum_path(stage).write "#{checksum}\n"
|
150
|
-
checksum
|
151
131
|
end
|
152
132
|
end
|
153
133
|
|
@@ -197,7 +177,6 @@ module Dapp
|
|
197
177
|
'--volume /etc:/etc:ro',
|
198
178
|
'--volume /usr:/usr:ro',
|
199
179
|
'--volume /lib:/lib:ro',
|
200
|
-
'--volume /lib64:/lib64:ro',
|
201
180
|
'--volume /home:/home',
|
202
181
|
'--volume /tmp:/tmp',
|
203
182
|
("--volume #{ssh_auth_socket_path.dirname}:#{ssh_auth_socket_path.dirname}" if ssh_auth_socket_path),
|
@@ -244,10 +223,6 @@ module Dapp
|
|
244
223
|
application.build_path('chef', 'vendored_cookbooks').join(*path)
|
245
224
|
end
|
246
225
|
|
247
|
-
def container_cookbooks_vendor_path(*path)
|
248
|
-
application.container_build_path('chef', 'vendored_cookbooks').join(*path)
|
249
|
-
end
|
250
|
-
|
251
226
|
def stage_build_path(stage, *path)
|
252
227
|
application.build_path(application.config._name, stage).join(*path)
|
253
228
|
end
|
data/lib/dapp/builder/shell.rb
CHANGED
@@ -61,21 +61,12 @@ module Dapp
|
|
61
61
|
@_apps.empty? ? [self] : @_apps.flatten
|
62
62
|
end
|
63
63
|
|
64
|
-
def _app_chain
|
65
|
-
@_app_chain ||= (_parent ? _parent._app_chain : []) + [self]
|
66
|
-
end
|
67
|
-
|
68
64
|
def _app_runlist
|
69
|
-
|
70
|
-
if subname = name.split("#{_root_app._name}-", 2)[1]
|
71
|
-
subname_parts = subname.split('-')
|
72
|
-
subname_parts.join('_') if subname_parts.any?
|
73
|
-
end
|
74
|
-
end.compact
|
65
|
+
@_app_runlist ||= (_parent ? _parent._app_runlist : []) + [self]
|
75
66
|
end
|
76
67
|
|
77
68
|
def _root_app
|
78
|
-
|
69
|
+
_app_runlist.first
|
79
70
|
end
|
80
71
|
|
81
72
|
private
|
data/lib/dapp/config/docker.rb
CHANGED
@@ -2,7 +2,7 @@ module Dapp
|
|
2
2
|
module Config
|
3
3
|
# Docker
|
4
4
|
class Docker
|
5
|
-
attr_reader :_volume, :_expose, :_env, :_label, :_cmd, :_onbuild, :_workdir, :_user
|
5
|
+
attr_reader :_volume, :_expose, :_env, :_label, :_cmd, :_onbuild, :_workdir, :_user
|
6
6
|
attr_reader :_from_cache_version
|
7
7
|
|
8
8
|
def initialize
|
@@ -27,12 +27,12 @@ module Dapp
|
|
27
27
|
@_expose.concat(args)
|
28
28
|
end
|
29
29
|
|
30
|
-
def env(
|
31
|
-
@_env.concat(
|
30
|
+
def env(**options)
|
31
|
+
@_env.concat(options_to_args(options))
|
32
32
|
end
|
33
33
|
|
34
|
-
def label(
|
35
|
-
@_label.concat(
|
34
|
+
def label(**options)
|
35
|
+
@_label.concat(options_to_args(options))
|
36
36
|
end
|
37
37
|
|
38
38
|
def cmd(*args)
|
@@ -51,10 +51,6 @@ module Dapp
|
|
51
51
|
@_user = val
|
52
52
|
end
|
53
53
|
|
54
|
-
def entrypoint(*cmd_with_args)
|
55
|
-
@_entrypoint = cmd_with_args.flatten
|
56
|
-
end
|
57
|
-
|
58
54
|
def _from
|
59
55
|
@_from || raise(Error::Config, code: :docker_from_not_defined)
|
60
56
|
end
|
@@ -68,14 +64,19 @@ module Dapp
|
|
68
64
|
cmd: _cmd,
|
69
65
|
onbuild: _onbuild,
|
70
66
|
workdir: _workdir,
|
71
|
-
user: _user
|
72
|
-
entrypoint: _entrypoint
|
67
|
+
user: _user
|
73
68
|
}
|
74
69
|
end
|
75
70
|
|
76
71
|
def clone
|
77
72
|
Marshal.load(Marshal.dump(self))
|
78
73
|
end
|
74
|
+
|
75
|
+
private
|
76
|
+
|
77
|
+
def options_to_args(options)
|
78
|
+
options.map {|key, value| "#{key.upcase}=#{value}" }
|
79
|
+
end
|
79
80
|
end
|
80
81
|
end
|
81
82
|
end
|
data/lib/dapp/helper/shellout.rb
CHANGED
@@ -30,7 +30,7 @@ module Dapp
|
|
30
30
|
shellout(*args, **kwargs).tap(&:error!)
|
31
31
|
rescue ::Mixlib::ShellOut::ShellCommandFailed => e
|
32
32
|
raise Error::Shellout, code: Trivia.class_to_lowercase(e.class),
|
33
|
-
data: { stream: stream.
|
33
|
+
data: { stream: stream.inspect }
|
34
34
|
end
|
35
35
|
|
36
36
|
def self.included(base)
|
@@ -12,8 +12,8 @@ module Dapp
|
|
12
12
|
buffer << string
|
13
13
|
end
|
14
14
|
|
15
|
-
def
|
16
|
-
buffer.join
|
15
|
+
def inspect
|
16
|
+
buffer.join
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
@@ -40,7 +40,7 @@ module Dapp
|
|
40
40
|
# Error
|
41
41
|
class Error < Base
|
42
42
|
def format_string(str)
|
43
|
-
|
43
|
+
Paint.paint_string(super, :warning)
|
44
44
|
end
|
45
45
|
end
|
46
46
|
end
|
data/lib/dapp/stage_image.rb
CHANGED
@@ -38,10 +38,6 @@ module Dapp
|
|
38
38
|
add_change_option(:workdir, value)
|
39
39
|
end
|
40
40
|
|
41
|
-
def add_change_entrypoint(value)
|
42
|
-
add_change_option(:entrypoint, value)
|
43
|
-
end
|
44
|
-
|
45
41
|
def add_change_user(value)
|
46
42
|
add_change_option(:user, value)
|
47
43
|
end
|
@@ -133,7 +129,7 @@ module Dapp
|
|
133
129
|
|
134
130
|
def prepared_change
|
135
131
|
prepared_options_default(change_options) do |k, vals|
|
136
|
-
if
|
132
|
+
if k == :cmd
|
137
133
|
%(-c '#{k.to_s.upcase} #{Array(vals)}')
|
138
134
|
else
|
139
135
|
Array(vals).map { |v| %(-c "#{k.to_s.upcase} #{v}") }.join(' ')
|
data/lib/dapp/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dapp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dmitry Stolyarov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-08-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mixlib-shellout
|
@@ -334,7 +334,6 @@ files:
|
|
334
334
|
- lib/dapp/build/stage/app_install.rb
|
335
335
|
- lib/dapp/build/stage/app_setup.rb
|
336
336
|
- lib/dapp/build/stage/base.rb
|
337
|
-
- lib/dapp/build/stage/chef_cookbooks.rb
|
338
337
|
- lib/dapp/build/stage/from.rb
|
339
338
|
- lib/dapp/build/stage/infra_install.rb
|
340
339
|
- lib/dapp/build/stage/infra_setup.rb
|
@@ -1,23 +0,0 @@
|
|
1
|
-
module Dapp
|
2
|
-
module Build
|
3
|
-
module Stage
|
4
|
-
# ChefCookbooks
|
5
|
-
class ChefCookbooks < Base
|
6
|
-
def initialize(application, next_stage)
|
7
|
-
@prev_stage = AppSetup.new(application, self)
|
8
|
-
super
|
9
|
-
end
|
10
|
-
|
11
|
-
def signature
|
12
|
-
hashsum [prev_stage.signature, *application.builder.chef_cookbooks_checksum]
|
13
|
-
end
|
14
|
-
|
15
|
-
def image
|
16
|
-
super do |image|
|
17
|
-
application.builder.chef_cookbooks(image)
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end # ChefCookbooks
|
21
|
-
end # Stage
|
22
|
-
end # Build
|
23
|
-
end # Dapp
|