pdqtest 1.9.9beta4 → 1.9.9beta5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/exe/pdqtest +41 -28
- data/lib/pdqtest/pdk.rb +0 -5
- data/lib/pdqtest/puppet.rb +2 -2
- data/lib/pdqtest/skeleton.rb +13 -2
- data/lib/pdqtest/upgrade.rb +12 -4
- data/lib/pdqtest/util.rb +1 -1
- data/lib/pdqtest/version.rb +1 -1
- data/res/skeleton/Makefile +20 -15
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2a9b6fed071d96aaf5e9be2d817ef816dc0a4ba8e56e93413a1c40889225fd03
|
4
|
+
data.tar.gz: 31d2c4d2eaf7a731dcb72d62a0cf84d5257e7de755c87a7531b7fc1414329f7f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8565026a8c28a794fe58c26065de33bd17c62daab57fc917af5d5742cecea6c9f7508a51fab8de0fbd763ff6c7ea89be1c7bc1b43049479a71073eaa05306509
|
7
|
+
data.tar.gz: e6aa081aa4de254977b034327c85090b0c9e0dd3c1e75131af26eab434fec8a80730699ec03b4852f936d8d07cb83d630ff3411675c8a420c38c9e6b7fdca4a9
|
data/exe/pdqtest
CHANGED
@@ -23,8 +23,6 @@ require 'pdqtest/fastcheck'
|
|
23
23
|
# display help if nothing specified
|
24
24
|
ARGV.push('-h') if ARGV.empty?
|
25
25
|
|
26
|
-
# Setup our own hacky logger
|
27
|
-
|
28
26
|
|
29
27
|
Escort::App.create do |app|
|
30
28
|
app.version PDQTest::VERSION
|
@@ -88,15 +86,15 @@ Escort::App.create do |app|
|
|
88
86
|
PDQTest::Instance.set_privileged(options[:global][:options][:privileged])
|
89
87
|
PDQTest::Instance.set_keep_container(options[:global][:options][:keep_container])
|
90
88
|
PDQTest::Instance.set_docker_image(options[:global][:options][:image_name])
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
89
|
+
Dir.chdir ".." do
|
90
|
+
PDQTest::Core.run([
|
91
|
+
lambda {PDQTest::Pdk.run("validate 'metadata,puppet'")},
|
92
|
+
lambda {PDQTest::Puppet.install_modules},
|
93
|
+
lambda {PDQTest::Pdk.run("test unit")},
|
94
|
+
lambda {PDQTest::Instance.run},
|
95
|
+
lambda {PDQTest::Pdk.run("build --force")},
|
96
|
+
])
|
97
|
+
end
|
100
98
|
end
|
101
99
|
end
|
102
100
|
|
@@ -114,12 +112,13 @@ Escort::App.create do |app|
|
|
114
112
|
PDQTest::Instance.set_keep_container(options[:global][:options][:keep_container])
|
115
113
|
PDQTest::Instance.set_docker_image(options[:global][:options][:image_name])
|
116
114
|
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
115
|
+
Dir.chdir ".." do
|
116
|
+
PDQTest::Core.run([
|
117
|
+
lambda {PDQTest::Fastcheck.run},
|
118
|
+
lambda {PDQTest::Puppet.install_modules},
|
119
|
+
lambda {PDQTest::Instance.run},
|
120
|
+
])
|
121
|
+
end
|
123
122
|
end
|
124
123
|
end
|
125
124
|
|
@@ -131,7 +130,9 @@ Escort::App.create do |app|
|
|
131
130
|
$logger.level = :debug if options[:global][:options][:debug]
|
132
131
|
|
133
132
|
PDQTest::Emoji.disable(options[:global][:options][:disable_emoji])
|
134
|
-
|
133
|
+
Dir.chdir ".." do
|
134
|
+
PDQTest::Core.run(lambda {PDQTest::Pdk.run("test unit")})
|
135
|
+
end
|
135
136
|
end
|
136
137
|
end
|
137
138
|
|
@@ -157,7 +158,9 @@ Escort::App.create do |app|
|
|
157
158
|
PDQTest::Instance.set_docker_image(options[:global][:options][:image_name])
|
158
159
|
PDQTest::Instance.set_keep_container(options[:global][:options][:keep_container])
|
159
160
|
example = options[:global][:commands][:acceptance][:options][:example]
|
160
|
-
|
161
|
+
Dir.chdir ".." do
|
162
|
+
PDQTest::Core.run(lambda {PDQTest::Instance.run(example)})
|
163
|
+
end
|
161
164
|
end
|
162
165
|
end
|
163
166
|
|
@@ -191,7 +194,9 @@ Escort::App.create do |app|
|
|
191
194
|
PDQTest::Emoji.disable(options[:global][:options][:disable_emoji])
|
192
195
|
example = options[:global][:commands][:generate_acceptance][:options][:example]
|
193
196
|
|
194
|
-
|
197
|
+
Dir.chdir ".." do
|
198
|
+
PDQTest::Skeleton.generate_acceptance(example)
|
199
|
+
end
|
195
200
|
end
|
196
201
|
end
|
197
202
|
|
@@ -216,7 +221,9 @@ Escort::App.create do |app|
|
|
216
221
|
$logger.level = :debug if options[:global][:options][:debug]
|
217
222
|
|
218
223
|
PDQTest::Emoji.disable(options[:global][:options][:disable_emoji])
|
219
|
-
|
224
|
+
Dir.chdir ".." do
|
225
|
+
PDQTest::Core.run(lambda {PDQTest::Pdk.run("validate 'metadata,puppet'")})
|
226
|
+
end
|
220
227
|
end
|
221
228
|
end
|
222
229
|
|
@@ -228,11 +235,13 @@ Escort::App.create do |app|
|
|
228
235
|
PDQTest::Logger.logger
|
229
236
|
$logger.level = :debug if options[:global][:options][:debug]
|
230
237
|
|
231
|
-
|
232
|
-
PDQTest::
|
233
|
-
|
234
|
-
|
235
|
-
|
238
|
+
Dir.chdir ".." do
|
239
|
+
PDQTest::Core.run(lambda {
|
240
|
+
PDQTest::Docker::IMAGES.each { |key, image|
|
241
|
+
system("docker pull #{image}")
|
242
|
+
}
|
243
|
+
})
|
244
|
+
end
|
236
245
|
end
|
237
246
|
end
|
238
247
|
|
@@ -243,7 +252,9 @@ Escort::App.create do |app|
|
|
243
252
|
PDQTest::Logger.logger
|
244
253
|
$logger.level = :debug if options[:global][:options][:debug]
|
245
254
|
|
246
|
-
|
255
|
+
Dir.chdir ".." do
|
256
|
+
PDQTest::Puppet.info
|
257
|
+
end
|
247
258
|
end
|
248
259
|
end
|
249
260
|
|
@@ -255,7 +266,9 @@ Escort::App.create do |app|
|
|
255
266
|
PDQTest::Logger.logger
|
256
267
|
$logger.level = :debug if options[:global][:options][:debug]
|
257
268
|
|
258
|
-
|
269
|
+
Dir.chdir ".." do
|
270
|
+
PDQTest::Upgrade.upgrade
|
271
|
+
end
|
259
272
|
end
|
260
273
|
end
|
261
274
|
end
|
data/lib/pdqtest/pdk.rb
CHANGED
@@ -61,11 +61,6 @@ module PDQTest
|
|
61
61
|
].include? e
|
62
62
|
}
|
63
63
|
|
64
|
-
# we must run build target nastyhack before running PDK on linux
|
65
|
-
if ! Util.is_windows
|
66
|
-
$logger.warn("Running nasty hack: https://tickets.puppetlabs.com/browse/PDK-1192")
|
67
|
-
system("make nastyhack")
|
68
|
-
end
|
69
64
|
status = system(env, pdk, :unsetenv_others=>true)
|
70
65
|
|
71
66
|
PDQTest::Emoji.partial_status(status, subcommand)
|
data/lib/pdqtest/puppet.rb
CHANGED
@@ -280,8 +280,8 @@ module PDQTest
|
|
280
280
|
setup_script = Util.joinp(XATS_TESTS, test_basename(example)) + setting(:setup_suffix)
|
281
281
|
if File.exists?(setup_script)
|
282
282
|
script = File.read(setup_script)
|
283
|
-
|
284
|
-
if script
|
283
|
+
$logger.debug "setup script: \n #{script}"
|
284
|
+
if script.strip.empty?
|
285
285
|
$logger.info "skipping empty setup script at #{setup_script}"
|
286
286
|
else
|
287
287
|
$logger.info "Setting up test for #{example}"
|
data/lib/pdqtest/skeleton.rb
CHANGED
@@ -44,8 +44,16 @@ module PDQTest
|
|
44
44
|
def self.should_replace_file(target, skeleton)
|
45
45
|
target_hash = Digest::SHA256.file target
|
46
46
|
skeleton_hash = Digest::SHA256.file skeleton
|
47
|
-
|
48
|
-
|
47
|
+
puts Dir.pwd
|
48
|
+
puts target
|
49
|
+
puts skeleton
|
50
|
+
puts target_hash
|
51
|
+
puts skeleton_hash
|
52
|
+
puts Digest::SHA256.file "/nothere"
|
53
|
+
should = (target_hash != skeleton_hash)
|
54
|
+
$logger.debug "should replace: #{should}"
|
55
|
+
|
56
|
+
should
|
49
57
|
end
|
50
58
|
|
51
59
|
def self.install_skeletons
|
@@ -59,11 +67,14 @@ module PDQTest
|
|
59
67
|
if File.exists?(target_file)
|
60
68
|
if replace && should_replace_file(target_file, skeleton_file)
|
61
69
|
install = true
|
70
|
+
else
|
71
|
+
$logger.debug "#{target_file} exists and will not be replaced"
|
62
72
|
end
|
63
73
|
else
|
64
74
|
install = true
|
65
75
|
end
|
66
76
|
if install
|
77
|
+
$logger.debug "Installing skeleton file at #{target_file}"
|
67
78
|
FileUtils.cp(skeleton_file, target_file)
|
68
79
|
end
|
69
80
|
end
|
data/lib/pdqtest/upgrade.rb
CHANGED
@@ -2,7 +2,8 @@ require 'pdqtest/skeleton'
|
|
2
2
|
|
3
3
|
module PDQTest
|
4
4
|
module Upgrade
|
5
|
-
|
5
|
+
GEMDIR = '.pdqtest'
|
6
|
+
GEMFILE = File.join(GEMDIR,'Gemfile')
|
6
7
|
GEM_REGEXP = /gem ('|")([-\w]+)('|").*$/
|
7
8
|
GEM_ATTRIB_REGEXP = /^\s*:\w+/
|
8
9
|
|
@@ -11,15 +12,22 @@ module PDQTest
|
|
11
12
|
'line' => "gem 'pdqtest', '#{PDQTest::VERSION}'",
|
12
13
|
'added' => false,
|
13
14
|
},
|
14
|
-
'puppet-strings'
|
15
|
-
|
16
|
-
|
15
|
+
'puppet-strings' => {
|
16
|
+
'line' => "gem 'puppet-strings'",
|
17
|
+
'added' => false,
|
18
|
+
},
|
19
|
+
'puppet' => {
|
20
|
+
'line' => "gem 'puppet'",
|
21
|
+
'added' => false,
|
17
22
|
},
|
18
23
|
}
|
19
24
|
|
20
25
|
|
21
26
|
# upgrade a module to the latest version of PDQTest
|
22
27
|
def self.upgrade()
|
28
|
+
if ! Dir.exist?(GEMDIR)
|
29
|
+
Dir.mkdir GEMDIR
|
30
|
+
end
|
23
31
|
t_file = File.open("#{GEMFILE}.tmp","w")
|
24
32
|
updating_gem = false
|
25
33
|
|
data/lib/pdqtest/util.rb
CHANGED
@@ -30,7 +30,7 @@ module PDQTest
|
|
30
30
|
# need to wrap commands with shell to gain access to
|
31
31
|
# shell functions like `cd` etc
|
32
32
|
def self.wrap_cmd(cmd)
|
33
|
-
if cmd
|
33
|
+
if cmd.strip.empty? || cmd == "bash" || cmd == "powershell"
|
34
34
|
raise "Missing command to wrap!"
|
35
35
|
end
|
36
36
|
|
data/lib/pdqtest/version.rb
CHANGED
data/res/skeleton/Makefile
CHANGED
@@ -1,33 +1,38 @@
|
|
1
|
-
all:
|
2
|
-
bundle exec pdqtest all
|
1
|
+
all:
|
2
|
+
cd .pdqtest && bundle exec pdqtest all
|
3
|
+
$(MAKE) docs
|
3
4
|
|
4
|
-
fast:
|
5
|
-
bundle exec pdqtest fast
|
5
|
+
fast:
|
6
|
+
cd .pdqtest && bundle exec pdqtest fast
|
6
7
|
|
7
|
-
shell:
|
8
|
-
bundle exec pdqtest --keep-container acceptance
|
8
|
+
shell:
|
9
|
+
cd .pdqtest && bundle exec pdqtest --keep-container acceptance
|
9
10
|
|
10
|
-
|
11
|
-
bundle exec pdqtest
|
11
|
+
setup:
|
12
|
+
cd .pdqtest && bundle exec pdqtest setup
|
12
13
|
|
13
|
-
|
14
|
-
bundle exec pdqtest
|
15
|
-
|
14
|
+
shellnopuppet:
|
15
|
+
cd .pdqtest && bundle exec pdqtest shell
|
16
|
+
|
17
|
+
logical:
|
18
|
+
cd .pdqtest && bundle exec pdqtest syntax
|
19
|
+
cd .pdqtest && bundle exec pdqtest rspec
|
20
|
+
$(MAKE) docs
|
16
21
|
|
17
22
|
nastyhack:
|
18
23
|
# fix for - https://tickets.puppetlabs.com/browse/PDK-1192
|
19
24
|
find vendor -iname '*.pp' -exec rm {} \;
|
20
25
|
|
21
26
|
bundle:
|
22
|
-
# Obtain puppet 5x and lock
|
23
|
-
pdk bundle install
|
24
27
|
# Install all gems into _normal world_ bundle so we can use all of em
|
25
|
-
bundle install
|
28
|
+
cd .pdqtest && bundle install
|
26
29
|
|
27
30
|
Gemfile.local:
|
28
31
|
echo "[🐌] Creating symlink and running pdk bundle..."
|
29
32
|
ln -s Gemfile.project Gemfile.local
|
30
|
-
|
33
|
+
|
34
|
+
docs:
|
35
|
+
cd .pdqtest && bundle exec "cd ..&& puppet strings"
|
31
36
|
|
32
37
|
|
33
38
|
|