dkdeploy-core 9.2.4 → 9.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +34 -8
- data/.travis.yml +5 -4
- data/CHANGELOG.md +8 -24
- data/README.md +3 -3
- data/Vagrantfile +7 -8
- data/dkdeploy-core.gemspec +7 -7
- data/lib/dkdeploy/core/version.rb +2 -2
- data/lib/dkdeploy/tasks/db.rake +135 -152
- data/spec/fixtures/application/config/deploy.rb +21 -23
- metadata +11 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a777b01f3efd02018a09ceb89a51e981812363eb928806454a40686805abd637
|
4
|
+
data.tar.gz: a495bab21f8d00b9b65a7d1d41cbd999c621194a844e3029dced0268c6340141
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cd85e39b2bf80958e0ebb5db6e86637e520e649a2deddc44f0f61b31d4395eb0da460d97331a55e5f337ce480789af37941c3d981686fcc12cd304da2e460b07
|
7
|
+
data.tar.gz: bb3de683784e0e600430b5e3100c7024ec42efc11d4dc920adefcd7c500d9102f913a5e51bf21dfac5620a4b3aea1b2fd99ddfefc80992a757640cc774d7086e
|
data/.rubocop.yml
CHANGED
@@ -5,21 +5,19 @@ AllCops:
|
|
5
5
|
- 'config/**/*'
|
6
6
|
- 'Vagrantfile'
|
7
7
|
- 'vendor/**/*'
|
8
|
-
TargetRubyVersion: 2.
|
8
|
+
TargetRubyVersion: 2.5
|
9
9
|
ExtraDetails: true
|
10
10
|
DisplayStyleGuide: true
|
11
11
|
DisplayCopNames: true
|
12
|
-
GlobalVars:
|
12
|
+
Style/GlobalVars:
|
13
13
|
AllowedVariables: []
|
14
|
-
MethodLength:
|
14
|
+
Metrics/MethodLength:
|
15
15
|
Max: 25
|
16
|
-
LineLength:
|
16
|
+
Layout/LineLength:
|
17
17
|
Max: 200
|
18
|
-
SpecialGlobalVars:
|
18
|
+
Style/SpecialGlobalVars:
|
19
19
|
Enabled: false
|
20
|
-
|
21
|
-
Enabled: false
|
22
|
-
CyclomaticComplexity:
|
20
|
+
Metrics/CyclomaticComplexity:
|
23
21
|
Max: 10
|
24
22
|
Metrics/BlockLength:
|
25
23
|
Enabled: false
|
@@ -27,3 +25,31 @@ Style/FormatStringToken:
|
|
27
25
|
Enabled: false
|
28
26
|
Style/MixinUsage:
|
29
27
|
Enabled: false
|
28
|
+
Layout/EmptyLinesAroundAttributeAccessor:
|
29
|
+
Enabled: true
|
30
|
+
Layout/SpaceAroundMethodCallOperator:
|
31
|
+
Enabled: true
|
32
|
+
Lint/DeprecatedOpenSSLConstant:
|
33
|
+
Enabled: true
|
34
|
+
Lint/MixedRegexpCaptureTypes:
|
35
|
+
Enabled: true
|
36
|
+
Lint/RaiseException:
|
37
|
+
Enabled: true
|
38
|
+
Lint/StructNewOverride:
|
39
|
+
Enabled: true
|
40
|
+
Style/ExponentialNotation:
|
41
|
+
Enabled: true
|
42
|
+
Style/HashEachMethods:
|
43
|
+
Enabled: true
|
44
|
+
Style/HashTransformKeys:
|
45
|
+
Enabled: true
|
46
|
+
Style/HashTransformValues:
|
47
|
+
Enabled: true
|
48
|
+
Style/RedundantFetchBlock:
|
49
|
+
Enabled: true
|
50
|
+
Style/RedundantRegexpCharacterClass:
|
51
|
+
Enabled: true
|
52
|
+
Style/RedundantRegexpEscape:
|
53
|
+
Enabled: true
|
54
|
+
Style/SlicingWithRange:
|
55
|
+
Enabled: true
|
data/.travis.yml
CHANGED
@@ -2,13 +2,14 @@ sudo: false
|
|
2
2
|
language: ruby
|
3
3
|
cache: bundler
|
4
4
|
rvm:
|
5
|
-
- 2.3
|
6
|
-
- 2.4
|
7
5
|
- 2.5
|
8
6
|
- 2.6
|
7
|
+
- 2.7
|
9
8
|
|
10
9
|
before_install:
|
11
|
-
- gem install bundler --no-
|
10
|
+
- gem install bundler --no-doc
|
11
|
+
- gem install bundler-audit --no-doc
|
12
12
|
|
13
13
|
script:
|
14
|
-
- bundle
|
14
|
+
- bundle-audit check --update
|
15
|
+
- bundle exec rubocop --display-cop-names --extra-details
|
data/CHANGELOG.md
CHANGED
@@ -2,10 +2,14 @@
|
|
2
2
|
All notable changes to this project will be documented in this file.
|
3
3
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
4
4
|
|
5
|
-
## [9.
|
5
|
+
## [9.3.0] - 2020-07-06
|
6
6
|
### Summary
|
7
7
|
|
8
|
-
-
|
8
|
+
- Update gem `capistrano` to 3.14.x
|
9
|
+
- Update gem `highline` to 2.0.x
|
10
|
+
- Update gem 'aruba' to 1.0.x
|
11
|
+
- Test ruby 2.7 via travis
|
12
|
+
- Requires Ruby v2.5 or later
|
9
13
|
|
10
14
|
## [9.2.3] - 2019-05-29
|
11
15
|
### Summary
|
@@ -34,24 +38,14 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
34
38
|
- we no longer remove maintenance_config_file_path forcefully to make failures more apparent
|
35
39
|
- improved shell independence
|
36
40
|
|
37
|
-
## [9.1.
|
38
|
-
### Summary
|
39
|
-
|
40
|
-
- use --no-tablespaces with mysqldump
|
41
|
-
|
42
|
-
## [9.1.0]
|
41
|
+
## [9.1.0] - 2018-02-09
|
43
42
|
### Summary
|
44
43
|
|
45
44
|
- Use correct capistrano context at copy scm
|
46
45
|
- Update capistrano 3.10.1
|
47
46
|
- Always execute tasks for each server or at rollback
|
48
47
|
|
49
|
-
## [9.0.
|
50
|
-
### Summary
|
51
|
-
|
52
|
-
- use --no-tablespaces with mysqldump
|
53
|
-
|
54
|
-
## [9.0.0]
|
48
|
+
## [9.0.0] 2017-10-16
|
55
49
|
### Summary
|
56
50
|
|
57
51
|
- tasks around MySQL slow log
|
@@ -71,11 +65,6 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
71
65
|
- remove TYPO3 specific configuration
|
72
66
|
- change some SCM roles from app to all
|
73
67
|
|
74
|
-
## [8.0.2] - 2020-08-21
|
75
|
-
### Summary
|
76
|
-
|
77
|
-
- use --no-tablespaces with mysqldump
|
78
|
-
|
79
68
|
## [8.0.1] - 2017-05-15
|
80
69
|
### Summary
|
81
70
|
|
@@ -87,15 +76,10 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
87
76
|
- first public release
|
88
77
|
|
89
78
|
[Unreleased]: https://github.com/dkdeploy/dkdeploy-core/compare/master...develop
|
90
|
-
[9.2.4]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v9.2.4
|
91
|
-
[9.2.3]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v9.2.3
|
92
79
|
[9.2.2]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v9.2.2
|
93
80
|
[9.2.1]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v9.2.1
|
94
81
|
[9.2.0]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v9.2.0
|
95
|
-
[9.1.1]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v9.1.1
|
96
82
|
[9.1.0]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v9.1.0
|
97
|
-
[9.0.1]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v9.0.1
|
98
83
|
[9.0.0]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v9.0.0
|
99
|
-
[8.0.2]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v8.0.2
|
100
84
|
[8.0.1]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v8.0.1
|
101
85
|
[8.0.0]: https://github.com/dkdeploy/dkdeploy-core/releases/tag/v8.0.0
|
data/README.md
CHANGED
@@ -64,7 +64,7 @@ The complete list of the dkdeploy constants you find in `/lib/capistrano/dkdeplo
|
|
64
64
|
|
65
65
|
### Prerequisite
|
66
66
|
|
67
|
-
rvm (v1.29.x) with installed Ruby 2.2.
|
67
|
+
rvm (v1.29.x) with installed Ruby 2.2 or newer.
|
68
68
|
|
69
69
|
Add the virtual box alias to your `hosts` file
|
70
70
|
|
@@ -74,7 +74,7 @@ Add the virtual box alias to your `hosts` file
|
|
74
74
|
|
75
75
|
1. Starting the local box (`vagrant up --provision`)
|
76
76
|
2. Checking coding styles (`rubocop`)
|
77
|
-
3. Running BDD cucumber tests (`cucumber`)
|
77
|
+
3. Running BDD cucumber tests (`BUNDLER_VERSION=2.1.4 cucumber`)
|
78
78
|
|
79
79
|
## Contributing
|
80
80
|
|
@@ -84,7 +84,7 @@ Add the virtual box alias to your `hosts` file
|
|
84
84
|
4. If project is not checked out already do git clone `git@github.com:dkdeploy/dkdeploy-core.git`
|
85
85
|
5. Checkout origin develop branch (`git checkout --track -b develop origin/develop`)
|
86
86
|
6. Git flow initialze `git flow init -d`
|
87
|
-
7. Installing gems `bundle install`
|
87
|
+
7. Installing gems `BUNDLER_VERSION=1.17.3 bundle install`
|
88
88
|
8. Create new feature branch (`git flow feature start my-new-feature`)
|
89
89
|
9. Run tests (README.md Testing)
|
90
90
|
10. Commit your changes (`git commit -am 'Add some feature'`)
|
data/Vagrantfile
CHANGED
@@ -19,6 +19,7 @@ Vagrant.configure(2) do |config|
|
|
19
19
|
|
20
20
|
config.vm.define('dkdeploy-core', primary: true) do |master_config|
|
21
21
|
master_config.vm.network 'private_network', ip: ip_address
|
22
|
+
master_config.vm.hostname = domain
|
22
23
|
|
23
24
|
# Chef settings
|
24
25
|
master_config.vm.provision :chef_solo do |chef|
|
@@ -41,14 +42,12 @@ Vagrant.configure(2) do |config|
|
|
41
42
|
'--audio', 'none'
|
42
43
|
]
|
43
44
|
end
|
44
|
-
end
|
45
45
|
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
config.vm.post_up_message = "Either install Vagrant plugin 'landrush' or add this entry to your host file: #{ip_address} #{domain}"
|
46
|
+
unless Vagrant.has_plugin?('vagrant-hostsupdater')
|
47
|
+
master_config.vm.post_up_message = <<-HEREDOC
|
48
|
+
Add following entries to your host file or install vagrant plugin vagrant-hostsupdater ("vagrant plugin install vagrant-hostsupdater") and restart virtual box
|
49
|
+
#{ip_address} #{domain}
|
50
|
+
HEREDOC
|
51
|
+
end
|
53
52
|
end
|
54
53
|
end
|
data/dkdeploy-core.gemspec
CHANGED
@@ -13,14 +13,14 @@ Gem::Specification.new do |spec|
|
|
13
13
|
spec.description = 'dkd basic deployment tasks and strategies'
|
14
14
|
spec.summary = 'dkd basic deployment tasks and strategies'
|
15
15
|
spec.homepage = 'https://github.com/dkdeploy/dkdeploy-core'
|
16
|
-
spec.required_ruby_version = '~> 2.
|
16
|
+
spec.required_ruby_version = '~> 2.5'
|
17
17
|
|
18
18
|
spec.files = `git ls-files`.split($/)
|
19
|
-
spec.executables = spec.files.grep(%r{^bin
|
20
|
-
spec.test_files = spec.files.grep(%r{^(test|spec|features)
|
19
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
20
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
21
21
|
spec.require_paths = ['lib']
|
22
22
|
|
23
|
-
spec.add_development_dependency 'aruba', '~> 0
|
23
|
+
spec.add_development_dependency 'aruba', '~> 1.0'
|
24
24
|
spec.add_development_dependency 'bundler'
|
25
25
|
spec.add_development_dependency 'cucumber', '~> 2.4'
|
26
26
|
spec.add_development_dependency 'dkdeploy-test_environment', '~> 2.0'
|
@@ -28,8 +28,8 @@ Gem::Specification.new do |spec|
|
|
28
28
|
spec.add_development_dependency 'pry', '~> 0.10'
|
29
29
|
spec.add_development_dependency 'rake'
|
30
30
|
spec.add_development_dependency 'rspec', '~> 3.5'
|
31
|
-
spec.add_development_dependency 'rubocop', '~> 0.
|
31
|
+
spec.add_development_dependency 'rubocop', '~> 0.86.0'
|
32
32
|
|
33
|
-
spec.add_dependency 'capistrano', '~> 3.
|
34
|
-
spec.add_dependency 'highline', '~>
|
33
|
+
spec.add_dependency 'capistrano', '~> 3.14.1'
|
34
|
+
spec.add_dependency 'highline', '~> 2.0.3'
|
35
35
|
end
|
data/lib/dkdeploy/tasks/db.rake
CHANGED
@@ -82,23 +82,21 @@ namespace :db do
|
|
82
82
|
end
|
83
83
|
|
84
84
|
on primary :backend do
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
execute :rm, '-f', remote_file_name
|
101
|
-
end
|
85
|
+
db_settings = read_db_settings_for_context(self)
|
86
|
+
execute :rm, '-f', remote_zipped_file_name
|
87
|
+
execute :rm, '-f', remote_file_name
|
88
|
+
upload! local_zipped_file_name, remote_zipped_file_name, via: :scp
|
89
|
+
execute :gunzip, remote_zipped_file_name
|
90
|
+
execute :mysql,
|
91
|
+
"--default-character-set=#{db_settings.fetch('charset')}",
|
92
|
+
'-u', db_settings.fetch('username'),
|
93
|
+
'-p',
|
94
|
+
'-h', db_settings.fetch('host'), '-P', db_settings.fetch('port'), db_settings.fetch('name'),
|
95
|
+
'-e', "'source #{remote_file_name}'",
|
96
|
+
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch('password'))
|
97
|
+
ensure
|
98
|
+
execute :rm, '-f', remote_zipped_file_name
|
99
|
+
execute :rm, '-f', remote_file_name
|
102
100
|
end
|
103
101
|
end
|
104
102
|
|
@@ -112,24 +110,22 @@ namespace :db do
|
|
112
110
|
remote_zipped_dump_file = "#{remote_dump_file}.gz"
|
113
111
|
|
114
112
|
on primary :backend do
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
execute :rm, '-f', remote_zipped_dump_file
|
132
|
-
end
|
113
|
+
db_settings = read_db_settings_for_context(self)
|
114
|
+
execute :rm, '-f', remote_dump_file
|
115
|
+
execute :rm, '-f', remote_zipped_dump_file
|
116
|
+
execute :mysqldump,
|
117
|
+
'--no-data', '--skip-set-charset',
|
118
|
+
"--default-character-set=#{db_settings.fetch('charset')}",
|
119
|
+
'-u', db_settings.fetch('username'),
|
120
|
+
'-p',
|
121
|
+
'-h', db_settings.fetch('host'), '-P', db_settings.fetch('port'), db_settings.fetch('name'),
|
122
|
+
'>', remote_dump_file,
|
123
|
+
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch('password'))
|
124
|
+
execute :gzip, remote_dump_file
|
125
|
+
download! remote_zipped_dump_file, 'temp', via: :scp
|
126
|
+
ensure
|
127
|
+
execute :rm, '-f', remote_dump_file
|
128
|
+
execute :rm, '-f', remote_zipped_dump_file
|
133
129
|
end
|
134
130
|
end
|
135
131
|
|
@@ -140,30 +136,27 @@ namespace :db do
|
|
140
136
|
remote_zipped_dump_file = "#{remote_dump_file}.gz"
|
141
137
|
|
142
138
|
on primary :backend do
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
execute :rm, '-f', remote_zipped_dump_file
|
139
|
+
db_settings = read_db_settings_for_context(self)
|
140
|
+
execute :rm, '-f', remote_dump_file
|
141
|
+
execute :rm, '-f', remote_zipped_dump_file
|
147
142
|
|
148
|
-
|
149
|
-
|
150
|
-
end
|
151
|
-
|
152
|
-
execute :mysqldump,
|
153
|
-
"--default-character-set=#{db_settings.fetch('charset')}",
|
154
|
-
'--skip-set-charset',
|
155
|
-
'--no-tablespaces',
|
156
|
-
'-u', db_settings.fetch('username'),
|
157
|
-
'-p',
|
158
|
-
'-h', db_settings.fetch('host'), '-P', db_settings.fetch('port'), ignore_tables_command_line, db_settings.fetch('name'),
|
159
|
-
'>', remote_dump_file,
|
160
|
-
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch('password'))
|
161
|
-
execute :gzip, remote_dump_file
|
162
|
-
download! remote_zipped_dump_file, 'temp', via: :scp
|
163
|
-
ensure
|
164
|
-
execute :rm, '-f', remote_dump_file
|
165
|
-
execute :rm, '-f', remote_zipped_dump_file
|
143
|
+
ignore_tables_command_line = ignore_tables.inject('') do |command_line, table|
|
144
|
+
command_line + " --ignore-table=#{db_settings.fetch('name')}.#{table}"
|
166
145
|
end
|
146
|
+
|
147
|
+
execute :mysqldump,
|
148
|
+
"--default-character-set=#{db_settings.fetch('charset')}",
|
149
|
+
'--skip-set-charset',
|
150
|
+
'-u', db_settings.fetch('username'),
|
151
|
+
'-p',
|
152
|
+
'-h', db_settings.fetch('host'), '-P', db_settings.fetch('port'), ignore_tables_command_line, db_settings.fetch('name'),
|
153
|
+
'>', remote_dump_file,
|
154
|
+
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch('password'))
|
155
|
+
execute :gzip, remote_dump_file
|
156
|
+
download! remote_zipped_dump_file, 'temp', via: :scp
|
157
|
+
ensure
|
158
|
+
execute :rm, '-f', remote_dump_file
|
159
|
+
execute :rm, '-f', remote_zipped_dump_file
|
167
160
|
end
|
168
161
|
end
|
169
162
|
|
@@ -177,24 +170,22 @@ namespace :db do
|
|
177
170
|
remote_zipped_dump_file = "#{remote_dump_file}.gz"
|
178
171
|
|
179
172
|
on primary :backend do
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
execute :rm, '-f', remote_zipped_dump_file
|
197
|
-
end
|
173
|
+
db_settings = read_db_settings_for_context(self)
|
174
|
+
execute :rm, '-f', remote_dump_file
|
175
|
+
execute :rm, '-f', remote_zipped_dump_file
|
176
|
+
execute :mysqldump,
|
177
|
+
'--no-data', '--skip-set-charset',
|
178
|
+
"--default-character-set=#{db_settings.fetch('charset')}",
|
179
|
+
'-u', db_settings.fetch('username'),
|
180
|
+
'-p',
|
181
|
+
'-h', db_settings.fetch('host'), '-P', db_settings.fetch('port'), db_settings.fetch('name'), table_name,
|
182
|
+
'>', remote_dump_file,
|
183
|
+
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch('password'))
|
184
|
+
execute :gzip, remote_dump_file
|
185
|
+
download! remote_zipped_dump_file, zipped_dump_file, via: :scp
|
186
|
+
ensure
|
187
|
+
execute :rm, '-f', remote_dump_file
|
188
|
+
execute :rm, '-f', remote_zipped_dump_file
|
198
189
|
end
|
199
190
|
end
|
200
191
|
|
@@ -212,27 +203,25 @@ namespace :db do
|
|
212
203
|
FileUtils.mkdir_p file_path
|
213
204
|
|
214
205
|
on primary :backend do
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
execute :rm, '-f', remote_zipped_file
|
235
|
-
end
|
206
|
+
db_settings = read_db_settings_for_context(self)
|
207
|
+
execute :rm, '-f', remote_file_name
|
208
|
+
execute :rm, '-f', remote_zipped_file
|
209
|
+
execute :mysqldump,
|
210
|
+
'--no-data', '--skip-set-charset',
|
211
|
+
'--no-create-info', '--skip-comments',
|
212
|
+
'--skip-extended-insert', '--skip-set-charset',
|
213
|
+
"--default-character-set=#{db_settings.fetch('charset')}",
|
214
|
+
'-u', db_settings.fetch('username'),
|
215
|
+
'-p',
|
216
|
+
'-h', db_settings.fetch('host'), '-P', db_settings.fetch('port'),
|
217
|
+
db_settings.fetch('name'), table_names.join(' '),
|
218
|
+
'>', remote_file_name,
|
219
|
+
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch('password'))
|
220
|
+
execute :gzip, remote_file_name
|
221
|
+
download! remote_zipped_file, local_zipped_file, via: :scp
|
222
|
+
ensure
|
223
|
+
execute :rm, '-f', remote_file_name
|
224
|
+
execute :rm, '-f', remote_zipped_file
|
236
225
|
end
|
237
226
|
|
238
227
|
run_locally do
|
@@ -247,23 +236,21 @@ namespace :db do
|
|
247
236
|
remote_zipped_default_content_file = "#{remote_default_content_file}.gz"
|
248
237
|
|
249
238
|
on primary :backend do
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
execute :rm, '-f', remote_zipped_default_content_file
|
266
|
-
end
|
239
|
+
db_settings = read_db_settings_for_context(self)
|
240
|
+
execute :rm, '-f', remote_default_content_file
|
241
|
+
execute :rm, '-f', remote_zipped_default_content_file
|
242
|
+
upload! local_zipped_default_content_file, remote_zipped_default_content_file, via: :scp
|
243
|
+
execute :gunzip, remote_zipped_default_content_file
|
244
|
+
execute :mysql,
|
245
|
+
"--default-character-set=#{db_settings.fetch('charset')}",
|
246
|
+
'-u', db_settings.fetch('username'),
|
247
|
+
'-p',
|
248
|
+
'-h', db_settings.fetch('host'), '-P', db_settings.fetch('port'), db_settings.fetch('name'),
|
249
|
+
'-e', "'source #{remote_default_content_file}'",
|
250
|
+
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch('password'))
|
251
|
+
ensure
|
252
|
+
execute :rm, '-f', remote_default_content_file
|
253
|
+
execute :rm, '-f', remote_zipped_default_content_file
|
267
254
|
end
|
268
255
|
end
|
269
256
|
|
@@ -274,22 +261,20 @@ namespace :db do
|
|
274
261
|
remote_zipped_default_structure_file = "#{remote_default_structure_file}.gz"
|
275
262
|
|
276
263
|
on primary :backend do
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
execute :rm, '-f', remote_zipped_default_structure_file
|
292
|
-
end
|
264
|
+
db_settings = read_db_settings_for_context(self)
|
265
|
+
execute :rm, '-f', remote_default_structure_file
|
266
|
+
execute :rm, '-f', remote_zipped_default_structure_file
|
267
|
+
upload! local_zipped_default_structure_file, remote_zipped_default_structure_file, via: :scp
|
268
|
+
execute :gunzip, remote_zipped_default_structure_file
|
269
|
+
execute :mysql,
|
270
|
+
"--default-character-set=#{db_settings.fetch('charset')}",
|
271
|
+
'-u', db_settings.fetch('username'), '-p',
|
272
|
+
'-h', db_settings.fetch('host'), '-P', db_settings.fetch('port'), db_settings.fetch('name'),
|
273
|
+
'-e', "'source #{remote_default_structure_file}'",
|
274
|
+
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch('password'))
|
275
|
+
ensure
|
276
|
+
execute :rm, '-f', remote_default_structure_file
|
277
|
+
execute :rm, '-f', remote_zipped_default_structure_file
|
293
278
|
end
|
294
279
|
end
|
295
280
|
|
@@ -308,27 +293,25 @@ namespace :db do
|
|
308
293
|
local_zipped_file = "#{local_file_name}.gz"
|
309
294
|
|
310
295
|
on primary :backend do
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
execute :rm, '-f', remote_zipped_file
|
331
|
-
end
|
296
|
+
db_settings = read_db_settings_for_context(self)
|
297
|
+
execute :rm, '-f', remote_file_name
|
298
|
+
execute :rm, '-f', remote_zipped_file
|
299
|
+
execute :mysqldump,
|
300
|
+
"--default-character-set=#{db_settings.fetch('charset')}",
|
301
|
+
'--no-create-info', '--skip-comments',
|
302
|
+
'--skip-extended-insert', '--skip-set-charset',
|
303
|
+
'--complete-insert',
|
304
|
+
'-u', db_settings.fetch('username'),
|
305
|
+
'-p',
|
306
|
+
'-h', db_settings.fetch('host'), '-P', db_settings.fetch('port'),
|
307
|
+
db_settings.fetch('name'), table_names,
|
308
|
+
'>', remote_file_name,
|
309
|
+
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch('password'))
|
310
|
+
execute :gzip, remote_file_name
|
311
|
+
download! remote_zipped_file, local_zipped_file, via: :scp
|
312
|
+
ensure
|
313
|
+
execute :rm, '-f', remote_file_name
|
314
|
+
execute :rm, '-f', remote_zipped_file
|
332
315
|
end
|
333
316
|
|
334
317
|
run_locally do
|
@@ -393,14 +376,14 @@ namespace :db do
|
|
393
376
|
'-e', "'source #{remote_dump_file}'",
|
394
377
|
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch('password'))
|
395
378
|
end
|
396
|
-
rescue SSHKit::Command::Failed =>
|
379
|
+
rescue SSHKit::Command::Failed => e
|
397
380
|
run_locally do
|
398
381
|
error "Removing #{remote_dump_file} and #{remote_dump_md5_file}"
|
399
382
|
execute :rm, '-f', remote_dump_md5_file
|
400
383
|
execute :rm, '-f', remote_dump_file
|
401
384
|
end
|
402
385
|
task.reenable
|
403
|
-
raise "upload_tables failed: #{
|
386
|
+
raise "upload_tables failed: #{e.message}"
|
404
387
|
end
|
405
388
|
end
|
406
389
|
end
|
@@ -31,29 +31,27 @@ namespace :db do
|
|
31
31
|
sql_string = StringIO.new "INSERT INTO be_users (username, password, admin, tstamp, crdate)
|
32
32
|
VALUES ('#{username}', MD5('#{password}'), 1, #{now}, #{now});"
|
33
33
|
on primary :backend do
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
execute :rm, '-rf', remote_db_file
|
56
|
-
end
|
34
|
+
db_settings = {
|
35
|
+
charset: 'utf8',
|
36
|
+
username: 'root',
|
37
|
+
password: 'ilikerandompasswords',
|
38
|
+
host: '127.0.0.1',
|
39
|
+
port: 3306,
|
40
|
+
name: 'dkdeploy_core'
|
41
|
+
}
|
42
|
+
execute :mkdir, '-p', remote_db_file_path
|
43
|
+
execute :rm, '-rf', remote_db_file
|
44
|
+
|
45
|
+
upload! sql_string, remote_db_file
|
46
|
+
execute :mysql,
|
47
|
+
"--default-character-set=#{db_settings.fetch(:charset)}",
|
48
|
+
'-u', db_settings.fetch(:username),
|
49
|
+
'-p',
|
50
|
+
'-h', db_settings.fetch(:host), '-P', db_settings.fetch(:port), db_settings.fetch(:name),
|
51
|
+
'-e', "'source #{remote_db_file}'",
|
52
|
+
interaction_handler: Dkdeploy::InteractionHandler::MySql.new(db_settings.fetch(:password))
|
53
|
+
ensure
|
54
|
+
execute :rm, '-rf', remote_db_file
|
57
55
|
end
|
58
56
|
end
|
59
57
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dkdeploy-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 9.
|
4
|
+
version: 9.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Timo Webler
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2020-
|
12
|
+
date: 2020-07-06 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: aruba
|
@@ -17,14 +17,14 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 0
|
20
|
+
version: '1.0'
|
21
21
|
type: :development
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: 0
|
27
|
+
version: '1.0'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: bundler
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -129,42 +129,42 @@ dependencies:
|
|
129
129
|
requirements:
|
130
130
|
- - "~>"
|
131
131
|
- !ruby/object:Gem::Version
|
132
|
-
version: 0.
|
132
|
+
version: 0.86.0
|
133
133
|
type: :development
|
134
134
|
prerelease: false
|
135
135
|
version_requirements: !ruby/object:Gem::Requirement
|
136
136
|
requirements:
|
137
137
|
- - "~>"
|
138
138
|
- !ruby/object:Gem::Version
|
139
|
-
version: 0.
|
139
|
+
version: 0.86.0
|
140
140
|
- !ruby/object:Gem::Dependency
|
141
141
|
name: capistrano
|
142
142
|
requirement: !ruby/object:Gem::Requirement
|
143
143
|
requirements:
|
144
144
|
- - "~>"
|
145
145
|
- !ruby/object:Gem::Version
|
146
|
-
version: 3.
|
146
|
+
version: 3.14.1
|
147
147
|
type: :runtime
|
148
148
|
prerelease: false
|
149
149
|
version_requirements: !ruby/object:Gem::Requirement
|
150
150
|
requirements:
|
151
151
|
- - "~>"
|
152
152
|
- !ruby/object:Gem::Version
|
153
|
-
version: 3.
|
153
|
+
version: 3.14.1
|
154
154
|
- !ruby/object:Gem::Dependency
|
155
155
|
name: highline
|
156
156
|
requirement: !ruby/object:Gem::Requirement
|
157
157
|
requirements:
|
158
158
|
- - "~>"
|
159
159
|
- !ruby/object:Gem::Version
|
160
|
-
version:
|
160
|
+
version: 2.0.3
|
161
161
|
type: :runtime
|
162
162
|
prerelease: false
|
163
163
|
version_requirements: !ruby/object:Gem::Requirement
|
164
164
|
requirements:
|
165
165
|
- - "~>"
|
166
166
|
- !ruby/object:Gem::Version
|
167
|
-
version:
|
167
|
+
version: 2.0.3
|
168
168
|
description: dkd basic deployment tasks and strategies
|
169
169
|
email:
|
170
170
|
- timo.webler@dkd.de
|
@@ -270,7 +270,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
270
270
|
requirements:
|
271
271
|
- - "~>"
|
272
272
|
- !ruby/object:Gem::Version
|
273
|
-
version: '2.
|
273
|
+
version: '2.5'
|
274
274
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
275
275
|
requirements:
|
276
276
|
- - ">="
|