simp-beaker-helpers 1.20.1 → 1.21.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +13 -0
- data/lib/simp/beaker_helpers.rb +76 -54
- data/lib/simp/beaker_helpers/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6c454a97bb3100de8137245a8f4e328451e4048665c482db961c668cb820c972
|
4
|
+
data.tar.gz: 1aed320014ebd403f631faeb3f29484f6cc55a4441a4e499beab7409e289f101
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b1df4f0b7411eead1d2c0d49f4f16d7a4f5dde7162ce91cb3fcba07018382508e56a8e16fdd65f06ee0b74fa2f4e6d036a7ea7f1d3c292964ce4face723bbb04
|
7
|
+
data.tar.gz: 82fb880cc4c7c975aa7a4b44134ec88f6d34d7a30431914c22b2616e54880b00ec647221779dda3d12e2b3f99923af49d3ce49a03efa20d04d318db3457189a4
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,16 @@
|
|
1
|
+
### 1.21.2 / 2021-01-15
|
2
|
+
* Fixed version mismatch. 1.21.1 was tagged with an incorrect version
|
3
|
+
in version.rb.
|
4
|
+
|
5
|
+
### 1.21.1 / 2021-01-13
|
6
|
+
* Added:
|
7
|
+
* update_package_from_centos_stream method
|
8
|
+
* install_latest_package_on method
|
9
|
+
* Fixed:
|
10
|
+
* Removed some of the extraneous calls to facter
|
11
|
+
* Automatically pull the CentOS 8 kernel to the latest version in
|
12
|
+
CentOS-Stream to work around issues on FIPS systems
|
13
|
+
|
1
14
|
### 1.20.1 / 2021-01-08
|
2
15
|
* Fixed:
|
3
16
|
* Ensure that yum calls commands appropriately depending on whether or not
|
data/lib/simp/beaker_helpers.rb
CHANGED
@@ -18,6 +18,30 @@ module Simp::BeakerHelpers
|
|
18
18
|
"simp-beaker-helpers-#{t}-#{$$}-#{rand(0x100000000).to_s(36)}.tmp"
|
19
19
|
end
|
20
20
|
|
21
|
+
def install_latest_package_on(sut, package_name, package_source=nil, opts={})
|
22
|
+
default_opts = {
|
23
|
+
max_retries: 3,
|
24
|
+
retry_interval: 10
|
25
|
+
}
|
26
|
+
|
27
|
+
package_source = package_name unless package_source
|
28
|
+
|
29
|
+
if sut.check_for_package(package_name)
|
30
|
+
sut.upgrade_package(
|
31
|
+
package_source,
|
32
|
+
'',
|
33
|
+
default_opts.merge(opts)
|
34
|
+
)
|
35
|
+
else
|
36
|
+
sut.install_package(
|
37
|
+
package_source,
|
38
|
+
'',
|
39
|
+
nil,
|
40
|
+
default_opts.merge(opts)
|
41
|
+
)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
21
45
|
def is_windows?(sut)
|
22
46
|
sut[:platform] =~ /windows/i
|
23
47
|
end
|
@@ -327,7 +351,7 @@ module Simp::BeakerHelpers
|
|
327
351
|
|
328
352
|
def munge_ssh_crypto_policies(sut, key_types=['ssh-rsa'])
|
329
353
|
if has_crypto_policies(sut)
|
330
|
-
|
354
|
+
install_latest_package_on(sut, 'crypto-policies', nil, :accept_all_exit_codes => true)
|
331
355
|
|
332
356
|
# Since we may be doing this prior to having a box flip into FIPS mode, we
|
333
357
|
# need to find and modify *all* of the affected policies
|
@@ -497,15 +521,10 @@ module Simp::BeakerHelpers
|
|
497
521
|
|
498
522
|
# This is based on the official EPEL docs https://fedoraproject.org/wiki/EPEL
|
499
523
|
if ['RedHat', 'CentOS'].include?(os_info['name'])
|
500
|
-
|
501
|
-
yum_operation = 'install'
|
502
|
-
yum_operation = 'update' if sut.check_for_package('epel-release')
|
503
|
-
|
504
|
-
on(
|
524
|
+
install_latest_package_on(
|
505
525
|
sut,
|
506
|
-
|
507
|
-
|
508
|
-
:retry_interval => 10
|
526
|
+
'epel-release',
|
527
|
+
"https://dl.fedoraproject.org/pub/epel/epel-release-latest-#{os_maj_rel}.noarch.rpm",
|
509
528
|
)
|
510
529
|
|
511
530
|
if os_info['name'] == 'RedHat'
|
@@ -530,11 +549,19 @@ module Simp::BeakerHelpers
|
|
530
549
|
end
|
531
550
|
end
|
532
551
|
|
552
|
+
def update_package_from_centos_stream(sut, package_name)
|
553
|
+
sut.install_package('centos-release-stream') unless sut.check_for_package('centos-release-stream')
|
554
|
+
install_latest_package_on(sut, package_name)
|
555
|
+
sut.uninstall_package('centos-release-stream')
|
556
|
+
end
|
557
|
+
|
533
558
|
def linux_errata( sut )
|
534
559
|
# We need to be able to flip between server and client without issue
|
535
560
|
on sut, 'puppet resource group puppet gid=52'
|
536
561
|
on sut, 'puppet resource user puppet comment="Puppet" gid="52" uid="52" home="/var/lib/puppet" managehome=true'
|
537
562
|
|
563
|
+
os_info = fact_on(sut, 'os')
|
564
|
+
|
538
565
|
# Make sure we have a domain on our host
|
539
566
|
current_domain = fact_on(sut, 'domain').strip
|
540
567
|
hostname = fact_on(sut, 'hostname').strip
|
@@ -601,8 +628,9 @@ module Simp::BeakerHelpers
|
|
601
628
|
configure_type_defaults_on(sut)
|
602
629
|
end
|
603
630
|
|
604
|
-
if
|
605
|
-
|
631
|
+
if os_info['family'] == 'RedHat'
|
632
|
+
# OS-specific items
|
633
|
+
if os_info['name'] == 'RedHat'
|
606
634
|
RSpec.configure do |c|
|
607
635
|
c.before(:all) do
|
608
636
|
rhel_rhsm_subscribe(sut)
|
@@ -614,19 +642,28 @@ module Simp::BeakerHelpers
|
|
614
642
|
end
|
615
643
|
end
|
616
644
|
|
617
|
-
|
618
|
-
|
645
|
+
if ['CentOS','RedHat','OracleLinux'].include?(os_info['name'])
|
646
|
+
enable_yum_repos_on(sut)
|
647
|
+
enable_epel_on(sut)
|
619
648
|
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
649
|
+
# net-tools required for netstat utility being used by be_listening
|
650
|
+
if os_info['release']['major'].to_i >= 7
|
651
|
+
pp = <<-EOS
|
652
|
+
package { 'net-tools': ensure => installed }
|
653
|
+
EOS
|
654
|
+
apply_manifest_on(sut, pp, :catch_failures => false)
|
655
|
+
end
|
656
|
+
|
657
|
+
if (os_info['name'] == 'CentOS') && (os_info['release']['major'].to_i >= 8)
|
658
|
+
if os_info['release']['minor'].to_i == 3
|
659
|
+
update_package_from_centos_stream(sut, 'kernel')
|
660
|
+
sut.reboot
|
661
|
+
end
|
662
|
+
end
|
627
663
|
|
628
|
-
|
629
|
-
|
664
|
+
# Clean up YUM prior to starting our test runs.
|
665
|
+
on(sut, 'yum clean all')
|
666
|
+
end
|
630
667
|
end
|
631
668
|
end
|
632
669
|
|
@@ -687,7 +724,7 @@ module Simp::BeakerHelpers
|
|
687
724
|
end
|
688
725
|
|
689
726
|
def sosreport(sut, dest='sosreports')
|
690
|
-
|
727
|
+
install_latest_package_on(sut, 'sos')
|
691
728
|
on(sut, 'sosreport --batch')
|
692
729
|
|
693
730
|
files = on(sut, 'ls /var/tmp/sosreport* /tmp/sosreport* 2>/dev/null', :accept_all_exit_codes => true).output.lines.map(&:strip)
|
@@ -873,18 +910,18 @@ module Simp::BeakerHelpers
|
|
873
910
|
# Need to hash all of the CA certificates so that apps can use them
|
874
911
|
# properly! This must happen on the host itself since it needs to match
|
875
912
|
# the native hashing algorithms.
|
876
|
-
hash_cmd =
|
877
|
-
cd #{sut_pki_dir}/cacerts; \
|
878
|
-
for x in *; do \
|
879
|
-
|
880
|
-
|
881
|
-
|
882
|
-
|
883
|
-
|
884
|
-
|
885
|
-
|
886
|
-
done
|
887
|
-
|
913
|
+
hash_cmd = <<~EOM.strip
|
914
|
+
cd #{sut_pki_dir}/cacerts; \
|
915
|
+
for x in *; do \
|
916
|
+
if [ ! -h "$x" ]; then \
|
917
|
+
`openssl x509 -in $x >/dev/null 2>&1`; \
|
918
|
+
if [ $? -eq 0 ]; then \
|
919
|
+
hash=`openssl x509 -in $x -hash | head -1`; \
|
920
|
+
ln -sf $x $hash.0; \
|
921
|
+
fi; \
|
922
|
+
fi; \
|
923
|
+
done
|
924
|
+
EOM
|
888
925
|
|
889
926
|
on(sut, hash_cmd)
|
890
927
|
end
|
@@ -1299,26 +1336,11 @@ done
|
|
1299
1336
|
def install_simp_repos(sut, disable = [])
|
1300
1337
|
# NOTE: Do *NOT* use puppet in this method since it may not be available yet
|
1301
1338
|
|
1302
|
-
|
1303
|
-
|
1304
|
-
yum_operation = 'update' if sut.check_for_package('yum-utils')
|
1305
|
-
|
1306
|
-
on(
|
1307
|
-
sut,
|
1308
|
-
"yum -y #{yum_operation} yum-utils",
|
1309
|
-
:max_retries => 3,
|
1310
|
-
:retry_interval => 10
|
1311
|
-
)
|
1312
|
-
|
1313
|
-
# EL7 returns 1 if install is called and there is nothing to do
|
1314
|
-
yum_operation = 'install'
|
1315
|
-
yum_operation = 'update' if sut.check_for_package('simp-release-community')
|
1316
|
-
|
1317
|
-
on(
|
1339
|
+
install_latest_package_on(sut, 'yum-utils')
|
1340
|
+
install_latest_package_on(
|
1318
1341
|
sut,
|
1319
|
-
|
1320
|
-
|
1321
|
-
:retry_interval => 10
|
1342
|
+
'simp-release-community',
|
1343
|
+
"https://download.simp-project.com/simp-release-community.rpm",
|
1322
1344
|
)
|
1323
1345
|
|
1324
1346
|
to_disable = disable.dup
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simp-beaker-helpers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.21.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Tessmer
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2021-01-
|
12
|
+
date: 2021-01-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: beaker
|