Skip to content

Commit

Permalink
(SIMP-7473) Add EL8 support (simp#100)
Browse files Browse the repository at this point in the history
- Via updated acceptance tests, verified that the existing
  configuration worked on EL8 and that EL7 interoperated with EL8.
- Did not address any new rsyslog features available in EL8.
- False compliance failures reported in the compliance acceptance
  test will be addressed by a separate ticket.

SIMP-7272 #close
SIMP-7273 #close
SIMP-7437 #close
SIMP-7384 #close
SIMP-7202 #comment update simp-rsyslog
  • Loading branch information
lnemsick-simp authored and trevor-vaughan committed Jan 14, 2020
1 parent a09ffab commit 0b09e50
Show file tree
Hide file tree
Showing 21 changed files with 706 additions and 74 deletions.
3 changes: 3 additions & 0 deletions .fixtures.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ fixtures:
augeasproviders_grub: https://github.com/hercules-team/augeasproviders_grub
compliance_markup: https://github.com/simp/pupmod-simp-compliance_markup
concat: https://github.com/simp/puppetlabs-concat
firewalld:
repo: https://github.com/simp/pupmod-voxpupuli-firewalld
ref: v4.1.0
iptables: https://github.com/simp/pupmod-simp-iptables
logrotate: https://github.com/simp/pupmod-simp-logrotate
pki: https://github.com/simp/pupmod-simp-pki
Expand Down
60 changes: 31 additions & 29 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -69,10 +69,10 @@ variables:
BEAKER_PUPPET_COLLECTION: 'puppet5'
MATRIX_RUBY_VERSION: '2.4'

.pup_5_5_10: &pup_5_5_10
.pup_5_5_16: &pup_5_5_16
image: 'ruby:2.4'
variables:
PUPPET_VERSION: '5.5.10'
PUPPET_VERSION: '5.5.16'
BEAKER_PUPPET_COLLECTION: 'puppet5'
MATRIX_RUBY_VERSION: '2.4'

Expand Down Expand Up @@ -149,8 +149,8 @@ pup5-unit:
<<: *pup_5
<<: *unit_tests

pup5.5.10-unit:
<<: *pup_5_5_10
pup5.5.16-unit:
<<: *pup_5_5_16
<<: *unit_tests

pup6-unit:
Expand All @@ -159,58 +159,58 @@ pup6-unit:

# Acceptance tests
# ==============================================================================
pup5.5.10:
<<: *pup_5_5_10
pup5.5.16:
<<: *pup_5_5_16
<<: *acceptance_base
script:
- 'bundle exec rake beaker:suites[default]'
- 'bundle exec rake beaker:suites[default,default]'

pup5.5.10-centos6:
<<: *pup_5_5_10
pup5.5.16-centos7:
<<: *pup_5_5_16
<<: *acceptance_base
<<: *only_with_SIMP_FULL_MATRIX
script:
- 'bundle exec rake beaker:suites[default,centos-6]'
- 'bundle exec rake beaker:suites[default,centos-7]'

# Until we can figure out how to make this test robust, it is not worth
# wasting GitLab runner time to run this permutation.
# Manually, we can see that failover is working, but all the messages
# don't make it to the failover server in a timely fashion, even if
# we force the rsyslog queues to be small.
#pup5.5.10-failover:
# <<: *pup_5_5_10
#pup5.5.16-failover:
# <<: *pup_5_5_16
# <<: *acceptance_base
# <<: *only_with_SIMP_FULL_MATRIX
# script:
# - 'bundle exec rake beaker:suites[failover]'
# - 'bundle exec rake beaker:suites[failover,default]'

pup5.5.10-doubleforward:
<<: *pup_5_5_10
pup5.5.16-doubleforward:
<<: *pup_5_5_16
<<: *acceptance_base
script:
- 'bundle exec rake beaker:suites[doubleforward]'
- 'bundle exec rake beaker:suites[doubleforward,default]'

pup5.5.10-centos6-doubleforward:
<<: *pup_5_5_10
pup5.5.16-centos7-doubleforward:
<<: *pup_5_5_16
<<: *acceptance_base
<<: *only_with_SIMP_FULL_MATRIX
script:
- 'bundle exec rake beaker:suites[doubleforward,centos-6]'
- 'bundle exec rake beaker:suites[doubleforward,centos-7]'

pup5.5.10-fips:
<<: *pup_5_5_10
pup5.5.16-fips:
<<: *pup_5_5_16
<<: *acceptance_base
script:
- 'BEAKER_fips=yes bundle exec rake beaker:suites[default]'
- 'BEAKER_fips=yes bundle exec rake beaker:suites[default,default]'

pup5.5.10-oel:
<<: *pup_5_5_10
pup5.5.16-oel:
<<: *pup_5_5_16
<<: *acceptance_base
script:
- 'bundle exec rake beaker:suites[default,oel]'

pup5.5.10-oel-fips:
<<: *pup_5_5_10
pup5.5.16-oel-fips:
<<: *pup_5_5_16
<<: *acceptance_base
<<: *only_with_SIMP_FULL_MATRIX
script:
Expand All @@ -220,16 +220,18 @@ pup6:
<<: *pup_6
<<: *acceptance_base
script:
- 'bundle exec rake beaker:suites[default]'
- 'bundle exec rake beaker:suites[default,default]'

pup6-fips:
<<: *pup_6
<<: *acceptance_base
script:
- 'BEAKER_fips=yes bundle exec rake beaker:suites[default]'
- 'BEAKER_fips=yes bundle exec rake beaker:suites[default,default]'

pup6-compliance:
# See SIMP-7483
allow_failure: true
<<: *pup_6
<<: *compliance_base
script:
- 'BEAKER_fips=yes bundle exec rake beaker:suites[compliance]'
- 'BEAKER_fips=yes bundle exec rake beaker:suites[compliance,default]'
2 changes: 2 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
* Fri Jan 10 2020 Liz Nemsick <[email protected]> - 7.6.0-0
- Added EL8 support

* Wed Oct 16 2019 Adam Yohrling <[email protected]> - 7.5.1-0
- Added logrotate::rule options to rsyslog::conf::logrotate class
Expand Down
6 changes: 3 additions & 3 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ group :test do
gem 'puppet-strings'
gem 'puppet-lint-empty_string-check', :require => false
gem 'puppet-lint-trailing_comma-check', :require => false
gem 'simp-rspec-puppet-facts', ENV.fetch('SIMP_RSPEC_PUPPET_FACTS_VERSION', '~> 2.2')
gem 'simp-rake-helpers', ENV.fetch('SIMP_RAKE_HELPERS_VERSION', '~> 5.6')
gem 'simp-rspec-puppet-facts', ENV.fetch('SIMP_RSPEC_PUPPET_FACTS_VERSION', ['>= 2.4.0', '< 3.0.0'] )
gem 'simp-rake-helpers', ENV.fetch('SIMP_RAKE_HELPERS_VERSION', ['>= 5.9', '< 6.0'])
end

group :development do
Expand All @@ -25,5 +25,5 @@ end
group :system_tests do
gem 'beaker'
gem 'beaker-rspec'
gem 'simp-beaker-helpers', ENV.fetch('SIMP_BEAKER_HELPERS_VERSION', '~> 1.12')
gem 'simp-beaker-helpers', ENV.fetch('SIMP_BEAKER_HELPERS_VERSION', ['>= 1.17.0', '< 2.0.0'])
end
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -268,14 +268,14 @@ rsyslog::rule::remote { 'upstream':

## Reference

The full module reference can be found in the
[module docs](https://simp.github.io/pupmod-simp-rsyslog) and in the local
`docs/` directory.
Please refer to the [REFERENCE.md](./REFERENCE.md).

## Limitations

This module is only designed to work in RHEL or CentOS 6 and 7. Any other
operating systems have not been tested and results cannot be guaranteed.
SIMP Puppet modules are generally intended for use on Red Hat Enterprise
Linux and compatible distributions, such as CentOS. Please see the
[`metadata.json` file](./metadata.json) for the most up-to-date list of
supported operating systems, Puppet versions, and module dependencies.

By default, `pupmod-simp-rsyslog` tries to do the right thing during a failover
scenario and make sure that logs are always stored no matter what the state of
Expand Down
11 changes: 7 additions & 4 deletions metadata.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "simp-rsyslog",
"version": "7.5.1",
"version": "7.6.0",
"author": "SIMP Team",
"summary": "A puppet module to support RSyslog versions 7 and higher using new style RainerScript.",
"license": "Apache-2.0",
Expand Down Expand Up @@ -47,21 +47,24 @@
"operatingsystem": "CentOS",
"operatingsystemrelease": [
"6",
"7"
"7",
"8"
]
},
{
"operatingsystem": "RedHat",
"operatingsystemrelease": [
"6",
"7"
"7",
"8"
]
},
{
"operatingsystem": "OracleLinux",
"operatingsystemrelease": [
"6",
"7"
"7",
"8"
]
}
],
Expand Down
61 changes: 61 additions & 0 deletions spec/acceptance/nodesets/centos-7.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
<%
if ENV['BEAKER_HYPERVISOR']
hypervisor = ENV['BEAKER_HYPERVISOR']
else
hypervisor = 'vagrant'
end
-%>
HOSTS:
client:
roles:
- default
- master
- client
platform: el-7-x86_64
box: centos/7
hypervisor: <%= hypervisor %>
yum_repos:
chef-current:
baseurl: 'https://packages.chef.io/repos/yum/current/el/7/$basearch'
gpgkeys:
- https://packages.chef.io/chef.asc
server-1:
roles:
- server
platform: el-7-x86_64
box: centos/7
hypervisor: <%= hypervisor %>
yum_repos:
chef-current:
baseurl: 'https://packages.chef.io/repos/yum/current/el/7/$basearch'
gpgkeys:
- https://packages.chef.io/chef.asc
server-2:
roles:
- server
platform: el-8-x86_64
box: centos/8
hypervisor: <%= hypervisor %>
yum_repos:
chef-current:
baseurl: 'https://packages.chef.io/repos/yum/current/el/8/$basearch'
gpgkeys:
- https://packages.chef.io/chef.asc
server-3:
roles:
- failover_server
platform: el-7-x86_64
box: centos/7
hypervisor: <%= hypervisor %>
yum_repos:
chef-current:
baseurl: 'https://packages.chef.io/repos/yum/current/el/7/$basearch'
gpgkeys:
- https://packages.chef.io/chef.asc
CONFIG:
log_level: verbose
type: aio
vagrant_memsize: 256
<% if ENV['BEAKER_PUPPET_COLLECTION'] -%>
puppet_collection: <%= ENV['BEAKER_PUPPET_COLLECTION'] %>
<% end -%>
24 changes: 12 additions & 12 deletions spec/acceptance/nodesets/default.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,45 +11,45 @@ HOSTS:
- default
- master
- client
platform: el-7-x86_64
box: centos/7
platform: el-8-x86_64
box: centos/8
hypervisor: <%= hypervisor %>
yum_repos:
chef-current:
baseurl: 'https://packages.chef.io/repos/yum/current/el/7/$basearch'
baseurl: 'https://packages.chef.io/repos/yum/current/el/8/$basearch'
gpgkeys:
- https://packages.chef.io/chef.asc
server-1:
roles:
- server
platform: el-7-x86_64
box: centos/7
platform: el-8-x86_64
box: centos/8
hypervisor: <%= hypervisor %>
yum_repos:
chef-current:
baseurl: 'https://packages.chef.io/repos/yum/current/el/7/$basearch'
baseurl: 'https://packages.chef.io/repos/yum/current/el/8/$basearch'
gpgkeys:
- https://packages.chef.io/chef.asc
server-2:
roles:
- server
platform: el-6-x86_64
box: centos/6
platform: el-7-x86_64
box: centos/7
hypervisor: <%= hypervisor %>
yum_repos:
chef-current:
baseurl: 'https://packages.chef.io/repos/yum/current/el/6/$basearch'
baseurl: 'https://packages.chef.io/repos/yum/current/el/7/$basearch'
gpgkeys:
- https://packages.chef.io/chef.asc
server-3:
roles:
- failover_server
platform: el-7-x86_64
box: centos/7
platform: el-8-x86_64
box: centos/8
hypervisor: <%= hypervisor %>
yum_repos:
chef-current:
baseurl: 'https://packages.chef.io/repos/yum/current/el/7/$basearch'
baseurl: 'https://packages.chef.io/repos/yum/current/el/8/$basearch'
gpgkeys:
- https://packages.chef.io/chef.asc
CONFIG:
Expand Down
16 changes: 8 additions & 8 deletions spec/acceptance/nodesets/oel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,26 +11,26 @@ HOSTS:
- default
- master
- client
platform: el-7-x86_64
box: onyxpoint/oel-7-x86_64
platform: el-8-x86_64
box: generic/oracle8
hypervisor: <%= hypervisor %>
server-1:
roles:
- server
platform: el-7-x86_64
box: onyxpoint/oel-7-x86_64
platform: el-8-x86_64
box: generic/oracle8
hypervisor: <%= hypervisor %>
server-2:
roles:
- server
platform: el-6-x86_64
box: onyxpoint/oel-7-x86_64
platform: el-7-x86_64
box: generic/oracle7
hypervisor: <%= hypervisor %>
server-3:
roles:
- failover_server
platform: el-7-x86_64
box: onyxpoint/oel-7-x86_64
platform: el-8-x86_64
box: generic/oracle8
hypervisor: <%= hypervisor %>
CONFIG:
log_level: verbose
Expand Down
2 changes: 1 addition & 1 deletion spec/acceptance/suites/default/00_default_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -243,7 +243,7 @@ class { 'rsyslog': pki => false }
it 'should see entries from the journal in /var/log/messages' do
on client, "echo someeasytosearchforstring | systemd-cat -p notice -t acceptance"

on client, "grep someeasytosearchforstring /var/log/messages"
retry_on client, "grep someeasytosearchforstring /var/log/messages"
end
end

Expand Down
Loading

0 comments on commit 0b09e50

Please sign in to comment.