daddy 0.7.8 → 0.7.9
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/itamae/environments/{base.rb → base/default.rb} +5 -0
- data/itamae/environments/docker.rb +2 -0
- data/itamae/environments/docker/Dockerfile.base +20 -0
- data/itamae/environments/docker/default.rb +28 -0
- data/itamae/environments/docker/image.rb +4 -0
- data/itamae/environments/local.rb +3 -0
- data/itamae/environments/nodejs/default.rb +19 -0
- data/itamae/environments/nodejs/templates/etc/yum.repos.d/{nodesource.repo.erb → nodesource-el7.repo.erb} +2 -2
- data/itamae/environments/nodejs/templates/etc/yum.repos.d/yarn.repo.erb +6 -0
- data/itamae/environments/ruby/default.rb +37 -0
- data/lib/daddy/rails/railtie.rb +0 -1
- data/lib/daddy/version.rb +1 -1
- data/lib/tasks/dad.rake +8 -1
- data/lib/tasks/docker.rake +0 -5
- data/lib/tasks/locale/en.yml +0 -2
- data/lib/tasks/locale/ja.yml +0 -2
- metadata +22 -20
- data/itamae/cookbooks/docker/install.rb +0 -71
- data/itamae/environments/nodejs.rb +0 -2
- data/itamae/environments/nodejs/install.rb +0 -11
- data/itamae/environments/ruby.rb +0 -3
- data/itamae/environments/ruby/install.rb +0 -36
- data/lib/daddy/itamae/ext/resource/file.rb +0 -43
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a807869b9be324429050f8632ba985428c113056433326f47bba3253ba5ba2bb
|
4
|
+
data.tar.gz: a68b6215e7a4b546c3b031f5cdbdbaa2777f4bc7d7c2f6845b76dc87af513ad9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9c34d3c93042748cf5bcb1134ef72c9c7e289f6e56203d375a715d97849763909f42c57ecfd77e959fadb0c2e47c591b052b2f344c50ffb0e62895f6e37bd54d
|
7
|
+
data.tar.gz: 2b02f6fd41ed2ace58aa88ddcf821d5fe361163af71e4dedd956ed50caa3ecb5f7f8111ff37e2e30e4ccc3e493468c921969b2ad9be58ee6ddcde19cc9e3e03e
|
@@ -5,7 +5,9 @@
|
|
5
5
|
epel-release
|
6
6
|
gcc
|
7
7
|
gcc-c++
|
8
|
+
git
|
8
9
|
graphviz
|
10
|
+
make
|
9
11
|
libcurl-devel
|
10
12
|
libffi-devel
|
11
13
|
libtool
|
@@ -16,6 +18,9 @@
|
|
16
18
|
openssl-devel
|
17
19
|
readline-devel
|
18
20
|
sqlite-devel
|
21
|
+
sudo
|
22
|
+
wget
|
23
|
+
which
|
19
24
|
zlib-devel
|
20
25
|
}.each do |name|
|
21
26
|
package name do
|
@@ -0,0 +1,20 @@
|
|
1
|
+
FROM centos:7.6.1810
|
2
|
+
MAINTAINER ichylinux@gmail.com
|
3
|
+
|
4
|
+
RUN yum install -y sudo
|
5
|
+
|
6
|
+
RUN useradd daddy && \
|
7
|
+
echo "daddy ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/daddy && \
|
8
|
+
sudo sed -i "s/\(^Defaults secure_path = \).*/\1\/sbin:\/bin:\/usr\/sbin:\/usr\/bin:\/usr\/local\/bin/" /etc/sudoers
|
9
|
+
|
10
|
+
USER daddy
|
11
|
+
WORKDIR /home/daddy
|
12
|
+
|
13
|
+
RUN sudo localedef -f UTF-8 -i ja_JP ja_JP && \
|
14
|
+
sudo sed -i "s/\(^LANG=\).*/\1ja_JP.UTF-8/" /etc/locale.conf && \
|
15
|
+
. /etc/locale.conf && \
|
16
|
+
sudo rm -f /etc/localtime && \
|
17
|
+
sudo ln -snf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
|
18
|
+
|
19
|
+
RUN sudo mkdir -p /var/daddy/tmp && \
|
20
|
+
sudo chown daddy:daddy /var/daddy/tmp
|
@@ -0,0 +1,28 @@
|
|
1
|
+
%w{ yum-utils device-mapper-persistent-data lvm2 }.each do |name|
|
2
|
+
package name do
|
3
|
+
user 'root'
|
4
|
+
end
|
5
|
+
end
|
6
|
+
|
7
|
+
execute 'yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo' do
|
8
|
+
user 'root'
|
9
|
+
not_if 'test -e /etc/yum.repos.d/docker-ce.repo'
|
10
|
+
end
|
11
|
+
|
12
|
+
package 'docker-ce' do
|
13
|
+
user 'root'
|
14
|
+
end
|
15
|
+
|
16
|
+
group 'docker' do
|
17
|
+
user 'root'
|
18
|
+
end
|
19
|
+
|
20
|
+
execute "add user to docker group" do
|
21
|
+
command "sudo usermod -a -G docker #{ENV['USER']} && newgrp docker"
|
22
|
+
not_if "groups #{ENV['USER']} | grep -E \"\sdocker\""
|
23
|
+
end
|
24
|
+
|
25
|
+
service 'docker' do
|
26
|
+
action [:enable, :start]
|
27
|
+
user 'root'
|
28
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
template '/etc/yum.repos.d/nodesource-el7.repo' do
|
2
|
+
user 'root'
|
3
|
+
end
|
4
|
+
|
5
|
+
template '/etc/pki/rpm-gpg/NODESOURCE-GPG-SIGNING-KEY-EL' do
|
6
|
+
user 'root'
|
7
|
+
end
|
8
|
+
|
9
|
+
package 'nodejs' do
|
10
|
+
user 'root'
|
11
|
+
end
|
12
|
+
|
13
|
+
template '/etc/yum.repos.d/yarn.repo' do
|
14
|
+
user 'root'
|
15
|
+
end
|
16
|
+
|
17
|
+
package 'yarn' do
|
18
|
+
user 'root'
|
19
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
[nodesource]
|
2
2
|
name=Node.js Packages for Enterprise Linux 7 - $basearch
|
3
|
-
baseurl=https://rpm.nodesource.com/
|
3
|
+
baseurl=https://rpm.nodesource.com/pub_10.x/el/7/$basearch
|
4
4
|
failovermethod=priority
|
5
5
|
enabled=1
|
6
6
|
gpgcheck=1
|
@@ -8,7 +8,7 @@ gpgkey=file:///etc/pki/rpm-gpg/NODESOURCE-GPG-SIGNING-KEY-EL
|
|
8
8
|
|
9
9
|
[nodesource-source]
|
10
10
|
name=Node.js for Enterprise Linux 7 - $basearch - Source
|
11
|
-
baseurl=https://rpm.nodesource.com/
|
11
|
+
baseurl=https://rpm.nodesource.com/pub_10.x/el/7/SRPMS
|
12
12
|
failovermethod=priority
|
13
13
|
enabled=0
|
14
14
|
gpgkey=file:///etc/pki/rpm-gpg/NODESOURCE-GPG-SIGNING-KEY-EL
|
@@ -0,0 +1,37 @@
|
|
1
|
+
version = ENV['RUBY_VERSION'] || '2.5.3'
|
2
|
+
short_version = version.split('.')[0..1].join('.')
|
3
|
+
|
4
|
+
execute 'download ruby' do
|
5
|
+
cwd '/var/daddy/tmp'
|
6
|
+
command <<-EOF
|
7
|
+
set -eu
|
8
|
+
rm -f ruby-#{version}.tar.gz
|
9
|
+
wget https://cache.ruby-lang.org/pub/ruby/#{short_version}/ruby-#{version}.tar.gz
|
10
|
+
EOF
|
11
|
+
not_if "echo #{::File.read(::File.join(::File.dirname(__FILE__), "ruby-#{version}.tar.gz_sha256sum.txt")).strip} | sha256sum -c"
|
12
|
+
end
|
13
|
+
|
14
|
+
execute 'install ruby' do
|
15
|
+
cwd '/var/daddy/tmp'
|
16
|
+
command <<-EOF
|
17
|
+
set -eu
|
18
|
+
tar zxf ruby-#{version}.tar.gz
|
19
|
+
pushd ruby-#{version}
|
20
|
+
./configure --disable-install-rdoc
|
21
|
+
make
|
22
|
+
sudo make install
|
23
|
+
popd
|
24
|
+
EOF
|
25
|
+
not_if "ruby -v | egrep \"ruby #{version}(p[0-9]+) \""
|
26
|
+
end
|
27
|
+
|
28
|
+
%w[
|
29
|
+
rubygems-update
|
30
|
+
bundler
|
31
|
+
itamae
|
32
|
+
daddy
|
33
|
+
].each do |name|
|
34
|
+
gem_package name do
|
35
|
+
user 'root'
|
36
|
+
end
|
37
|
+
end
|
data/lib/daddy/rails/railtie.rb
CHANGED
data/lib/daddy/version.rb
CHANGED
data/lib/tasks/dad.rake
CHANGED
@@ -23,7 +23,14 @@ namespace :dad do
|
|
23
23
|
desc "ロール #{role} のセットアップを行います。"
|
24
24
|
task role => :environment do
|
25
25
|
role_file = "config/itamae/roles/#{role}.rb"
|
26
|
-
|
26
|
+
log_level = ENV['DEBUG'] ? 'debug' : 'info'
|
27
|
+
|
28
|
+
if ENV['DOCKER']
|
29
|
+
tag = "#{Daddy.config.application}-#{role}"
|
30
|
+
fail unless system("bundle exec itamae docker --ohai --image daddy-base --tag #{tag} --log-level=#{log_level} #{role_file}")
|
31
|
+
else
|
32
|
+
fail unless system("bundle exec itamae local --ohai --log-level=#{log_level} #{role_file}")
|
33
|
+
end
|
27
34
|
end
|
28
35
|
end
|
29
36
|
|
data/lib/tasks/docker.rake
CHANGED
data/lib/tasks/locale/en.yml
CHANGED
data/lib/tasks/locale/ja.yml
CHANGED
metadata
CHANGED
@@ -1,17 +1,17 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: daddy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ichy
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-02-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: docker-api
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
@@ -25,7 +25,7 @@ dependencies:
|
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: highline
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
@@ -109,13 +109,13 @@ dependencies:
|
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
112
|
+
name: ci_reporter
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - ">="
|
116
116
|
- !ruby/object:Gem::Version
|
117
117
|
version: '0'
|
118
|
-
type: :
|
118
|
+
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
@@ -123,7 +123,7 @@ dependencies:
|
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '0'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
126
|
+
name: closer
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
129
|
- - ">="
|
@@ -137,7 +137,7 @@ dependencies:
|
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0'
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
|
-
name:
|
140
|
+
name: database_cleaner
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
143
|
- - ">="
|
@@ -151,7 +151,7 @@ dependencies:
|
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: '0'
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
|
-
name:
|
154
|
+
name: faraday
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
157
|
- - ">="
|
@@ -165,7 +165,7 @@ dependencies:
|
|
165
165
|
- !ruby/object:Gem::Version
|
166
166
|
version: '0'
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
|
-
name:
|
168
|
+
name: rails
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
170
170
|
requirements:
|
171
171
|
- - ">="
|
@@ -275,7 +275,6 @@ files:
|
|
275
275
|
- app/assets/stylesheets/ympicker.css.scss
|
276
276
|
- itamae/cookbooks/app_base_dir.rb
|
277
277
|
- itamae/cookbooks/chrome/install.rb
|
278
|
-
- itamae/cookbooks/docker/install.rb
|
279
278
|
- itamae/cookbooks/docker/registry/install.rb
|
280
279
|
- itamae/cookbooks/epel/install.rb
|
281
280
|
- itamae/cookbooks/git/install.rb
|
@@ -301,13 +300,17 @@ files:
|
|
301
300
|
- itamae/cookbooks/unicorn/templates/systemd/app.service.erb
|
302
301
|
- itamae/cookbooks/unicorn/templates/unicorn.rb.erb
|
303
302
|
- itamae/cookbooks/vsftpd/install.rb
|
304
|
-
- itamae/environments/base.rb
|
305
|
-
- itamae/environments/
|
306
|
-
- itamae/environments/
|
303
|
+
- itamae/environments/base/default.rb
|
304
|
+
- itamae/environments/docker.rb
|
305
|
+
- itamae/environments/docker/Dockerfile.base
|
306
|
+
- itamae/environments/docker/default.rb
|
307
|
+
- itamae/environments/docker/image.rb
|
308
|
+
- itamae/environments/local.rb
|
309
|
+
- itamae/environments/nodejs/default.rb
|
307
310
|
- itamae/environments/nodejs/templates/etc/pki/rpm-gpg/NODESOURCE-GPG-SIGNING-KEY-EL.erb
|
308
|
-
- itamae/environments/nodejs/templates/etc/yum.repos.d/nodesource.repo.erb
|
309
|
-
- itamae/environments/
|
310
|
-
- itamae/environments/ruby/
|
311
|
+
- itamae/environments/nodejs/templates/etc/yum.repos.d/nodesource-el7.repo.erb
|
312
|
+
- itamae/environments/nodejs/templates/etc/yum.repos.d/yarn.repo.erb
|
313
|
+
- itamae/environments/ruby/default.rb
|
311
314
|
- itamae/environments/ruby/ruby-2.5.1.tar.gz_sha256sum.txt
|
312
315
|
- itamae/environments/ruby/ruby-2.5.3.tar.gz_sha256sum.txt
|
313
316
|
- itamae/locale/en.yml
|
@@ -350,7 +353,6 @@ files:
|
|
350
353
|
- lib/daddy/itamae/env/app_name.rb
|
351
354
|
- lib/daddy/itamae/env/dad_env.rb
|
352
355
|
- lib/daddy/itamae/env/os_version.rb
|
353
|
-
- lib/daddy/itamae/ext/resource/file.rb
|
354
356
|
- lib/daddy/itamae/ext/resource/remote_file.rb
|
355
357
|
- lib/daddy/itamae/i18n.rb
|
356
358
|
- lib/daddy/model.rb
|
@@ -439,7 +441,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
439
441
|
requirements:
|
440
442
|
- - "~>"
|
441
443
|
- !ruby/object:Gem::Version
|
442
|
-
version: '2.
|
444
|
+
version: '2.5'
|
443
445
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
444
446
|
requirements:
|
445
447
|
- - ">="
|
@@ -447,7 +449,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
447
449
|
version: '0'
|
448
450
|
requirements: []
|
449
451
|
rubyforge_project:
|
450
|
-
rubygems_version: 2.7.
|
452
|
+
rubygems_version: 2.7.7
|
451
453
|
signing_key:
|
452
454
|
specification_version: 4
|
453
455
|
summary: My rails dad
|
@@ -1,71 +0,0 @@
|
|
1
|
-
require 'daddy/itamae'
|
2
|
-
|
3
|
-
case os_version
|
4
|
-
when /rhel-6\.(.*?)/
|
5
|
-
package 'epel-release' do
|
6
|
-
user 'root'
|
7
|
-
end
|
8
|
-
|
9
|
-
package 'docker-io' do
|
10
|
-
user 'root'
|
11
|
-
end
|
12
|
-
|
13
|
-
group 'docker' do
|
14
|
-
user 'root'
|
15
|
-
end
|
16
|
-
|
17
|
-
execute "add user to docker group" do
|
18
|
-
user 'root'
|
19
|
-
command "usermod -aG docker #{ENV['USER']}"
|
20
|
-
not_if "groups #{ENV['USER']} | grep -E \"\sdocker\""
|
21
|
-
end
|
22
|
-
|
23
|
-
local_ruby_block 'post install message' do
|
24
|
-
block do
|
25
|
-
message = I18n.t('itamae.messages.docker.after_install', :user => ENV['USER'])
|
26
|
-
message.split("\n").map {|line| Itamae.logger.info line }
|
27
|
-
end
|
28
|
-
action :nothing
|
29
|
-
subscribes :run, 'execute[add user to docker group]'
|
30
|
-
end
|
31
|
-
|
32
|
-
local_ruby_block 'post install message' do
|
33
|
-
block do
|
34
|
-
message = I18n.t('itamae.messages.docker.after_install', :user => ENV['USER'])
|
35
|
-
['', message.split("\n"), ''].flatten.map {|line| Itamae.logger.info line }
|
36
|
-
end
|
37
|
-
action :nothing
|
38
|
-
subscribes :run, 'execute[add user to docker group]'
|
39
|
-
end
|
40
|
-
when /rhel-7\.(.*?)/
|
41
|
-
%w{ yum-utils device-mapper-persistent-data lvm2 }.each do |name|
|
42
|
-
package name do
|
43
|
-
user 'root'
|
44
|
-
end
|
45
|
-
end
|
46
|
-
|
47
|
-
execute 'yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo' do
|
48
|
-
user 'root'
|
49
|
-
not_if 'test -e /etc/yum.repos.d/docker-ce.repo'
|
50
|
-
end
|
51
|
-
|
52
|
-
package 'docker-ce' do
|
53
|
-
user 'root'
|
54
|
-
end
|
55
|
-
|
56
|
-
group 'docker' do
|
57
|
-
user 'root'
|
58
|
-
end
|
59
|
-
|
60
|
-
execute "add user to docker group" do
|
61
|
-
command "sudo usermod -a -G docker #{ENV['USER']} && newgrp docker"
|
62
|
-
not_if "groups #{ENV['USER']} | grep -E \"\sdocker\""
|
63
|
-
end
|
64
|
-
else
|
65
|
-
raise "unsupported operating system: #{os_version}"
|
66
|
-
end
|
67
|
-
|
68
|
-
service 'docker' do
|
69
|
-
action [:enable, :start]
|
70
|
-
user 'root'
|
71
|
-
end
|
data/itamae/environments/ruby.rb
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
version = ENV['RUBY_VERSION'] || '2.5.3'
|
2
|
-
short_version = version.split('.')[0..1].join('.')
|
3
|
-
|
4
|
-
execute 'download ruby' do
|
5
|
-
cwd '/var/daddy/tmp'
|
6
|
-
command <<-EOF
|
7
|
-
rm -f ruby-#{version}.tar.gz
|
8
|
-
wget https://cache.ruby-lang.org/pub/ruby/#{short_version}/ruby-#{version}.tar.gz
|
9
|
-
EOF
|
10
|
-
not_if "sha256sum -c #{::File.join(::File.dirname(__FILE__), "ruby-#{version}.tar.gz_sha256sum.txt")}"
|
11
|
-
end
|
12
|
-
|
13
|
-
execute 'install ruby' do
|
14
|
-
cwd '/var/daddy/tmp'
|
15
|
-
command <<-EOF
|
16
|
-
tar zxf ruby-#{version}.tar.gz
|
17
|
-
pushd ruby-#{version}
|
18
|
-
./configure --disable-install-rdoc
|
19
|
-
make
|
20
|
-
sudo make install
|
21
|
-
popd
|
22
|
-
EOF
|
23
|
-
not_if "ruby -v | egrep \"ruby #{version}(p[0-9]+) \""
|
24
|
-
end
|
25
|
-
|
26
|
-
gem_package 'rubygems-update' do
|
27
|
-
user 'root'
|
28
|
-
end
|
29
|
-
|
30
|
-
gem_package 'bundler' do
|
31
|
-
user 'root'
|
32
|
-
end
|
33
|
-
|
34
|
-
gem_package 'itamae' do
|
35
|
-
user 'root'
|
36
|
-
end
|
@@ -1,43 +0,0 @@
|
|
1
|
-
require 'itamae/resource/file'
|
2
|
-
|
3
|
-
module Itamae
|
4
|
-
module Resource
|
5
|
-
class File < Base
|
6
|
-
|
7
|
-
private
|
8
|
-
|
9
|
-
def send_tempfile
|
10
|
-
if !attributes.content && !content_file
|
11
|
-
@temppath = nil
|
12
|
-
return
|
13
|
-
end
|
14
|
-
|
15
|
-
begin
|
16
|
-
src = if content_file
|
17
|
-
content_file
|
18
|
-
else
|
19
|
-
f = Tempfile.open('itamae')
|
20
|
-
f.write(attributes.content)
|
21
|
-
f.close
|
22
|
-
f.path
|
23
|
-
end
|
24
|
-
|
25
|
-
@temppath = ::File.join(runner.tmpdir, Time.now.to_f.to_s)
|
26
|
-
|
27
|
-
if backend.is_a?(Itamae::Backend::Docker)
|
28
|
-
run_command(["mkdir", @temppath])
|
29
|
-
backend.send_file(src, @temppath)
|
30
|
-
@temppath = ::File.join(@temppath, ::File.basename(src))
|
31
|
-
else
|
32
|
-
backend.send_file(src, @temppath)
|
33
|
-
end
|
34
|
-
|
35
|
-
run_specinfra(:change_file_mode, @temppath, '0600')
|
36
|
-
ensure
|
37
|
-
f.unlink if f
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|