From 6637bd9a5618571f90f0a9c5739f492390aa1c96 Mon Sep 17 00:00:00 2001 From: chris lawrence Date: Fri, 22 May 2020 10:43:42 +0100 Subject: [PATCH] adding in base time --- .onceover/Rakefile | 6 + .../code/environments/production/.gitignore | 2 + .../production/.onceover_manifest.json | 1 + .../code/environments/production/CODEOWNERS | 1 + .../code/environments/production/Gemfile | 3 + .../code/environments/production/LICENSE | 202 +++++++++ .../code/environments/production/Puppetfile | 63 +++ .../code/environments/production/README.md | 119 ++++++ .../code/environments/production/Rakefile | 1 + .../environments/production/data/common.yaml | 16 + .../production/data/environments/test.yaml | 2 + .../production/data/nodes/example-node.yaml | 1 + .../production/data/nodes/peadm-01.pe.yaml | 7 + .../production/data/nodes/puppet.home.yaml | 3 + .../data/nodes/puppet.plaform9.puppet.net | 6 + .../data/secrets/node/peadm-01.pe.eyaml | 2 + .../data/secrets/node/puppet.home.eyaml | 2 + .../environments/production/environment.conf | 2 + .../code/environments/production/hiera.yaml | 21 + .../environments/production/manifests/site.pp | 47 +++ .../production/scripts/config_version-r10k.rb | 19 + .../scripts/config_version-rugged.rb | 25 ++ .../production/scripts/config_version.sh | 35 ++ .../site-modules/custom_files/7z1900-x64.exe | Bin 0 -> 1447178 bytes .../site-modules/custom_files/master.zip | Bin 0 -> 1431423 bytes .../site-modules/profile/.fixtures.yml | 6 + .../site-modules/profile/.gitattributes | 5 + .../site-modules/profile/.gitignore | 27 ++ .../site-modules/profile/.gitlab-ci.yml | 41 ++ .../site-modules/profile/.pdkignore | 42 ++ .../site-modules/profile/.puppet-lint.rc | 1 + .../production/site-modules/profile/.rspec | 2 + .../site-modules/profile/.rubocop.yml | 133 ++++++ .../site-modules/profile/.travis.yml | 45 ++ .../profile/.vscode/extensions.json | 6 + .../production/site-modules/profile/.yardopts | 1 + .../site-modules/profile/CHANGELOG.md | 11 + .../production/site-modules/profile/Gemfile | 72 ++++ .../production/site-modules/profile/README.md | 87 ++++ .../production/site-modules/profile/Rakefile | 86 ++++ .../site-modules/profile/appveyor.yml | 56 +++ .../site-modules/profile/data/common.yaml | 1 + .../site-modules/profile/hiera.yaml | 21 + .../site-modules/profile/manifests/base.pp | 31 ++ .../profile/manifests/base/motd.pp | 5 + .../profile/manifests/base/resolv.pp | 17 + .../profile/manifests/base/selinux.pp | 7 + .../profile/manifests/base/ssh.pp | 19 + .../profile/manifests/base/time.pp | 16 + .../profile/manifests/custom_windows.pp | 17 + .../manifests/custom_windows/config_server.pp | 57 +++ .../manifests/custom_windows/define_user.pp | 31 ++ .../manifests/custom_windows/deploy_iis.pp | 69 ++++ .../custom_windows/install_package.pp | 71 ++++ .../site-modules/profile/manifests/monitor.pp | 11 + .../profile/manifests/patching/patch_unix.pp | 59 +++ .../profile/manifests/puppetserver.pp | 20 + .../manifests/puppetserver/authority.pp | 30 ++ .../manifests/puppetserver/bootstrap.pp | 34 ++ .../manifests/puppetserver/nfs_export.pp | 23 ++ .../profile/manifests/tools/docker_install.pp | 17 + .../manifests/tools/metrics_dashboard.pp | 25 ++ .../profile/manifests/tools/nfs_mount.pp | 15 + .../site-modules/profile/manifests/windows.pp | 11 + .../profile/manifests/windows/account.pp | 0 .../profile/manifests/windows/base.pp | 0 .../profile/manifests/windows/chocolatey.pp | 0 .../site-modules/profile/metadata.json | 65 +++ .../profile/spec/default_facts.yml | 8 + .../site-modules/profile/spec/spec_helper.rb | 54 +++ .../role/manifests/custom_winodws.pp | 5 + .../site-modules/role/manifests/monitoring.pp | 6 + .../site-modules/role/manifests/node.pp | 5 + .../role/manifests/puppetserver.pp | 6 + .../site-modules/role/manifests/windows.pp | 5 + .../production/spec/factsets/README.md | 7 + .../production/spec/onceover.yaml | 61 +++ .../production/spec/pre_conditions/README.md | 24 ++ .onceover/spec.xml | 344 +++++++++++++++ ..._custom_windows_on_AIX-6.1-powerpc_spec.rb | 40 ++ ..._custom_windows_on_AIX-7.1-powerpc_spec.rb | 40 ++ ...__custom_windows_on_Amazon-2018.03_spec.rb | 40 ++ ...__custom_windows_on_CentOS-5.11-32_spec.rb | 40 ++ ...__custom_windows_on_CentOS-5.11-64_spec.rb | 40 ++ ...e__custom_windows_on_CentOS-6.6-32_spec.rb | 40 ++ ...e__custom_windows_on_CentOS-6.6-64_spec.rb | 40 ++ ...e__custom_windows_on_CentOS-7.0-64_spec.rb | 40 ++ ...custom_windows_on_Debian-6.0.10-32_spec.rb | 40 ++ ...custom_windows_on_Debian-6.0.10-64_spec.rb | 40 ++ ...e__custom_windows_on_Debian-7.8-32_spec.rb | 40 ++ ...e__custom_windows_on_Debian-7.8-64_spec.rb | 40 ++ .../role__custom_windows_on_RHEL-6.7_spec.rb | 40 ++ .../role__custom_windows_on_RHEL-7.4_spec.rb | 40 ++ ...le__custom_windows_on_SLES-11.3-64_spec.rb | 40 ++ ...le__custom_windows_on_SLES-12.1-64_spec.rb | 40 ++ ..._custom_windows_on_Ubuntu-12.04-32_spec.rb | 40 ++ ..._custom_windows_on_Ubuntu-12.04-64_spec.rb | 40 ++ ..._custom_windows_on_Ubuntu-14.04-32_spec.rb | 40 ++ ..._custom_windows_on_Ubuntu-14.04-64_spec.rb | 40 ++ ..._custom_windows_on_Ubuntu-18.04-64_spec.rb | 40 ++ ...indows_on_Windows_Server-2008r2-64_spec.rb | 40 ++ ...indows_on_Windows_Server-2012r2-64_spec.rb | 40 ++ ..._windows_on_solaris-10_u9-sparc-64_spec.rb | 40 ++ ...m_windows_on_solaris-11.2-sparc-64_spec.rb | 40 ++ ...e__custom_windows_on_windows-10-64_spec.rb | 40 ++ .../role__metrics_on_AIX-6.1-powerpc_spec.rb | 40 ++ .../role__metrics_on_AIX-7.1-powerpc_spec.rb | 40 ++ .../role__metrics_on_Amazon-2018.03_spec.rb | 40 ++ .../role__metrics_on_CentOS-5.11-32_spec.rb | 40 ++ .../role__metrics_on_CentOS-5.11-64_spec.rb | 40 ++ .../role__metrics_on_CentOS-6.6-32_spec.rb | 40 ++ .../role__metrics_on_CentOS-6.6-64_spec.rb | 40 ++ .../role__metrics_on_CentOS-7.0-64_spec.rb | 40 ++ .../role__metrics_on_Debian-6.0.10-32_spec.rb | 40 ++ .../role__metrics_on_Debian-6.0.10-64_spec.rb | 40 ++ .../role__metrics_on_Debian-7.8-32_spec.rb | 40 ++ .../role__metrics_on_Debian-7.8-64_spec.rb | 40 ++ .../classes/role__metrics_on_RHEL-6.7_spec.rb | 40 ++ .../classes/role__metrics_on_RHEL-7.4_spec.rb | 40 ++ .../role__metrics_on_SLES-11.3-64_spec.rb | 40 ++ .../role__metrics_on_SLES-12.1-64_spec.rb | 40 ++ .../role__metrics_on_Ubuntu-12.04-32_spec.rb | 40 ++ .../role__metrics_on_Ubuntu-12.04-64_spec.rb | 40 ++ .../role__metrics_on_Ubuntu-14.04-32_spec.rb | 40 ++ .../role__metrics_on_Ubuntu-14.04-64_spec.rb | 40 ++ .../role__metrics_on_Ubuntu-18.04-64_spec.rb | 40 ++ ...etrics_on_Windows_Server-2008r2-64_spec.rb | 40 ++ ...etrics_on_Windows_Server-2012r2-64_spec.rb | 40 ++ ..._metrics_on_solaris-10_u9-sparc-64_spec.rb | 40 ++ ...__metrics_on_solaris-11.2-sparc-64_spec.rb | 40 ++ .../role__metrics_on_windows-10-64_spec.rb | 40 ++ .../role__node_on_AIX-6.1-powerpc_spec.rb | 40 ++ .../role__node_on_AIX-7.1-powerpc_spec.rb | 40 ++ .../role__node_on_Amazon-2018.03_spec.rb | 40 ++ .../role__node_on_CentOS-5.11-32_spec.rb | 40 ++ .../role__node_on_CentOS-5.11-64_spec.rb | 40 ++ .../role__node_on_CentOS-6.6-32_spec.rb | 40 ++ .../role__node_on_CentOS-6.6-64_spec.rb | 40 ++ .../role__node_on_CentOS-7.0-64_spec.rb | 40 ++ .../role__node_on_Debian-6.0.10-32_spec.rb | 40 ++ .../role__node_on_Debian-6.0.10-64_spec.rb | 40 ++ .../role__node_on_Debian-7.8-32_spec.rb | 40 ++ .../role__node_on_Debian-7.8-64_spec.rb | 40 ++ .../classes/role__node_on_RHEL-6.7_spec.rb | 40 ++ .../classes/role__node_on_RHEL-7.4_spec.rb | 40 ++ .../role__node_on_SLES-11.3-64_spec.rb | 40 ++ .../role__node_on_SLES-12.1-64_spec.rb | 40 ++ .../role__node_on_Ubuntu-12.04-32_spec.rb | 40 ++ .../role__node_on_Ubuntu-12.04-64_spec.rb | 40 ++ .../role__node_on_Ubuntu-14.04-32_spec.rb | 40 ++ .../role__node_on_Ubuntu-14.04-64_spec.rb | 40 ++ .../role__node_on_Ubuntu-18.04-64_spec.rb | 40 ++ ...__node_on_Windows_Server-2008r2-64_spec.rb | 40 ++ ...__node_on_Windows_Server-2012r2-64_spec.rb | 40 ++ ...le__node_on_solaris-10_u9-sparc-64_spec.rb | 40 ++ ...ole__node_on_solaris-11.2-sparc-64_spec.rb | 40 ++ .../role__node_on_windows-10-64_spec.rb | 40 ++ ...e__puppetserver_on_AIX-6.1-powerpc_spec.rb | 40 ++ ...e__puppetserver_on_AIX-7.1-powerpc_spec.rb | 40 ++ ...le__puppetserver_on_Amazon-2018.03_spec.rb | 40 ++ ...le__puppetserver_on_CentOS-5.11-32_spec.rb | 40 ++ ...le__puppetserver_on_CentOS-5.11-64_spec.rb | 40 ++ ...ole__puppetserver_on_CentOS-6.6-32_spec.rb | 40 ++ ...ole__puppetserver_on_CentOS-6.6-64_spec.rb | 40 ++ ...ole__puppetserver_on_CentOS-7.0-64_spec.rb | 40 ++ ...__puppetserver_on_Debian-6.0.10-32_spec.rb | 40 ++ ...__puppetserver_on_Debian-6.0.10-64_spec.rb | 40 ++ ...ole__puppetserver_on_Debian-7.8-32_spec.rb | 40 ++ ...ole__puppetserver_on_Debian-7.8-64_spec.rb | 40 ++ .../role__puppetserver_on_RHEL-6.7_spec.rb | 40 ++ .../role__puppetserver_on_RHEL-7.4_spec.rb | 40 ++ ...role__puppetserver_on_SLES-11.3-64_spec.rb | 40 ++ ...role__puppetserver_on_SLES-12.1-64_spec.rb | 40 ++ ...e__puppetserver_on_Ubuntu-12.04-32_spec.rb | 40 ++ ...e__puppetserver_on_Ubuntu-12.04-64_spec.rb | 40 ++ ...e__puppetserver_on_Ubuntu-14.04-32_spec.rb | 40 ++ ...e__puppetserver_on_Ubuntu-14.04-64_spec.rb | 40 ++ ...e__puppetserver_on_Ubuntu-18.04-64_spec.rb | 40 ++ ...server_on_Windows_Server-2008r2-64_spec.rb | 40 ++ ...server_on_Windows_Server-2012r2-64_spec.rb | 40 ++ ...etserver_on_solaris-10_u9-sparc-64_spec.rb | 40 ++ ...petserver_on_solaris-11.2-sparc-64_spec.rb | 40 ++ ...ole__puppetserver_on_windows-10-64_spec.rb | 40 ++ .../role__windows_on_AIX-6.1-powerpc_spec.rb | 40 ++ .../role__windows_on_AIX-7.1-powerpc_spec.rb | 40 ++ .../role__windows_on_Amazon-2018.03_spec.rb | 40 ++ .../role__windows_on_CentOS-5.11-32_spec.rb | 40 ++ .../role__windows_on_CentOS-5.11-64_spec.rb | 40 ++ .../role__windows_on_CentOS-6.6-32_spec.rb | 40 ++ .../role__windows_on_CentOS-6.6-64_spec.rb | 40 ++ .../role__windows_on_CentOS-7.0-64_spec.rb | 40 ++ .../role__windows_on_Debian-6.0.10-32_spec.rb | 40 ++ .../role__windows_on_Debian-6.0.10-64_spec.rb | 40 ++ .../role__windows_on_Debian-7.8-32_spec.rb | 40 ++ .../role__windows_on_Debian-7.8-64_spec.rb | 40 ++ .../classes/role__windows_on_RHEL-6.7_spec.rb | 40 ++ .../classes/role__windows_on_RHEL-7.4_spec.rb | 40 ++ .../role__windows_on_SLES-11.3-64_spec.rb | 40 ++ .../role__windows_on_SLES-12.1-64_spec.rb | 40 ++ .../role__windows_on_Ubuntu-12.04-32_spec.rb | 40 ++ .../role__windows_on_Ubuntu-12.04-64_spec.rb | 40 ++ .../role__windows_on_Ubuntu-14.04-32_spec.rb | 40 ++ .../role__windows_on_Ubuntu-14.04-64_spec.rb | 40 ++ .../role__windows_on_Ubuntu-18.04-64_spec.rb | 40 ++ ...indows_on_Windows_Server-2008r2-64_spec.rb | 40 ++ ...indows_on_Windows_Server-2012r2-64_spec.rb | 40 ++ ..._windows_on_solaris-10_u9-sparc-64_spec.rb | 40 ++ ...__windows_on_solaris-11.2-sparc-64_spec.rb | 40 ++ .../role__windows_on_windows-10-64_spec.rb | 40 ++ .onceover/spec/factsets/README.md | 7 + .onceover/spec/onceover.yaml | 61 +++ .onceover/spec/pre_conditions/README.md | 24 ++ .onceover/spec/spec_helper.rb | 31 ++ .onceover/spec/spec_helper_acceptance.rb | 1 + site-modules/profile/Gemfile.lock | 391 ++++++++++++++++++ site-modules/profile/bin/metadata-json-lint | 29 ++ site-modules/profile/bin/puppet | 29 ++ site-modules/profile/bin/puppet-lint | 29 ++ site-modules/profile/bin/rubocop | 29 ++ site-modules/profile/manifests/base.pp | 6 +- site-modules/profile/manifests/base/time.pp | 31 ++ 221 files changed, 8269 insertions(+), 3 deletions(-) create mode 100644 .onceover/Rakefile create mode 100644 .onceover/etc/puppetlabs/code/environments/production/.gitignore create mode 100644 .onceover/etc/puppetlabs/code/environments/production/.onceover_manifest.json create mode 100644 .onceover/etc/puppetlabs/code/environments/production/CODEOWNERS create mode 100644 .onceover/etc/puppetlabs/code/environments/production/Gemfile create mode 100644 .onceover/etc/puppetlabs/code/environments/production/LICENSE create mode 100644 .onceover/etc/puppetlabs/code/environments/production/Puppetfile create mode 100644 .onceover/etc/puppetlabs/code/environments/production/README.md create mode 100644 .onceover/etc/puppetlabs/code/environments/production/Rakefile create mode 100644 .onceover/etc/puppetlabs/code/environments/production/data/common.yaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/data/environments/test.yaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/data/nodes/example-node.yaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/data/nodes/peadm-01.pe.yaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/data/nodes/puppet.home.yaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/data/nodes/puppet.plaform9.puppet.net create mode 100644 .onceover/etc/puppetlabs/code/environments/production/data/secrets/node/peadm-01.pe.eyaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/data/secrets/node/puppet.home.eyaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/environment.conf create mode 100644 .onceover/etc/puppetlabs/code/environments/production/hiera.yaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/manifests/site.pp create mode 100755 .onceover/etc/puppetlabs/code/environments/production/scripts/config_version-r10k.rb create mode 100755 .onceover/etc/puppetlabs/code/environments/production/scripts/config_version-rugged.rb create mode 100755 .onceover/etc/puppetlabs/code/environments/production/scripts/config_version.sh create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/custom_files/7z1900-x64.exe create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/custom_files/master.zip create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.fixtures.yml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.gitattributes create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.gitignore create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.gitlab-ci.yml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.pdkignore create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.puppet-lint.rc create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.rspec create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.rubocop.yml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.travis.yml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.vscode/extensions.json create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.yardopts create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/CHANGELOG.md create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/Gemfile create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/README.md create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/Rakefile create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/appveyor.yml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/data/common.yaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/hiera.yaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/motd.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/resolv.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/selinux.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/ssh.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/time.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/config_server.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/define_user.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/deploy_iis.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/install_package.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/monitor.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/patching/patch_unix.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/authority.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/bootstrap.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/nfs_export.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/docker_install.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/metrics_dashboard.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/nfs_mount.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows/account.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows/base.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows/chocolatey.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/metadata.json create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/spec/default_facts.yml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/profile/spec/spec_helper.rb create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/custom_winodws.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/monitoring.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/node.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/puppetserver.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/windows.pp create mode 100644 .onceover/etc/puppetlabs/code/environments/production/spec/factsets/README.md create mode 100644 .onceover/etc/puppetlabs/code/environments/production/spec/onceover.yaml create mode 100644 .onceover/etc/puppetlabs/code/environments/production/spec/pre_conditions/README.md create mode 100644 .onceover/spec.xml create mode 100644 .onceover/spec/classes/role__custom_windows_on_AIX-6.1-powerpc_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_AIX-7.1-powerpc_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Amazon-2018.03_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_CentOS-5.11-32_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_CentOS-5.11-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_CentOS-6.6-32_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_CentOS-6.6-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_CentOS-7.0-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Debian-6.0.10-32_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Debian-6.0.10-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Debian-7.8-32_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Debian-7.8-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_RHEL-6.7_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_RHEL-7.4_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_SLES-11.3-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_SLES-12.1-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Ubuntu-12.04-32_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Ubuntu-12.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Ubuntu-14.04-32_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Ubuntu-14.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Ubuntu-18.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Windows_Server-2008r2-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_Windows_Server-2012r2-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_solaris-10_u9-sparc-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_solaris-11.2-sparc-64_spec.rb create mode 100644 .onceover/spec/classes/role__custom_windows_on_windows-10-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_AIX-6.1-powerpc_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_AIX-7.1-powerpc_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Amazon-2018.03_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_CentOS-5.11-32_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_CentOS-5.11-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_CentOS-6.6-32_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_CentOS-6.6-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_CentOS-7.0-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Debian-6.0.10-32_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Debian-6.0.10-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Debian-7.8-32_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Debian-7.8-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_RHEL-6.7_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_RHEL-7.4_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_SLES-11.3-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_SLES-12.1-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Ubuntu-12.04-32_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Ubuntu-12.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Ubuntu-14.04-32_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Ubuntu-14.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Ubuntu-18.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Windows_Server-2008r2-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_Windows_Server-2012r2-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_solaris-10_u9-sparc-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_solaris-11.2-sparc-64_spec.rb create mode 100644 .onceover/spec/classes/role__metrics_on_windows-10-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_AIX-6.1-powerpc_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_AIX-7.1-powerpc_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Amazon-2018.03_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_CentOS-5.11-32_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_CentOS-5.11-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_CentOS-6.6-32_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_CentOS-6.6-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_CentOS-7.0-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Debian-6.0.10-32_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Debian-6.0.10-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Debian-7.8-32_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Debian-7.8-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_RHEL-6.7_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_RHEL-7.4_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_SLES-11.3-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_SLES-12.1-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Ubuntu-12.04-32_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Ubuntu-12.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Ubuntu-14.04-32_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Ubuntu-14.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Ubuntu-18.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Windows_Server-2008r2-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_Windows_Server-2012r2-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_solaris-10_u9-sparc-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_solaris-11.2-sparc-64_spec.rb create mode 100644 .onceover/spec/classes/role__node_on_windows-10-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_AIX-6.1-powerpc_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_AIX-7.1-powerpc_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Amazon-2018.03_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_CentOS-5.11-32_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_CentOS-5.11-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_CentOS-6.6-32_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_CentOS-6.6-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_CentOS-7.0-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Debian-6.0.10-32_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Debian-6.0.10-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Debian-7.8-32_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Debian-7.8-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_RHEL-6.7_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_RHEL-7.4_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_SLES-11.3-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_SLES-12.1-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Ubuntu-12.04-32_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Ubuntu-12.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Ubuntu-14.04-32_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Ubuntu-14.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Ubuntu-18.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Windows_Server-2008r2-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_Windows_Server-2012r2-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_solaris-10_u9-sparc-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_solaris-11.2-sparc-64_spec.rb create mode 100644 .onceover/spec/classes/role__puppetserver_on_windows-10-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_AIX-6.1-powerpc_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_AIX-7.1-powerpc_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Amazon-2018.03_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_CentOS-5.11-32_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_CentOS-5.11-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_CentOS-6.6-32_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_CentOS-6.6-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_CentOS-7.0-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Debian-6.0.10-32_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Debian-6.0.10-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Debian-7.8-32_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Debian-7.8-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_RHEL-6.7_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_RHEL-7.4_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_SLES-11.3-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_SLES-12.1-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Ubuntu-12.04-32_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Ubuntu-12.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Ubuntu-14.04-32_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Ubuntu-14.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Ubuntu-18.04-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Windows_Server-2008r2-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_Windows_Server-2012r2-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_solaris-10_u9-sparc-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_solaris-11.2-sparc-64_spec.rb create mode 100644 .onceover/spec/classes/role__windows_on_windows-10-64_spec.rb create mode 100644 .onceover/spec/factsets/README.md create mode 100644 .onceover/spec/onceover.yaml create mode 100644 .onceover/spec/pre_conditions/README.md create mode 100644 .onceover/spec/spec_helper.rb create mode 100644 .onceover/spec/spec_helper_acceptance.rb create mode 100644 site-modules/profile/Gemfile.lock create mode 100755 site-modules/profile/bin/metadata-json-lint create mode 100755 site-modules/profile/bin/puppet create mode 100755 site-modules/profile/bin/puppet-lint create mode 100755 site-modules/profile/bin/rubocop create mode 100644 site-modules/profile/manifests/base/time.pp diff --git a/.onceover/Rakefile b/.onceover/Rakefile new file mode 100644 index 0000000..d22c5c9 --- /dev/null +++ b/.onceover/Rakefile @@ -0,0 +1,6 @@ +require 'puppetlabs_spec_helper/rake_tasks' + +desc "Run acceptance tests" +RSpec::Core::RakeTask.new(:acceptance) do |t| + t.pattern = 'spec/acceptance' +end \ No newline at end of file diff --git a/.onceover/etc/puppetlabs/code/environments/production/.gitignore b/.onceover/etc/puppetlabs/code/environments/production/.gitignore new file mode 100644 index 0000000..39781c2 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/.gitignore @@ -0,0 +1,2 @@ +modules/ +.onceover diff --git a/.onceover/etc/puppetlabs/code/environments/production/.onceover_manifest.json b/.onceover/etc/puppetlabs/code/environments/production/.onceover_manifest.json new file mode 100644 index 0000000..1aa8e18 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/.onceover_manifest.json @@ -0,0 +1 @@ +[".git",".gitignore",".onceover","CODEOWNERS","Gemfile","LICENSE","Puppetfile","README.md","Rakefile","data","data/common.yaml","data/environments","data/environments/test.yaml","data/nodes","data/nodes/example-node.yaml","data/nodes/peadm-01.pe.yaml","data/nodes/puppet.home.yaml","data/nodes/puppet.plaform9.puppet.net","data/secrets","data/secrets/node","data/secrets/node/peadm-01.pe.eyaml","data/secrets/node/puppet.home.eyaml","environment.conf","hiera.yaml","manifests","manifests/site.pp","scripts","scripts/config_version-r10k.rb","scripts/config_version-rugged.rb","scripts/config_version.sh","site-modules","site-modules/custom_files","site-modules/custom_files/7z1900-x64.exe","site-modules/custom_files/master.zip","site-modules/profile","site-modules/profile/.fixtures.yml","site-modules/profile/.gitattributes","site-modules/profile/.gitignore","site-modules/profile/.gitlab-ci.yml","site-modules/profile/.pdkignore","site-modules/profile/.puppet-lint.rc","site-modules/profile/.rspec","site-modules/profile/.rubocop.yml","site-modules/profile/.travis.yml","site-modules/profile/.vscode","site-modules/profile/.vscode/extensions.json","site-modules/profile/.yardopts","site-modules/profile/CHANGELOG.md","site-modules/profile/Gemfile","site-modules/profile/Gemfile.lock","site-modules/profile/README.md","site-modules/profile/Rakefile","site-modules/profile/appveyor.yml","site-modules/profile/bin","site-modules/profile/bin/metadata-json-lint","site-modules/profile/bin/puppet","site-modules/profile/bin/puppet-lint","site-modules/profile/bin/rubocop","site-modules/profile/data","site-modules/profile/data/common.yaml","site-modules/profile/hiera.yaml","site-modules/profile/manifests","site-modules/profile/manifests/base","site-modules/profile/manifests/base/motd.pp","site-modules/profile/manifests/base/resolv.pp","site-modules/profile/manifests/base/selinux.pp","site-modules/profile/manifests/base/ssh.pp","site-modules/profile/manifests/base/time.pp","site-modules/profile/manifests/base.pp","site-modules/profile/manifests/custom_windows","site-modules/profile/manifests/custom_windows/config_server.pp","site-modules/profile/manifests/custom_windows/define_user.pp","site-modules/profile/manifests/custom_windows/deploy_iis.pp","site-modules/profile/manifests/custom_windows/install_package.pp","site-modules/profile/manifests/custom_windows.pp","site-modules/profile/manifests/monitor.pp","site-modules/profile/manifests/patching","site-modules/profile/manifests/patching/patch_unix.pp","site-modules/profile/manifests/puppetserver","site-modules/profile/manifests/puppetserver/authority.pp","site-modules/profile/manifests/puppetserver/bootstrap.pp","site-modules/profile/manifests/puppetserver/nfs_export.pp","site-modules/profile/manifests/puppetserver.pp","site-modules/profile/manifests/tools","site-modules/profile/manifests/tools/docker_install.pp","site-modules/profile/manifests/tools/metrics_dashboard.pp","site-modules/profile/manifests/tools/nfs_mount.pp","site-modules/profile/manifests/windows","site-modules/profile/manifests/windows/account.pp","site-modules/profile/manifests/windows/base.pp","site-modules/profile/manifests/windows/chocolatey.pp","site-modules/profile/manifests/windows.pp","site-modules/profile/metadata.json","site-modules/profile/spec","site-modules/profile/spec/default_facts.yml","site-modules/profile/spec/spec_helper.rb","site-modules/role","site-modules/role/manifests","site-modules/role/manifests/custom_winodws.pp","site-modules/role/manifests/monitoring.pp","site-modules/role/manifests/node.pp","site-modules/role/manifests/puppetserver.pp","site-modules/role/manifests/windows.pp","spec","spec/factsets","spec/factsets/README.md","spec/onceover.yaml","spec/pre_conditions","spec/pre_conditions/README.md"] \ No newline at end of file diff --git a/.onceover/etc/puppetlabs/code/environments/production/CODEOWNERS b/.onceover/etc/puppetlabs/code/environments/production/CODEOWNERS new file mode 100644 index 0000000..d5aef52 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/CODEOWNERS @@ -0,0 +1 @@ +* @cs-arch diff --git a/.onceover/etc/puppetlabs/code/environments/production/Gemfile b/.onceover/etc/puppetlabs/code/environments/production/Gemfile new file mode 100644 index 0000000..1d7df03 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/Gemfile @@ -0,0 +1,3 @@ +source 'https://rubygems.org' + +gem 'onceover' diff --git a/.onceover/etc/puppetlabs/code/environments/production/LICENSE b/.onceover/etc/puppetlabs/code/environments/production/LICENSE new file mode 100644 index 0000000..8f71f43 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/LICENSE @@ -0,0 +1,202 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + diff --git a/.onceover/etc/puppetlabs/code/environments/production/Puppetfile b/.onceover/etc/puppetlabs/code/environments/production/Puppetfile new file mode 100644 index 0000000..ad00320 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/Puppetfile @@ -0,0 +1,63 @@ +forge 'https://forge.puppet.com' + +# Modules from the Puppet Forge +# Versions should be updated to be the latest at the time you start +mod 'puppetlabs/inifile', '4.0.0' +mod 'puppetlabs/stdlib', '6.2.0' +mod 'puppetlabs/concat', '6.1.0' +mod 'danieldreier-autosign', '0.2.0' +mod 'puppetlabs-package', '1.1.0' +mod 'puppetlabs-service', '1.2.0' +mod 'puppetlabs-ntp', '8.2.0' +mod 'puppetlabs-apache', '5.3.0' +mod 'ghoneycutt-ssh', '3.61.0' +mod 'puppet-selinux', '3.1.0' +mod 'puppetlabs-puppetserver_gem', '1.1.1' +mod 'puppetlabs-motd', '4.0.0' +mod 'puppetlabs-bootstrap', '2.0.0' +mod 'puppetlabs-windows', '6.1.0' +mod 'puppetlabs-registry', '3.1.0' +mod 'puppetlabs-powershell', '3.0.1' +mod 'puppet-windowsfeature', '3.2.2' +mod 'puppetlabs-chocolatey', '5.0.2' +mod 'puppetlabs-wsus_client', '3.1.0' +mod 'puppetlabs-accounts', '6.1.0' +mod 'puppetlabs-dism', '1.3.1' +mod 'puppetlabs-dsc', '1.9.4' +mod 'puppetlabs-dsc_lite', '3.0.1' +mod 'puppetlabs-acl', '3.1.0' +mod 'puppetlabs-iis', '7.0.0' +mod 'puppetlabs-pwshlib', '0.4.0' +mod 'puppet-archive', '4.4.0' +mod 'puppet-staging', '3.2.0' +mod 'puppetlabs-reboot', '2.4.0' +mod 'albatrossflavour-os_patching', '0.13.0' +mod 'fervid-secure_linux_cis', '2.1.10' +mod 'puppetlabs-puppet_metrics_collector', '5.3.0' +mod 'puppetlabs-puppet_metrics_dashboard', '2.0.1' +mod 'dylanratcliffe-facter_cache', '1.2.0' +mod 'puppetlabs-support_tasks', '1.1.1' +mod 'puppetlabs-puppet_agent', '3.0.2' +mod 'puppetlabs-apt', '7.4.1' +mod 'puppetlabs-translate', '2.2.0' +mod 'puppet-grafana', '6.1.0' +mod 'puppet-telegraf', '3.0.0' +mod 'derdanne-nfs', '2.1.2' +mod 'herculesteam-augeasproviders_core', '2.6.0' +mod 'herculesteam-augeasproviders_shellvar', '4.0.0' +mod 'puppetlabs-transition', '0.1.3' +mod 'puppetlabs-docker', '3.9.1' + +# Modules from Git +# Examples: https://github.com/puppetlabs/r10k/blob/master/doc/puppetfile.mkd#examples +# mod 'apache', +# git: 'https://github.com/puppetlabs/puppetlabs-apache', +# commit: '1b6f89afdde0df7f9433a163d5c4b5328eac5779' + +# mod 'apache', +# git: 'https://github.com/puppetlabs/puppetlabs-apache', +# branch: 'docs_experiment' + +mod 'saz-resolv_conf', + :git => 'https://github.com/saz/puppet-resolv_conf.git', + :ref => 'v4.1.0' diff --git a/.onceover/etc/puppetlabs/code/environments/production/README.md b/.onceover/etc/puppetlabs/code/environments/production/README.md new file mode 100644 index 0000000..808091f --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/README.md @@ -0,0 +1,119 @@ +# A Puppet Control Repository + +* [What You Get From This control\-repo](#what-you-get-from-this-control-repo) +* [Copy This Repo Into Your Own Git Server](#copy-this-repo-into-your-own-git-server) + * [GitLab](#gitlab) + * [Bitbucket/Stash](#bitbucketstash) + * [Github](#github) +* [Code Manager Setup](#code-manager-setup) + + +## What You Get From This control-repo + +This is a template [control repository](https://puppet.com/docs/pe/latest/code_management/control_repo.html) that has the minimum amount of scaffolding to make it easy to get started with [r10k](https://puppet.com/docs/pe/latest/code_management/r10k.html) or Puppet Enterprise's [Code Manager](https://puppet.com/docs/pe/latest/code_management/code_mgr.html). + +The important files and items in this template are as follows: + +* Basic example of roles and profiles. +* An example Puppetfile with various module references. +* An example Hiera configuration file and data directory with pre-created common.yaml and nodes directory. + * These match the default hierarchy that ships with PE. +* An [environment.conf](https://puppet.com/docs/puppet/5.3/config_file_environment.html) that correctly implements: + * A site-modules directory for roles, profiles, and any custom modules for your organization. + * A config\_version script. +* An example [config\_version](https://puppet.com/docs/puppet/5.3/config_file_environment.html#configversion) script that outputs the git commit ID of the code that was used during a Puppet run. + +Here's a visual representation of the structure of this repository: + +``` +control-repo/ +├── data/ # Hiera data directory. +│   ├── nodes/ # Node-specific data goes here. +│   └── common.yaml # Common data goes here. +├── manifests/ +│   └── site.pp # The "main" manifest that contains a default node definition. +├── scripts/ +│   ├── code_manager_config_version.rb # A config_version script for Code Manager. +│   ├── config_version.rb # A config_version script for r10k. +│   └── config_version.sh # A wrapper that chooses the appropriate config_version script. +├── site-modules/ # This directory contains site-specific modules and is added to $modulepath. +│   ├── profile/ # The profile module. +│   └── role/ # The role module. +├── LICENSE +├── Puppetfile # A list of external Puppet modules to deploy with an environment. +├── README.md +├── environment.conf # Environment-specific settings. Configures the modulepath and config_version. +└── hiera.yaml # Hiera's configuration file. The Hiera hierarchy is defined here. +``` + +## Copy This Repo Into Your Own Git Server + +To get started with using the control-repo template in your own environment and git server, we've provided steps for the three most common servers we see: [GitLab](#gitlab), [BitBucket](#bitbucketstash), and [GitHub](#github). + +### GitLab + +1. Install GitLab. + * +1. After GitLab is installed you may sign in with the `root` user and password `5iveL!fe`. +1. Make a user for yourself. +1. Make an SSH key to link with your user. You’ll want to do this on the machine you intend to edit code from (most likely not your Puppet master, but your local workstation or laptop). + * + * +1. Create a group called `puppet` (this is case sensitive). + * +1. Add your user to the `puppet` group as well. +1. Create a project called `control-repo`, and set the Namespace to be the `puppet` group. +1. Clone this control repository to your laptop/workstation: + * `git clone ` + * `cd control-repo` +1. Remove this repository as the origin remote: + * `git remote remove origin` +1. Add your internal repository as the origin remote: + * `git remote add origin ` +1. Push the production branch of the repository from your machine up to your git server + * `git push origin production` + +### Bitbucket/Stash + +1. Install Bitbucket + * +1. Make a `Project` called `puppet` (with a short name of `PUP`) +1. Create a repository called `control-repo` +1. Create a user called `r10k` with a password of `puppet`. + * Make the r10k user an admin of the `PUP` project. +1. Either use the admin user to test pushing code, or create a user for yourself and add your SSH key to that user. + * If making a user for yourself, give your user account read/write or admin privilege to the `PUP` project. +1. Clone this control repository to your laptop/workstation + * `git clone ` + * `cd control-repo` +1. Remove this repository as the origin remote + * `git remote remove origin` +1. Add your internal repository as the origin remote + * `git remote add origin ` +1. Push the production branch of the repository from your machine up to your git server + * `git push origin production` + +### GitHub + +1. Prepare your local git client to authenticate with GitHub.com or a local GitHub Enterprise instance. + * + * +1. Create a repository called `control-repo` in your user account or organization. Ensure that "Initialize this repository with a README" is not selected. + * +1. Make a note of your repository URL (HTTPS or SSH, depending on your security configuration). +1. Clone this control repository to your laptop/workstation: + * `git clone ` + * `cd control-repo` +1. Remove this repository as the origin remote: + * `git remote remove origin` +1. Add your internal repository as the origin remote: + * `git remote add origin ` +1. Push the production branch of the repository from your machine up to your git server + * `git push origin production` + +## Code Manager Setup + +If you use Puppet Enterprise and have not yet enabled and configured Code Manager, in addition to reading the official [documentation](https://puppet.com/docs/pe/latest/code_management/code_mgr.html) for enabling it, you may want to look at the Ramp-Up Program's control repository instead of this one. It's similar to this repo except that it has batteries included, so to speak. There are pre-built profiles for configuring Code Manager, generating SSH keys, and setting up your Git server to work with Code Manager. + +* + diff --git a/.onceover/etc/puppetlabs/code/environments/production/Rakefile b/.onceover/etc/puppetlabs/code/environments/production/Rakefile new file mode 100644 index 0000000..d0372d4 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/Rakefile @@ -0,0 +1 @@ +require 'onceover/rake_tasks' diff --git a/.onceover/etc/puppetlabs/code/environments/production/data/common.yaml b/.onceover/etc/puppetlabs/code/environments/production/data/common.yaml new file mode 100644 index 0000000..c9e9852 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/data/common.yaml @@ -0,0 +1,16 @@ +--- +message: "This node is using common data" +profile::base::resolv: true +profile::base::resolv::nameservers: + - '8.8.8.8' + - '127.0.0.1' +profile::base::resolv::domainname: home +profile::base::selinux::mode: true +profile::base::selinux::mode: permissive +profile::base::time: true +profile::base::time::ntp_servers: + - 0.uk.pool.ntp.org + - 1.uk.pool.ntp.org + - 2.uk.pool.ntp.org +profile::base::ssh: true +profile::base::motd: true diff --git a/.onceover/etc/puppetlabs/code/environments/production/data/environments/test.yaml b/.onceover/etc/puppetlabs/code/environments/production/data/environments/test.yaml new file mode 100644 index 0000000..0ba4fa7 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/data/environments/test.yaml @@ -0,0 +1,2 @@ +--- +profile::base::ssh::permit_root_login: 'yes' diff --git a/.onceover/etc/puppetlabs/code/environments/production/data/nodes/example-node.yaml b/.onceover/etc/puppetlabs/code/environments/production/data/nodes/example-node.yaml new file mode 100644 index 0000000..ed97d53 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/data/nodes/example-node.yaml @@ -0,0 +1 @@ +--- diff --git a/.onceover/etc/puppetlabs/code/environments/production/data/nodes/peadm-01.pe.yaml b/.onceover/etc/puppetlabs/code/environments/production/data/nodes/peadm-01.pe.yaml new file mode 100644 index 0000000..c5cd3f5 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/data/nodes/peadm-01.pe.yaml @@ -0,0 +1,7 @@ +--- +profile::puppetserver::authority: true +profile::puppetserver::authority::validity: '7200' +profile::puppetserver::nfs_export: true +puppet_enterprise::profile::master::r10k_remote: "git@github.com:chlawren/control-repo.git" +puppet_enterprise::profile::master::r10k_private_key: "/etc/puppetlabs/puppetserver/ssh/id-control_repo.rsa" +puppet_enterprise::profile::master::code_manager_auto_configure: true diff --git a/.onceover/etc/puppetlabs/code/environments/production/data/nodes/puppet.home.yaml b/.onceover/etc/puppetlabs/code/environments/production/data/nodes/puppet.home.yaml new file mode 100644 index 0000000..241d251 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/data/nodes/puppet.home.yaml @@ -0,0 +1,3 @@ +--- +profile::puppetserver::authority: true +profile::puppetserver::authority::validity: '7200' diff --git a/.onceover/etc/puppetlabs/code/environments/production/data/nodes/puppet.plaform9.puppet.net b/.onceover/etc/puppetlabs/code/environments/production/data/nodes/puppet.plaform9.puppet.net new file mode 100644 index 0000000..4d8b431 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/data/nodes/puppet.plaform9.puppet.net @@ -0,0 +1,6 @@ +--- +profile::puppetserver::authority: true +profile::puppetserver::authority::validity: '7200' +puppet_enterprise::profile::master::r10k_remote: "git@github.com:chlawren/control-repo.git" +puppet_enterprise::profile::master::r10k_private_key: "/etc/puppetlabs/puppetserver/ssh/id-control_repo.rsa" +puppet_enterprise::profile::master::code_manager_auto_configure: true diff --git a/.onceover/etc/puppetlabs/code/environments/production/data/secrets/node/peadm-01.pe.eyaml b/.onceover/etc/puppetlabs/code/environments/production/data/secrets/node/peadm-01.pe.eyaml new file mode 100644 index 0000000..3a17b35 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/data/secrets/node/peadm-01.pe.eyaml @@ -0,0 +1,2 @@ +--- +profile::puppetserver::authority::jwt_secret: ENC[PKCS7,MIIBiQYJKoZIhvcNAQcDoIIBejCCAXYCAQAxggEhMIIBHQIBADAFMAACAQEwDQYJKoZIhvcNAQEBBQAEggEAEca4yGi5jZP7UAvhiEFDuAXXRHWwbwNz3Dj+/4nRYtZ0jbNWPh3VTT+XBZKCgeQcV3oTy3j3n0Ed4XzEYHZ8zM+ZPQ2m2En9qTzOJ8Fn4Kq2FxgTimjdqCKSLcQMcgzDDT45Gk4JjS/u6G4Vi1LrEdMf80TFcOCwvCq/ZZyzimmbCziW81kQ3tcdbY9yxkqJg8AGfRK5abF88M3R9DqsRcmKbnzwsYFfEUXUbuMdYSvQxAe4UyXYrM9GHNxjts+2WM431WXdX89DoMKsqJ4PulMub8TaXXQkxCvLmducz8mXh0s9AsSlx/DMOImIZTUdGdwS67xeCcc9Fq/omWO2bjBMBgkqhkiG9w0BBwEwHQYJYIZIAWUDBAEqBBDx6u7YJTvRc0DlRtxtNoBAgCAqanEu5repqqcLyk+iuRi2Dw+4+/+7FCRKo6GT5SlB1A==] diff --git a/.onceover/etc/puppetlabs/code/environments/production/data/secrets/node/puppet.home.eyaml b/.onceover/etc/puppetlabs/code/environments/production/data/secrets/node/puppet.home.eyaml new file mode 100644 index 0000000..2e055b3 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/data/secrets/node/puppet.home.eyaml @@ -0,0 +1,2 @@ +--- +profile::puppetserver::authority::jwt_secret: "ENC[PKCS7,MIIBiQYJKoZIhvcNAQcDoIIBejCCAXYCAQAxggEhMIIBHQIBADAFMAACAQEwDQYJKoZIhvcNAQEBBQAEggEAnLKlgSOslWvpo+tVP2Fd/ITPkWLc7GM2cXd3bI8tB2PqsnEDOfWYFh8Pp58nzOZTPomTVxtQ0ptud6A+VhGbQ55P5ha9GzW9Pra5q0pQEsoGjJQhLKVsbLlivYN5j+W0pfR3hAr6NgKVBX0qwESOAKKIrYth34qH7Fsrk19VDKLOUJPSbVCajwwbUdj3s0j+8k3CCkey8+FmzTDeqjNGDDMmSxcWAySfX0LfZI3GGgJDfHgo3HDia3MiN0PLfNIOpeIFWRgWnzNrzHbt3RnEV7HIp1R+W2lyr/OWCGgBPco6t7oddqk9n3i35/0pxTsKmZEjasZyNvf51/PNwKK2VjBMBgkqhkiG9w0BBwEwHQYJYIZIAWUDBAEqBBAaFxUesvj7c9N47ru3WWyugCDAjwhS8BqA1n37yWGIGNCrdfQDUDr/dBMZTbmaoLAKLg==]" diff --git a/.onceover/etc/puppetlabs/code/environments/production/environment.conf b/.onceover/etc/puppetlabs/code/environments/production/environment.conf new file mode 100644 index 0000000..4944466 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/environment.conf @@ -0,0 +1,2 @@ +modulepath = site-modules:modules:$basemodulepath +config_version = 'scripts/config_version.sh $environmentpath $environment' diff --git a/.onceover/etc/puppetlabs/code/environments/production/hiera.yaml b/.onceover/etc/puppetlabs/code/environments/production/hiera.yaml new file mode 100644 index 0000000..a2677c8 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/hiera.yaml @@ -0,0 +1,21 @@ +--- +version: 5 +defaults: + datadir: data +hierarchy: +- name: 'Secret data: per-node, common' + lookup_key: eyaml_lookup_key + paths: + - secrets/node/%{trusted.certname}.eyaml + - secrets/role/%{trusted.extensions.pp_role}.eyaml + - common.eyaml + options: + pkcs7_private_key: "/etc/puppetlabs/puppet/eyaml/private_key.pkcs7.pem" + pkcs7_public_key: "/etc/puppetlabs/puppet/eyaml/public_key.pkcs7.pem" +- name: Yaml backend Data + data_hash: yaml_data + paths: + - nodes/%{trusted.certname}.yaml + - roles/%{trusted.extensions.pp_role}.yaml + - environments/%{trusted.extensions.pp_environment}.yaml + - common.yaml diff --git a/.onceover/etc/puppetlabs/code/environments/production/manifests/site.pp b/.onceover/etc/puppetlabs/code/environments/production/manifests/site.pp new file mode 100644 index 0000000..e0769a9 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/manifests/site.pp @@ -0,0 +1,47 @@ +## site.pp ## + +# This file (./manifests/site.pp) is the main entry point +# used when an agent connects to a master and asks for an updated configuration. +# https://puppet.com/docs/puppet/latest/dirs_manifest.html +# +# Global objects like filebuckets and resource defaults should go in this file, +# as should the default node definition if you want to use it. + +## Active Configurations ## + +# Disable filebucket by default for all File resources: +# https://github.com/puppetlabs/docs-archive/blob/master/pe/2015.3/release_notes.markdown#filebucket-resource-no-longer-created-by-default +File { backup => false } + +## Node Definitions ## + +# The default node definition matches any node lacking a more specific node +# definition. If there are no other node definitions in this file, classes +# and resources declared in the default node definition will be included in +# every node's catalog. +# +# Note that node definitions in this file are merged with node data from the +# Puppet Enterprise console and External Node Classifiers (ENC's). +# +# For more on node definitions, see: https://puppet.com/docs/puppet/latest/lang_node_definitions.html + +if $trusted['extensions']['pp_application'] == 'puppet/master' { + + include role::puppetserver +} + +node 'puppet' { + + include role::puppetserver + +} + +node default { + + if $trusted['extensions']['pp_role'] { + include "role::${trusted['extensions']['pp_role']}" + + } else { + include role::node + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/scripts/config_version-r10k.rb b/.onceover/etc/puppetlabs/code/environments/production/scripts/config_version-r10k.rb new file mode 100755 index 0000000..beacabc --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/scripts/config_version-r10k.rb @@ -0,0 +1,19 @@ +#!/opt/puppetlabs/puppet/bin/ruby +require 'json' +require 'socket' + +environmentpath = ARGV[0] +environment = ARGV[1] + +# Get the hostname of the Puppet master compiling the catalog. +# Sometimes the hostname is the fqdn, so we'll take the first segment. +compiling_master = Socket.gethostname.split('.').first + +# Get the path to the Code Manager deployment info file. +r10k_deploy_file_path = File.join(environmentpath, environment, '.r10k-deploy.json') + +# Get the first 12 characters of the commit ID out of the deployment file. +commit_id = JSON.parse(File.read(r10k_deploy_file_path))['signature'][0...11] + +# Show the compiling master, environment name, and commit ID. +puts "#{compiling_master}-#{environment}-#{commit_id}" diff --git a/.onceover/etc/puppetlabs/code/environments/production/scripts/config_version-rugged.rb b/.onceover/etc/puppetlabs/code/environments/production/scripts/config_version-rugged.rb new file mode 100755 index 0000000..abb3390 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/scripts/config_version-rugged.rb @@ -0,0 +1,25 @@ +#!/opt/puppetlabs/puppet/bin/ruby +begin + require 'rugged' + require 'socket' +rescue LoadError + t = Time.new + puts t.to_i +else + environmentpath = ARGV[0] + environment = ARGV[1] + + # Get the hostname of the Puppet master compiling the catalog. + # Sometimes the hostname is the fqdn, so we'll take the first segment. + compiling_master = Socket.gethostname.split('.').first + + # Get the path to the environment being compiled. + repo = Rugged::Repository.discover(File.join(environmentpath, environment)) + head = repo.head + + # First 12 characters of the sha1 hash of the newest commit. + commit_id = head.target_id[0...11] + + # Show the compiling master, environment name, and commit ID. + puts "#{compiling_master}-#{environment}-#{commit_id}" +end diff --git a/.onceover/etc/puppetlabs/code/environments/production/scripts/config_version.sh b/.onceover/etc/puppetlabs/code/environments/production/scripts/config_version.sh new file mode 100755 index 0000000..bdbc511 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/scripts/config_version.sh @@ -0,0 +1,35 @@ +#!/bin/sh + +# Usage +if [ $# -ne 2 -o ! -d "$1" -o ! -d "$1/$2" ]; then + echo "usage: $0 " >&2 + exit 1 +fi + +# For portability, identify a preferred ruby executable to use +ruby() { + [ -x /opt/puppetlabs/puppet/bin/ruby ] \ + && /opt/puppetlabs/puppet/bin/ruby "$@" \ + || /usr/bin/env ruby "$@" +} + +# Determine how best to calculate a config_version +if [ -e $1/$2/.r10k-deploy.json ]; then + # The environment was deployed using r10k. We will calculate the config + # version using the r10k data. + ruby $1/$2/scripts/config_version-r10k.rb $1 $2 + +elif [ -e /opt/puppetlabs/server/pe_version ]; then + # This is a Puppet Enterprise system and we can rely on the rugged ruby gem + # being available. + ruby $1/$2/scripts/config_version-rugged.rb $1 $2 + +elif type git >/dev/null; then + # The git command is available. + git --git-dir $1/$2/.git rev-parse HEAD + +else + # Nothing else available; just use the date. + date +%s + +fi diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/custom_files/7z1900-x64.exe b/.onceover/etc/puppetlabs/code/environments/production/site-modules/custom_files/7z1900-x64.exe new file mode 100644 index 0000000000000000000000000000000000000000..406b131964d7db61fed7bb0a4a066ebac744c47e GIT binary patch literal 1447178 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

}Bs#yN=3L$RsWfyG;JI2$ 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%0D92jVv@n32$D{%A$s9 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

x}Y;i&Brc`5f`TR(R zT(2fyf`k%c=m#Ks@}YC~XZ`f`%<&ApP7}xPSh;k3Yt>@|MoZ;r@})J&OkQ|~^~>&t z%;s?^=7v_IA}|n_i@55J%3E2XLUYQDAgp=HvB1pWHVPEx8$mRj0WuHsq9^NBm+wMV z)d^L3Pp)0i* z!L8(#r|F+BKEqOFei;h(R%iKuengNtU1vdV5E_?+>-Ekv6`R`dqmAve*YD?ji>3ofk*?3qT$d< z7;Jw-&AV)U*4MTcg8H%2oI(WZZ+^*NVcL=y{XSJ)??VqdOAD38v)=PNVbVbX*Fa z{R&5+J=fX2*Dh^9>Kw`X=OM9O7bZ#Vy+Rib+HkX7{hIEA^{UvTXK_-UT~TB8{d_R} zIY=1oYouZd5_k~pDS;-(J8}pdSY^LlcMZ!7G-9^tG6D82kn$jkV34(@Aq+rMF}Ss0 zp3P6cRo2+s;;xXCu$Bxu1m?XpP1OW8G?3`uMiW%3H@!B^ujmI`lV#$V_NB+sc(6O! zp*!V(B|I%v4|%G|VlsDBy#RsCuAF5F@6~;Up3vB0-hf=aT_ODPtfOaSl1~(C!zrXx zhwmyM%WEE?2{u27C_R4KFm|JyUjP2S%C^|X(+ZOn9!~TFvhT4if%6uMzRB!vG9+i21Y2D)aWKk4wZa@!SWN)g0fu4^{@s}%U$ZyXQ1}pI z1^}(dzUB|3$6Z=nUawds$gpciYY53JcV)u{T?xyT=`-r?cm@~8q}@@6?vk*y#g{dL zdg(xDMO@=n2M&Z}2NU=1F*?w4Y`GiB?G*lZ+uKkx_jWx$^H=BZJ_4g5r#$i&FBi0wCU;He?C2Zg@daZ_yW1A@_x13PYZZ5YO=FgYo238r^&&+%k!gx zZQ8Z&s)B2?_l~T)RjHOHn=Og`(>Yo0hI+CuXx)EGOu@fCMufOt?*A{a?PfG$uD zrD1m^7=p{9UxNE*Unfg$0!$SQUpYX_Lo_vL2vUu$xiI;kd^O%T1vL%P!l<7oFid7A zJA1^ZKMxbl;wa!az%^0G&294{JwzDN4#b-aMOVo2UWk0p3b=fI^%v1s^tS2*8#X4? zt&8`Tg$aE%4pUjLna1cGD7}5#z**NGAKWP=W`b)Syda==yg6I%vhM!hP#-8U37j!Y zb%y_H*kaq)eEB&?#wO_DL849g%KUGt&hJ+80J;gtRSigqFyL{HD2gN}Qw(+a;ZMJFtU zo;-j!+GJB6Wn!9GpByG|1s!Y;J4M8#JLlD`?zJJfJ_vWy;C8P!WqblYzYl}NCe8l-a`1z(j7R762yh^2dZIK~ z-q&4EiD54bg!W3eqUf;9bxwuMy`1iV;k0xFV7ty~vV6k6`u%%-r%WYClp6-~44Hk3 z={2tmge)M=@Txo#(1;Pe^9m>KI7r6zwGZwIQ6#@>3H%VD_GZCajbor`X>B)2&eOdHBa_;OAtlcUnfHH z1LqR($ergvS`LsTe!G%&$Xv#U< z!+$?^jOuBIuP1FZepPMm=8-gdo8|{=fq;n@yR}R_s=uf!!aP~QqJ}JFv~54ZZE
SQ=~<^|rvdrw{>Jx$Q~+2`Cun>J-v-8 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�k{Ogw)cTnYuxTk8@SFa#yraO(Ix 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 aLoNcg-Y4m`HZjZeL+ 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

>)lDj_w)+5 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≀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

0lmXlxI^rvIH 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

yQrPO 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 z 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˜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

qg`FON80@u8O)4D^2Y9Rb3@xj`1p!^>p39^ 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%0AOpJGbuPVEk^Z<{b)HIWFHtQK$iz0n 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 e;q6txxnR}dwej}MA!Ld=tludQMRJQ~U)2DPGgX z7Jqd0C|oyP&LL2!NaAbntnK{_nK6t%57g+F8TLzM`>#VX;~|rnKg@WTZpS~}TOHv% zZo`V)s!{yNv#!Cz_G4_=yj-;Xis60zIFxm!$PBe5xw}%U1cBlV@DI`xUEO?t`&O6m zgw&nI8ANDM;d+6&ULD#FE4dd+u4%cCn17H#g^_|n&Dj%~nUYGI5^7Y(Ok8QD4;q192BJ?qS(PDTl zCgb}CMrQMoKa_@($;VpI6K^(q_H;o5Y)ev}FxFLZj~~2$q7r6%-D?_siTV@;k|DJU z6!>KP<{|;`a>bV=nG9{x#c2E%(HxK&5RpfS)Q_N0SDN?le~#%6tNI^O%57b~DD@tI z$?7&|>a1m-KLED%KSZC87YijVd>(s-1Fx*Cl(-zHBrbS2#{%Kdbq}hZo%iG?*y^~H z!F9)#py!D5G4T@~7S42X%iS4722%oK4ynnw`g7|ai*%Mx9Vjh6 zQ!#|_@f%|SA3Pp%w6%%=VUaEIgJy)y(&2zOQG{!S?b%^chRX(^UKFa@(4ENR*Duez zvQ`^wUQIcTxqk`NRhBNiHfF$c@F-zwWg(epl}g!}Xi0d)E?jr&5VgAvCasI3Y$3Kd zj%6kYxC#9p^(4-jIwqBfoe8z)hfd#j)6)l3CVvw z;xOFxBT(6()^Im*|KA%fZGX6W{pC()QJI)$GzT#g7j0c5E3pQ+mDgRBY@#$UKJ~TU zJ>9<*chU2g4||IWY}{P zykg$d2Dm{pfU2>(l)l<0JeyKTTB+MdCK<8IB*0UNZRDInti&x)4PrGiB(}9+Ks4aM zQa0O?KOv5)8vt5qKDyI3^cX;=qDErnm}0vPBQ1-M7heY)SnQ4HENwz>Cwwdb&v(`X zF7mRGc6t9mpEqTuK~qx+!}0wG2wP(vczj!rVF$b3^spO0Mz!>F6qHmmVKb_+?->ER z0Mj<`KI`+;r07+dSR%t8rA)~k;%vCPwxZ(Ad@oSi!4h&>=~Gh|b5)1F^wO^ddz;e= z!3)`+76rQT!0cCnjs3;>vWK}kS-UNNv!b%-gIQ`0bj|ki zJSMyQ!wemZ)Z8sf?YJ}Arc3DFrLXt)TbUF{_5=e{br+0L4NLZSwZl=d0QWjH690@N zNGTfkzEHFxOdyK1vEYY)3h2$>VShvM1~2lZtQFeLA0U7O*1tBk|T( zJW1dfWH{qSwf^VP#cCfHDb?d6!ou%FK@#B_MZ5h@9_N8(p7a2cLwfFMj);H#v&8oa zW#E|b2f1Lfp_+!a`3^8EH$S_;`I?-A7Y3qyd%KFM43q z%vZSOwa&&q>Vs0~OR>7)SJ&lM^|St;N%{p>002Kgz`sQ*AoQq>bGTcYW{M`-AOzYW zYVZ9rZOG_td##x<>~w^-m7KagvM)Jtb*^k#PTGyO8|Lr$=TsGD$eG&lZe>_r5TqyT z23SFGHt)Q^dGo487%WUtujB&$hBN+1|33x~!2^^A)m2|pKSrEjA$@Za1ycPvdj@~S zRGQmqQUA3{h=}-bJ+jganjl*8I)A%P))df<Wql?L|RTf<557Zz6{fG2VDsnt@T8 zb@)0^u@nx}Q+5Pld5jd4(Tj=3eZ|UvdsSFpZR{kWk-y<}jxd#4IB>j7M%S@0#m@GB z#c>I&5H^%uxMc$jl5jeO-3jxoEg})qoMw_;?d^q?JfW*=HzrG=()O#tt-~h&Sj3wC z-fk!Nj~BkhzIlfo2Kzr9exA1olm{*nr;{HxY(4z+#8iUmf!YtLh^t>=-gLX9)x$xa z*{Jy-vcfJ`^=%B6VUuUbX(M^z^wbQc!Xq>=2yI1F z?Pe7fbip^XrMWUy2xOlLdSDo}=^$QNSKUstF1mE@JgTGaC8Ub5x#+D>uoYrg==$*E~#BvXBk$nO{GL-u~jQ%`qj|$iq{DZ{8Jfwc%S8ElR;Xl3_ zmp+xVp5kkRyd`{M`oBTaw;QRRi{%mvx!6RGOd(9bek%$m7ql~{eZMQ+KzvHwexj)7 z0HzeI9p19B5ZV>IX9J=ZQv}1sfBmP`#r^vcYYd`MZUtT6fRR^1#?x9wEh#%%ttV6G zq+Oy4zfr)G#75LBFjDjKgl3Pf@#P}VJYu{VeKM6vrP|QaYAUONny$lt5GFp;A96^Q zTWj^#BuE*<@x{3v;X1DQWs|(M21xn**|j*w1Aum+{{;VJe$Ac>6NDohIge{hu0b?D z$b`gBV?Ba?))3YOXLm2XZFq=#*2vjUKUnmG$nTNT6la1w_i4a1>xUdjxUu~_{l%-) zPfz1lec_UV1OuA8o1Tf2XK-da5a?BNaFo>VFf_*21bm*t5N1u51cN+Optv^4)|7UF z%*ZpBXEqolYOAE0Lq&%l{ulivxl%wg=5Hxv`6{e(OCl4|G7BrS6WfyQs5Zbt>?NrO z39raEjRg|>Zlm0^i=bMl`g$WEJg{?PIeI-Wa6rN+t5nN7`rqq+)M)~u@p-R`#= zy9l!OvIqm+)^Y)ws~6hRxXwg%(PnKH2o9&%veX23=D*qnDSZI2$(JF8p0P@@{E~K- z++>UXcm;l4?XPt^CO=`Ez$&62ZMa|qjnyjdI5~=lFmd1gB-V};?Z%(Hx_-`;+EvWQ znj1)v$6E77PuWN;kA*U{uupkM#>)hYhu319d`3Tr#xk@~aWmQt;#ulNP?^S_@dh`N z@0klwKU~7){(^(H1?^`E^k}Hr_K47r*Z#{a>^0I-DR!y;3Xv)MWFXCOo&yN#DvcSb)3`Uhtiz*u6Suad~;@fTt$$Q zC|6A%F`plctlM^$<|Vo{GFEh1=Wr3T6)T|Zh9ghB(<|77sOlw1Gw|wUddV7fdJn6c zc~|r;^nGNDK;&J-Xl#J&9WPn1RDFp+-rX6uIDTGu)RSfpX1{D z`#(4ahCrk|i3Bb+t)m&>_=>EaV@akXpk(5|KvFGb4BMEC0eHfaxxn4UOitvNq!={= z0+3}-Wt{|U?|=SlE3oLw*P5HqWP#9L0Q~r3VK%(f3l0-|%O#Yjbi(E-M8>(K`=e1NDy`o5}mJ4hT zKL#^jDZiuW>I^f_&0HTLC)50Nd6~8bHX9j6d)t(9Q4LA?Xa>?}G@I0M3%30$xCm(7 zBKo6&PS450G zW>8vM$P%(j=Vf6M)n5WUBdQ4END#K z&ZzZMA60RWC1i@1LH|n4xx|3v9?SX#wZtw(0fEA&0te(0P$w`R<9`tOL`*#^_Nt#s zQN8zkSQaL7_a52;C?{%If%+O}-1@Tr@$I&EdbBB77cJdjF9+J>4(h|pT}z5%&`sHE z1{TxAEeHnz^jyL5m(ba=IpD|5(k(N3r5`eDVt1JH&A}~)J=*$zQdaeoq*&h?-aC{H zX6mAVcD$Q#Ezh_3`pG|WFgkwp?xO0lfDLo%6C2bg<+YQUdfl`3AJ6xEn%qluLCBH* z_(=sc|G_gAUkW!ikPKbPHvNc~KqS*Onq|eR5hL)80 z(cUILJHw)b_MVG$=!tDQ{6U@hipFVSwq~7(S)Qg<+&+)LAA`Mpn`10%Nhu2B(Qti;oA+pXA-0GX(7!Z{&)eZ)ArdZT;N@=pQuHKxwa* zJ#T|@eV^cW#@XfnC-<2s#MO!kRl@Ze%K0%8+PJ$OD{Qy>f`Ynm>bH&MD>s=CMDI?( zW81LqAminrVDpjxDOrr8pi!il?yX*&{ELkf0TE4;(Qmm2?w_NeECZ}OT2oq5h|vws z9{jAzzl5OIo+Jh$Zfe=!SYRKE_`ndNjr8-0grdYGWO1gwezI!bjv^J#hPMIbx_)q) zUq(uxe)|tPN6w3pqf*Wwn(lFEOp0hw2q|JkIxxN&G9%EH-9$+&ztI z@I;v%v9gz2s1xZEeU%J;iiBG)P-bs9q;aPzg&}-4axOn&!2=e8z--5_bF+4fg5g_V zXh+ZVn}1!NW*(y9QGBZK27;t|`4g{QRG7`8g7PLsh{nL%ZZQ}h9?CG!@8Vt~*X>u# z1jPB>9*n}q@x}bkH22hCCc&OAk~^GFH1w}IP6VNOH%LMUxdtj=fRFD1eN?hNb{TWf z7vz5Q=|zQSQBb6Ibh+1{)D(Ptj=y{i@JIkvj8R-W`JCr5Y#{E5!z{rL6n`h8HJJCi z0PW|uP;EXPyWync#O*b(6J%IGL4zzA!^?-b74fJVf<7?oHaR&W_%;xa2$nK+SZE*h zU)sG^&gi_tf`dQdwkj@!U|6wD<9U(ZmhE?Un@npRW~|1d>&b9`l`r%n0R954AEE(4 zup5XE!Qe{Wq9@+%4!%(3&9C9aJK(ZbGIZGjP#NsrD+hwCG2-`(Di`oBBo1;e6Z1d# zU!U=7AQ-N1^MOK(OEdu)NE6*w2^ZB{C|{J6J*c~D86E%%d@<;P#3y_a%ISClKOK4~ zS8Oz4KZP05^`*OgztWT&;1{i8yvF;@+nQHk16+@8EvVZFd|BN?ZRBtFeu5;1NVf2;Y?;0D!HHyE1cbF-4?221PG4nR)K8l(FCIE_b!7%&R(DJE0_th zwi)u~FaD`3@jp79Td-{_C{tt>D=6FUh#R!AE{brR=igqlTv@4@Jh5-x!&rl zyn4pg=v%P12j6+UvWdD?s_vvQIyHHn`kh9#mcQ>k>h(t4`2#J=6CMC{2f?U7rw$z8c6lW7_Uj z=2EBE*vz)^ogL=h4@~mXb3LT)#=W)75^62@(~k^Cy3}aE?EO<_sO@Y;BRBULB4T%I zSjSAcWp}r(|EbrqB`giH+2O1T?7w_Y%x2?Ki*G6I&Mq?*JQtJ&b}J&$6NqtmqK^G? zUk2xZl3w|w<|afLf-fal5^dSU8^>V*%e-PKq>(~N;NI~!HCQ!Z8fVrvyCHQTjr6JQ zRj?k7>uCS$hnD`+nDGi;rjhWz*x*~0BX7x1OH>+b75z>WQyH=zM&q^Emx6>k@pVT_ zy{Jy%{VO=nMK`+3_37xKK|zBDG*?#eNy^o%9*LTh@L~;vT3l4VHSv`U1w_#m=~rT* zdZYCvq(Q(bVwhjjIDDI356Y!nl_yq%i@HF5*twcQPd0%{@Qi`V>UwB;L6L3-|8@Nk zm}2!mK=6O9(x5wDxFLKK3BaUS6nB8-I)EzgpGZmYu=UrE>jq9$bt@g7Lf;S*avg$? ztH@qb+_^8t8FEnEop)TS%3Jwq4#>6Pk=R~+I}eiYbsf86K%*q=sS)3)wJg9iiaD7@ zRWTE-9$D_kT|b8PyLzMu)^Useu~P;fA(~b`aX<`dBI?@4C~5eSCX0*OTdz<hR1kRGM`VAm?TsBh18st6`JFwgfm%2gvvdE-d*I|Du&)iF6d|>m zAM8`ao?rusA~-u!@(Q;JsIp-fNWHI9;^i$K7o@B;(~%~7{qsKLhIU;JXE*R{um0XW zi{W?!qfk2?TtyVMZEDks@QfGkf4PX^A_nnVbc2<7080Q`71_ri6oyDu1C{6+{%RNo zzvSnO=Hn1Nt++6|n%liKyp~6RQzKa2c&Dfa(v+j?Z zz8iSGKZIH*uggM)Twv@iL09VRR9mlvUNfIG#SrAVr(#8HCdLuF0_1!Z?=?q~;w#-J z!|ls)Lr&)4d+1EQfW}S_5hz@JMneaJQ2CfF4;k2#$N{_pJUFd%$58IfUJw%6kiMUN zodqM@jkaClCAo6ZLwLzG_cOe zv|JP`O^4K@i5*@&TEjI_bu92Za$NUU!7fC^L|9X}WUo-d0|bqS*8hHd)WBe;nF+jp z6oDYDS;<X$hE(F4ovlfj`ITBFsZ-y13nc}l#Xz}Vyx0FtWF64aO z;c!br3P3Qy{=>=pDjC;|6l;LZi7otl6I0k4c*^ELYMwqT(hUo}?4I0e=G5XvAww^w zJ&%~Y#*`@S33mO($^ScCTPhkE%l;O(%)n~UchAJeDXU0;ZqUgM#?j?ijdCXq34dn~CO^oQ;eOLfxA6?0YVX^=(<7{}oKeOR7lz zrERP!-E*9D_QX_^j(rfj;~465UBU+8%B#Z?uQ72lYh&@#IyuE+)0vsd4KB!Qopv;v z?Yw5e_qQQW2pselRo`!{)PTzK0PzU&>u&vcC0S+xqbQxd?#Bnmz)p$^+6ZBjC5Htz zZ}bbm6H$#~{I&PN{5dLO3i^{OO)?zFx|x=&Ym5pKJ&Y>c^{r?D(Sbc=e0(?+tGEc| zV{}Y$YN+ZACuzpKsmx~4%7G|MYY_Vkz;CDA8#oPL=*~x5sNcRWz&=uEvNrR1Y;OI` zbw#P5BStnlnL1DS_T8`Fc4S9OTi0R73SVP@lp)u(c{&Wii&<{VqiaQmtSL{o++I;E5TgfnEC<=?r9@(GKHb9{~+-v|Xqql=Q6=QFhF=8bB%Aeo+ z{#8g7@mx%`JBU`n12j_2L*kfY9693fUus({G5=t$@O(+%l|P|k83)uVpFky)PYu5L zJiB7!rc29g>xkPTSf;0x3t@#&S=%PEIm9chq%6LM_=HX`M{(@m81ZR~quz2gjNgl% zPN{0GooKhg;u)|Wl)`e0V4K6Fsvg2stfv>WvBU4*2fHK;+@F)!%yt~I=rg!u;5kBm z)(mhl)Iix+geuzcB*mRxoy_nKldxXq);1M8fP#w497mxkfeTiM_4!a{Q5#0h>py#Y z(?vSpy3M|lId__qO)&D`22ga-U;BkZ-8j96F-DA}=2RtD zxUu;%nH*Vw8sVQR4hK-D9EQvpRO!;gpzD@l!0($&nTBtvOtDWj5FBqwX8uQomhiyT zeZ4M#edM_VP;v#TFV81nsu@#wKy7} zfJ2gga9~;jD&h3nb7-ZR;+Y59?V;3&^Y%+x|$OWnW@$Yx*(s-=(%} z$t-)o0S$YpG<}jzFJ2gb+;8TOCO+S z(X+1tRmuD}t&M@#8P@9cNI9acJuudZozwRV^0M-IxJMnFIVx!avEkWXo|bi8@EVq> z=C#(vm9Rcg0L7WQbLkj~u1{V$*elh!1)QNb@8}k5$#kbvr~uec$iP?teUdpDba&r> zer_vNsV$6W3>LJ)ZKmn0tIK0|nUoY7J|gUm@esA|&MNBw6=!g&?nY87z_$OtGrvsV z#@EHf%-69z+~sGmZcE_!qUgg~TEQ=Emmi?Css5BeE9xw^P_dH-U!B&tN;>)OSFK0^ zMVM|G|9TXL7EG;QAFV%>rMQ!J@9q~WbL6KP6$jGFjQF@KjxS;iIr|Vc15e9`TbsIQ zC|iquz*lgJ&tZsW&{F?Z&{?sc!lN<>Z|Va$XOmQir0@ViVI2GK-y#JH15J3^f9Jta zI$Ln1=ue8`Opzn=`C+BJBo=kk83w9o3pxK@>&cvrih&mn3S{Qn4JSB*W^dLYLYq=E zY+I-5Y!USFWZmc(eTsUTr3V4#>2viX**((rjkWJs-{R=0WoGAHX0OdkSk-2vi)CY! z6D-5P1YRlWD17ng>>95S0)KV6?66egw+cpr{U}o#3XZZ=YRYZLAXb zM_$3|c;a4hPVmA!D{@OqeWNcAb2tQy6{wyGGlRWi_{Jh*+D2M=w+Z!o46GldO^ zn%o7g=0L0I!T9Mrh1IBt+VCdk{SUj$fU!rQXLXU;+4sFZ>4%h*4Q5P9;WoptpziQw zVP}$oQb9VU+Vusi?%+%_Jn4kV~@(b*(Pxxv-I?T%^s-z}*$17tYdD?2LBO zrg~8FESD2OP^5v0#Pr|MPPT1dlW}kv3tjb4E%YDvsZ2PT-sZqsx)1NinP}+*$ujh2 z@m*_dE*&;&Uk3OfgsN(|1vUVNp%M6UbrF}|S|{ag&uvNICh;|R*?`#&Gqp8ucm01t z^nNprF{wYub;SOBdg?YTg`zgF8+6-)KWVc2bD8cA7h_7j+$5erdju%Fi3hMhoxKN=lCyZmQN|$g4u>z#>F%3CsQ|Ds~7A zyLAmoWoR?%Lu`)Uv&{68BQwx)jC^j#xw1r!TGWfv?h8c7W!(0?ZL}>Tc3hLx1-TJv zOcbIrk3hA|HJVXhX?pvdUr~XW_N!Q@h3PLiH?liRUj+0)1>VL5f zDOjcW&vVU{ep*RDGd1V&Df&ji8Z>@KiqeETY%0xhZk-P*JnZWPBXtWb%aFI`No#vG zyWv;d%U=^)UtlFQ#0@5;5x?Jp|$R1Yk_vk)u+ig8P;~L zV@hot8ICT2Cv~+%1(|LQUH_+C!EIa=EM~U?8^xg|M^YgGBV{ez=Q-heyu6t1HoP)i zW!Hs{j1^+SQ+G&X2;7g^($46Le-t3Qp}4v?LcZa@FoIYR%JKS|5*!oWHz&@#1lIuyFJw4ZOdiZ!hH3*B*3TxR;n=47itQz7cS2j4PY@*N@vg83^sW zW_XgRu<=aBxz_pZlcTNARThOw{u=C`3E-0MUEgC?1aqwdDcgFb0{=zBfEFX#Et-3) zNf2Sw!eWe164LlS!J1UVin!P+s=kDk=SmsEF;l1DDgR9+68Pup0}?}EVqUQr7y2$O zYKyax_O{s=%xo!Y^6H6Sc;5P&E;jKiRZav)OlFb6C0Ks8Kx^3&C_<>zKu!w&?GlS^ z4C14HKb5-SXprmaUDp;ppv;e=k-Q~_mYBt!v%*G`Rd%?ek*vk7(@L?t=~mTc#5~XQ z_wO{J*aQUd($LVS?;?^4V)W&~_hY0ms5awTCOAsxVE`=PtHz>W72{CN@_iyh|C&1` zB9~;Xb-FKU0J!<4{0{)a5$ zY(PijKmJu8_)bN(0+O3SSo>MJ?KcvJanc^wiAe%NYd`duXp}H#csPM?vpQj+dW11= znW->Zrxd1JX?U?|=+6ixOU6Plg|jM(!;g4q#uBB$A_8*-2*_7M8f>09d$-2^s3Wm zuZ$eGpmCny<=qJn-cP$QR+~N1nSNRLL06jUmC5k;d#ymMUTmVqd5qGZwDg&YJl(@e z$bwBi_w>X?cP6vM9qwPSDkgo&u2W0?2kzm9u?1#u*(5i&i}1jx(+eYmtBzD}?V3r7 zancUQkd_l~M@{!YlH%YX;Hl_snNfkPxHgn_be>T@uConu_JSjYR+v4P!0l-J2=mAL zblRk~D7E1pS^p|G)S&%ar-#Suf=2S->uvHV$By;c3k~_E(~3*G@IvpOuE@b65~9SR z-isj(37?W*9EzPG4p21($_YfPaYsMMj>Lm)0_@__OM|t|-d?>v@q}mNnR>!>eCQac z2_$%?wE;I9$4M922pL)ZHg2{rNu$HY&E(U}PPr1V`sZ;I;0{LP*zVpo9{qnwq(ROf!Q`Sj0D?0`#|BrYWJGo-;P8J5puGxVCIoP)=hlAX{g} z+%*fPB$&XTIL#4UmyPP5a2vD%CgNL;ZM&6qI$^qhVNz=3P_?=l7W>0|iG;>6^d}i} zSe3w+vcvD{r5439#%b?}RUuOW=UhN!%nmF}*p%HG>FV>gtBBxogn>l5EdJ&Wd`^<6 zXW1k$dN9o6L9Jluch%Ycm7HUzqt(6$u1+9xgzVRffjWoUS|B18y4q*>DdwT^K%ilT zF_rq(9j@3~;5oHhGr4y*@LZb)}weSo)`eRsQ|$?HM)4;lO~89uj##WyP?vJ%Mx6-{zNFPiS!kdwa`^dls3G zzvc12a_#v1=uW^+r!7|9w~bU!5qD#m!@7E-6-ASGn>p1LO&dxkVY&i0UfTA|WQYB1 zYXQ;w6)O?aM?t&ksdFh08hYLIjF9G$pmyxecO`E&XyP%Zr#&$|I{~n{t1O67g*nkTd8N|4Cx~iY*2{~1gx03(8-+9kp z;8bj^#W*@onShBK;mf%e_`m`p-Dnhd^|*+=2)hp-SbXeQIql+OgmQk(C6XuMVxw3v zduIUU4SuIwjYW|-sw3Ar%-4D71!B@!6W1Jzod;KDVU$?`emf2rinC2iFENku8EiLt zcN$x@d?E5!r_UIWe8u-?AB48`fCE;X_Ne3Xpy15$wE#?Q7SR}uEpP6hqz`gp1fpQz zDGo9Pz=yIgtEpymR|ZXm8HLYRKg||HQ`GIau%rHc-N40*x}3#$iA>AsJS2GMX?aj` z{hZ=;E#4mm_<;GY-(Cn%qC+fkmBG~mtMwy=dj~EeZcues5t6SRSGd77`8}+=b02)d znNobxy}`mN8bWAx8|DyO)9vsnmW>p#qV@1xF7HO%shRn8ZwcqLFzS~3qzd* zHu>{MM-xulk>P)I2%`?cO6JMn`>5JCtbEYgtLK539a|F&c=e(tAT{@c3ujq1MU$Bpv z(@dj*pZ14jGl5|Pe38;MQZ=~&ker)<52ZNWDCfh=31GMot#^J&_F}F z*MF5MIW6Qmq76kQX;>nkGfagl4zV3_rb~NR&OTFXX>}Vfrzv+M^n4dbw@-DC?%0o- z^)IOixl9qn@p{8+630afR%4@XfZIA98;~W4C6?0zQMMKX_SH>$!Fu1*C9WwR!`+F8 z;mzTFj(Q*TPQL`*fO4s3!{jx)u;x*h88#!G{m|A;!%wG7Az$Vu)zu>^YTGP6ev(Vn92o; zB5P>05noLiIkSXzA$fa>{Z1KrJ%73{QPWq6jmikr*)xx*ybzO|yhC+7B=Q($mKz|O z=Eu_HuLTd4n0?1v-elszqwRdBU$GvwWRDqUYaPMilJW{${)6Zqoc`=Z3w`4ZX&}QN zZ-F2|8ow-JAdGhRjWZSu6E!47Y9zl#E6x;?r@FS@>{?6`F| zMfd4G^aGrD5usQsAAnKiO(IVwE!LBjy`@@#;V{bK2JAHyd}ObEL#@+DLzKNU$25u3 zONy^>+DtAlA||J@y3`7lW4;ouJ36QC4;9hi_T zs8ro&N6~5vYDDBPz>%6#ecL7T*mwrrh#mYX9kqd*nV=r_P^6F9Lk^L1rz!wHdg?s1!6E>0QLd zOLVgKZVP17O+$HxQwQmb*XQ-PgGrT1kwgJX{T1@Dj;nL6)!ZWB3M56Ae~Zc!ny~TsH0q)|Yiy^O>K$@@_i>b& zsga0lYFfmphu^BUs0B7f`z#lFAbPRh+*|gTDlOL^)|0jQj>H28dd3VOn!_Jf4uXI0@khpLlTzhPa z&kGpT$!(wDBVFMB>5W^37XaNXNDgdh59!&PG|nfTMd{0IsV1`S_xny8Q%zuuduD<2 zC{RJ<1|Z#-M{}9wIpw5sAPdhq8)Gy>O7XW>#vGGwz(43-xjO;x$zsRt|lb#e>#bZkszEz zjvC0|2!G5WZE}-bCoz2-4UsOJb~2k8v+sm=2aY6>n+DLsO!O8CHIEwH$l>QFCno&= zzsb39eTZ-)`WPAX(~rA*1sPtd-uUy0=oQ_(>A4RZTjzG`T;HvBP{cYG5E_Q%tLUA& z9{?rkYnzKC8W8hf%9|Wdy^f_XA>gAz>A2K#;@S$>__$-Y?n6%PXfHVgylL+$3*Ahc2~~ zKy3tKac!5V`;J1D1)DAZA3d1jUcVEly^vp<>9Imd+H}Hd0vMR47b2Q#1o6;<YrGync>X$ltW1{PqQ<1Yf`McLcg@YwbDSkWtpHKPKCm?{Gq%$Om)j@^e*iLEwM z6v44vr0wHT^K?pZR(I5FozX>Nubx7Vc!{~>Z+f9pCP686PFbZn3vKpF6lQL$0hpS_ zK{e2iO(HhCfd`~x9EuVEoCrlJq6m$11hj15gnfNzY~99-@0ifu0fw}761Y*Zqk=(c z)L#JwS;B9oOg6OkmSXdTw+0s8!$!#>anYIoKC64ovWrvmC}T#b<~N6HD+;r}V$@&P zWdgasi(-=NK*Ez8At~5B{1fM0;YOZX*^waQr*3=ieU_9AO>fd;{~_nF6mP&+n;|y3U8Udo3>=-Y-+G5hw8%I&c)ECi?9TP#svT7w@YK{! z!4^l(1f0M(Z~QQOsuPzXCV<~f@q;!qKcLn7*5a0?8O6pZ7w?cp%eDHxF*2@a$Zpnj zaA(wqbe7Mw+w{$8Ov!^y=$~^YYnZnsb|o*tWrbp%5b}oIo=%1=k?0)c93L6;2}?7R z6y}|M5SJ)?`gPFR&Uae7B62;SPk^1#&#_UtijSD`lB<6VwDmVx+tMLp3Ih0a}$&ZNHrmyi{Wti#|? zRZogz$aCP{wD`#L0%o*_k&n&y_$6 zfwx|GENPd*A7&sf!3OrFUAuKJUy~yumSY9a*3&yPY+^7GI}#vt?BzP{(wdXha#>({ z1z70Y3%kO5r=OUmrYSDbED*rt@Vyg)jU$eNSq(-QS-^Y2dUUj94>RqohXlTvZsMeZ zctYUKRE$Rf-{oDL;%YZ`&gg>F+}w9@W$@Y1^0P*sQ@~kD?3ANXd;6HCV;VkR*R(d( zXe!(*8n?+p(Q!9bOO{wZ&|i@Bt9V@q#lOS3d)Ab~E^*HljYU>=*gnSbQ@-3^=BDvy zCL_86w&~No5O#|ZR6H-^j1ZT_&-d-)LTuXoRaV`YG4JOn>rn9@2%*qg8`TS+-4`u* zbGTi)K~FC)P+}W*GV@c^gLfM^Xw>7U*fC~`DDV9Ixl3gBoxQ934Qf}zOE7HJCQ9C9p z9UO88bRCLACd_$@$@%kO`0YIV=>z zqs3v>t&PM5sF<9FOiAU=l*@6ynXwiuJm-_ZI;?5e9Fdvh%8HE8z#`p;HFp0W{SXrf# zATH63I6_}c(J>1IVZShYR$b*N7TBmKgoL`$ctSL4HzesGZWAQ|DzUzoRC+Xi1%Rk` z0cW#=VhGErrNN>DcQt^x9D2nfb@^%@ALN;dc!MGTsl@7v48ywOXt^COj*`i?y0i~8 zn?Jzt}G;jIvPH%SJxFm!H{+ z+zuw3Q}kOmqeFW!*gP)hN&$x8JVQb#Y$uk5ky|#_k1ik?FQ^X+R*1*SVVg@p7x(y1 zgPb8AT!l8QekgS}*`qaZ=OmS=a9|e0SZOFWfw<`c-(A?UPYf_ zfOq6t`K!Gne7XCP#bxvS-`m$`16eUDWHY}3)zW!Ei3?>SFY@qz^-OWCEG_M&bi^v| z;|gg2P)QbURsg;z>540+FbIka`*?HD{H2buCySHseh*ip9YV5W1iTM?WWax8fHnzoMow z;pUhyEFrmIfCEs*^JI(GFXrS z{MPP1C@c4ONV`nvjT27Oe&rYZju#17V8XwkDLLxTC$1s#O#pgSeIG&ElCc7!wDlCF z;l8>8eHJWEI{&npvc#Vqav=D#v@>kucaBue2^{&T)f#ih0EW*>?+0kl?wVWMO}ztT zJEmq-XJ#8uK^bCbomsJd`4_Ta=; z!q5}U8l8LQXmz-rQD(DFi8#ERT?)mDc?1@O0-_K38$8;9FEV4TBVt6U(eanl4uYf& zmGAh^FUIZkf9Il2wuj6al##VB%%jj3OV+VlvI%D;Zj(H!=*Zt#W%IWcDTZvxS!6@I zX_S2L>#N@9V@WPX)ZGJl0!Az>H01EF5-Yc~`kU6=$9A4AaktP6w zaO+RjfL@O}${vsg+THR7%eDX%Gp!`YHmGpV8KI)3f)Up4u+z}ouc4MM6MypZ^|2;H zw*SrfgVnZ$GCYoQ1VxLr;#1sHvydO&y|o67$12=5IK1)+JqEbwak9rQd0MuP6| zQLav~+k)I|*h65*6Nge=FVM?{2IzQZ?c?zpA53|uBFu&1DGlNioO+7zP2iw^VoKad z#!SG_^^xI~x{AZzCqq$|=N~Jvtad=XS=~a2TZ${V9$lwR8NR|3?o?kh^41fjaPzs_u@Q z0N*YmMN-VdOsF`c(ZJSpF&-~hn60m|g!4JLD4CzZ$woOmP$1>7^|Ql^OMzWGObmPdC>D1k^K$>$0scqeGC1q$+8TOq-VF0ID)#UcUgauh&MrKYy z2hj79SR9|DQ3@FrRG7qkh!D#u1o&R1op7SV8|k486edfD`J^@I@c%7z@cLy7q_?2% z+Yp0dVzR(kMDG5F4SRItGWm?%KyAD3lf}P;SmZrN6tBiWJEify3;L#C3V28lrYSEn z1_&t=&N^~HDn_d;U&$s#NBjtoGaz^Ms6$+k9rTf(U>xxubbij5P_QTAlyxW;i>YL2+qjgTgN)FLWHraGTi&eNWo3 z0q-fS3M_6cQQwy_YfeoNDPz8sCq0XGGkFmmm^7D+*paR6BZF$%)XflNx=S)HYxj-v z%t6Ee7wz22RXw7WtCtm|S{0i7{R~iDZ&taXIjXz;W)asQ8N+dMcC+5WwrJV+3e-Z2 z6u|*7-VFe0K*a@jJ7Shwx7A3Z>d+0OM15lzpFv-# zYp66#T^azlhbtWhTox_8^*cCZjIz@P-Fii`=il!}H6#~acX2FoJsBM*Q&)=b1mlbWn^f7Xbt+FE|Mx)DB_1Xo4MkJ@h?KTKd*LhFN<{0&csWl61qd;2B& zV*am}wCgTcIph7ZqLI37UZC_Fi7ka@nqCnz`hg!U_q}=)GWI{HTOKodcvbAz3_;U* zfO3!*wLHRPOol*haI=L`iEMbQ)kc(s&~Y&d!o_$6rR0%a%XRKmm5lsD0^DC`uQ*F@ zEkVMHhHYwfoy4Tw;*ErE2GReYCY^MvuX66Lu}S076KjmIe7Ys&AYrotkGJ%kz?sY4 zWTO{JJL3s1tdQ$%5Lv6fM%g)GREY2)dnZl0<|oDkq@#v`hF!bg=dRkOs`C||{Jo?a zLOOwZw4}P-u9TGQ?%vV*qCnup&0yVhR^)ZIdZ{Wo(-5DMIp;J+Ks-hT?W z5Ee%nXbKoL7*iXGc7nm)75Nqwh9KMt`XD>~10EAHU5|`ArU!D=>=53HT&#JtVZOg{?PBhuZ&jCPS znV8eUc439DSfn@(#kxstiU4YPD!%!1ecV@E9)&99ES2rxGYjNS4Ekc*zNJ>g#7g-? z@g1}B$a3w}Jr=9dnOp#0VJPY0#OvRREd7<}AFyxmPw@5VV*s??5Jp7j*5l=o z-uQN+#PW{l2gGlJ0Pt`hKp7=pbIDY;Ee_%b*F}>P+gLt4a3>sL<26Ve3lh$;o(!EN za*ob3E7z;fxgWD=K0(9S6$Fc2RHcZuq_0m}7Xb>KJXdvsi+2KTdBsx)tbu-wRp7Q9 zKfc{1I@3>s-OJysuce0!&4n+W1N;;$M)iCsF5a(G@zJa69Mh(Q`?hfPZ~I>ex}(Nj zrqTmq?8Q91b`zqPA}uWCh$x|$dp)KI7rO(KQprx4v)|wBMo!jD9o~YaIB_c@5Td?n z0eCDkvx^7R$n2}Ff_}Zlp&TA6`vTt*f*MkEENd5`wn8Vge*)9neB|CZ{gAa~(n>S1 z8ra8J%$2})el>#b%XZ7W*8T^0>3%rFQCAbG%(PR=yHPWDIRl&nj!d7f#8IWgbD4iB zD|A)W|E6JeDTb0V^>-ejz^={&xaR6Z*!rr5ZCM72n_32O+o|YuEVF+Jmm1n>GEV7y z1vuT$HjwW5(2ozpwkibh;ssUmDKz&I_D?T5MsG^9jWI7E^Cq5J0V#WLt}$o7Y#?$_js0o3#>v#;6OYHJF>?0ZcqqH zi+K5mt|Q8db*HWfihTBaj4b@OR5_09PuY7W*)nExKokcCx}~eGMTm2SDukS}5M^-4 zfFh>9mH+ibv}EG!m$;D{6_V?D&Z8{mBjPY5EVeWAxs1&5`J+mduT$`YIUSBBvRbm+ zn0)uWp{c%ZkuFhe9_Ca!R}((*wM90fEz<_(x^-fGdr*#!Lf^zRX_5zzL#SXxslkPS zTp=_|1kltP>E!YjPEz*Ydd7b||1pkVuJcL@NMau#n(5UG`sd#;ev)rodhJzIo+aB^ zvUd&k=LOLLC=jmrt1QU`ZG&NASR@5cW#n&jtO-}ce@=y}ePff%=)F-Qm?%Lo!x=*f z!Zv2{bgBu7HbD;f}9bM$hr><Lbq27x=B4Yum$hifW@ zQ~N)8#lq7^;3j2k`!&wO=m%S6J0D_Glb^I|74ue!I32v15Jy zu6;7TUSkOs#4&-pO#atI0sD3dD{N7O!H;KA~^}*-)uq##z~6_b~x0SvXU7K$a!>c z7}t%6rjzwrB58iTU5oIZa*Qs_={mAVGl^e-T zA<~81bUu79YoNTw4`TEo1ox5v&oz1+bBEx+!oP%&fs7%W$Z(EwVI&_;$w3(Ky%2m* z!h%@X3X%^z#qAyvo??wxE+tzQT9Cm?Q3-t-aon6=^izpGs-E`l7d8F3EZ&}sw0Rs? zGRFgW!ut(LgIap5rA?kI)L@|LO{d&C6Uh3UGjSg$IB|@pRxibaXEg<`)oPUIK+p>| z5p9@^L!93eTc^F!QLhBV3+DR#QW=l6Z}ND*V`PdVGr`3$6KC?!1t<9Bsma5sf!AG; z7J?KTpx*|3dw%s4h8_o9>Y`_3x~Pq+Tnh)_2K(hg5NiL)!`*aJCKOFfuE@3eUs)3v zbj?Ez#drbFw5V6Z*n~x<41GY?5OiY!`Zn_+0Rdd+Z%X9sLA~$lsv)n6ZQZN$#i(IK zq`Ut1NKuo@BrLQ*JoI>uYqueCS$@S8cN4%lRFh-WR56fH!JJL8g#JBDF9(Vken$2r z2gmDifKVn>nYl%KVMRhWMemlAjo}VugXHU%_`UI~d5n7#@>=Y>^-)r>{Q3^D7vvR} zf?%P|kYeIqHd;?GGgaKDI`y*(sH`IVV!7Y26kFngA?WN9;$mU4r*aRDyUIv|48(9l zs$c`83#DA@w?yqA5qnRq7wShMhYh^e9tC&|bQ4a7#?JIo7Uxr1jq4YMu@P644!fyc zh%*U3fX5Dh_Eru$zZEAjg zt%77v5Z?SoDvkn!I%s|#d~?$%g4s^|;OWsfF)3>esJ$Zf7ii?6RdRtJ-d{KJxEb%;0>1FK&9?pz z&NsFFDLorU5AO=CvF}*$`pjNsF0v(?baaHkVVdG6LhQx*8o={BSUlI$ItMPxvXK<` zRh>zjW(XOX2rXaHjYd|`Xued1_y=$A5^_xe|Ag^6m#cgM`znBp7eaeC&iO7&rK8eP zXYdZQrf8HlWz8ZXCNL>A{@2oGM}iaUI)I8Z47{g!8JUo_58m`&26HUf;Fi+Ll}44z zN44%sXl2wbs8PQY&KTc2pmvZ_&{I7K$3pv zjTcf(9={;Vg1;zKU|=;xkasLPfp8ECU7`PVJ@WecsF+nWpFWn@_E2CAT<*?DRlOMZ zK8s08b!Uqc9#o778ElvKj?_eOnirvtkl&g1Pxi|g525w3iy+#WRsm&yc2NEo+eS`l z#i-1FnCVR&QXXHkNjROdDihPH4&MltDl6}cyqSEY;dtr8=L{O_Z=tg|&n%t}=-^%k zys3vf>cTSSoI!hsC5Q{uyvHh# z=H2+sd#|KGhJl_5Il-A(7?fR3yDSkc{hba!o@8!Xd3t8D+C+6m$0TEhG|Tker! zvKi_3W1}r2N^+RM<1WI#+}NO}Oz>)n+?d|I)8Of2{!NnCjTJt#1FZ(}ykX}94tIyV9_-rfkv&u#gVwfM`jT&PqcT8*DEX;Ab|`gk!AVeDbg zUFcOGC*Ec%R7~R;3a=Qaf6&sw&KQa{-@{XnKi@ehK#Stlwyinx0ukF+>NE15evpv} zE`&av+`N*9beHKUSMui1xqmZuf`awYZo>KDMUc2cH`|3=DK1x)^`X%IaV9vhLS(Nn z;SBaZ6jt>Q_a0zbF=_#eDF*)I7w|&(R08e&QsToyBd+De5eY&ph7u*tocQ%`QzL^w zM8})jDi$lmMMf5~i9h?$#w&kI)~W=u5DRcjW@hJrcY!){Erbq{fqsRX$5Xmu-B0|MBv&gZ6J=hdSXuojOm5qbeNNULDugm*IJBtrVMwE

# z5gb>jjOnjl)q&A)MW-XkKnM^G$nOPn4GSBwEjft&sweM08VU#%N@j>mJ(j^r#&s?X zQT{bCS0A)eoc6fE=;UcwX z|5Pp$AVXcqOI-Wlp4v&PF~TS#Ug3E}qHt)x7v32yGW*a*+9Ah-<~nGG!1Fq|hv5Cx zSkSO$pKx@&cYL1%p68bkjl56NW%1n{U$uIaCmF6!(PZj@_2@{G|7qcugC7{t#Gh~mi5lp%n}V7 zt)7bZ!7%+0)#6-?+28aQ$vC3TVb%p*p%rVe<$L|-5bULYvV!%mT&grI)UEQh&$lmh z2)0qt3-~YWZ5F)9-)w?*alY`VK;T|3SSvd&i*CO+nri17sH*~W)jfDsv!gj$L$h$& zefc6d11OwbMtWP+1}~CzmbO1pUoWV#^B!#}jBVF~@3Tg;5Z-DQaSrY9ob(Aj`^Mk} z3SRX(6=m)$5%9X1^jeQX6GXfBmbLGfrYDAq{NLo(bAZ3>FO;)lbU%Io1KP7FMZ#l2 zKnm3;(v?0ipIJkpi;CsX34n3OShto}bR9gr>0h&WNFW#afWlUQX!D5h3#ErUyZhn$ zWjVhuW2Bds>s`F&eHv)>AmV>!cz?U^%dXqAp|$Ok?|F+_!59;$p#|*d`gU9t*GfL+ z!JVO=!IV9uOgyzjbQxV6+Z*qw4R8I9)M1mz%_R6W!aH64+le0nH==89M48VCQav_n z%8lfEd_(-y!h(|a10R7Lcj>$Q&>`$;H1S#r_RVp5xS|7M@23&!P>pTVDq`g>qmHNA zMt7V!l=OP|6E<(OYF@tBa~^`WSH`vDcF4kg+K3_zFf)APLc;+^uAS2m6mDv{YX+pQ zX_b0R9pRTlIi1x=dnMM~Nj1X}Y4Bjo_^}+HS&_(A9(_Nc@>Lt!91=-z&HH=>^n%jy z_ihZNx3FrAMtrBBTiYtE&AO=qz`}-&zhJ3PMr?Yn%-|CGxACuU8%qg(^7ReE-u(I=}sT+618081d zl18S(Ob1DLKP&}?z_qY=8jN~~qCu(0$+B8moN&u$3_Zc~cdhX1^cvfh4gcB~xB$e_ z&yK5{_R~&;vQ=3(i16}>v&6%Z1e6&G3piv$4$RV0szA9U)LMkGB1A@i8wcFy^k^*j zkUWwv6cF5{>z(b7n#+F!^D0bmY@jMuqNllgy9+fOxFK)i9zwss2&|M=N*TV%qqI;E zNPl2)lP05k`E2RD)V>h&U^bmGNjIn53vj}3EX$Gkh+S_V^V8N z$Nl8|;$(U!{i@0#xgGU_;XYca3RwPJ%K7tC67cCe z4*(UsT?)Q{{ueef3{Lnh5wOEqz@c4U=+y%+ph7+QE8{y*7&nzO)K#4NKi7meSdibK z!j3q==skeR*5Awg3?C2ElXO_t=GDo_@?JP_)HaJ?;jxjI_Dz1bDP)(14cC)%2^-_F z$h~IjTGl*pT#WG8^&|J}!3Z!d=GYja1ighN?MeetFJ;`bXH36F2-|FCWq~2@!-?YS zg}XZVZWH^?fYw^?DWQ;=x^GKu2WcjYPi(R%7|%AH?o4G$*UJLp%KIptMt&?TEfKkc zp-Yr`c}Dfozk*kmwv|1V;rMG1j#4<4KHMAtNtlKaC_NJk0pg-%T{aYX74tY{$fY!U zfkUCa(#oX#w2XVvSrfR9Jc8FbRkd!+j;pJNU4mYT43F>1j|0kG3X`JI)2lYEOrJAI zwjD?GOWtW7=W^xR?Fy_Fhmvk{MxvSj}t;9%SpWr}##AH1d^dPV3BZ1}WpG19W@kPEPXZ%k+ zH~*DR9tFxu(I*g99$`v z9SiQ;V0sVYs*d#$>h`pI4JydGWSeDbp=AYJL|#fMJ;|C?=eMn*2Z6@XOX7a(!Mpy% zTN3w%A=ifFiuud0jk4#cDcni zKk}kWgDuGg0>7|y=xGFkU}WOu_Drr>hq?C}!)5P6CFXvyGq{^<9!dRv-T|5=OZ&12 z|L3BTS~CPehxHziP8ZeX?fNQZRImT2!B=UPO7g^qQ{C@zfq%RI~j{y$N-d>=+38t6IzksYS8F0=gu@>WKt&hCV#3OrZs?B z#-W(6Qmo0!IR~g4J0c{h?GYLj7Q3mrm>*4IpxX$-pHF3df22nLM|T5+mxmM5ncJ{jE1kac@p%%kM)}3yu!(^LNTS-H-Fl zz9`xx?j(@^q)e18Bj}YpV>Q+2ja84_*bI~Cx9Nd4U@;aglGwyCg#}mQY`1GHMo@k4 zL7OzxW;`KebwQ$S3|C?M+#wS-*Ej0uK4f%`a&H>NN`D3#zV`+mjU)ldWEG&%IH!wX zbecf-~MMvub?G-;%FT{{~ zC@7Aojp`yeDPoEX;kdhrnq7dlM4i&(k5Ti3gj?ece`E_pOPIr462LAZIrk zpL6Uj3)$e4$VtIhwx)mrH_hC!h$i|dO9y{}+cxMwna@iH?3dmx9~;SKffjc2OrfOY z1pN5EwxO-{Ax}6M+Z?lx;fE*y#E%>adlYu*bM|Oif-kN}Li!NJj1+Qu@VVn*K)PVm z1+-Hw)G^N;Xqd*pUlr74W&MdNN*i%A+eGc~=Fx*M+eofgcv)ErRybklhYCa~kD&}$V{08uONkOG zJ%!KN*afrdMOkkEEO2N8p!EQ?IU$@KqNwc&c->7!$O1ENeQOJTdZ`9hX<#kDCIY?l zSN*u5(+XV&b|!j(&1A(uu&y_jDxR^TIT5^howda^b*l(927V=prf8%+psrQdE7IAd z!=-KUHwnCirg2&-f~Xjm9MHI+#BD$En{gSYJg`Ma5OOWCQ8bsd$i%ue?~!HAi>llJ zsNLtoh8M-;#sRIo)HH+8=lil;BfUYdb3!mXm@X2eou;d8_g5>Axy=PZf& z@79vi5ls>E%_c+@?bT{&=4EUrKPOfwb2b@=@-Z%y_ou*QE)wH>h9dp^$lvT2OsRJbkz?8Em%SO79noN7akO3f@6q?F9iEy6_f~&&;=4p(R5Oc@+YS zhjp2#4h;^Hof6s4ilOxfI7ooWuTK=bYwaY~sgNmt@tJ|5v^UHu$+du+S zmeI9*@buLc_uK+}5QSv-m0?u14NcK-zkf!x{n#{6s?$hjZw#gc!;B-Z1Z6E!%I934 zvMJ^hdLq1!qTbdW=hPcaEauXVU)dh@`4t$q@)e@G_tyIzS>tN*R*C{j0D6faS2bps z*1)-GW;ANaU!_4*ydflu%BGHZ3=k^7x?VX9H-U5&bN0q7YA(c@Vz;A*9B?5(Bmkd4 z2U%_mp#hmom8c7AylfQjIk)|Wdt_Pd&uye(Jv|n-07hhr?B5(a_`1@gltw{usj892 zqKLj(>`~>vV!NMq{DO{z^8Hc{otJefqKoOCdz6Fs#N<8oaoCLNbp(|%r-QU^- z)A$Ss9p7nSuk~P00}E>^>F}I>J`K6F5+prqrBQm`ffII>0T&d%W7SAX%qX zWKZ1g7cTU(tbgkiV-dj#Ms}tnT*nJHoh%U1qVB(fy);PJn_F8D!>@#ubVhI3SV7)z=#EdzEoRS-vN*_YhgSk9xl0T$LXfJbmV z-fTZ|J7`+2v}K;VC1oupKp^vsiYY=^v7?fRi0o!vd_`t667UH+!ktrEWd>y9p4;@d z^jl$-Nh(|R;%zm-9uukV9V#6r{o57X2;B0(rZzNL&s z?248mN-@H7QD?HbY1A!|r&i$_H9Bid?DQ1KIH$IN4S+bpOpE-kiTl1PZNL}uePK^>|Iu!oId(bOS74r_siO1RS<_p{uDn(4Ln&wJG~ zgPx5tD}|}u4m>YxqK0DdKs#$4kGrT!n$PUSTB(sPgE<$bR35B%i>#!kXwIQ!dmj_5#oOJSewDic%|SLXSqH;$wk0(CB*j_|&&29_ogEwlM`xBxVEHImS=O zf6v5#TrW?c!zmJe)=`Ei2?{K-K}V1qtiV}F=a*jt4KQW?C3b7IK z0nx2UWUEd9PjiL&(D!R~bG|lNZqUOfU16J(0g@?~7~;`PfYvOkJF-CE!>xdU$XuZ< zF5lMmcVmQt)e19w<1zxCR7Q!W5E2BdTq*?1zFM8^jE`VlVKG&sWuD)XJq+Pety3F# z43i8YtX51YOQ6pJg3TMs2#vhsDq@+Za4Fme_d1BULwpNW4vC|0*6rp@7p0yZ&2^^6 zBTkgkk>-(Hy$fOTLJUgbr+=IDSVwci>`IKN+T5%bC_O^!=1DS0?vBr@((gr;^YO?% zU@T>tc2Zu2{;&i+d$GbH0}j&M@7fB*wVX4Ksn#9$qTDh>_pg8y3?t+D)m9+FuWA@w5%L%k|G7+ayxEOb6SK8R*? zf5WFj09k$Nu8Hj&fJY=ciun-yMdbChj8{_B!-vYM`QkdMoXIIrwwL3%)2#}Cgd_uS zzZL9lg@eoP?w(7QkA-72wk8WnaXuvaYig^LZ|SP6VA4mX-IuqcB`WZQ)*;N6Vv&fN}h0v5Z26#P<^Cf8hfpg_=rYEEom$z-!%b{M@?v&4N+*4gF1 zxFlHKo}9! zsSf5`QVe3N1xqPvKBkI;H9S?aB+4hy3H3qEpQN(lGfKUtdUx0s zM64L%6!ikcUa;oKixy5xK=I9Bg447AaLyNNGL*;#{TJfVHnSdk^;;sUNrf(kP;6cK zf009DXtYr$O^;p7X$`1XV=ernMvehCL1D&(!$f*6nS)3x8h{D%V$lCevrX+104H;L z1yoiMSJ*yL+jvGhIVxq?u)1aV!c(PbPf-KwaE~fU&!syOSDJoZ;M$X5vP=bY0SwN4 z#Xt?JRKUf=L^mts(K_U5-ILqZ<}}?zMlA`FQ)cpv^%&0Q3Qs|9-xZb21_QHaZ&rMbYK(*S(HCj z<#rHeGU1orTJm_P-}~;qH%`c@W6)v+A>A^{ks9W?Em`e0PbXF;JRCL`;oyPlzpa8* zYADp5l+>w_`J=}^+_B2p+#2)?CNPTSv`|y{b1GlmH1fzoP)*;aw>@O6IQuc@*w#{M>5a>Dw7lP`9hRqRHfIpaEEMR6;MncA01x%#D~sMN%Q`sYM}K z&eg{a?+jj~T9ZCZ^|Rl4LHZ?g#pZRKy2tk2D$9({d_}y-llq}QjJ7Syv{J5J=1h(c z(8BV^;DvBX?u+2&P|=0wt1d%DDwLUy>WYK1V%AwsS3fH-pD#Er|BRh7vxw00f)5KoJ^^(2_#h%L?>rZ zU|-NA9W3nN1vLU7b8?j}u*A5p4buG5&Bo3<-hmL`={W=hcP*0U4J=A@xCUsmFB$}@ z!H$^&+k(bW?q;Dd9n?R0sm!1#Dl{T}`nJNmR5f%#;eD}-@>(wHK?KjG%CrewD%43QH`F#GwD*`pw3amRncQ;{rbC znV2pKCJUlwBQd~b8J zlsa$G_1&TRtRcS{1LE%}5SJRFNGLi{gqmFt|H=)&qz#fGkxhC|Ig2_Ij-Z>Io&c)F z+B!(q_b^A6?`Zib(pXzGigYl!_U&y~WX-57oT$BS5FJv`a`pHXK`=0gKd4jA$B3-J z*#%Ef8ESA60z;jcl=Mrax!H2YXHf%q22FR5>yw{le>JzKpkY-tNg)}#+^B7!UJH;VDu6z{6i=aXq zHU!(-w=zuaU@ZfX_Jb|XJgs!m;zT+&Fr!7?cd^M* zysyOt2+LGc{J;2oIM@6v^j5pow|9#VQ?Pw4@Km2Grf*$TNRz z5Y5jk5pfgTid`DCkh9O)g^4}0h&c3)w&gJwg?%Y$e+#=*jOQ;L?ovk-P*&H40!O1i zEJ?NkPm>Fbq$0S-9|}UWkVc>VV@oKqyuQJ2>6`=VCtYJ!b-$NR^+kf5V@cYcj{E%<&~PWpl#C&=Z6z#J&M0CME1xO2J{YN^ zxvl-#EWPR4SUORS8q+a1lP$v*!#`PQOz?=Z-0F_cEyDZ=xWER>C}KM<<(^0HgN8ps zDp;_7>;iVIvZ+*Y#9rVJVCkxF)Ba(<`chP+i@|R=8i8Xk?@?c(7he`5$w+7a?~qjc z2JFfyAQFFnb=1+O!GYo(o|Hy$F)=FG;k_$4Mkss6QDNtctX|+AM~k5*K6%S+uR(@JwPUiQCXqDhC1 z6*UqbTjZ9oC3e5pmi2Ne&TLNl)$jkI5JO9nhtswDk-Fe>IW95xZ?k~#CNDbNK~n^^8Tn=C$DXPhb+ok_P1QfjFnM_}&-bPI%K+uA| zC8yA~VduQocCnz|_14;v?lly4?#kzUBD+RjDi_x3b`V3E6$%}wbC7?@7WGw^@)7Cw zOqXSQ%9%p*-i|FZGON+eU^2&OAT!PUJWc@$;)fH@OH-TCc>C5e-zGid0^aJRvw8|x zSh4-&wk5D0a*Zpn$TIJg^Y%o7dsnUSJnuM6uxGmUj9`_oE(8(vJFNHdcx?%NYTiK8 z%qd)p5vI^F+)=`^G%CxFDWjq^P2213%_pxyOlrotzo;i zdJA3cOs7?AWQL|gu}>|F|GT3?IXsw2FZZ-7qOiI7zq`?RgLynSrOZB$9Q`Q$wb^Te zqp3vzY)G-lMF>s*A&;qgp&FjDq>W)jNM{m&+=pcJQW0fnXl#bUHmuws*s@ty^ii1D z4f66rb#(6d5=Vn|H^RZk7MsXX0e%1)Qc@;3g+GJ5L}MV08lTk+Bv$Ab(dhKpsPu*t zR0DQp{n+lM9>=2okGvb3J8L-T92 zO02Luk8Jh+NxD&y_Xl!9z!E;7=tPR-1dNLE1f~eDt)U3>Qk7-NLH3C{jEm@{*MW7W zhXg629&UCp6>DFICoez5to!JhfW%V!7&Gq z_HYQcq=(?1!#09~)N2-?CHR2~EO{0vJxw<*Z^uA0Y+_!66iQc%tK@bx4vW6sFZ^?a z>Cc#f=ivsWc&?|hSMNLHorzGe$j1ewxFmn7Dgx&6?;;=Zpbk>h-MJxMf z`Wc-FP7azilvT_TtHG$VdbasiMIY%tMno1Ol<-e*6*_-9q0D*3w7V0(P0=TLNzTt) zJrSStZX8us%S0(V_34sJLgIA64X3cSV(HMb4EEO9L>||YTGxI^Ue$GB(}A|Z8_q{* z^KEA3F|1pcD0UAJ@X>LImb;Ot1@_@-=-nU$CEBuGys5PKb9#K$iDu3?T6FX0sIY(j zz60*rH7Q;Sbdwt?O@}UnFAAIS3k6{Q+0?q8HhoqYA4qj>*wDS-w_6r>k~{9k3#&_L zwNC56Y%ZU*qJ8`5Bp@YBBVVR?7`;o3 zQV{E+7Y{;_xQE!13FjOr1QLX&(VHRnM(~xnWai*=B{G#f%K;JXEp&lKI|8}T zR;0GvDAm#t8o`<3NOUi9|7I z;zD6Nn+(o)A^V%xQt`KPNiX;2$8U%lW;+#k-VTJ)`iU!u{*C9TlpC7kJ6}?>tDFdn zkczf+Bs36C=Y)g3q8>T1+wZKtNBKmW9HW2yY^T2*tx=g-5f%civcjcEScu4Ta9ZK8 z6rVb}G{U&l9+0X$OaI-xl;@?jF+7E_*0|kYp?TT$&gEDrBntNcJ+B^Sxx2I7dQysD zLd)>a(&K~N)!Ka_?J9W6%0fDk1A4>eX<}zzH6K72>eYNrDNY?IS@dM?$w1HwlgKt) z`lzOA9SU9gIR|%OQF58&!q0Bsx8WVp&X$eD-$h7st>OQLKx7_m!^%$yPcvX97XN-o z#t=wm#2TTsN~{PDWw4g+`u_d}1gA5ZrS)C3H);Lnk0T7Z0@E>>u> zuax-9GD~SE7pnj(D2IcDdgWw8X_J}Q52@v=P6a=~e;t8P1iDx~r+wFVz$E#@n0S*> zpAX?FcaLp+-f0`8E9$j6S67nxU@!Ix$N=-C+5AekY~Egjp9XF ztBPcIcgM(tr*%$-pLB&O35pGnsK$Nvd>BP&#s&LY0mCYsCnu;z_4FvCCtR}Yy2H?l z41#)e+}Ci5lyF}EEL}76^e8h)B_Ao*X3jChYlK!E3EoJ}rf4YO%qLGOAz(LdE96Pf zF2PJ|3|X9aCiOHNQKzGrR4Wg_vf9^lCDn-BVewmJBZV!x zu0DYy7y2G<3=XR)kUTGjV#`zRV1ZoU;*mry8FxQ9|?mu3hmYFV?32o2gXX|i{nGsxF z*#c;I4U}VUywOO@bq4VKKCS(P^chsI|J`H_?i}NUB@5XeuGl0y*VS1UtG(8nT+l1C z#zmgD4kr=nOcl({hoF7F%Lm&IEg1>bXXvf%M9#eLsStimy0LoGukU0Le`6dKX}#a# z9UV?LG)fmm-u-ZOp1IRmZ#Ll}CUCEFr<)EC@uNp?2?1-dX_-`*Wq9EqZ< zZQDflMsic)MMRvZKymNpNj+K38pPB<4+e&md_!+)`$mYs(p13)~rXnU!# z(`UrQr@Z(JFziBHZ;5SW+S<=yvkeayjMz&YND4TJDLkZnaY2ekY0*m!6i)-Axx{Ew z!6L?hev>ocG^{8ZQzruG2O0SBJ0Su~)U-e32heZGV)|{wFm47yT-XopMv4xEIK8zp zY&28(`iz`@S7Y+Fow2jCz6e=q1d4i01x&Knkgd9>`cKny)d6BApy9i;lh{t zW_z0-kOv7?_E*;-VaIy;biJ6o0iz*tenWex?&eg11-VYM;xd?FogKEU8_+SlSbB{u z`ST+If~JBZ0Z`VqaZ4~whZ#oYvMh9!$azG~-@7d6ld34A~jfiJ1o>)oZR8!4*Q z;E>_)S$L5c(QXZ~5&#hbi>aIbM6l!%joL540^Q7)PBHP`}leu z`9UG*6NyK&+C{koB_au4TXcB`&4(ZC^KIBLZ%Y~?@#}-C@!qcrCTUUGMQphFZ+=fa z6du8#x_y(+a^x$3b1}Zz|6N(?`^Uq5^j(#)^gVn z zD$!(-t^Y9Vwnu~b(Wiv_QUg@~eqccp1|CJSc<^&^`1H&8W^q)ft`cJWOxd`G(feyK zX3Wv%-j1{ZNbpl78Gn>wMdF`(bQdWJ$GN~4id#5ww3TiGAlMhb5XEbzGOhqBGF2j8 z|E=N;^JMzP6F*&t|4#ftDIub#&gS^TSvCilIa(}ci^WY6#a(EAI=iL0g_w7bi?VLH zXSXZ)H{jzlR%FqTh+~R}Ds7&?kt=DaF8>^az3K^g6|YYw7RjlqAd!x-;;oGvQ&92E zg?aY6Zg%;(Y4If+xp@lEnI|J&T?1}cfMBuC8}Y{x&A1NQN08W|qrJ;zFIZ653pdbJSG2U>a2bke~3(>+f8hLoK&P zF?d%=JfVD+{2=?abO)#u$y9sC?uFpXcI%<-qaU+5szM}0ol7I(vZzT^ zyHr=$gil6*xivvqap5K?lTM%8GS3VAoIG?}KV(E(7Jqbu9vzD66uTOa(WZXN*{x0C+`5n~VXH&}O}F6K2$lRm>6Vt~tJCa3ArGsq)wD4<%pFrqtK zV!j{=AlVsLJ|DTrbmAHo{1?TpUK}xd1Dusm9(Qy{OXu^aF6)mn&~;xz{MVS*y`_7! ztq@}&pmpM~?{6A1)4>H}&YRU$;UkH-O`zW9@T(zamP{db&n=q*|5!w){<;I%&VH&7!^CHi>l zjeuTy|HA+p__$c^c=Pv!GZ>od>q^GWN4PfkBfZW5JwU?0LZ6k?EjrlpepQ509cHnM zJ`pJ45D#GJ{b2qBfI9SuxAVj3;j1XUx~tE7lH*aM02aw)<-arBgu|vW}oxGRo zZ3;2PMuF$%?zrGIIYTkV1~5BGWGht)M;{P|?UgWYY~CH@NyAAV zKhdaP5qfUL-z6D!)tkaxS@>-CgezrQ1l;ZB1aB^EnoIDSi=|$BJtM7`-{4^8{mn%t z0Ot+Yvbhs}lOe_T40|v=LRK0)Dso{L6#UNY zwFH7_ywPJvxvOKjW~XVMRgEzl{TX&+-r?(cFz3`M92rzt z08Fdyp^*+;@p#}<#x&!!AQ_S0<_}|CM>(9myZ;n^oBk$M?^jy9+mIWec_-**FXyB% z!Sx}RbA3AWzlYt#3g*@*Gb73q(0yMURG2xj4I$JglJjq;;8Kx;5K4R~?gUH9f8&Oi z%ztjT)0G4i7q0aAvvvWr`9!w@iFR&+d4;r1v}{#V)_%L)L-q%KxY(8>oBMz=UI`JI zdZsYb@Cj4bk=qaP4Mgk!n1hM-EAuU$R*%vU1KKx63zkq6t@Sesmxsk9+hTOpp1sfC zzz(IOsW_PsFz~(r{xW+>OL!toS3fe^*EdqAQKS$vwsGac(YInVH>MyfegG#v+yykG z*K~9yI(!2;>C5h0UcCs)_tBeJ9K+xx#Fr~uz9+!p_rV@}m{{8#A@;s*1| zo-HOfTC`oTE%p622?Am%otg+KyBiz|#D!G^$tzOK4n%d$1WLA;k3Jv6wqi8II<|Ld?gy2MJFkKqCt7?Yyou7 zZJb_7Tk(&9+P^KMwhAt2pD&^E=7isk=atMGL4rgLj2nW2K3ywvhH_A(+wEIgZ`I26 z-}!5d@l+@$Zia4zhTpeXi-M zmQPXiV8N`n1A`O&$~q1}O&{0^8fguZ2h`=f8)T&d46p}w`rDT@x^k-~7447kQBQFdZT%XQ2T4)I36Qwf zAch%*5_RQ5E$2yTRHJDaWc*bjKOg6D4Lt04aF=JMBD3P}Mrbckn&fSOGWKOEIR93N z>`OV`dZF)j_#WoB5!LAkS;}0?rpjMf{=j1)IB4HC9&eZPqp(1=yn&vly+a<~Ut zi3cqvTmWpu4!Npq(a)g71GRY#hc?pFY!i3+>%bgNK>iFY zSl#oXu`>#&88_nu)My;3$uzV{t%eU)NVzj+p4p!@gvK&5w+O7}w4YJAT2P0Z@d|V2 z+$q!pN*oslzXJ-;@6t2J^_?TbE_@u$?wdDfd_yCte_rq(fy?$<7&h_sz@Qf> zCuLg=NNf0Sgr^GyT!6P@p($XpcTrq_=5#YbwXeQ>Ckth{xrX<)(HI+2osZ!bOsZ7S zb5$yTciq9QM&~WCA2v(%8m_5e-luk$o6M3@{jYi{?JK*3uoA?k@XiZn-p9=~iv$5zHp5{L z>Nx-?cSK<*X9if2-YoK2YMEdQO%ijo!4hKEH8!ij4Ov=G~&U+^_-2s#oi zq8zwk6M|0BPw4P;q_KcEbkP)K7QMd z&q2=A^rR>;ZLxMI0%Uc)kd*4pV{CfCZA7zj)g+hh!EwIPURbO;ocLfh4a*o@6!Ok0 znm;3(`T(rc`XU>f%8l%$MrAh>G2U~q98;X1nDZJbJ`;tMl{})p@2me2>QwziL8wDl z+f)~LwqsM9L+wHy;%cYFt&J^FcMNicMDn9cYCa9Uk|-M+qU=YULaK=MwWoi;5o;#b zMt}p*j)w!<+yX?a5#CM6)X{hjr6tHQD!&WDv!2%jv;~8&xdO0M&SX(Q6$hz zEks7jIPXl^xX{hXJU|)(uR0as#dT*hFzgm$$`O4-Z^iPP`O_73cPoJ8$>rbRwg;^nw550y-d+dfm{)+3`%tH$?jt0@y>o^iK5KB_X{S(8m{P zz4E?3v*v#Ru&H%1DePd2rbc~LL6oX;Hfv*ef46)?Hl3(>4b|ghzVz^`d7LwPiHm&K zwqhZYQUEi})**DktVH@N*&f~plD`dx1>^F)rk(xZb{75sA<7VCy%NR*GET9HoB4yE z6CB$2>->URJyO_hfG|#oB8sSOSL1;y2#7iliD3_Js?Y&V^L`y~@ViD@n}jpB$hBoo zYLfGg!Ta~#{;+%HcIv@%cOopLxD%BoO*+oVn?@kNGTCV;Z!cQLI9er4&DLxTx)H<> zqNLvWS%Brif))(h&?8PiX~WqA6k0j-FX+pWp9Mipkwfi-;&1A#V|Ahpa>WS;Fy(U+ zE(ESr9t*WNM=m-0S`ogT&%{L_y@CENWYCF!XEVg2?<;o-L~J%ReefR?KRk3mjm3Z=8miIH(GI&M58Ux**n)AP+lKi|%B ziwbIQ(idf&Xvn*tRL1_A1cEIPW&}bw*Ty2(xtmA3V$Cv|}hdEtojUUKc$@9VGU1Mk~oHc0`0{kVvC+E=JAVyJtv zOnt>(FziZOYDN2pxJ+v8i;5$nacK&qw>4wCU5b$uWmF<>aRm9Mqv8vbtC_>G2p&YP zeNMFj_UwXa?)R2T`p`cXx$>l&^zdnps=tol+y(3`ftPzHYdRb?Pwu=(M-fGVd-hV+ zT`?F51uG|ogdWKWm2ZY4@k1hv@XZ2J%Ns$Xn1pYaoi)@(+IkAO_D5g$3}j3a{Q-05IEA2rAQk~;jeq$QvLQ!9HtxR7f(^@EP)re z7~9*cgr?nfqOeAiW#u#%rSm&Qa~0Y|PX2HJe~@Qu4L;o)vTvw|BFpba(48zJVn!gl z|4Jg84vIP${wk(Erp-3@Q1_LpFa)j4g3k>ycVYfL{?JPdvUZ9gYcqBpN)LhdmlB*6 zRb1p?d9rCC!%jP=<7W%oRMje^Y@DtyZ5P4g$Mzdu(T! zqJUJM;CZ*>_zNUi!m)R`%$$#cvyklbT^RT}QNG)9XZFxF%FbALf=N|&bRzL^EQtDVW_Lb`(!>iihvpboO!1%)i&l;o8`t3qQ% zvZbf2P#Ep}M@}m@nk09&#r_f_ExK@{WFARdzP#*(rk)rDxIFZcrz-S_AE+*|V&Fg- zV9)Gkd(2RiRS*{dc?IIRb%(2Uy27g7(~jFzDLJp@AG2=iG6f>w;k7NWK?V=hFVc*B zFt-Q>NMIJwdXI+hv}2_nRi{GON7#_3@Fu~74Z|kP2~5gYJSX%|Bi>Vu^HRWel2kiD z#A1w5G=`_bpA^ase5d8dTAoF8;HlHE#*D3vFG(AW`n1Q{F1%7ZL(x|*WBKGr9mqOA zRHGt$YfQr+Ws22j-V2#-$%*mTV^ZmyTZyL;{o79DY*P8Kp9vn|HiOLnDb~AV*~E&N zRT5ZDd$}>y^=wYJau^tiKiatC1Ww6 zOSNJpkNQ;6`y2ds%q3XP_UeHgW(2M`K>NW|N!tf}07J=31^G87&5uYjc&sKo4cWzq zxbn~CR8WQPTWYK7-4@NS9OMR~1CvVpENq)(3#&Lf!DRY@AbcvQ*$7lXZZ~4~Bj_18 zo2hwTt{vOMZdJNr?9gBz5pfRhP{3hTq)GKV`uZ5(MH`d?2pHj8=~?!AcdoC)vj(8! zZCQ*@+9(;?bLWNa5>O?R2kYJ2Rw}Q*2BGko+$zWDlf; zf48TB;le$A{sq z^S+EEuh5th|B~86P}+%Cqh<3?D*BM>bN?pX7PAsDi#o{MmMTk-i$fe^p1T%x%=Vlq zN7n80<=;k{FEqaaeqR^~BkDnV8K&SGI$5}F@7l%#XhyNcybMxbrXJZ*SNDR07Cj_} zh;=k8SqE7GY477SY1r&}L3ro!goI&0cTxi#jnPJGSZ+>NLGZ1243^^x5F-(}v()ij91 z!DIFCK0&`AjJj5LKn-!lIYdVeiNfNmd?UYbok|(eGj#HACv2@Cpm~n>h2!5M%I)qi z@pmrav0aC&n|bFobtn#U95BBL6VF+)`Kk-O7(o;+Ulq7ivUSDE<3?@FI^*H#O@wbEUg577I<&P&RVhP$~Vd!>_OX4MRr+8oo9C~aL8l>!zyO#9FqH)jhZnm^6T1=jR$(tAA7UO zX5I0S0PkB2xc8ZndmFsPTOsPbZkIx}C6iYQm{W5mbe(ftd(J#WjVO2IRdDPsTK|ZW zwG$X&SJw)i_6&GzZ`#eo`WBTMdh5TAn4rOdS__k~@BA6C6w>d#w~PCRIe~&*r80a9 zd@9lqA&`B9y7-=(YcjRTfA%qdSkqEYBpA?YdfZs4s`3+kEU z4o|jV{bwDsHFDj<-(i&%GzU6OhDgB9`7pErd z-fTmlnIrI}2v=(vUD`*pcDpz+xGX!DxNnqefWq-VsG3A@i44nAni91f4lp${O@liR z#C~mZ;FPk1d?Y&a;+M#*wl)4DBzuEzaV%(a_k?V+9t5f^*`1?oA4pF2wbX7p6$($# zL2L6lV^MlPJSX(G3|o%M;WIAiB!Ovi;F;y3L;^*C;CA`j2%tt#`CVs6ZC{aeo;)<@ z!>Nq_2617_YIl4iy~8e63Fw}wMm|T?FO)B6HY}(vM?TAWd21&!K~+HC+6Z}TdU!4V z!Fj?}Hk4x$FS-O!cw1&{tput@br)+sJf+iX21bdB5op zLo1)MJBE_$V1Fte4<=|j*3EE1aDM7t%|v!@YUB8Z?w5{UDDS?gd`n!v`yvW67$TkG zlRByPM~$YOvyD>>1R@1uUrIsk?-(1U)Fx}{`|U3B$wN}by8V-~rcV>1rkiXus_@tj z@;};KQIu7pj%7G;#|3eB{ye@)$5}=<{(iu`&Ax?Gz9Q#D32Tx4>8+ zM-TIOw(wNai0Wvea6B2G8c-rk%GxDyC^&}L*2K2d9T=7njLJrWQinCnN_U4jFU>>7j+;7IZ@}W3gJ#>L^{w6 z9+s<*$|=cLr{!q*{3EzOqFQkPJR+gDh`uTMU;+xsGn2Up<>b}l9ye2J>Wkf9 z-fq=^fF5j%&__mF)mePt)~kn#avbig_#<0W30j%{=Zmg4hk)ZZ#Ei#ai}O+5In&lp zOPG|=TmL{`oUZb2uhfI{qgr}x!L~T$2$CfknZPhHZQWsZ-qL&0Q#;wv(54!OSIRm1 zKDj&ufvSxwjd^#jKN{z7iaJ$!v<5N4I>1x2B)%-ApZa}=LA;Qkyn~&x08qD-b#&BX zETb9?&dvsIQ8NkHgtEnYyu`6Rt=n*vkhl^cnv1*4R|1>w!1hIZnln!^rJwsJ&54IK z0cMRwqIGYro#a8s!{tA2gDiEL#d5Y|M{i_5r8p+^w+WaZ*1Lqf;1Kk*Y>)NcQM|87 zM6yGmE2T*#%<; zy}BF~oY&xZ(F}Gs#;#~I?C&#H68b(l1DQzk*JWNZbP%o2dA9!H^u&GEnDRpfNyi6) z{(>{rMnQlS)ebhYFl7<9xbw@rSqVJ~bJ1+}HA-0!=ux_Mcuy%~95i zY@gZ5k+26G=rZXZ`gc6C7NgsM$a?6c=E;=uRMGA8via#DF5*7)m)bT$@-BaSo8c)MT z6cW4{91krQ$jtg9(;k{u z!sw-5EKTmZ_4Oh<5x)+{sh8--!C?i6cM(QqT1%+YU9QHeVoDa9MYDQV4XY*#W$HD^ z0%kdGZw1p;7zVa|?(m0z#z_hZNhp~?YRdMV@Q1xV1%wZ`J-ij<)SRhgWZL~7P>s=X zCzrT2w#;PLW0nLh@DNty%E=zxYK@f3)@b`>1(;?6f%|bqB{^2#va3~3RxzpzMH&0Lt1Y>9R5TCFhsuI$YuKuylEiy$oIj10*qalWDo2ck+- zsnk+A1ea?~(w|s~5%Lpk?6J|BVKC*)6-U=RrdmAJ1RcMK`sJ?jIi)Z+b4Tme4TTw! z!Z_+aet?fF5ifod7~@GL3N8wD3ui6531kP!a8>KsKEV67Gg$ai$4^fcU2gt%+g(;n z0_bBdx#f8|b#el&p0j~*X6Ty*t@gAoxk<--D@qzfMnf|I3&EEC@!S#L$E}HRymjAHkgY#TF3T!qA!#x6N=_g@ ztF7C~%%%qtURno7fkKh#Qa3aDd}4Z!?0=jT>pUDv%KTP&DJh}==q3~kfWXo&+PaSS zmN10B*>S1*3jzOzxkubBvA7WyIQMubnG zamea)f`?93oETLm(FD4zF-n)LK>u9_I2vDH?PZY{Zkml})>-ioBhpogT~IdT31UK( zGr+zbI4l5{78{k-;{NEI5PP=lESYyv;L%6fdo8Xmt>Z`@OxJNV<&Fjx`}XsxU`?MOQGr{+U$@a&TADHkVj8{?Tu6TLS2)a!91h{4EU*B zAsHy1>k0yFH;Be^Hk23_A$k%TsiS-W)n(g0*uq_a{6*LOb@iH0cLf2^oKJfmpa%PA z;3p*g)ADAt$&@G`l-+b+zAIX?O=5=779!3|GL>yE~+$nzq`ro;<~eL z{Pz3-2JSa$fy+rv>4GzCJYf&fHyQXHNGM;?g{qVew01s2B#=9;`p{sH*crMF7_=s? z_{iKSQN@r&$GY2VgB=flas`h$IT2`U&&+tL1P(y1vC@%UOr#&S&+0TNS~_A;)8Aji z&Vig81H}|k8&G4uD6Sl`IRVM%JNWb26sJ87!u!@v8KY#B;2jeDVHo7`+R^m}d|8L*f&ZA%A*-^QCjH?LO#+NIV_cJFE+6CLtAdWn*1?q-ltD2wJ8rX{=-ercR62e9 zlKY*oljYrgGen|-%E+*Kq7+^ObZuO|Xux}f-Bp$pP;>cEf{)BlezKR$7DE3_erAXC zOwcC*NhrudP31*#!2{D5sK(j;61IgLW^G|1+7d8e=wIKx%RK>1@Eo*zFpORQ4MT#I zTB`nJg~hC%eZTpDr;cv-*Jl+ z6Jfo=7FNjU$pLS`E6RqWPe`iB`IL!~Jh+x6KjV~C>D}`-+h`0*VTScE6@m1<-O>qW z-t_fFyi%C%OttsQKnc9aQqdg_)S4=fJH|ljZG>E~q2Pb}{isHWE%Dk;*a4(En@Kp~ z_vwEA(Eq%~W8VStw#$Z(k~N?Q<@{ZKMMl}cANETt$)%3fQPT~iCyNmf^YR9BgZ6Nz zMdHKexhK)Fmb#{$i4{ZYYF>^zony^#nH`yZQAaui5dgh~0*7?7N?H19^gyqnN&jCn z(dS)wk*nQk8F@0xT1L(J<(U|Fm5UH?6sXvy#(Ph*r+*xr?|0|;>Tl6e2X7pj^8$?| z+TTY)b3HT~H#(T(#yj#vCHy&C;O6{Su~dsqv}DUk(9*^E!hK`(;d!kmN$=LYEZnJO zmr`-TLiShj*=Y$KSX%~~uYiAfy>7nz`EFD@NG;dT2)gpSVyjYo$CeA#?@YxcXyDvf$N@uZuNh+_SNyY z#aL$TXhddaQtsl<)qiaK4Q0&4sS(N=d$0cY2h;SFg)ek~QPB=J1urpVc>S0&RNAC? zk?q9TX8D!4akpfj8!F&{hZw@Yj)3*ussS7m;m6G&Q|}~+Y=?A0Ef5G(-hdX)xhD~98eO{y1r>jY{|u)G`C6sj6lVa>IL%4Vfg8^ z#&KHqh>1!={8d6sw4}q& zDDaFC`ZZ$vk@Zv*VphKtZrIpANx$%DEAVBJRqI~%W{gq3_GNx>aDjISlfZvRJH8dQ z_dJvevufuyb1*zu<{93`u|FjYv@-EKGi=Yje)GU8rR&udKT?FFnljgu(>(cdU(?fr zmSt9D&JE*xwieCcjWy3k(uIyKLp3o(X$ZWdPr91o-0mN zuI zX(HpXL<(1n%&UNd7o2n^JebK{#vWomA|#uoqsc|wmW-SXe7baL-U@IwaAHwCe}xE6cJiL8)%JgIf~^N@Y)1u z9$LQ8^V|G1p_1#Hu-Y?=$q7S$hESMfbNZlXFPLBx5p{%(b}@94eJXp+W=Ao$mQpbZ z1ysvc^i`aN4j~mfL9V{Ghby5FNR8G9bQ2?Zbnky!um4Q^vtu=fY)nZDxT& za)_Wcc=U5qhF0sL!iV}JET8}JvlSFbhH`zwokXiY$yny$BwrleM*9NPo708u_?MR* z@C?9l-{)W#pN!>?BcZ+ZNlS;ww^gpZMRM!mWPzx=z094jv#D zzsviWCp9IO?eosJGGt58%K5%qiNycCD${ctW%KdZKS|d9hwwM}pAer2#^l4#7pN3p zhVh|>Ohe~lB0zMreFaHTB`IOPA4a|Ad!6h9_;3$ruxXvv1_~W`;oVz9<(_H-K@Smt z53vXdP<$z?gY%Lq?gI>2ym|_B-HLGn485*aD*-!M{RA_{<8Y+o1ns#pi%?^THsx zooA`dC<##oz_c;Cz^j+q7%ZJm;oMkOm)XN1MPccGmpvc~0O9~1Fa}UJv#P^y+q$@f zhy6jPKKm1-hzlQ7F0M*_nFCxFXGWA z`Dahv=z^dr47$Xy41VwK!1E}Ka~k+`wvfkvH>EUS*}944)k3KN>&2mTylR#j1IYNI8} z$e@iQd%E)j&nze61*0n~2tz9EjN$&w_Y5xUuVII+*I6(8{u7k$v{t9pOE>v(6cF~w zZ(WF>MOHX+ztQnb8hXa$kuYKp+`p}~>&A#ZfNVGq8`omPh2GFuZ7Ygk z;Brp5dtkd#&||AO>kU)cwZ|MqQB!x&#WOv0G_{ha2aPYUy~+N6GstL>IUeQ}aaN$L z{1KWdc73cRih;|6=!?wePq_dM{zH{Je!zN=UxXxQ{Tm4%IK`O@8)ltj(n^dRTw`93 zzV-Ds_}ne{n0+~54n@LDWyv+3nEErx&Z#vlE3JT3Jvg`?hx2QPu9S$NeTQl$1c{C*+-|D5&+gP-eCRp@~^SiANTj z1}^=7U@Z+~rik_|NJA5DY|>6~Cy`lC&bXa@kpc+SPSmsg=ygY5A+L`yme3UspzA2gYs!CinL05>%}Hza5w zZYg94m_XcA+lf0B;uMe+=yAY}`i6a%)Fm=UI8VGZ0@0Q}R$Jez>#c)aewt|eM!0%4 zr4QPqE(#rt!L=Oh^q=4NmMSsMaR=uq-p0?x1Zh~;dq8m<0#Y5J&Yg#j?@j2|fpwLa zy!)Lf)6M9Y1fYskY&pDW8EgLL9JXtH@hSe^t{Hf4dP%F=bV;Ec?O}7YkBVj50qbxT zd#M>z%JRTQM>$uGzet`(#DBZ5u-}kUBHsXhej*|x4T_HzMEn*N_4;?D4nb2G~iwkE%^HpdZ2>qd4&D{+6aYe&tsY@c`5W= z`ZRo)Gof_AF)>QMG4L{@FfNv{s8jRg^-G69G)cL--SMb|s(jn@w?7%=(D?#@cQ9Ka#ps_u@z+T|_brv$0(9~Fvf?oV ztt!QJUC(E18g@*it&Fa_ClvPr3zEfPuzm#)hgBBEsD<6DqHjI1 zHwZ3yOT~Gz;5+O@O$<8DtOdJi7DV>)k#=n^m1F#THa4KH2y$EDK2&)><(b1I7NZ~( z3+=wSU;n}fZNjRj7JJSz*rktTx)O+_EM7UxMxA%eW3PNhitW{ksCwh@3=xu?JQwOO z<`TN+vCo`fa-wq8sVa-;y)CAtsp?1?d{-DTNx1f&CNafI$IwYlHmj2IQka;x-Wtoq z7bxS4lAkZ38~EPce5CGWD<(N_S++eSyn}wi->F;rm*{Ktg_fcXgOTT@Ylz-fBVI}f zp|6xdd9Da_BfZU-UjU53ZBH0Hd(*A;TsHZ$wK0t_Zcvx4 zBLx2cLvR>`|=xG`Cw9U=gE5dsa zbCa|1buD{b4=XP;*~VO%T#2Euw9WmO39~ta9r;v<76t^l%W_2<&v1QBIDG>< z2K0P_lA4;FJ4I7Is=p%ZqgKZ({u8hBQJ=$;c$&>~Y0Sj^*A<#hOK|K3j}jE)$-|02 z&2cl~ZQdwqmlER$5$HzH2Y<;xI{0+!ae7*wzU4DwA$&OJEi2%SwL4yBq#6eO1r!qC zKI3LFy|vJPtkfj=)cVu68(p!`hfy4A9m{T!>XDr{<2{cI0rGux**?f71RFn{$v4Dj6z$NqSke+Tna3! zte&A2a`3>uVJkxt?5o>v#XZ<`4S#0c(uc@R*eAev(4?SqxvDp_!pRZc#$**d|LLR! z+0|r02h++|uwWopevc#SE)H(rsUMITD8_E#3{4u^9<`A~Mc%)YTBT;*T=$C16CvrZ zBw>e*PxoMN8T`dsUBAQt){op(o7-)2vl}HRgbq*o{Uq^bbW$D%k0H}#f|`H(+8>cQ zKbSCHSuJI#H(nqXup7q z1xgJKEy9YsFy4w_r3K?20!GzD56Wp_LV#p`W2p2mFczQuKz>t3wtJnZJZA@p-Z|57 zq=rQCj9zzFHfYuaJBh55DBkuicR8>}6KC9gUWY?QJQ)C76Wjq$K{BX{PLj{SH zJljjAg!^V}tC}$>T6zkJ54*2g{$(v@hx&OT)4<>mQ~g+~)F!A_j;*OW&tAR}7}0H) zr*^ESWo$skMND_H>C9A(kfXW6=nE+j-@zwD%YN%~?&6YoL2%gN^9gihBO4~*?#(uN zaC)8aogEzRT@sh;#XveYt6TK+02IJA*}B*Fi5L|8DBa zOhm~Q)H<5b>oR=A^svIurJM&!cdcjk_>|}jnB4FP&}X6hTn>2O^KyFvNrq^#eHF~} zK1J&bkWYZ@(P|LbIQK(``q0$9ZQ03Db^>dCz-Y(8%2WuC!_|&G;Jv&=Hk(D%|H1+k z^)S|i4XiZVfWJEQcG@`=&bYY}Qd$*|Cu8LjDAf&(Srd22u}IB_gP?pUcy_SFG|S@o z7-u1c*hdI) z`a#iGR01pWVZntORXgg36#1_c)d#HQlQOLKXr#x%e^Yay`)^YB^xY-TFar-|Y$iA4 zd*o;ysXr_s{=3M{l=TitCS#9I$v*Yk=7X#pnph|Ep115NKqf#zjiFNy6W)FjK(&5oR{^n7-==(0nB-3`F@6l@k?#C4Pa^nqjOp40VTAcs1Eh6PLo3 z4)SnVXMgG|!7Sn;;_@ES%H4&|SKP|sHvqzJ*MJodb3!-2(p#qf)ieXYw^4Jq|CNLd za7r|a?*V6&V?+^RRST~>8Fm{(h>avo8}%DX$=1zCu#Zpyb}_I`Z(R5Mt<$~%UKmZ^ zX%mTEWwZ=pvK*D3Lav0l-@j(tpO{6=R0b%nst0dXeiBdbujOUiK3|r5BI}n5`R0s( z3_8_AabG^UW(*`Rww_oq?Xu8^6djz8ad4M)hBIB>WN}ENLhClT0%U$9%S`{jnWwDH zE|A6aELZ_o_yQ1KT6AW&NllyWGMuAAHlop;W<2LWMKI0AG51nM2R66^}rhV0&qb@n#<0TA)+mZI^Foqyk^ZXiDDp4`_59# zxCk30%T=}2Em6L`F7goaJEJjF)_0nIk6Ju4D4}rJhDpR+Q6If~;^W3isvHvY!3AHu z3)-boGm8OWd|5q=+!V4^0McRo?0xy&gIb-`6T8EYf~5qtmW)YW=_9{HWgrY)SXzT|HWiU+q6B|~(=L;LvU|CurC8ZDoigiLH)v|WKP&Yj_El~Q^%b~{ zsH}=5WM|Z69V&dOWJGOQ*5tS^qPQQ988Bm4EpoP`CTo|%kq9V2_#fkArJbyFWso{n zIbk1(ty+ejk7($+w>I2+V^1G*>W1Nw1o%2M#+sNSZbULSUVxLFpVfS2a|--S>7MZy zPP}`T?l~KuV!u!@s*W=OA?K>8M+rkI5d0epOT@f2YC&Z;2KV60#{hP3ol3=|UY zxT*9izr}jO_mzN3nx7zjCaLWM&e<+0xQ04A%_=L3qVCPV!Gj!5u^Z<{m;TP>B%%n?_3PVpmO$EG*$?@Mb}R1ZgUZ zsjQV&i2=sf;5sosD;m%`uEp2a>5U^LPS?GMHm$T3z9Dmq4-jJKeF_d@E&Bp~2Ab>S z`=GAZx%!UK_PxIB_HkcF6A^j-KTX7@p?Z_Xy1Q= z*uL9bhd*`dbnb8oCO<4R`jN?&^GY~w;!_I3gADw_dJ85wSyjM~^2{w+LB2zoRJdqH zap09tg@y=_UGTJF=OpH+ai}m}Y+1(zmQq2lV-Qm+(@Y+p4m7oesMa%E<|kUU1C<8e zZA1{(Aqw#__MV!X0lZH)Eh46XGp^%2h+YC+dXDRso(V;*#Dg%5^Ud^jvKfRR%)8YkKFJ1_1{zHogzqsawfR9+u=dq0Qs6ev+0OYB%Obu>V%bot!A6w zYr07WsZQ#Mh>mThul8u3-Xc6#iInRhN>*?LNgAA&VQ4fibxf$zA`Fgo_-5=vXAvu( zuR$QSbdUc}-JdDN%!78YJzoYYBbRJrLjcItPwOuB z4My%-4*HN#RN5)qIs4Al>%rcFEbNk&LqD#`E+S>CYPg`+&*PKb9E;f zt;8ZPtN`?2|Gd!d^&yO{lXXx!Tp+v}i3ig4S1Pef@!NxRv9&qbD(s_k1~`)bA#|aS zA{>;~^0=S8Y%dA7`s|^~|MMasBmg@= z#J^}orZ)a*P4l3mxGoB*gXAEYFOZCi4tbu2x|(4*P3Q>=HF}2(AR3kL);Jgc0%g?% zUw9v>q@o#(B-kzczB;x6W)RVz0Oyj8^5NPHjYUD{!X~C47X37tsnQs#$N`DTD335k z>;=aI$y9j}cMnI)+!f|CC$T`u`vb`HAK%LD-$w*S@x+@25F1cdeNiqEhGAOb8-Vfo znMvH;GS||dZM^a+V zK^v@Nzuno`<5VZL6l^bZ=sytVJg54`)mpFRs|!nHxm6Gn5%=oQLM))`dFK1{+aK)m!2xF%c?eyq4!$mearaN9{L)+aGAOMLufmPH@RlVZ+^UTLhOfRrzwO> z)EPQltGs63=VCVYSZ3e4D|;}%nieaAEnO-p+O@dl@dLi3_eL=BeoIj;WJU*So~p)a z;&1}4?sn+tVs5eP=Jcu1S%Pizeb- zts3qCPX3VEz9_>!JXlRwJ9;EdT*=u{yDi93QK)xmf^s7rUmoF#P)Yt+RxFPlLgBYj zkfV`@kboWr#|dw^VGnt$AJ7W5@Up^C@P?zXO5B~G4Zd2Bs^_vwJ|;VqxTasy@_yl* z+4j#li!ascgWbS~nw*7`mIdT(v*PV&p>a&?aN||16t;THokmFqE>!hqXKud&!qycu zNt4a;)J`-^XNahrz=t=PHGVcpt$q+|w3!D96DjN8qT`hUuWFWwKOIrISO~C3_VEp_ za^}k+c&af8L};Oo3o64H+4a@xQ3ZG{PFB(ozv0Y>E)A9JSXgcEAe&@HUZ(Hh3Xq`l zqmqw_*)JwwTJ-7fq#Nk~Eiu{rk*2IGq>5=w5ckaYr)SsJZ4WV}P9_-vprD{A&CbNG zYGR^GbZCJW<#FXxR>&}IDi_*op9%`Zk@#s1KEJx?1=rJ^4pePhBe|gk4o?#HZWGUs zd))YLsGMRY0u+ABn1i^Scq_k-w(2fl)qE!YqXk@Su3$%sS<_43iCj42E2a(L{z>OV zBfJTFSJVg<1MM4$Xj~!?lBMeOVlw6@VgVshzi_04@wv*Z&g_`~<2_5FID52mGs$^7 zl!J${4&exnV!Jv}N6(a4^FY4SK1#m&VgRF>^?VD=!~N4mI($FV{`(L_j{Q!r9f`(-2zz7cwgbj(N9E&}^x@sr#j!{{j@r0G=%y!uDcuMt^&tP-*=lr`y{E8!(l= zqOBAhMhDUfk}o%ib7!yg5j*NjGw`)2H=)8FT&xUbGNHIf71Q8cxi+|K572a6MixTL z@GX)@oAEyFm?ka1`&l*FBwM>U=XIG)6a5ax3bXvy1sn$c7(0Q^=Yi1td<8iQ3L!|z z0wp;FIECwH+~%yEv|ELyM?V!=9SUybG|P=7>)6=-zCwk{dcrP#+97Jn$vQpA{QI&G z?1*los#kV1%7k>Hqy$vwq@&U*b3iUaiW;e=#H-gW$EE zhmPy{Uor*-thf~&UC5+A{I$kX(jxz}QOqr3P-{ z9gGMh2~Gohe$eCB?nZUH?N)F>TSeg5#y$hvCeyA0AssJlvjH?qO`}vT`uP~9yGz6Q z_fct?R7svWC-cLfD)RrDuIT&=P~vGt+W%ByWB>s`{=YB7YGa5k%%z~kLA-0mqCx~~ zt%!F?9Rx(rr?wPYx!10G(?SSXE+f98gtH6mW+j#tgtXaj_FOki-^=NBJ0}O{{m{;} z=UGrG*ooEM11YTRj3JfE-jZoqxvVYqtB#6!c(08w;Ty@=sn3}`CvQ7=v^eH6`?}o7 z94p|&%gDi}%`+RnM7TUSnhDT3kpriXql#-cQ87}9w1;I|2Ym3LeX5#W97!svbZBtT zHCn#dj^IzPcWk#(YWexYA}lfj;m?C4zx-4l&gqUQM`m@(VnYfHSz^<*kISvng&NJD zw+shz<>YG1ad7>ND(V;kg_MjkD?P3UUMb4)5-^u!ckG_QD9d%On)?o3%bQJx6dk`9 zJ}dG0UlUU`9%m=^q>MV)FpBlaoNx!01K_m;28ITK)+SLsw!>yWXFKmfyj7rX<+wrm zIO93fKX33d$iHm`-&CiXz&jp8MCl6?l-?k)g8;rJXh{)g8v#JsxS-Z)%bu?rw-SQ&*&f?`!T27r??t&=r=mzMA%|XJxU(d=vBc z>wb0GQoS)=&MV*>gJG7&VTR^`w+1^XuXlOxs_1FkG3ID^p{M{}u(zxR7GnS5O(@^4 z=a#c4xgWAk2eQKslE=elzt4;zd2Cr0c=}yZ`}m&gu85jI;sr~qI)0z@-Cwj4S%aOK?>QcB^Bkj3W#%FX-bXN2z#M3B1K1H6-mI7ns` zAYZ>~TLr#N6MwL)gbVZjA$LWI;QBfXf3|p!(r&&2r^unA^oJMW6Mw!hxEcZi zpBbO<7l_n=n(dAZm|HDZ@<_l2DcF!Ym}9>?Y)GnGIck?KJRGu9#dTi~OK`y)mLLVz z)kMa3v=9?G=aqX4#-e1JVW(3xxqY#Fn$elM87d4c~hIay<@c%!8CC@uINrE+R@ky8BKpOjmJecLNHKI zGZ9w}uiMM1LQIA*NIJ}b7d7Lt7;fR`HtE%h{DA>4f_?X~W1J$XgX|B>T~841@5z$8 zOiBu8Rm&!k*F)gq-?=z}7WIQNgpkxpt2s#zEF6T?jdX!EYD*+W;K~QBKYH1w?1MQFsz%lxNS>FoK z0rPKmqgfD zGFBLsM%9u9=K7I%+#k%w23moy=l$+C{{P_8Yig zsIKZ7ije4}?Yeq8s&?!eP4K?qdE2i3tr(N`AZ!J(VZlR3?a=!r!GnDA=@Mx~>Xhej z`2{eM#iCetA|?S8wYFVCZsgSxMecwX*olvAnv~Bm&j#m*XEK zxF#aj*s zL>AaQXywgK2h6C#fo}4(4aaa|NRSr>M#B}^45(>)Cit2G_zsg_=6V!TH=G`@X!`&> znFA#VA=SLpL1q8CA0*y@CKz-mSao9Q0as5w4Rx( zG4R|L@cdapd3IC>9CrY8iY5%FXJuJ2*6^vFoiN8Pu#{p0L>>CONkWiN0PVD|=em<| z2VMBX=>7&n^}qYG-BtVJ{99-Hwn$Q^^DV3!z*@PwsrFm=t2BxDvaQNz7~RN0wFwo{ zsVJh-ZoQtZE)x637Atu6qmw&+3QXwtT)apQ^W`@bjW-Mqiw{4ateLCCo|G&0G2n?7aWvAX+Kl|W7AAOa%y!r_u0bD@EtWt!gm6x%b!u;+d-rerQxr^`yDzv11w6I zASL)Qr!bS(CPkR-%Oru8Po?eVfCUR6IZ$AB8UITRc#bG7_IM`_e^JS5q6(keDr26P z4B+kkyZf4edXyiIV@)2qaF~#-{Y zHlo>7Zb)`~C}ejPH|ct>@Z#GhL>_*q=U^43|HB1uD?wBeJs4s2`sGjmF7O98R75Ui zt=2;zXFqwM&&GZfH!Z@UV3p%{$WKf>I8!qhD>mCF?1eIV4d>P}F0UI5Oh^vzy2z1w_ExS1 z?E-n?yjE8xhvh&Fa1#;mS7c!=?edkT6pH;({{Z0Eq34lm0yvrn*Zu0`tfzfhYqro1 z@5%gx|B;I_XCQ-YQ0`+5f}oUg&B{g)MTb{ojy}>XB>cb1Pv@M_pTp?KS?h2Jbc9_g zOc^i4#m@LZE?27MQk5;GmH{-D>?*(EpbmGHEOLssPV?$aPo<$pxXDQi$Kr1Z$ z5YArvz{LnDX*Kkxk>;M#JSz4AD(kBp0~p}>TOiv%S_5?7F3Fg@Dd^O=x}S7oat^l- zoPW$y%b*Y6g%J4;yw^K5>4&_d_lImGwenhi!S*KTzjB%+y00ow6n8zDGt9y4tpD%o z$_lP2RgaZTI4}hxk#NkwDDTZ+lL@v;Bz58z$=RW`6DHBiDaf71-)(H*(KJdk>hLwH zbiYxv)F0&JCmo4AxmijCZ|*TG8^39%@sVOi)3QH|BjqVY-_N?&x%&4Vq-FwsiG}k$Zn;>niE#%)y>3{t!F(UeY9bAgVJ;+L$1WJ@k>yjp4|#6?U6&Cq=0n z!2JHhv?l@%D5G(*Wa<3{^0Zd^CG$lmWc|MGvz9)d!efA^`q}-T@?L+LY`HPG*dm4h zqr^axh5$XnUSUV%akVXDdf3ReE?>KMhp|Urv2*G^j|;HvHlDMt0QK>4eFMsoV08#a zvuOIo+e?bUe^Odj-`lA4gLcR5(yK~@Xw=<8B%`n4=4|<-Axq!xcvRtcybSUUYwsFY z8}9j{y`NjfG74Gs?iDt*nq^IWd|tJL;K=e1?M8tJaHX5b(ly)dIYwYBOF2$tS>GQ= zT8d`hD@->m0%>D)5`wd1biN{=#9Jv^2yq9986$v0JQtBOG>t^ckDQtwdH*$2I)qw@ zcNboV=`eQAjN(3F)GAW=b9FK0H=|Elpg2JXT%CdPFztNoe3icssO;+YOQX7oA&bYA zO^wSO8YV%P!n-{yJ7Vr!Sl1Ypyka+Fke*2Ql)0f1GBac;D!4`SsKG&qpcWxs1c6Zqd_5Z`P#UWx(lIH4z}K}y z{rBj_`?6_D9_{;#>aNsTEeJ*EJ?`cl?@*Y&V8-R%#!nchJSd?1%qan*XotzPfRXO$8Z|B0(J6od&F5i)wd?B5%6?Rhg$ zpH7b47TMi`RXzdb0UT>s-b9s{>``kLn|u{G<&@Jo*H?`z^g;ZO3wC)&H2yF)F~ceC zK;8Zxf(tOJVSVsR{|e@UvZ{>|Vmd&Fi$9Tj(<15l!=Eny_!WXtIqG`u<>-k5OcV@l zEQf#z7sym7ci5i1wmkth^zAXTalr{Zg4(+wdhQOUf9-&OLy~kv=WI;mx}jq3~(SA-EHggKOBuSz?wiTXaVxCV#R%tz%uMn_H~~s*IiJ`{IgHR}N=^ z@eUrPO&gUG0wmw%CFVM(3i4RweHEnEts5JTDQ*?ws3OFw!SVDoNLkZv`m$7yalC3o z9dpvVeqx^>AR@;-^I1hxV#9KssJRbEdQ(A#8U8&U;Q3D+bS_uR(9Ek35oM~Rmv?w$ z!oI!{!iq_b$5D$=%?Q-oVE6q~!7m`tkZ%I(bBwc6LtPA!0dYc?1ha}~L&*qUhJaE| zRT>ep_<i_CBO1lwoXFwR-5+8=e2E4^WGngr{Z-bPn;;Hf zdElD#V0Qh{y^z=+H0dW41K2TDN*-Zrsi(%led!7{k_tB$&V@3>r1JmXEPBLVse7^# zIFdpmW0$N#ig;91)S#~QeizM9Sd(OCY&_q`e4jmES702w5NSYScit>VnXo$F46l3D zE01vQB>*#cV<0I7asXMLn2$U0rZSle+O6%G>OVRvng%0hY3*+ff#WCx_oK(%B^J+V zZ=Y4Ilv&&2>YIbVU$Vs~S1kqm2jzBN_9-r^BJOrJ^!QL`fAVP19s0b`M!|!%_&ff& z+d%04N+ey!HNk(^n>%!0)l%V0F`p?zT#~5i|Aip5R zv?acZ-Z)o=6s-fbTddJkKP3U?bDlePA@6A!yMFW{WgvLD1y(3&uL173&pbQ{(A4&J zN_~uU_~`6Hk7U7p=y(z`Pey;dxde(H{63#cgd#pdIW9Ne#T=b?tjm!wh?H@0u59f0 zEiVo1hZR-kA-cAS-L&4t`(_2d-dy@eEzcL=+g&dVXPen8->8q9dc`!inM4F3d0FbS zb5%vo0Dr7w9y{CGo}x_4)Wvs<;#pbt%x+P#a;XK(0r*&fZJYw1!jFvw@~ItTWxl*UQ&1Hs**A6 z8d9Wp$z+FaAe*Qw>Jm^TcGEFY>ehMwxrJJ@fanF!Va=BcyyYk0-)z}TtckFgi%A|4 zzpz*&cbm9u`(N&$VDZTHeEReK@`({sJ2txp>XE|8 zhcuh{pYN&2nSpp;fsk9H@c5%>P;pzNsT@Q&1&NNcH9ugi9YvH^I}QO)%TeoEhT=rn zuhADJ7W%0TgLH>8Ge=6M?W(0etb`$=RLx&;^G`9{<&4hJ;-|-&R2+3 zQ8i7^o&4R@d@3C|<6F_$^LC?5_{bm#6deWgM-3y9oehT-o&yf4-1HBNXW# zxEDHAATa-B8pOxNIM`jtq!g&np94-(UF-+?T4C-{b#Dc|c)Ig{lUjw-fL&u0g0n8Q zl);6e4t%S&9u2zgum;IG1_ck+?AQFvf!EJPU#11KcmJ)tv^gZv zDsC!Y&iozbVkUSU%MIm)Pb}Zd8JL)os!W4BxX$c=eO}$#%*epIXO8MP?*L~im1P{5 zKqi`H7?HeWBy|+U&J0mS6)#;wZ@JZ68DZ@Lu#bV`Q)^IYARL1qw&p8Mo37zi>~TRc zMK5#Ab%_v#CebnGP;4%w)9a$iGDO)dJiMx3~gn8PCg|{af4;hK@QyBO5nB8T3?aR6`Ks@SovZx^$LyJgC!3T7M4?DOKHo(8e2nuR)<{8TlZlyH zD=+nATYgN_p_0pSa4PcAgELS#F-MNJ+AZiJzjyj!2I=JZS8PK<3u?yWImBqrt9Ko!h) z3}jT3`@OyPLOXetiT72wvTf8`P*id$0Qe;-_2ePw!Vl_*+nu<`=WxHgz4K{6) zh2!-Dtg?i1>`Ti~1qQ9T)9k}2Uvf!+2wUz`7RH!YZ-$~C0VGObYl++wb;`G?jJnWQ zeIu;ygaPd1Zv~q4mZvJx(l>ck=L#1VqE7IDHWnFCLmKEJn%e`c<~!`LN({YKXov?G8oMF%Qa5MzkJf`_;h{A3ckyF$?&LfG+-x z&ztIHg{?8IB^*PY5xg*OD#MS&@CGp3XArT+|oJqf?lQf!oUd+kpphP3(ST%zxGJy*tT=#?IDFCT7fQs6(xDl z$#q-6_oLCS7;X4z`t8OFkNUU#mg(R1n_?Jgr}l1AF8Xd#Tfzw0XRT|;hcTiPE&T#S zn>GN8SbP|Sy@PHrgnF9Csl|iG4coKydFe zC3e-Gk2bL`#vJt9WN!FfDWIrw0`Q{|6e(fbpY13>+mfA}WgPm(5c)iKs@}U^1f824Uc|9HgLgFwkwI+7i2Dlg31#~X?FU=^Z36@xDRhr(MpX)PfF0Oi3!g=7-U7fyEkVZa0K{*3% zv1^eO7*0112=#yg_I<1r}Se2Tbv3aq5jZ9s)Z zdb8-46UM8~rK3VqXH@m6MtylMP25il@npnWH6jL=2r~x9D^k~34mJ{!Mm)`6_>gbe za_4Vwg)2?SFU5Aa$CWaHQyR**hZyFB%vSb`;ZC3nbEfo|qz6n98z|GHUSD=gaF%C3mZ@8D;lD`+bHdOM72(E6y=S zL#HKz+T`3Ep(mIHDKSAst;5gy8^~N-4qp$G^Tfs6#~K+2r9Toll)BIW8E&h3jUkYK+`f&sd%fg!Cty z59rqcYs{}XMD7J?^uVvii`H&h7^ngdql?tr5D2ha4C=Il0io^{$j(#f)iT27X`86c zKn*rjLvxwDtPgp(ySMFV%&M6lPbx^(w={$$pJjMwPk{z1B@n=Jo;(g`HRI2((y4f5 z>OWplx-L>%Dt*reDnG(`p_BE;9~lbb3m4#Ak(Ea@*C3dj1lwB07S^Wcy{1L*vxrF= z;WKfb$b>eSx$AK2W#qQIU54SSj9XZ#ggcsIcAJ;NS8c{-u^j1Yaf!U^%e)nBlpL>- zAwEMK3y5=34PCkij$N5>&GWL4t4}9rrN8bq*3qDcMGbD-kbJp7dcEBLy0ei^v6cOj zQ};Y}TLO0|uHOYqC-eR@jldORl(gwp(He|6Ld-^i?C#Q&Q?WenoQyizV?S@L{w4!z z&@r)MVz*4r23k4c$P>{F2RDC-)t}a#{o&VVR#20}ssMk8%Du?rgzbzfB~%an-BbIFnkr=1^UOC|toCy9 zKv;a+xp_A&OrMCs@@$7DqxHeblfoP5-!FBq80t>3OQFu5v@s-R^`{s)-4V>2pqdo~ z-|76ZD%+$vFqZNl`sWFfNOW2pc|VsSyUPe=wIqmivMV|t_T(efZc@-(m&Io}*NT1# zfEeu#QPE#}BR5}jY5ih*#SS$IbD-1YF9Rg^`h=UWWu8AX`ozFj#4j*5^qe1e=N>lY z4Oq!7{ZUDX2On`I0+Xn6($@!gHK2q8rmjLm3L_Eb{0@S6^?^MSjQ(C8UVUc>K;X@R z3~vN&oh1sz5Oj1a^Mrj>Sb~y0_PwMrZ*syKMlBbF0+-G{_j44;|8h6n@Q~RzS8RdS zA==_3{A+M=*mr5)!A9(;_w%nsUXui*ptFvzXu*GY4Y8a5fjEvd<@%`GKjDleJ*Q{g zopvO@RXii)OX_3l0me5ma$wPg-D~nm#;tJ?x#N!8p~K%e)CU&Wl0vzB*)zTgO?D?y zeGgc9=2*7z>jJqXR5Mo109NDy!yj)fTFAbE7SfY`(r1AsWoZ}zI6{}c(@ z^i9$Hc+6UBT9O`?@ynAaq#wbpp-XgSG+b2BMH()f)0wTcCZ{L6Y=O;hFkwdL*XZp( zkdE_~@{Km}p?*16te1fstz2e*$AYKGPDd^ICOm4xt6}(mAyGih%#+cBf87k=r3rxK z&CW<;ncR;dl2!nY5wximi|I{VYNa`rxHqWX4ZSjYcq0Ltw(lnqyD~k7Bye`?!%nB3 z*oeRk)Racp=1eCojSV!|c2$E=iLakcX4x@XSKKiJ{gmeasq7Z#FYMv7{ZL^|6x)2yhs4u1d|F-Xch6F{(vZD9Wt;-{O3(8D3zA37!7PoyF~&Qi}f<0THk^)n6 zKVB9dyxT7)pyQS0YJ~QFxSQyttAxHmHf9zI3YG+w>oKBF=<^vhq{^6~`U%?N6RIGpvoI`xoz6r81&7HIZ$Wf2` z)nq9%FKju9Jf}`7Jcl9KR?rWfvh}tghlM0og)Y%u2mAjB`5ME0?6w(693dIhNuxf^ zTUTTnZmFkhoa>%r%$<(ZDIh`+ZMPvR7~zZ3?ZB@ignQsM&Q9G~r4Up~!>F0vW?wg9 zj{*&{7dpk8X12_%#!;(>RMf3y(7e0yDbYA`h&;xqz%vcbR2HcMQd}zY{+RFeWCj}c z*p~J^*iYFncQMnuOol%-lm?89V164wZfEP_!E+MF9l4}+cUGt?ILL}7yt*4$uWsh4 zTO@pDSxsgNJiEkBEngI(D3)Y&0WgzFzo}8n*PIC_I5=IrbAURm4 z-&Nb#^W*-NUFw&GfI1r;!?Zd9Hbe|jBf?21-#V@5nAh#+-F1zkP{`#(V$*n?Lt+Ad z`P7OOi$1jtvokVNQtw?|(*%f~pk&G&Pt1HYk!`-kS(yELyAM#cKMAQ06Oi@bG^%Aq zNlhqbVkU#~fs$=IKsS_@x;Fs;*)0KrCCDUegC3;;_qw@_UDL+Otk;k2^`DB06Lopg zo$-D-4ZEGa9<;hjmWgv)dLCU*NRu$tRVw!O(XL9PbnuEbi8d=$gaN*M6}bL`@v$HU zMN|vovk$YX$Y9M^lnC+9Eq`90mp6MRg4DO2y>N5`ZT-0ptp!aJd$@yn1jKx zy&;YpsLxGXrc?8z8Z=T@&=+0l}k}-f+eql&x3jN5~!2rRHoH90MM3xbDlG5 zAlxw1;Anuayy&U)h%qEu4ONp8brH!BUhs&?5UJBv!|WGe=UTU&5MhrVXwG$f0@*{X z{Z-4nqa5i%ZG4&y3(5dz4n>`ujU({N-!7!!e3Z) zs^oJs{`RUN94ErPi_xo7G?okJGx;;JJ}?<=T60|>3$mIppWk!cTU7&?4kXJ|==e~B z2<{uj?P#!?yPy3#XuvrL&IJKWENvN&2B_zgjTP(-_KE=cfjCTfntA0uGVU<G$>$Zz%kDG6Q%{8}HyOldtFZeEu|gk#Nh^JFAR zd@S9?gxuREJbVkt1XwP_9fh!Ib>#3+ux;ZLy|*IzIOk`)Bwv*>b~a@c$=<*|HE4{$ zmp#deFJbE>LHrsyFCA*5fqe(m^K!XOshI3AH}-U{4nE>;hT;@|fo z*uZ{#F1G6RDNPU5VdlQo%k|K!H=4-iBG9Hol1Pq75$Ee^i~tGHcy^sB7ZMexI3IkW z08v^Sk%>=pd4b|Z2U|lmIF71b4ysGmGDnG8nw1K*&Q zA4Q=5dN}&3JS=#qCIKkV6*{J54($Q_m?Mv|dBz@cuf>}xm}0p7-LOUO<-?7rzO-Fv z9$u$uT9KKW0(~he%1M4Pj{t#$OL{DmdS#fQHjMw0MdO6p%ix(RNRQRY;IHiwmqyLu zt7A3gVg$sxiP5T1CV?qr^~=Cl|He5xgIgqS$OiU&!q+0S<;xTMO}`)S41?vJZA*Hc zU}Go(7kEiy0RIvLhAe}Lu4li12V>%Nazn1m>g`k4t%S92h?4s_jN)?L0iOEfa4u!$ zQcaR}$7pNR4~MvgxHp{}0fH{|Ppyfi_h8!uaZA^k{M*sMu40ATT;W#*ze(|pKGkva zF_|@<(?2ccFdtpl6%MNHEc3mogCGZSg4l{R_o!a!90PD=O?k~~IP^&7iRlu+Pl5Lx zd!~yL2ZK)X7Q@?EHkiRR(NXhbCyLLyJE95rCUHz;{5}8>F|caEE@@Z|eXd_}OtsWc zJUlmn!K>FPK|F`mCgE%BC4Y_IqM{|y8Z3>QGCyzE~Bfq2yxiRGGJtZyr7 z4@kCyZrawT10l@Q)PwTdk{d!gOW@mO*F@P~gR3}Ah}F~=mN=&CiioX?zKjpj`Xx^3 zJeFHz&5QObFs+9nx3BiOuZa0mo67bQR@7YO5;QI}=WSiJe9yXmflR%bW!@j91_yl> z0HU+q5u$q6U^5e!2u18$1|4ircs$OlKL$D+-4bj1n&k%wOxAQJg_B-~#He>VUD=oy z-?&`)eEc%U6HG7oz>834Y*%t^5nv(6lf-kmPi!Rl_A|7uhG^B^ITfTHb*rk}b&Add ztqzgbw}-2f8ZsVg3MSdM#lxY*sBCDm_CSmn;|1bZ0qs9I*dg(4cIaRwGhNd96 zmT~l79zJ!UQm*b$!W`d#GP{hXyVyVF4v49WB~spMx`~y%IES%<$&$Q=hkuWy?{TK~ zx#^uZ0~sHIl2iCz1ez@ea3enm@5el&0g7Cu`^e~19v+Ow!JQPLpFaeN_lA$)txv4q z+#TGs`fqRB+0~1ukuE4|aWroVg(~%i0-R0iJv_`135=9!j}Yu?`0#zZ|0U8J{v{2q zfmztd!)u7O=-fT>81_PUQ3pPH$Duj8rBZ>9`p||bOs1B^!NJ+EA$jTN0ix!OA^P7T zS7=&aYDR?>DV3`^2#o3FE>V;wl!TcnTF{Tgfx4z34{C>HtB4>XE|EDUv(&t4yOju! z&l@2KuU!pL9rmJjC#{vu*~AUMpIRxL!{Gz;@VUAI@B=KFUUfS?h1d?qI%I2Yn6ZUd z46X%)~5iZz8gd~^Vqm&;p_>}& z3mkM)B^Ji?Eq1~S7{74E$pTv65gD!DpH!7M*aud0r+ z&upPU!_c z-RCqfTmy4=P1t*TE_xxv0WPNOn}yz@P7)v9O1_$zavJRqOpcZjvQ}Ru$tgaH#4QkdnpE=gsV2&$Lxb6+{-Jh z>@PibfV3(%nX&T#_xDUyiSOUQptfI;g$N&DtxB^a7Ij`$8QhSnS;-}fwouaxSXs8F zYWRd15647J+EbGI2zGQ7PC3d1tZ3B`U$Bc>^kR2rdy6lm0V7;OwGEgLj+oDM8}3ko zS?RJYec_hY533@K^c6yd9PZe5ye~9Dk4Kb!7sdLAjhe+gv30uv+Z04Xo|NW20f1xq z04UUb=KqRs<+Z01w0d3HlRxwmvhVNHf~8?WWBO+H zx%rnHWr5Cw8Tp2Lvw;7I$B*0wXKRx$HRe)5z2*m-%E$~%! z_9c+hVdS1vIS41<{o=-8lqbbz#cy)6IJz<#YWHWb)&4ME@ z+Z9!HzVFE{X*Ttae_pLWda|Am&nbVwgf?+0yg^J~&sp0+&I~%`&a1{~RNn|U6v<}d zfF}P30ZL`RTE_rQ(b2jIY6SKOa@|Q(%;Y_V%og!Q?6TYi>m$q>Cofq$CCPhN+EI3U z;&GX~f7oliB5T`wJi_R}h&ua3iPvqNDelTaPJThtkbZQ+8Y49y z|2jXG>)g{$L7``_TtJ>v(;Vvt>qbmjf0%qy*+yldL8Npe!9VDQk+%@=$Ore-YoAL%k# zl}zZ?4Lk*Zsj>x&56orz!}Hj)TEu*C2V zMwV(8J&uOI0MVs!^(*HmdG*wrVYQ!>EK95@$svV$A6F4$Jba^udxJRIyd0BRyR+x+ z^4q0v@ic~Ds6D?j-L=km;`N&>Y2Ot6qyHM9K#QLw-AcT9l& zNj=`N8KU336?@Vpo&0KXR~%}INOQiT0=cb;!qqnPV`_G8Z!X_Jsv^zA zlb%H?lY4(G^1{1S+5E(GHd~qsYTBTEec)HjD})&U_A`OwYHotfPTCgQrH;gkwQ>_J<$bGr0|wtr=jj!}j|-!2)$-`oe@6i?4b<7 zeee@TV#)g2-}PqH4z(UQDDx}LWIq`Dv!T6t3*o#(rA%pkpFzxRu&lU(jZeNGjk-*o&4I6_M?Vw#qM_KMHeUqCHG2Rc3^LD z_DCq`Kw{UMQ@2T_OiwZZp%%gQA_9oSNnpLdi+`kR_0bFrq5}9o$^(D;he99RcJd}4 zpPI_Jwly&a?tNaTxtNnls~evF5pbgE`img~RgYzhc@e$eTM1(>${aN4&fd#Cdc~qD zvuICZjAe>;z{5NT6eqxgGfRXrh|gNcXFhO8z4v`{ZMQi^f8ZO~MjhvA&+I)e_zs?x z)@{fDqtCGnFAb4|6IBu_MEp%^0fccA9XKE{w4*{=pIOP!5wY6XF<4n&FE0=hI-@fF zK3_MsU`$MgcX%#`&Vd^TtJ-&cLuW!g9Vfds!F&)OvVpvM7`WAa0{S#Xx5e>gk_;r% z@zfQ)_%ZZ8fCN#a7)Y~3y#zBt^w+>+*}vAk{>gwpzBoXSoY)mcEy9ns?dLufNXN{= zjrM#wxi?q)I@A`73(W{gjkNmgvtFUV?U_{O*y-9kXA0VT7ak_1i5cDhmIA<-HLO&l zd`7^46g~p)23NqkHNMDRo)9uSTEh`W0N(cNM$@>!hYM@w&!k`2pyD=bzC|mdB;*!L zDWS!-bS$TG4K;>8>>gmlob>Z34(6@2SCBp~#2F7_3eL9o%y=ZVsE;KTl);^5Qrhwj zTW$3u7fTZ)XIg2$oIRmM#9blj)Gcf>wA)k1wIx933DtTM4!Se9suuPMhIe{Yc#+>S zf7^=b(vA-025U=ncRg?A1aXp?Gu)b|XF%hg+@+bomHSy1WnvK5)s;~!{4LbNR{X16 z6<9~|_MGZXHvEHoZ8wn1S$387iJ5;DxkICud3(3TuT^}2?DA-c1*s*fWU?A-YwH?e zb6M|KC84H~TJ2ZwwbKO(>n*~I!O)to{v4I$4?KzHE(#4u6CDHOd!>;(^cd|RR7zbO zDv;@xJ>GpNk>8MdHt5Pr^-?DSRKnub&hbA#DFi~SSe}*K85nsExv>=oNW1juXCAnU zWTNwTN7kQC*Bvi=^5JG4ZyKUEAMKYm5sof#emt5Ync}`)A5^8d4mT5fh_H^Kcj~)T z^HFqnSJ_jO4!RZyv}DQ@^tV(bldIh|e*L$)jw=U#J7NkBIWQz5|IL27VL{uvMFIYw zP;D696Ek0bp*WU7p=VK+T8c`rZlG&*)oB->ON%(5a_)-uHv9l$o8x=hEQ?gFRtzUo zW-RiUNyIV|ibEy!)&0xSYBw9O4->QB+PXs;FP+4zsu->yhiC>t%Nov~EgCf*YrYf* zdeN=G14tP#N2n;ik)R%(tz~>~#K(1~427$4-`;s9kXep$#_4O4hU8OK6Ec()4jJ$y z?*zJn0`r=}uqY{6{@{-YCY*t_Ukc;Kc(of&uv|+FoZ^^fC0X2^0 zv&w%{Vltm1$(+DeUWj|&!8x7*dX~D(SB;0$yWWCFEubOJ2;+F5GbxPqOx#2`P-F;W zLmub*1|fiPSbxcP3EbD+a`AQ}Uf%Ak-;_QJ zkM$&fgQ0>@nFw>v{A*UUF|=FXtJ#;P;z-i{w5$<|gc<{{-BdUBstA$54Voqs9`#83 z+q@K{!xVLQ8g`P*$wWK-ih8u2pvh4UDy$w<*7_+4*PM4bDZ~3>ViR?626{W%1HE1g zSP%qo3;_tXD9RALiJ-NH=zq}I?q{%}#I@(_cz0K91}9;XkWQ$rH%wYndQtvW`Qk5S z&o4ok~*Il zLUJ{JOC*`TKM9WdbDjE-dJcb>EG?@L2Z#(-0`YBsXpE9^GZH1ZzDLx;0 zEl5Ethu4i7JlnmPj5{7-^-&Q-lB7!KmOwdlqeZ4M?j`V$h#3STY13AdW<5)UAT-3^Vu{z!rq~d- zFOE#nC?=)yM#!_sYP236 zMet)W?i&p)QX!J2x~UiIh)34cY8c`$hcSsvMzT$Np$8sAl{PJ2m_!^g&y+S2}GJCQtb> zj$;ONcMt;&>Go+p%DAcdD3N&4$ciJZv*ea1&VFbzrcRk{IZ2ftc>wwuI9IvzwmgHu^8GuJ2MZ z_go2a^^np}7j(HfJF5yY2o!H)udkxb7-44WN=5v=ZewPt$kh2+$bf2EAKlxJ;bfE| z$w_@1{F9}JhafBVm^$`nk<;A;(=RXdF|{2|%#6*GZ%0@bV4}Zlp`BlN+emO-L{p3z>!G9KEfEQ~T z?Q&&5XW8$vZhq@voaj%gcaCC^cS9Gq6qBk35Ex}QbfQ`ULvFqIM=iPZh_TaRZ>T;K zqeQwN#{N!GzA_ooZc>WzhMnmGp@oJCb@)c_N%JIC3USY;?pUZ)MB%wcIB;7%WgfTN z*F|15z=W$sV4RMQR{c_SC87G9MqKP`?Hz|hSgVSYUNOMLd4RU4o$$oom**V&zGvUR%dLx=t0#${==eEZe8F}e!Lep6G_e}!w^yi{ z$9=s-)oZ0o0DtCi7ILA#ZCCl!nAviq!&hOcZ$ot1d3{1l){E$L>ab-RNbbZ)<)Q$pnLzwitYl(Iv3?9w+)8Kvfk z_#g{7tQqAzW%Bo?7h^}zkq6XY$mF*Dq)4dQRYaRfv|tIv0UO;Y z<{dZI>`C5swXE(Vap*(GmuG(jK+53WC%z60S;iwB-}d;0Lc@{>O?WMYw|XV?r;W(# z;S7O$K0hO^ z$A?<2g(O=siptewCkesc2Ex!0Zw46*9;H!l< zUrSKdkfZi|fuW)fe2LGeexWY{kYBw|5R&Ng0?_rs%e+v;Hk56lh?C*FWO6M6{I{0> z_ly-uJ4*zCAX%EzeM;PETY|fv>S09c=OQgC4{wUO03m+$D?5-^eo8kUD3t`E`%c<- zYQ?qeRn}lxL&&WKFCuAY_H}$K7NYm(RvvN)cSM#sAFZ^bXdG8%f4n(e49pLV9stn7 z2(CX!daM;*dn(e#G9;mu)Us*klr4@5zuPh36~zy7E=5@?|H@0a{*#3zY}$nddVsE@ z-=$-*IXUVqOG}BrJNRgQx^=G!o2Y^fOCyAU3N$bBwK9aZ7`{7YQ0nMw!at96wEXQg zme;=tcI`~$4ars7Lm{Ic7J`Z{N{zAJ_atm(pGBWRC14|f}d{<)2RXza5E!UrM3C>WnfrEou9$js}W^%OZYkG^ww z!*F3T#THbla4DTH7x=9y;(c1TEQjX!@r^rFe`K8z{X*u_pTBm&d;Uj|o?tStlcDkt z8=s1zkSB=_YsabRaW@8!R|$6rz-SmJA(}Kl)Oh4fH{JY=qZ|~$B*i&x9fcXQd4%=A zVZ$?-FPyTtL$6x_tt*ioW3S=^!HA$R**jx~xb^UdrqY`wmbji7-Ky&Y3X;Zi;q&4@ z@--W>WqsDs+0pgA^d~?iE}>Mo$O%Oh@SET+~MZ zvP$tu1fK{p)c$&c`L&0|v@;I$( zH}oz;H?*A@Rqef`e?AVi4ZA;C{yU|9%nP<6`uYo(k&+*W4by8P5F|+n64CRT=jmUV zIV;%xJNx{|iYu9RGF+d)+q*Z%%Q^6b)Z$!%NNDni2JW!7k$QlxfQQOOSW9Rqp|x*B zceSC#kTU5@`9y*+&S`tY74ndzQTDk2xhknod!a8(r)e07H)>@X!Rap{J&i0fksIpw zTZ6`x0$?Pe=`;4EiHi7$1;e*Z!-M9+-SV+3^%e96%M(boDiS?m&0w65Vel>PsmJZI zl@SY_bVrd6*Ywd|KK8_HM`Qy3xBc*0`r_@XzslHoh@V;pQ8jzOT=GVH1}KF!!Zzf) zt6J5yRyNUEq>o1d-WlXia$t>I)x;oJHE)?ixqmx)G8Hd3@P8H;; z&dH29!TVK?0F%rQ1OU1SHooaw>!AN`Rgda}X}-FKjL%IB+e3%L@8HB-G6`&7vuHW; zhz2S*tlkw!TC5mzMcdMAK_1{M%=WcxJi1TSF6Wj`m2q9S)xl{P3Trur*IxQbYAXE6 zMup{s^xt`kJ_+fvAQ6ae@gQrU7B&8~S8cp^dzRT{6J^WduaGt8FYTCcJo-C{6#>_; zs1vxT-aba`|6slJG3M+039#=VuA;|S`%x>yi6}$M9kvG9L!ve$rI?9+gsAu0kQ>sH zZEYjG+|^z{^X?ZK?dfI_5*cNTziIvTodMrR=O=mCTR#I75OC@#iPtXXa%k7txOMCD zkx-a?kjnULj;~Qao&K#4+<7B9%3`67pCuAW0&`0C zim4yc1Lio0>E>``vjE@8D*_}tZv0Q}{z5>QKU zr_x1{d1c>?ykDSiy1S(2Mm_(VeJs-@H#}2*wfStuK7jScY#U;=ot%qvjRN3br>5@2 zkS28!q}ufyo7^P2IerOYRNWgZHwUb{F=>UQz(*=}u3^wphuSg2 z>_e7rM+%&SpTt1s12*-FhkAxUYMXvXZdf^~UtvE)%m_{By#~uhMXmL>A#4$yX>`U@ zs7LSEk-tW>!^f^?K+9&Csd>FO5-0!qGadrS)M=VfnB{ec>(t>{vVv98?~hM-8!8D= zW-;RLsiuXgkc!HACDJu?Xz2{Q=X$;(tp#K;%c4*%3`XGgR=fjSy6++mpZkVH9b4cu zlbE9!R(;gol4m{xZvw1t?OegrG7m2aYlZ0f242c&d7WMLnGs!WFp(@dupsK4h?K-M z@KGu_v|~&Z6|jz*c;ojFZ16fi&!(mk^qNz`G;K^FItF~Mx6lt6kkywP9wiA0E#+C6 zt~F@t|Jy4APsWn3KOHdYX#li&owWT#DHn%Z{Y#I@`-e(&!ACdVPDe~VB&@992FCvk z7zJ33;Lp2P_mlJ2%|kptj-c!r@GWg6OnKgo0WogCleoM;l1$d&vDQ}5N5&0&_@kD? z*^vCVL4m)4z7pY|yzXiZvXr=iL(93w{&zLyYPbU;4?(g?Gd|~6G?`k9!)`;wMfh&e z8XUGZK`CPJWjR|S?IH#O!UqMJG`kR*6w|y&noNgcV?tm)lgow->%GJm*cFP2wb7e< z!)>Kvs;#AmF8NdU+?#SWDiAzyc6mBS(PHJ48{+sn5?M5VWd*XH5lR3dz88lW{vren z85yzYv+5Cp*vx$?(C{z98jkQ#RO=3<>NnP+_@c#4Ks9TmOB&+W&fk(38g&9OM zSbVVdoc4-*C3GKMovo0oGm@4K2bxNH0kgEbLW-MPjIHdzI9HSw^iS|5%3f9$kjHwi zFH}&q@|At-M<^z^G(r}g1t$Y^>Oo0{^T5>eyK6i;&5Mk<9(ZTMmzo* zpGOOGbL5q7RY83J5%7078bjLV3>djmB>}menpj5>ozF<>e}-G*PbhivjtI1esDc`F zRqPx*RbT>7_|eF%79pJVpZxSC7^JxV$l6ySIa}Cw1PY>_qA)Y=eMY&WIh01k2Qy{` z7w`hlUqNyMx{Rg0)w+&XV4+tN#pq%d3p3yyw*kDUiM2GJZJVq7i7m1|;ZrKhvdxDY z$2RM19El+p+7b|G_F|$Vu=={x+G5EgK7!HIg(-i;W9w9Wl zKdCN%3^(2)OhW_J!{YV9tSPa!;@TA>uMjs9-md<@T-TJ|tR4WjbV3y4RrGc33lsx| zKvL|T0}F<)pD}y_f46gxc~}T})I-=b>M&LA&4Wfy^`Z{Sm%Vq5z?g_OUo^Sa_tWiQ znt>|td|e@c8@z4ew2rdQM*BF}3@yqPXZ6+s6&@SCI%Tcl3@D5px!X^0%4AK_S{}Gz zp8=lYFXU~mbn~|tm?jt^?EvdeFjnvkbt;V1@u6?BL*>b>c4MH>6H)!38v0(}Xiy{+YNe^y#8C(~o8TPfCDm_z6&6guj?!FOPT1LL$+g z!?=T~X*-%Lw3h0z)^a6>l#*|yna-&0kCO4jo&oB}M3hq()P&j3gHg#t|14`HW)!N+ z!z6)C7zg*yn zo{vWI;l5*e!&Hi6E{i2X;+`-2F?apXr&%94*<=s12(C;fus|Dy;6n)8N*D2hCJI|P zIVS92Kq_sO*FsUTT^lZ-F-A@xj}Z5CAL-xyBi#_5SpllxOZ&#x(4yFmKmH3VnWAPB zlBDQIuu%M?#^xVOPmUK|3T!it@l@d_P7G8^B;~TB`?v73@jkvtACLEO(Q5Y(PB%ti zp%HEZg!cfwxwY%lElyweje;0{-2&rKU%0HOg<)WvcaOh9r(%o7W49CZ0@ok9#5w}# z7uaD(AkIZm)q7Hn>pSCp@!i?8SOFpoR5f5;h>#aOi!z2B=WAgu*z!zAQTbx7b;p7NDLu$bi2t2srA?_%jdy4 zO9wT3)V?TWG|>#oDE}YX^?32np0Haxf_mr@1S6i?ZqTTq=}H=<;T7RZnD<_2;s3@? zor8&iD5tvqffq*iul6YyLy|`t?`GHa8s%zor;&Jy8RY2`$FDTreSUAtHm$ z1{pS1M7s^Gri{}L!%U!0A}gf#e=wjam2?a zsKOj~3-#D@O{>Kvt&C)uz73F3dJI@mEVo*(N}rGuf}Qgi-hje`kv4IS#xJ40*3lr}U@nkN&xR*eU*&ad zdUD(RtG3!&T=lXcf7hN#qw}Gp>Y>HG1dxC4hgG(_tb;|yIUrpNX&R~dnqJnLa3Z&S zaLQe-2bPI;&Xh8X4>kU{|94FvI2jb2O|IAlP?>9o_yc}Q!Q^yGbrCUaM_tQ*wbO=6 zV>!4#_)xdwYkLrNz?qpdW52^>l3}<716dh%YA2qgx z%$C0dd<1yg#UW5Y{85!*tV1oi;Y6?HGIjJ~&`7q?_{uBjOPl}cG-x6HkT9vz1BZY@fcog){}-H<*AQM|c- zjLDe~F2O8pq#q(ggJ;8QNiI#LohlDcO@$%vllUgjl7T}C@@%*>pou-qQKLc}0&1u{ zY$3?_`++KqfpxSTA6Ai>_d>o+7TJ|79{-T9bBMS~I{A621rTKC8l@Td5(7<;)Xan9 zl@vu^R*z$`PcbvBV}eP~q%L7cZVaan2B96Bmmi`=!Q)J3lcS1VnB{~a&!|8`%*-j= zXt=*Qz3mEcL_W)>*S^!HvRuBi%AB4bE35wSYjl8- zWB`kRhZ1*v8X>O^m$btqp)VW&@ps$IX%$L=+!OHPYWmgntlXx{v^5Kdu<(1PB}VcUXKtxfsjX(RKym2TLYJPl@_R9WP4+}) z!R3o&UwcuynPDAd+i)d$);3|2roqKg4#KnxBMLAT;Wu?P^gXN%u zd2`m_wYU=IK%a@^mz4hUs}pP)nJ3#0B#6BK$=rG@sctV~-DhHS_dNq7I3ci!R`{5G z9Bl1?+H^&V3|hIy$B_5o>`Vu{XWr>$PyV|t2q_-lf%vsZ6k!8^wH3I+0TH_e!vWLW z!#l?{Mv8<|MwIP(A!Il2JI{ESo|<#Ux|n^Z3nDatbYSvYb-8|l^^#)HUt_oB`V&IxCUGH&|H#6({J?|^i9#;lP=}KkMU9g zYg-`VSEZ+6u7a}KTZum6fG$xH01zqpG=t=D{K0nmTnF?j*Fc;$3VIBDZn4HccUOt5 zd`&Q3A8P9MU2<{JZFV00!bpUJ2hoNoB_2m=6wwS#4~Jfa?f;_o{Hf#Q!XS4=Cxi&m zVqi4#zTE`QvuxwWao;K0UQ_*e++PH&CD?B+%CBnGNv#E}#biLD3(?xARuujN?*N;+ zR+Id2;cagW3cp_Z6a2d~ew+d*A_aMPUKUqxkEAD9on0W@Mw0)*wiX3r6+Yk-^d6CP zCwhx{w8W#qB+Nt?h{OidUj(^zvwp+nUM!X>KgLe<3{_g7fp+=fQOlmt=JgoT(tYJx zT8~HTfN%Gli-RR~_q4<7CiMGWk<$^6uJ75HYmUb>-lENHj23qc+YgURDyKRrVmfsC zg+blV-fQ$(wZ6UMA!#K8hYZch@kE(sCcde-RN(oaOsUQ!@)7QwqD_)+5m&QNORW;} z{#5u=XNVYzf#M#xNz3z*44au!Y)_2!BXc|L!xhim>fQ2rFL`Jlg{OV79Ix4vx6~(Y z<1JO4z^9q?of!`#efI6!L&_!qA8|kNwL120S%g$VLx!0jcA;|^?ALyw5@RxS!%fjQt=UC!xTc+C*W3-a zyC)fsbtsH;$P)P$0hj&lI#7#;W?9{IuJ#*b7&{`KUlnJxVm?f+ZzF3VlRYHpsJxnJ zVH)h=9o&iZB`z*D2n%_b>%1%nJ}1fY_J{^%q$Ko)t(QI7Q zAm~ne{woYzVL(^lxpNxxmVWXVm44!|{mHjfaX_PK6vEgKLVhaE zV0iC^qwkEzFKSJrPiNj5J3Qe!bx?(}Y}uYZZT0ycB7gM^`2#(r=N@ccrINjFOH4f( zwY(hPU*oBPQbb{76XJ%Ubq#is+x_+D>CZz2VYh7`(WI=|K{0j9Lxx;inAi$Kk2gxwJqYqeegx(-KAjtl?`@RTpy zCh1j*H)Cws?Q_-#oLPEdPWbP;^nkx%&9lm;UGH>Ngp+m#UPXGUBkHjTubZT&>@Ywn z5Y`jE`I_Uagz2a<5cIb**j`3c*nSnMzyS7!nSIa`W}Gk^N(wF}ByWU7OVx(Fgt=cQ zMAYP+Lc!cS&kRxiG(xr*B_`>z^SvI`>#kCgcSgqKocWno?Df&4?vh#9zLvyd6nZp4 z6skg-qZv>a)8lc!id$(*HRC7(rj^u zqt@3zf<9DCg^9vA+bb>ToP4fLJcix8l;a3su?L_0E|)~Hiqzeq=Z&_`yLF+(%i+hP zKlhceFNLt(e=r3#qjf~=KV!egAdIv+C?<*Pt4w)1wIG64K7+u8R@Qv@hBNMxSdbi@ z|BwOPLI~_cEi;=Yb^WJ*(B&5~vrfL!;L>D+z9oIyg&+E{hYgSw*f)!^cdlI$&z-RX z)KQ1Ud>s&S10OGIj6_5l{$AJwZ4NbU+(W5V8)-ec=oP;LL^Q#v71X}&Uv)3Nh-9Qw z%EYllz0aMyv=AI~c=pU%!|TC>C%BDxA}kJKV^=lXFXfL!)Q23Lh7%R`3x|SS;sMs7 z7}%P^d;P7a9+SL`PS2kJ&a))L_5mZ1v2evrHvC^*ANaw;azwH*Au?rQx$f*Jl*kj^xMr^k3R$6PJ8zz)&g6SoHcc z=lPy7k@C2uq2e=Y>)pn6wF!S*&m&373dspP`CuobszD7o;onPGiQj`|%Qopnk>e=Q z-);;P)`?#o`&kWxearXS#t{VB93;|*8iJpv!*xUnjZOmDmI~9%osM&~gH9zF$MuoQr+12mQ_-}vNgNj7;)k6j*%Ni(Z9?g#h!GI%FB6qQxTI*}zh z$i?#=I?XX0_RSm*2rHx9htP!p>v^7xY$X)l(=!vQ)^Z;5b#NE+N+v z`&d@jZilnwNeIQ4o}-;N_(W6te~mC+fbtBOf%4w~fEg#qNRMTTeFtcN_fy!JBY7eP zz??X6;TnyELAK&iPvv+%ZQkTwp${#F=Dnu`>UpBGxw(ebC@szpxQFMY7B>Wz&{ZP` zNR;_*u9WZMUcb67>7(za1%sO|B^IiqtA}bon-$_5Y5m&FTkdaUVCNKpX}|<5*T6;k z*T4e;!qX}~))Zy-_fuo*ag-`?u|53Vm%pb9JNzB8dVU;VP*m~s8O;y|}oXGl!xPH-zp0 z2wb5f>uymI+=f-cCPZCp4i(aGlV_byp*f}Jn z&jKd)cJbqzL@9(8=7{286NbXwWow%FW>Z4BhPUKI&!7Jm+zyZEQ}%W3R++K)FC<>I z;;JK^vA~Ca6Wa3zR`I7U$Vcgva?LOK3cd``dFe=;f#aEj!RPSHUJmpdX8}-}L=|C} zxFC>X+IS=sEyiqiLuqUz)$W9QD57a4nx>_f6jlMjaz;*%V>R9kMy1V2AF`@;< z(K3WssqAJd#H3%sLD7Od*eU=)8n*sqbfC>;f&bGMXj(MmM*z}v)z!)r@FwCB=Ua}x zg-BwIwQa}Uf~98?pe;Ec!&J|tfcBA+;R$nYPZYHs06cxb9IT4UCDfblqF>$$C zr6fB0*LKI+2-m~0JTGu)2{dKn3yPRWPN(Ghk?*3}l`B8wbB1->3A5z=+W(B0>2rP1 z^2z1n|IPt3VlS|_*kzu&sqpUdAS2o4*9N)IaX`{{8rZ}c)d;sat?9V%ONCR;u zO!HgNCsPLCiOk~Um3n+Q;*~%e3AnQR58=^FZi#>nX3+zx(tfiQW(dCd^uPLp(qq@z zb@?&&Rghm_2fI!;P#$s%@_tmrnQDpd4!YO}sox|3_hJ6eEn0fUi1^@f@Z>{H{JAV< z^A+ji_G-VJT(>0I5s1sOB%z#fmf!;pqD-dqoHKC2-`URn*%cu;IN)K83xG{u!3ymM z_bH+{lmdY7=EWNbw@Kx;m#z_*iv;7;ah1NbWy_0gu;|=E%%!yA((Tt8r z9gn-XAHk5POiy_`&Z5S;?0QY=wjL*;i;8U9L$|DdMy%^xPOGzAIq_!2rB7;=qD@iw z_W|{C!#N?w0E_j3(H8Z;VhY4|7VIXz|A%R`i5mrnVyNf1Ml2*zvZ)pa3*tz|c@-`k zpA)_~^F2d_eJeczu<_qESn0;b!r2Ye(<-s+83GN!t*4<4vdJ-6qFQN_Z<++ZtF8#A zM??QOxDOi*bQlKzA1mL5>h8yUmfIS5W$OVh`rQ)ddLAl6x@fS<@DG0X^?I(=S0$3U z{QUMyNOZ{osP65ovpQrqz(0j-;oQ4z$Y82Q8FK}p2%%X02Ol25M0FtzVAcPB)#*M3 zM+V<-GT~>fnCDdch=UoUTYzIIIs^*&L@`z73^zfndxT&uouyq=d_`~gCgE{+ zcYkPQF56QoI6D(n`8v`+5;@GN>pya6;T*#^Ln5}Ha!8P-g-`Bu^f2tx*z@4Cc{g6p z(kHOd1A8S)&Mu@?xgxfchz*lHuGR^S|8wktf$E}faC#<(0Y z$b9-_$ty4as3ok%HEZrnW9Lgi;99KdH8ghTzedrlWzO|hn;)!)-?B!mf3C-^GKLPu zn*K`$%2oGxsEg#7*X7VG+;Wpw>qGJ24btzG0myJPD(tAoa!)Sq zu|ye5otTw3BdcrRcWAdz!I)VJ_zMX)8FGyD@6kUWKX z*Q>J{i?Yu)N5C%f+-%lrHA4+luhH;#(E|XmXoPLd*XwGYrO+^qS+<{VLC|k4ACx}!kO&6E)UZDS1^nW+rYqdN{=dy zH8tQX%}2hpw|$rh7s@$nZsWY;-~G2W(Gq!1({p$NIe(fF73LC)Tu;d@OM%Kb*YlF0 z7JC^<;4ivbboX~H|oLv8{#NgUtP0~WSrvWkpa zayJzq7IUVpWK*#9Hw@9OOI(Igjh6jOZ$4CE%E!c0xJ0-vV7uCQdSA=sA~_0~qON$< zDt9=i-YVz2k3-n|u$`8pFN22>`7+N6VNS~>CVSJz)SS)-Bjx^1MAnEiXdl4TT;fyG zuY~j8f{H>u?f1hESSlEJausiN@KA%Tg0UWCK!4c~`7l?`;cVKq*KxJbI#SNcmBk~K!L$H#enSn zL`0kk^LzVJ?y2~{b=%8YJe}hjSDeAUHM&?CW@Vrt1-W=)_3XOYfB|Fltlhs5BK6+3 zBZSCWfEVx7=2mxzzr7)+ZL!2}g#7~r3TZz#hYW!L(4P|Zu$FeDcJU5Y#6wUV%NFFCkm>|`qTaIsUjYPI6{dfR9fPuw)jx|M#y0SD5Ey5K@mO`*f@mE0 z?X`kN_Xbwotu4wxUE9&YI>@S$jJ1 zk4|<4tcCfG$-QT;d1+f2gm46Tf^(_U`dO9)WU;fHgi*YY+^ohIM92gVyXmAH#G@?` zMA?3VFA{?Y4~*Tkt2V^s&~gUzk+F+b!j;Q}0b14`g~D9cHK*ufT=bBAZA?^LFzh;k z+0adp;4pJYjaNo|{D8&q@q(@GITosp8sO#jh7QF)N77@H4osib)0ImGYi#Dg&q3x+g8Dzi6_C$p^u7g zX2iMr?rA7f;94bbBLjJKQb2dhj4;OXoO*DfVgv^7muZ17L~oA*w+;ga!D)6qjS>;p z{K8Eulxv>34$kV1F)8JvX$^?e!!@?(-v(#*dQ5IAFmtUnfT$))OH zD`pUhp9NjxDbKjx4%yVv>$A#FV2V^6}pn zu5aw&Fy(T2X0@~1dCt|HkrF3@2LJii{t`!s`l@*UW#e z7Hwy^vvk}2|DDv!*T2v@8?WwYujSZW`d~DfwZ?@xA`_#~9FF0x$&?AtHtkVsx)S^f zna(KW@0Tsj$nBIC;=8>i_J003q9=qLK((S5svA!mjIgY>sKQ1g$?&YtR)L8i{ZnHs z8@Zu)OX+qk=;qS-C+``b27~72&O6Ir^|bRdKsY##2jZO@F@uf+so3cNre}&jjKgX% z1sF2<0a&E%l6)2BI#?xhN}CHFS!?@>4J~^%&rwSIhz7dM$j)hz$y~W`o%$NH;)X_N z3CMf+i#BEoz`Y1SWGDb~we2kBf8k&F5zihnew!0?NBUKM#^R;aCS@;i9KvTIkA7S5 zH7qMujY@c+f0O!7!r2prf7MhC`E;*sv4A+6D)m2^A7KE`QCj*@B4)9Vw!{^`U3vA& z3r8gdlG$>>NgvqrMXltR9hWY_0H90m_T3tk=6-DNM5l05t%uBk7LS+5rN|UUZ7SK; z_P?nmPOLWpzN&w4)J3tKM6M~phLq7h4kZ6KoSt=?R|-thYwcz6=TxcH3OiV^iqfjt zUS&cw+IEBwy_#%$Yge#)J!(Cz)G?Q|e(L4Ti5PS>98^&J3Ll%H{( zYai~v-6+=n`#8yvSe%V}Uw}C1uj#$yeB=yhP3f3yMKs3#*J2WM&?TUu>oQ@q`W@in zQqPZ=i0Ha7Fd?gXAki_FWrBY+OaFIws5~5Y3c4K~JIkQH>3y<&S96-dSw19Z=BW8d zSz{NK{|8~Ei{{R~5!h}uCk{0i2j$H+4WJI(SyqM$lF=^Sx zw;0>2mv_hgVq?3}j2SInDUg%NZ;I!`v-sPLXR)oOd=A&fu0R^Byq37lLkEoKg&^oL zH3mSG9x`mIs4k4}>%z?EN|_UA=yrxy?{93T9JAE%kK{y_Q%6KF1(x@*N+XgUhs}%a zb<-eW6D)FOHk$b&$y`e^9Qr>jZ$HaEc@Z8#4Du5kze8s%gubZAUFj=O^kTFx;qbWk zF&$laQ5p$flK?sNJYD2QgOS-LGE0l+W{8+K;~Zv70LRHSJ?XK4Ak)F_W=lOqQf3umT43)(GPh4p%d&hDh7P0XBmOYn<27VWBW!a$8g+z^s{BKUS`jZiuS z3gDJ(q$QqO+pqpGdK+a)5O9|pdwv}aV3=K?)=4-{57U5>tC8}ZhNPEHnEb>2q03ku zgji6CH7dMb4F=5hdeBX9X)DM2UAfD4O`O|tlLER^51MCcgO9@HW+=kji{n2~k9Gdo zl@-&FB3&L2>3%$lg88+BUL^1B)tXogv7~Y( zqQEGiblJzMk)y6yt!H9uI}R?Q^3A07!QuK5AG+nOFE{CF&i!G0IwPejbZa550}H!r zOtXneQcFS6E|JcE+h9m*=W{FiUK)p+sYjlppLWET*-;S4m&ToNIV1CE# zygW>G&GNXP`|(lhtfHw&;j~UIQ_urjoK6L=`L7sW&Dd1`H-K#XywOqkG_$yD4 zxbL#8d~ZX@ljUL^wev_IDpu~lkjL^FQQOq*2Mo^O&2T=4Wwk9}ovzR(?l8*MYXQ=9 z2D@2!vEaA5e_A46VJ>S5ptf-N+~H#o$iKI=jH7I<9M-0H`YE_PX>s0$>=20TJl8=# zQLr9D>f?l=2zY~{&z5dEnh|FOJ3e@}TATAq0V=x%b>}B-eW5r}|74Wt46)I1$#v}h zw5KtP$3~$Cr7)(IWw^nF>tEs*#))YxLko zwM0TzNEJY$AHpjT+GZiJLlS{YM;!q&6-<=?V2HbYx3=XEbPitX0!}|s|(?(qj zfpf~mX?3cHklm!s*N7v{*#g&s2ec^i2``&)g9`UKfgLlsDBkxr12m>g3Of*vgh^;}MK}i`>$m-)H5l~)ub)F#l>mX14)oB<(Rr&kZo7eD2#Ahv8iK-p z(@F`wq2_DLZrW!~q)T%mB?H`nGl5j1!2nuTA8D&v3><>(PJLXX6Zm~f^QDrV~1G6C6gn`%j zvRFJj!jDNN?cuI^W=gvR#fSVP%;lWA@aw|Eg&UqM`u72w*3fB1^`~s(95|r)seUjc zx{Y0GM9X4z!6G=6Vjtb&fBA zb0swkdD*`O(uZ5Y4QRJNxt}Dfm3iMKfF7Dp^snF)u3{^4O%@cu@dq7 zFEwR&XCOXUWfKruj~edolG|WkbWtb`hHfCd-ET>Zs?D)AwEnEZkz@tRbq&e3GfM9| z>pO44+ml|qET^D&T=}l&&XGdR4o+2oF}AUv+BrTt?mMzw zWIt?l`P{>^Gao|Pi(qVJh=a~0jd?}+7G4ds(6ar?r}kF(Ec$~iup9{MZIco65Yn)M zGS)Qg?R5Z8!&T?FUa-cMmROTD!?#8I+D#dZJ|guBYMDgJ_(H+>&$%o^eG?!7F-E}w zA=}Z+PmX~k&uSquanRr>BQk%pr!t_QMEkz0;IQpEep9H=H2h(Vu!ai1uUiNw{VHY) z(se-MT7Ay@^0pq!a@dz+xI!n4kPQFwx_lE%U6=g%p=eOKXL* zs82?o1wkHq+h$_B>eF&~9tllI(A2c_5cp|5pW&3yU;E8rc6{}bd}mye1K8=L4iTI1 z!i4ce$*&o1pt^JU!$!A~gX;fTISAtTyMU=Lu1}*=34wZe6D(YwOZOOoVJ&y#vzq8| z$gVg;3K%girU;oJk{*?kUpz-*9VSvV0%RYD`w=IUqIZ-r8=CYyH1)Wi4UnQ!*;O-cTdTxmF0@} zf$%!F%(?pPp6x4e^AHF97Nts^2=JZK0|I5b2kH|hiSFSwa9N00T@~_wRXn0`$i64M z!gCF^lk>j~)Fa{NcR~FZnCL(Z@hKjonQ)N?2hc(U`()m*FW@f9T%wt-*AEENkTLnb zwHOcFZI2^K`I^yL>Z`0yjdBy6P8iZFRUN`@$2*O6DOyL~g1RyaD?vA_KnIyP(D|(~ z%iL3#YN?*yHNQ1C{A!p`py{~ESUWJCLllSXDT){Lg)rTQJh4MdT`u*-!ttmG%x zq&9r;cgKp22syion)IrYllr4&05}W7fRVtPMRX0)HkuS3?21jS!8CeW(*UOKmE-<-P&LL6{wmONJEmDAZHB{z>^mOE_aGuCNO56A{sO%^Vq8+DnT z<}f4%pKMn69V}i{h{RSiSEDg2jKO83Gpxu3R z7JhJ2Y##1C%&%*lHPAiMk^orzBGTMIi;m(t>YYDRlsgYDs8M12jm4l=St;?Vw!Q8& zpe^Y|U%ON4&s*RU#<9@FQyX>@bU|6%B4jXv}1C)uz{r0QV$&bJciSU}+n&8s5=%?4b&p z;wDvH7)DNI@L&oJJRp}}j~!!YGY_{R=`kl^ZjP}pb}ZWKlrQ4<>&rM`d?DB;i;9I( z50W8y3Zxsg&0)0isOA&1(>;YoWizK~pi(%TKL=?ppB<-tE zHibLuM16DFX$18iLXX^oyHj}A!(hS<26l=KZH9?C4KI&#JQmIm7B>4(GL^%4fE+I? z^cn#_P8DG9+F=Ku^fQD*dDPBXHZYu3+!eEh2YZ;A-D&`$gr(E9_^ZgI%6l{I7)=$> zx4+c?hS=OdtYQEL{zPDyW3ksezxiZ#$ol?X1*g;9g@XsZmt%8$-kVd=RTEhoi^Ot| zPZ%K0;qv2RxVfaAB)b+(L=cwQG%BknB=QI9X+}Om?=xp|8YH>;m=KytzA3a1muGpn zaAWs!ooPoQDzyL2ei1jw(j_t;9jhHhzKhWubH`E?%bL|aN3EH2AeX#SLXGjmvSdRH zEiB){0(;P^3Hfry*BC&NXfGsT6PAu^d?q!|U;tzM&ZCP3*{6D1ILLhgJb71-hjgq! zr4c~&d@P3mEqwG&BC9&}Ral#!Q@T0{oIsqXvSjQO6bP1a8colArpV4+Gm-Oiv~Ew| z7S%M^So|~IqF0&sbevo)mr9(5s3v0AU87l}ZdbSN3}72r85PK)@D10XmTH-Kk8WvC z<7Jk*Ng69*Is!p?r9`9ZXGyM#YPVR9QgMh^kAQ_@)@G+H;l9&;65|Gr;&)Ol|D%Qb zI0!MQfXO?R^g{S%mHxb4Wze)DZJ4y=hi*;02PF!uDiIp)&bF#Pk|ch|kmdJPsYBOD zIYuPV4eX|z@1KOEfXBxU2B|O?K8ghe`$VGlzGZ7US4#d(i5H!WO%SoWoYekf+TU})bgpA=B|xn5J7A@mtIABkkQ(PY5DYYnjPM9+hEA_n%QMlyK| zpLPg~^MMi~4=c%-0QsGr^Q4>z$y98ieDe^o4O5nM1N2WU8DNMIK;(xp!?(MHn4X9A^k63;IYLDQj&b0G`(c|(Ue zlnck^2>!<2h*2rmkc43X13>)09ajp;79dLg^BJV{EgVIiJ`#Xu$tNRr{bHJ@rChb7 zd<;|kpH`&Fc)2+T_m>{Sz(w<|zdF-lz@{#ClTQKamfumx4o*}(sv!{;<+?n%-Qgiz z0Lml?CEU%N6;qi%^)U55k0O5-_m77DH}6L${83|tVyrqhhb#ghf!Wf#!p%$1qM2dU4-uvMe# z8D();NMqtEHKYHsXT zqLpsD(7GbXgD>6wcz405d%_3mtd&mML`m!C3HVS?RT~+YJVjm%xu&B3GOIdX1nJKy zOvDP!+50^TlIrS)1{X;w@ESMfhmw{KocgRs)hF6cL#-|Nnx4P@&=AZUNlFqcaAUO* zKN1EDKBC#Y5Aej2CW|>^C;@Yol}$Btu`xZO3I@HmJ$U3JqZ=s(XxJ`mu<~-qEt`V@ zdg8Iwfh>6LYr-I^0?(hQHBqh^=k#MX6}FA z$ND$#Ypb>}i#=LSguTb#eC?3d&+{jVrDt{<@B%W|B`g-glQrQN5k+i*j+Ez*yM z<(>^7bd439#I}+94*mOR2K7on9!lz=rIkzVGpl>|@efD-zMZ0$jsdq1_co=+*B0?+ zhJ#xpI}#h5DCe$q4yHyKedI`HU!)d11pJ|mbQsejU=q18YzxIx+t_OX&P4I}wOKup zDe>YUX@%Rp2AhGKQP`gP@u4x6 z^oIsyyccW3|2|Uy9cSUJL=@K234tT8092a(xluD=9O0NZS;iAmy9~?pA<_#cU$Qpd<}JxO zOdzNV-0A@>$zt^{kG~m#uPm0NBURBmzA3c2tglRLV|8z)j*7Sqg(Q)L-qv#ODfn9) zV4I%0Uu5;yV^90+!93X8K!Xr=-ykYfDH!n?)Fp3Goj@wj()3n!gw*m9j1hwc$J5mb z`6MQEQ4(n^0(;kmr)_d`1JP@b5Uhy-&dplR{(V3pC0P*++#9ChGJc?YsI`<#%)QcP zBuqk)+2*^Q9poE7`n?yaYSUE_Urtjnb}5vCSLYs2+a!NOhX++5)k+p9At7F)pB-$U zE=SDg@~PjBAX5I1Jw*||n8^;WrvGv_38Mb~;jcXc3a>mM)p<UJSN(fT*Ht|7JiYD#S(dwM%8YdOcU$yY@sVqqLl@MNX<)$AZK2Z;F zedkF0iBS4-6i^6MbP@R>>(U@J(>cCOK}!*>7;tbXObjN@FWoKz*37{)d5D@5st%dL zkuTeg-vTmCIM=~9aCpobx$YRLsj7b^bBa$aOM!3sZfh*=jO1$~$MKz?^M@atR9V&OI0>2e_0wTWysXfB$OL-=%ynxhum@8!}}MR91$j< zpC^Q}gjharYM=xQ{gZsVJtTe?2V}PLV0|;jy|t#I{=|bJVV6_N$mHFD-O^vuAoktS z^1IHP1A+K;voPyDI=qt-l7G05E`l!$JJOez`Cw>&;O;u9_frv{9cSL?f9_RzJ*N8{ z^Os62Imc?bLbasA-t6MJuv2MV& z#c|%tSX%LT`B-w6k4D2H1&fGGVb7*9*u;f}{eA|B?sr%f;|`9WZY~HHvzmdQlAO10GzcG5*i8xtWdZ^F8n|H zB??o}(w^Ax52r^%rsNX)D?@p+iz>a;CwH6h9o0 zs^}D)UU1LXa^a~o?p)V-#h4l!IUe$tI|f|y+nMQ>aKF3NmeRCB+Ne+ya!vWBZ>VmC zg`o$o3-`yX#+7tQIs(~KpxOSf*@^e9{E<=zrr>3w?h$&u9Y`zG3Ujl%ct3!q(%bow z%(pQloX=@5B$nt=?fVRA33(wF;(|sHtKXLz6z*GaJhQ-Sp!ZnC%=kO$b4(FykH8_) zr~X8Td1`I=(cu#tdFAjaWf~PmR?oc)xB)%zWd=>1JyJh=TAvM-d|m);4$8sEbybKO z!dFG)$FG2LF=Ss$$!&<~ccKD}i2ady4?QmuL7LjcAXq$_v4Hn4x=plgcIy+YPV*pT zoJMM{Q;WLksa)noq@YINfS|R}qo8-JpbftgUE@vfxHbSuX~?wl+Bd`tshaINe&EKT zI;ysC^u4gaFXufz0B0|xmf61m(4^7d;C>&+s~cYqYd@w~)(UvH8S<2jNI||!Gq8Xy zk$|o)9CeZ-ZN!0+jIMKp+KtRb?DR*SenyNLkyhLOWiIk<|&Ub_K*Y32( zdf96D9{fKIqC-vL!Tf~t_)N z^H_b{RI#(;gjK%!P|LUaqFi>%wu{@}%UQ+1jOl&iFSOHFSx5MRq7J(M6R*5SowMT( zNlmEOta_DDT7kmAjNNx?mIpMXEE=EicvgOdW=Gir`h%;-)z9-|YRVJ~)zI8i8gh)3 z{5*I^w3FT$(x(*nD(!HwHOb`wqcxE0DK^|!1I@WmRcD1gyunZx^sYnOt z1G?HHJWRXpz(Wkm1ZmskLtuDQpzp8J{$v6Aa5Kyo`IzADo5z71#xm8#1@#(bvx>SY z29AHb+nl*qs%2c^Vsy{1c{8)uvoo} z6gi^KFr%mf9vA14&!;V4j^z?dN+g`3>U@vi=uqyl$v9SC&_*%N_W5Scb6T^LCu0j%gySX0yI^RiI%l&T63BY(0lG0~x2 z8iT4}%7@)*roJ(>Lpy3$RfYMQQJp&eO!RF0SSx^o_|zfaw_3E+?17a~ZhFa&zkdlb z4m(3`brBXD?j&t8)H=Cd7=ec8*K8nO8vCJfM zyTLopy`;DuWc#WE1ltswFc*^q!x@lb$yIyv=sR0^0_7<9fVx;mLmM;mqg#3Fde>w4 z)GfVG_ida7y`TN*bW7q`tFAelulx8 z=_@(=oznyUW5Nr)tcyO^u9=*RcUEfC!>Tzk>J(9XPkb{m6i#~7)wxbUCK_J%R5>+~ zpDsB90>SM09E6-qt>67Ep_zVR*f4%fl?q!ag~MDB=FU>q*+{v*GQe}3$9m5q?1Z0a zPN(vsN3hC58wQawlHn064j3q02#jrSBF47ziM>P*{6;o7!taF9B=Ke{i`@mB!licM z49plG=8x0ZJ3dLDLldiLKLI60Dwlh?_pa z0ZdR}9WV`Il{P`x_8S@hXt4m<^3WrbCZUtR93k4D-{>{vA@x^-O!E7y!2@@c6BQ35Mv zPI(a*VT)bJduHHlC$qh>I2y0fN62Kb3;z?y+9GV6HeP zI z$ut_3u51;CgJ*tgCmcyhB-`FTdoiUwI_5=nY_NSrP1(~M=do;{Hwm4h*nXS-cp5AV z9&Mzv7bKUB{fL%(>u>aB#Qfag2SdMLIsxj?y=xFP8L6;f5aC~dV)7o*Yc`yp>W)v@ zc@{hR&=UF1cw6JkNt1Fw_!g0-G}#r0+ZRFqvPP_x0bsbWaR`QJwao927VAfzPQ}== z;QkyowyxAi#%pRXe@BS~)?H?$sqA!SU+$-v2-h#DB*P06G5La-E4e0sblGuZOMN}C*P0XWa6Oxq#{MP*&oq3RC1g& zprUtyJZzO=2IV}agHc1mAGJ}5NxskOt3BaKOud?aS0j#52J=p=#|c3>%m3lEWy*j# z4;WwZ{ZQwRHG4k+pTL`a6cpCKezJ)NjwZ54Q|-v$FfM%!g3+z+YUaUs6l79kH@TZv z#b-{gs^4WMI>2;BDVJHZ!n^9m{5&9n!d}|qCEC2BKC$Gn`wzXc$o|T2N@aoZ{1so# zt(xxvKM+)R04uNPYb#ra;cCA~KOP9D8lI&{nKMUa5RU^<+Pj#!Gcwv(YQ*#;9GdwG z#zGu(oJL+A{xC-HJGlzIE5qise233|X!LqaZ#NtS6BbdJ<0$=J_$O{^>TfbLtLkX7 z2K3)D<^AdO1y`EgPH}VX0fId#?u^Vnh;uR%lUv?SQz65DRS@shf1tvAHe^?eswFRWV281))rN!IL46U+6XNQAba7SB_k{-uWBdn%bJ1O3wWbY8UKo6P8BZGW{J10VE@;Ksdl)M~A- zadbaDTrGSked6S=E;6rlqF1g>qT|PXZtIkGPs`@BJvtZtFhdQ!AUN{u!v6#qRSpk? zl|I&FN|el>FSkFoi8@#@jU-Amf>HpYJ!Rd7ZG+V4sItGZP7o-|YtgR4M-JyzbPF{u z$VsjCFq~;piCx3{mw8T$6`KavJrwiEAu6mO6YJZq@;;a8uUt1NyukKE@%7RLWlG{I z9zwV9VV`uhQ2Sha9!3?sFxbh@-p|cgDIY$D2&UNOh|qKx=fFlY?(8qBhF7R3%F2DL zh_)RcW2K2gyb=#EjZVtkT@9>zoM5STO6G%vFrSGp#JJ%s<17lpBuY+~XzD&f$Vk;U z9?FSyI;n-~3Px8Oxe1?Qgnz})S@)5~3nHH8CyfYxG@^6&!_t~wpsj+n+bOqGbIf@5 zU_NPlP@qD5B0gn_XWl3qR79KXU2}c4ac2*>CRHY|Lsaf&kPLrl&+WN{ z69OncU&L|#647q7UtgulQ^4Y!kmd{4P3aWy{n5(j^2QF6y#;%l<(rFQXHRTKun6WZ z%0;6uB=u0&2doi@86{2{+RVmL~^cU zvSNt55nz@%c{i6ntMAOV)d!zU-)`KA}HM$}4sFZHNTk0eKr*uNAN~(orB2Xb${59dOlI(U8d8Z}mC! z@5Tsrt-k+TxX+X;7in2kaQo#wtm__#GDCtnY?%2QZt$cMbkILu&v|0i4CikHVF`3a zvlyOu5$z+zffvOL=Ur0&O}|g{;jXgOrV>s;9C2`r+%(CM$=Fq|oo=E;Myhv=QqMJ-26J#jq%|`@w36=66oO*ZVk0#A{+qOd zXD90h?TKbqGnJbY0?=lyrBeDRDt$y}rH5n&GMSaOdy~hD0s6+Tw$dR8l3e(*M z&h^?>a&1nz14IC@X0vja7lJ&-;;^aXIru)7@TuoU%I6?iWi&X4ahr!)t{6pQZ$`bD z(90enqmzmQec9wX_>25+VnDR|A0)bPBs_5dRd)-j=`8Fnjs}I)dJ9I?x`kRCT&DR( z8A{n2>w~J0;eMZnTAb~NTNeBdp!FVL`NAEiP`bG5N)nKNB!l7w3la_1Z(AR%*|GcU8dPn@WmOd?lz)Yyp^CT?QVEavI++f5$CKBu z{gSR~{LjcqO{8#XHS2%KkV|sEPEaO#XT-#0yAi>@O6A)}w$&r7HA)i(scw|@vouZ{;S3jzg7-KzmTmAabg96hsW9@*Mvc*}Ua zJ?LP?S)!z$&L>}TuRQk_3dF(E?(tcjH=*L1JXJ=dTN_w4u0NyY_dl})7!$OuLXxkB zD%c92i^M7djW&8_#6dnPP0bTR6PbN14d(P@G_eELq;Khv5#e$S|FSUZmGyiP^VzcV z*H|7Kc*0&u)@AR*gj&12AF7D#+NxzI|m&r8&(mBOkQ0WD0_)Hpx z>u0LIS^jrwd2azARLWNqHms*7yKw*!e?5W-T{EAj0yAyWd|r03jhASit{C>|U(%S= zMY2j3yiV5ua%C5V){B4hh`()K;^%@0lcqPrI0}1}N}BcR8M5ri^;Z5)YUanhPrBlh zpWT!+c;G_K&6cC+M&Zr9K^yYx z#k@F!@OoenZkY`+JWUom^fyid_5L7v%VFL*XNbZBD*qk(Fz)SlXUDLSL^mHGw{qyP z%@hZDlIJa|TUPD;ATDo|Tg0F4r5Z%F7p^kF_;SI2El9=s+;^oiSmEn?X>suC(bUXa zY0T|Yx9zW-n1OWH>x_lxV5M-)NfFNXg5EL=UsVuGDb{qbs3_Uny`njVG~_5|RX2rz zIXq$iT{kYU1g|>s-Q$at5)2cfSt2mg$$yse13Ug^0sE!A%+ycF1f)9ZTdzy`|KMg$ zh2z^dzk+R%d%`IH@svSb)1KY{hZ!6=Scw!Nj?ka0)Mom4=LeO_ z!LX<6dk*_sm(}968x#7qdr9#SwR2Z{fA4|b# zgMl4bQA%qNy8tUCI$Pi^8<;%ZbII`eCL@#|Fjx>FJG0ZzXLVE+boGiJ?8_HfRb>DC zQ^Ncn*05om;N{EAI7gX`S+=} zmcL2uQm=e%0YWoW;^j9LV6cr8k-I%x+Xnn%jtWbQI55lsiv>QuN4#!<5iJYJeCKjy zsUee)&2&PldijT}KzBmm-8)FL8V~T2Cxs{QCo7|bLWZ`WEBE(eiAIaZ_iZqiusKSo zf4P?crHV-j*q5oh><{8LFi8VOw^g{9l7MeOEBDaPu$#PSd>1mY@P!bbPB>#*xAss# zC^uK{s_S2LWpLfa$QN44%8v^6Ka_k2Rf4USoak7+%rUM8#rF~~i}#p?-xR}ts1`t8 zxV+<-DLMvMy}i?E21-2~r8v5>uAETfH8z*oJT`o^Ho|MuR|0D%{{UB4- zzWd1~@ff81QoIEVuhY}lAEEDwzNQ|QSKNLxs^$54bf;RN_&sq0rHx}KMkKyW{}$#) za{9mnwPzLyCl(i_wj+-lv1y|wEIlYLXqjY6 z$Rv+QPioTNq!gcpOBXMS%P3q|FaI-r=L*8TxKWQq<7WpK>CH-UnXmb-;qB@!_Gdhz zQKFemy8l}n2=s=C*jq4807u+enZCCEui$+~$?4np?i|vs^13^~wVgb=G*UR>maYlA z?K-asAF&|MT5*`Kzi0hG4q)pu#$#<7xtdl6V*-L`*snAvi}UyD{mT|js=AP_XJA>* zP7)+Xy>>Ch(Nq_m zi72~`P=D(B{Y%}6A($Ww?d4s?`#W*PgzVkCxY*6f*&7PONt5E|kV1J-Mgyhz zsaUWOYRV*tcCgb<~Sn(}roQ&fE}pXZW5QFO~0QfcZ6K|g7-Lcix?9Bxt! zpZk3!*h~O*s}@(r9@|R)XPVdLonjyJ-hGd=0(vcHeSawQ7BZM4a{|alKZX|=J)qn> zCEFi$j+m8{!{p3kfIXY9zE`N9Dm5wkY7Mj%L=aOqvN82&#ZTKNk0dRND8Rn;nzW*a{dS_o@7^5d7xo?)YssGomYz8_lQb^W&(KKSZd&;%e{{b&F&et_Q~pW_0yH2No1{`Qc#H zL&(U)xvt>s65!Gn(U?EgiC}K4Thi@PW&TKHVDxmR9gk>}tHQIiqJxo(Wi}yG@XGBv zC{ntU1Cqp}b`^_|F=Q9W?)LwY{!yH@JMA;{;0hc?Y!6gdy&dD&#EtvVQZ>06PEbTZ*o zLA35?VvPI%YIe9;y&Tk+oy8(rer)%YtiKj?Tn%6Loaj9&}2bk2fc=A%wzre~6V4M6s+5t9T_ zz>Q=y4#}Vela{9vQkV7?bBBt1 zum`AH_d(R{BmtK?B^(>ddX>x6$Q|?4xk>_4FFs73Eek+{99qwT?Kr$|S}H-)k#+z4 zBi;GqvDq@vimueWCQoJZv3S}o73A!f<|4aUp_p;rLrR>fo=%K-v-Q+LMb;r@`MC^E zdlamkMl+d+oBH(Vj;gYWLM(k@h{iRDLI%Sds3)0g2aM#AAOn^n@6ceTxtPD;qsXhr1UQ0`sSLX-_2g($Q`sY zeezcYX74ch5!x$zey}vw4!?O-6WuJl6nEp-bc$2~SKWfIZL260sXk4xQlFZ27`O;`Ozn{2x!~kafsS%- zy4+f>X(z<@>ElXOcpJ!Yy=f7R166romVT`dW3!1{M z@Z<95JR$6SH*GCTWk^FMj9d3slm7GVH`fAqygE7Zlg^eRzeigma|8%Xv?+Yg^01u= zFaIJTL-&((>lLb<)^1*1-;}5)qp8shAQjgc(%Iix*%PGvBp6w>B zaDWl(uo0#sjl%*L+}MdQ`+kJ(k3#O~7Zzh&&DdPPcs#+%ouG_wf(~DiH-wF0>#|y? zdv2DGEmwm%9bM~W8MlXNlJGvu7kf0wb1i`iyvLQ;_XtU-|Dbg$*=>%@ z%5O+6v(!3q>+gfe(odNlinciG2h)*YNoeU!m@l-qtzHQ$-k5{5nk?AJyV`1Xt9OMK zx-YtM`GmtV`me(dKwHwQ=^wzLrwpbVp!G#*Gi5;Y_?2mN3YrH?X^P5Uk7T%fpMn}m z6T2s?-*X|OR-rrEl^J9)X;NF^opXmk zFR2H>#QSNr%n7yX=>XmFOVj~QatSvy*MyK;vxxlJsL`#X)Eq_}nKfXK5XY_Q7(&ce zigtNm5_DZNqf*r&ks%lMkYeB`)>Sqye7Knyo)2Egdh5f_GGp=lm&iUK^zDS*6yqBj z6B^vA=uzqidErdT$X2DUb3YC(w8EI)&%1lef%F0Gt>wG@Y@_QJ@LaZ*U%R1<79dwn zHg&!l@WX*X&Ih0gg()0^XRa`gJvhZ+bO3@GXf8Ysi&~{uRp zEcN`^t0x zQtkjt#~`%1P2cnvG4U@*Z&oumK*HemfFhmD>pxsGlbU_|Ky*7JdFEOE#;b^x-!t=f z010Q9_r1`(?dYBeo+2Io;7G#vch%RFV$CSyoS!kS(rH)~uu!*-=|qlxzrWruqK?-WHO#zB*CUal?_;zHR5UAyF?t8Q~dtyat!`s?NhA~l=Wx^Z*aVJSjx0CF(bf2 zCV=XnyEGlsV0l@-bDcC&%Ti}7PY>L{b4}MFC~7|dPQNkUc)*}}h7+N)pj{Py@&f4q zl=w-SuZ!*x;pVU*wrp)qczPwz;abzuP7angeoBu^a|8o_C#2^GLf4MRSMMlh@3*(^ zgYo!lYu#b}KI1)!Pl0W})J;{pZrEs&x5!?5xa@HFF%T)?hpk0q1LnpHE162o1U#%c z>?lO<0tYJN8M&Y)J{SnhM~l15vbT>=51p%h$!z!Zy5D(xtr1nrokxjZMLGf&7pHD2#%2Y{Y} z--grsR$UWHUQ{IradQmW67afCS3Vwi=y7UM9#Kvr{T86(bQ zcbJb1jRg&4+$t*wm5Vxqe0U+>LGEYurW3BW4(^4X(ib^wC@hE&G!E8e&;jy8J5PUJ ze!}*{vMlv&aGbrB$~^iHee3TUcbKT*cfkAgj}#Qio(VwGtURW)*fzo769_%xr9dpI zd>V8qv#~d>j`O4>NzCUMtRb~^#WhsI)a?h;k+K< z=N+823le{Th``7XeYZ{BAZ{IW1zY2Ssjy-3Zx7)i>-9 z6INpnR6@od3y~>OlIBcELb6jQkW`jluW$sWral3b0sbs&vv5n3{V7@gGY4CYmdxGX zuW*?Bblsghz>gwG^Cl|;b~uVTpm8Q0;ZpXV>IN#i+*bwLy`2mq8}ukEPT3M5s}-TW zEC>wMGxgSrZu<$wX0wy|$-D`$;`1LjNJ#B85KCG^K#mZlL^5f;+`}z0m(Eg=_deUk zmQ3e5@}qrF2l~LPCjT*IZj^qXS=kzEF|ayyO-*^&b^v(^kN;U#z_#$3;`xFc#}BuScQV&PJ0Jmh1m0+?1UJI`;}#15K_s9OiU z*SeX`#h5uI(*OZ*XuEGMK(f5vRv}#gy9ED0VawlaCKDkB?1cd;v5O#kS6itGvS|SA zMvFCjlnyHu;;k(&dcgHjg{J8+*^K0EXvH~+@mppxa{WKh=a&;($JE{R&`Z|FPJ^Tq zWjykZ(fDRy5!ZwPlHT8zS1sna?47!7T$9Z?&Y)~WntV8A7v7nleLV1U!>~3;*TI+d z`m!7Yk_Q}udFeCTiZCR%>`46r5*DEvx$QN`UN|vjLfHzI_e6y5!!UakzJYl`wboMpP47e!zX*3pj!`NevkDQI1o!2_qEMxEahudq_^c_N z_)N9%#w9EPm?e)EJ|1Zh`p{6=%;E!rQXOLt9jxo<%l@R{F-a82TC_dm4cU}`&~3lW zmczCEUozS3A?Rt_JXW>92hF1-=9pt-Y6W2JEZETcIqcd2pos+__xlndUsnK)e*p?{ zyXBN%Wsh?`)lRcu=^EXpth@Z)%0xS_*y{M(PYqz|<_LKJlbI0yAI&YIM<`I8l9l~y zibnpPuQ*Rh>O>ReSze4N#hJ_UdGDm_x4!~qTc7*M)ht{>bR`wF`ufm_XWNYTs$1)H z-xJo;kwj?Q7yj8R7nMH(rEL{K)FP@>X=jWFH*R#!8y$Hy2yhImWFt3>VE!X_b#u*Mh~dP9FwL(s)XXdyo?9XA5Ij|@Kh}wjVDYz+ewn;EL$fsw zs?9q_=-tWe2wvFm;nD4CpUqR0xAr<|_;5<5IST!_c|mH{2T28WBa1p)OSH-VfE?R3 znlNwLIEb{df25Zz{z3BBw++V9u){ilByBH_>@q#p-2?)93wHBh0tu%kA{JrDgHirs&GC~|BB!TUD=)T#q3h%y-Ov;se`I+;5ZAF zb~(o;?RH;Wi2JXYd4a=ZWq|h>$0hqyUGri$zJ0*LXI}m?%6{Tq$M_VG7L>}KRhE@s zA79J1(1|G&SsI)Eyv{kzDfsv43kdIylvW#{!?pdk-jK1f8n4!p8tEs5e%D)G@rs>U z0er#ea0sE_$#ZZ8ld$GZKJm)~duRnp;GP3tT{1~ZYcaZItN~y@$R(J zbyG1Q={|fluk}MZt!}SEK<_RjC{fwuGefrww4`O;y4IGThyAIb`17it)UZJd9{L9q z|Lzti0i!om; zne@a2mHp!iED(SlQJ4PuINy|_Jz}1?PT|;l#M-6)m74!Iee`}3ePj5S7q5X_B`Zbf z;wrKkP*PQT+)Kjmt;hr7iRcaVAeH4`y1z%jT#u(EeqlmTlfuOBTD{Xj_cwTjl=KUJFIg|zHbHS9 z8re9`_~_E4ZcTtg)5ukmc0N=nE`i*T=8I-B+6}LtmPg6Qk)ql5GdztLs{1m1L?7ZUUL9f>r^*TUp|;RLQJjlqfF68+My#)KoBpiyS@a==ZGtQ zXD6-%W%3!Yaux@~>RXi1)HU9eV87Vhgt*T!k;SFKtlAjdE;5KJ zSgpc^f5C1Z8XH#))uUv?TR@=GAy{XD;IO5ZV947~TOgcHGPYRUaa&GaC_<5)oXdgD z333gFp2fj*BfegGag8ygGsD!y%?k&lOoK2AJ_-XJthzvS`*WbpnlPU#ao~(F!(ziu zt{uw+pGo(O2>>2zMYDG~T3EQ(W*s_RvjRK3Y39jRbZnMzg~RVNEfL5703#^eCR%H= z-ZgBSqX1xJeJ$*E8aO3C2pqBu}@Q+9z6!!oE+WgCOqpO zT;?(zYQz~_&HyXV=)Mn(#nNITM{WJ0k;gByZRg#?4fu!ICu9aLluC}4xrqa5iJ)>Z zB7@$w{sE5RQ>mz`TEz49Em3r_?;$+TI>*gbXoMDI$nMgK&I?Or%XtJn`?nwouP;fd;Au2DJXcp(oRA;1;CzelHzE8|nBYd$Ud>8;q z%3a9qY90@V59|_s0yOa`@m*uHweNrx6+21aI@)hR9O6-rzdx9t4{xhm5tvI&*~$e{ zxZdN05e6GMi6z!_l&Z%d4(oFwKOrcYF#hQ)@W)o?$)8ClNlv`UUD=~Pn~SG#g|~56 z1nN57VHEX~4Pw$$lxivf?yIy+pr%o6qz)T)d*DfAvqV{>-}a(Pb_03uV#ENdsbNhoZdaY3CX$&4igATtPE;T+YD&z_I}M^W^)ZTkST14vBj za?JEvwz9G27g;Wf=tHi^S7=z}Po>wto}NXtb+6)E-z7^n9oY;Nw zVv|#v{}^8y8i1BtajZV|EO)-I-2E7J$tpy?ygXSbD}RA@n%tLNaGQ^&TZq4OTy$U_ z_qo;yMH|`c*y>=%=ZhMr19_QVH?;*FNfclB7*z(=U;7G3Q%@SRT911s{JaJ{AUd2x zSGxpJdQm8?M#fxtB@0H9z8U>nxQRA=+|Au?J5g#Oz-5#5I&B;rzPA$@w=t`2MC_xiEK`*h9ni#r1?x+Ve_+`2Tl{eAj<{hr}( zkMj>Y>xk2DWNYG5I%c-mOess-OdtL!7%W@I?H1P%pvq;|Cl^^|CTRSRM`x;NvNmmg z@UDE?FcS&}bn)0Rakn@L#<-b(+=*1Ah$#qpR8gtu3obfsMP<@WDkU{EEK5M0C$n?u88i@ng9p7tp~0d-H_~sIp(xd5 z&@{@6gPEv~_D?dyzXQ&KH57(ZY%RS_lxJpGuHtv;lW88J-?u`7aq)AO?zA^#@+s%KE zv6aD3C_ohMP0p?s&|Td<7l5*o3}yCk)J_Y0)0+f`X%}|5UB7QqX+D2KD1|EmfN0_W zXa-bQ5kXFGw_e&&QUv@)n;#+_fgZnx2%CVwKZ3}{ugJl(O;!RflMbG4Gx)bvh=^G| zKQ#P&P=p{FKurLX&I0+%sY}6F|N98N+1g?gggkL;vg!-Th8;1IP73OdZb&~E`@Z{# zI~ug};E%>JH~Gy7aEMd1t)MBE#P#SY1jyp%K=uE2Cs^ z!C>lmA67uZ%~wNAGEcpB!2bXotgDRovJTe)mhB%$00lt$zW~IkE;g^?IxUtOqasL> zekQI0s%Fmk)6?5-BDnIYq?1w>Z`7dRLXYlZReBuzDMaZzYVcb2Dty(r!DZ+nhD+P* zl}dU$5A3mO?zbzF*C7Ns2-1guyRo>yB37h(rQV8n|AA`^G}E}9n-gFdZah-@tlPbz z+B<5nOG6V_I{BGN>7{dRUz3uFC{UEDtPQ_*YL0q&^uy+`K=9I!qlt)Ak&bLpIwTok z+jy`88ZStf>g-n{LxK8_%gmgXW`$r^BOdgjC;3e!CN?Z9_WeBY7h~IZNm`rFgzzOZ zMWeK-Wv*}wcCdufPwE53L*YjS9T@d{%p(dM7miQxD6&%3P;@N*YwLfVtL+NqE}a*-4+8=E_HM#Se|{Qv#?$~VSWn5eo^JB)gGg?F zM%N816)uNCU%FBY$ErVCIQ9<#wy3;MjI<`?1j_Fx_{$teDI3hZElDK6XFVW=SrOL} zw8S`QeK23ckaV~dG8Dq;d^rPs%`+HPUJkEN$7bIY9xD&}rqe-%r%voHLuEl#q-2)W zY2;LoF0S4th!qcNb4+bnY$eFq;V3XA51UOCoCCTdJg0Bs2oZS$i-?W3&Ejecac}&n zR>%QY1<~Ez{F_5{1otl&dY;MauOj@mnB(aYJ~L}86e!G^27&&guIFfD!d4z$>P`MX(dZU{v>F?oMUM7k_cJ6j}lo?jQ%Y4LXG zd0rk16z-8(eOT^=U;W}z0mP2DqQ6l=2%1n$BvY!B;(R7G@GLX#^M?CRxL26kv$ILWa2$K;a~)fBvz;R@asg8uwz795ri+)5jo)h@yNnE&t{wm~7U zy*QE(qcHO<+0`@`Y)!+q3Mam^ef?H$bWdEo1*Klr^J-!8LMeOlr)S3(%5vZVlf>86 zSI&2l2$#^()|DyzlfyKjD3&p5>3u!YMuF#xq--y#Be8SGzXig-*wz(uvC6jgU7ZzK zMcfXT)>S)NGbZ@-dJX;>PCL1t8w}lC8L|zlz@~}8%B_71uyBoAyhNf-rmlF4X(#*6IU2kVB5VEgUQ; zx{L0#f66N^9tFy^1pg&Q2YQOuXy<6E5oNeZDW-SCbh8z7O?Pu+LTjc&$AdDtn~kvj zOe47V67;a^!H90|>tiki@;)NjEa4Sd8dqMQ(`<=(dB9^=n!s4k$oV{lVC*tj62^80 zZf;QL!p5LN(6PnZk=SJ91ox&ZMQp7kLVJRd8kc?=g@$coXH+(9Y^O4SU@tk;sH{xR z_OlD}hP`+(sI!Vowi|Ll^<}0gR^gjjv@;7`E(h(y%M2a>2lGTLa9j<>=e(xgzw5z; zvR9EB$S4rTqcUN2*rL* z0e|*!q$g0Awl#!|W@PqXZx3gbyYJKbtTY{%ql}&$awUf9C2kRmqca#elKxwBd;ACX6>6i;n7WSCJi3C3YH9E*Y=U-bHNP}(H3)^ zJ|$94`ubc6h?DboGA3!G*>+%8_H?n69K;NTABEf&ri2{ICiwdsp4%0dEDN`( zv8ZbzJT}74Q|L56*XM1#F0z&PxLb{d$tfp-Mn?O7S&SxS3^grQ%7HGBhVbj9F|Ko| z$1W0R&i}%f7;Qa+z_Ack=rNPSCVOf(^!S-rs4TKpKD|cQQfEMR8io9)DACLUdS9fO zS8?j5Bh4EI{;=INxVyoungCJ^LGa(T5T_t}{}Y98V~Ue)+KBn=@`d^EuP4M!L8IDZ zyEv7SWR`kvP6{(4n?2&ZSbFP8s@bh=wPsgF>mBdG^d5hX?mqdfAEM^+{rrR%k)t}t z_j~qsK-OG|OCBtzDn;DzOqZ~KmE+}ONd)t5uEb>%nWIUW@}iJL`7`$Gv6bA zhCtQT;`N{F2bOl5-&dIUp^AIy9t{uA{%!5cO2pG20h^}JCiy;26_fD z^r)Q1Z`Fx9Ldmfm7@T;p1z0!8z#ROE=vNLAW4jqp-Qy~M_dfU6TY#qm9t4$nT$Hn}BiS))Or z(utdrJh}LpZ9ZqfTqQ}ixcbMs+Cw^AvIPLU`3VS3_69P!Okz74R(;|+?Mx`r@zFH4 zEq7CR*4?pgvU*5fqQQOTuPt9LSDMigBm2)4gjhWB0)=$X)i!aH1_mH!aTP4$@X@)- zK{P>P`W+mmWt3{~-@K#mjq6Uq%vKHD%@OSLcL0^J&`F@m-g4w3al+q(by4c=U)<{& zDCDJJOJD$*X0ZVWEGta$rRj$N3dSg!uiy{&etG5R?$jx`-NllfpX@f>Zsyc+qtnCm zqp0rcup_rG_1du*VSw{gK?lf}Y0CVXkhErHr1+FRMeVYQ`CWCw^@qpRL`AZ6wlVgd zD)(-EGi-h0>!=rv_@t-BfVyppyt&9z+9^96Ymm>)*C~a`GPnF1w-%i< zkUZSR%+h*YyXV*T*7;UGm55~xu;7xxmWZ{dO>A_%)oB)QZR6gkK1AF{D@XQa-D8#w z>h7)Pn~Hl^>U-=({iB&##i0J~Av}M9D=B6|0aY29=#7ssI^68Ge1;B$egKlw5y{%b zF`zrrvu*sXj$>Qe!Ku*l?hjnMs~LYtY1%S$#3mYS0w9fNZ8c!4unRa%{N;o(Iko9m zL7p-b33NMje&Dwoss52gG_Nd}*G?yEYU~~r*8PjXsk=i}wwi7fZ!E*q^pji>CO3pm z8fb=8s`9MbraiASj|h68kQ>XD38^EKmpW=P`aL*J|J*~Pe^?wk*j#s>V6|cYrd#H= zqxxJFdSRNLB(Tr2A{b%t@`CjoF8?Urtey#O@hqLuZdSBncf=7g{jG8{kzl_-*m%8A zCxe(@s(-fX&<+sHxM6f+)D7q}@F7V7t1V(j?SQ$<*WtS7FL&8Jz%h)y{upGEDnoX6pc>#iXjGK#kd9{;K1ZYhMJb|FQB(A>F=xz(pp+l z2lUcP2Gy)^cpO9xB}aX|Y^#5VX^`euor%@a@ZoK~p1I6^_W&7pEzQQ#SMj3mu8|;Y zYVplSiEev<6t$^GBda%sZS~puaQvx|ILFyux3&E>nU=i%yS*88)5TnU$ks$S-bE%` z+xLP8M8-;zlD}cXcc}kwRbC<2!9`7fZD=0$GLX@S-#I&^IsRkUVe6`1_6D;xZ$3Ek=TRm?FfT=(%IUc0HZ3Y@@5Cd5$w1=mBl@FD=U}jGciH z9*J%|zYWoc+&whpDPP-ss0s{0qyX(sAO!*~dP#}y4J~Cz2jxTWUcs~D$sQKXfhOWk z*T<)8ODAm?r(fihW##il3>@{^R(dX$T}p6OyH|#DQ+e|B?-oNsT7hW2)%wNdwo#(Z z&ASr!4S$l;Zea?D#vE>ZSE}>bqMl@r^`?Wa3WWv^vWO=p26!!MaA+g1T@++}+E7q3x>W~0 zmj0&MaYE)Q6MRpxddv%A9Y+bex*);HxeTeLDUI8~g4~m_m%V#i@MB;jEA>xb0!-ou zPp5d8NCW*^<0K$>eK?}Sy1W;qHrTkPeZ*34Fy_-V*$@@0;n5-n6q<#}MqJ4g_{|>$ zqV^{m>)Zyq-xH4}adQ9@9bi!ZJEsz=s5FHl7wuFFJ)Wd=%Kw%p;kSepsBwiyd_&1a z&Rv6O~>FzaLK6P=H*sIU5d3ST_cKJBQ)~1>6t**v3cl!pB~nl zcJ(DRc!C8-J@Ef~q|RGl->xBn_9uZh!+&I*`y9ydcNn`iTOjQ;ujQ@#;ywS)^|-*R zUTViG9Y@ql?95Yq*Bo&Nt+HOKZI5ujREz`org-JXM85r4B8!PL9uJlvtEZo0m_Mk# zvV`Bnlm3iNaP#f;{Q2c6tqeMWT+G$SN zWb^n}bq1Y&2sFVAu9iQ>|H_vo``^Lcp_ghjGx$^YkKbQPhKS2RCF3*vNiIvrxrhxO zG^9_0N6m5Q9c`@;Dw~DhIn^8TYiT>IUjQer$eMLop>j+-ji4(!O2Ft6T3@aru??OF zsW8h=<9-{P6ork&UG&gK{pa_YnXu5tIh4&}}*r@@i&amLDH2~X)hckNJpH+9( z1rrl2esv_*LC!fn$qgbLP}jgHgj6x*y4KH33Ii1rr8RDF7S$7^UG{E|*&R)_(IB1f zQW8>}LA5RA6RAQyDw}WtE1WnnSxpSijkR}8M^`jfTD{{jF4Y+pP&;UN+0vZvEfTUY ziy6Z_RUmUEK#3F}yS`8T#3!J|&BH=G_$XKxW3p7a-tvI^&FpKCYg*L}q*viepbFwH zgUpRt_=tt1JPyF&~n{)*VTT^flLe#XEmt8BqoO9+xpP3BPWpB?kiX0U3 zB!ffs8<#Q^G67ZART(pN+BNald2=e(3W?>cZbnUOw~T6tBcDCY_-lGovcp#LS%gYh zoVYO?1IAYhS!B$J)_+*vHNQ{AJ&Hkf55X9*!^zb>1Y;FM5oH{GS{kb)9V4f3X*bNi z+vAclm+JfE&){P93(Cal+B+97Lw5#EKHtVnriOu|TlC=ONlna1UfMI%@e!H)J39Bp zi-xNU6XN<0JgWUtfWDrZ(f2LZ8l=NAE5fE@EOM5v@w^*eY|N8-|4_Imh~9S;nig36 z5FUCVedv=-SR?aXNs=JttRd((CM_xa?41^qtc|K@WSz!VPN&;oQJUAdoPY6YvJs1p za+~C7R|9Mn$LUytmqBZN(t9R-*}<)GAT&5mV8Y5x1aV*#Gf>*TurOXP8^U99;w6kf zOhFsC^)S#?XwbKBd`J!vrk_Sr9aE^IQF=}8VbbBp5^YX z_M_KhH_9qs>-5Dzmb*&cpfqW5$F$BQu#-PA?bpd1E5#nosX_wg+%WM)4i{@W`{4$56Y+oM>XsiVA z6YcVz*bb>0q3&M@F#^qemtJI+V9}BGYHs6aT=|O4c)GGf`?HLU6FVS!fIuSZlO#6w zrOOvu#_xp5jRRkoF(%ys00)?5)IuL#NDaS&0n1eV!W)XEdu)WKEVHhhbLfa|H!ofOJg|fGF*U&(O%O>P(1X|#7 zr17UuaA2}M$_4g`t-uDmnP6HA*}Tw9Z4t9QzqR^?O|_VvXn2npDi4Lz>;h}Oz~Y)PJZWd^CLJz$v#(g zJxzZb;&`-VH1%4^@Xzkew&~(4DD!FKk$b)_xZiieX%=cdgj4bk@}=9sgS;DF8VCG7 z*Z{2a@uy5FAJ-(1W7f;v1rzPG$rEuPnjltcJ(>vY!h(Xw0y9L8Ac4V&;90aJiN>$Y z`a!B267=T@t6p+>orbcB2L}Dk|7~%J_Bkc(AUg-QLkvT8n!chMWEJEZRZ`gB*LHmN zk~Z&}7I2EjJ=bf5F*83gaS=~=){nIc4+@nETM&allbDf>jqve+y6;b~sDSe4Z}%Rh znTnwJ$%C0LfvE|7=xSFluS1^eRmtF*mO`KiMu^vJbL;jEH(K`ZcVkVpVNczXqcJk3WaV^)1N0JCIoeW zkdYKPMvpRS|2{;g)~@P=Y*Fh90}q^jy1*%AriI$syah_SSq-Z(Orq$atowDnXGxE zSNE4rt{ws-?VI8`11LV-5ZgO@X*2;6)0plX*x4$Afah4$iADHd>NT*Bh$xB>FP7T1I|3!khwAVV(4oU-+C`i-$!y!8c#(Lzwm6K5h0Q_mnd{$X-LTaV-5%)U$p;1D zb_~aIQkno-#?Sj8HqKzXB}o~=ZR1G0&y$mh0dK?m98T1^2j8R>&=eSSizrBxW+ znKV`~)|Q;l5XA)xW7=p|M9L?Fg4D4y4kyT&82L=jMM2jhi4NR5EdCh6x-{-zg*f@!%4y ze_^2P<1+^tyEtNBlwM9I6UL$n;vM*hi(JF)(HN>zLP?Sy+fE+8t+hDrwMzffai3 zB#983zK||P zVE@BO9^cB{e#VZr)#qh`;xB0Zl)$+`hZx8Du;xSg8;%*f7~&GKb7r-`lP^lbht>YS z9X`^W`2&2LF?d~PVpYYu*leo9aihBXtKG1rA5vyRfs$4U*FpyHicOoqTIEK81< zM^urF6X;9jzbE{UwEcT^gKfTBopn5Zy%Be1GtX;uZQ09icwAKhG#qI@%nN&t3!EP2 zGj8wUaJNqLD>~$k`c!pwMdaaNK~u~SjC`9O@c!MQu)E_G&jtgo zc4|WXm10JAr(>NPW(~w8CKP% zB(`}S(kom38e9E1-(dGqPb6J_x^~Q}0Ln%K(fus=%swla(yr`jr-i4qXsq@q`08xY z!7qJ_+#S1T_~aW?;+A3C;cZd`tC+CuN6(K@v$1ZP1?-@ z1t52be?O>k;liClF)8ep`_5RbAbX()$YZpK7f~TCKQSN#j41bC&D0Nz26PjcsOf8W$bEPrN zv1(y5uv&o&qbP=%DW6CsGd^LdA5KpTmtu_a`Xg(^;o%lV)a+8G98z^7_*Cg?teKy{ zN4zk}2H<-K?%l>Wi^}Z?0Yr$;p9tGo_3{JXw1ou6tfjDY0MGV}ikuj?QS@3u2T}Wr zAIH2glP@L=BH%))XfZz`(Y9*oQwt#gHqK?Yq_!Q(xV29R+7HcRpEmcgv~~nWxiG|~1C~qE^_XW{PfB2PZlm;;S>55+%!dI(kpQ;F z@)^+68A&Fi+X^hp)4Md|_j$+0e`|dTRw;9327LePN0Q0Q(u5IJfvaO~_PHm=xHoOU z5BmxbBc+Q?dscEMIyv*yS{7Mk$LecxO@Pk0fvxoM~a^@b~21(!6o$+hE1@u!_5GuanKv0bd`vkXt6r zKTVn8oaz@4qGBtCbqQktPq2i$z>`BJH>690cHJE>kn)@9Qu#~PtJH@(?!V*6~t`1v-W37dcxx=@X?GafZ5h7Yk_O*YMQ!41uh-itP;{qd59flD$?g^NwZ zfK2PErlRYVFFZEe!lCUhF#vqLPehp?N4D*cPk#^GGg?IQ%G5L$o;@63rrDDgS50gbul&>jpO zQ{T=QQaEdrTBd#7Tv>z>>5qmVBh{n;5Y;OFnCAf}B=9xQ6uWg?3M8jFM*$O%=r^zSZcXIQppKeHcWy(FgoLJjREE zok)a%D(LXCmFihcz?>c|5fSLJ^y#x5mK>cMu77(|9zJi}TtX>~wTmiSB=9G{^jq(T zv)Pj`E-QvYW;Za3P_tr{&rTqKE@!ybji*-_j+jmfX)Ig8MX#>7?_BgK9qU zR{v#(tU+?H`_EZk=V?nZp^AE3rdAPLgyWL6sXWwU*%+3K>HjwvjV)c=jf z>|-bRXR@dxrRdI|SJLPtlKcKlawl#H25T(ZuPcvP81KVIKhlXzfSc+S#U89nPnS>L#2G2Zk#MlHGPVijPfETx$dpiU3xpl9cxVlGe6JZoTX ztQ`oBH&Q9*i6D_~b8^&tRP+ff5#)**BYZvrf!UErp2W(%9veG{)GA*jkRnRsJ<=Sb&XDj20=1RxE znT*5_>I(6Y1RV9W=z+Q;k7P?MEpmP&r1#Q`J{i7>Oaf8{mFjuT2jb$8MPv6qG(dU2;%p()_D+?`!sw#`l#(n^{pN}3`fq~X zr07%>t@Lsvf5b-MSqd2`Mxy9mV1%*4#GhEsLhpz$3vL@D^r}}-n;*?M+5(;Rz$G7= zOAC@%vV|up7BYB`?da1?oIne8dC0aTGx;D^T+WiLNmcXV?*8NppD*U-$7rnLBMAqL znmKqOJK7t&h?7NsPju}4#@{vdu-J2PJXt?A&gM0qE6;%nnXE=Fu;vw=ke`#SMF&=y z3fpvjuqYiId|N4;9B3|C>{|HUR{0nJ{W=KaNd@J+Han|6ifBm<9#bNahI^poP3AH* z0R(*l5+3W?U^{_0i%7?zfIC9z!4c#+2H0>U&BUxKBu0Uw|K4FS|0hp)kGa{H z6dhvREIx(VYX!)*&T@h5+!Aw_QVYswX_pfwIA`CPFr-iTc}=zKjMQfL&xWSJ71_bU zHTJgd$Fm3YQzy~%h~9_0L+eq62aA4sr`U*^4HD9g&K;EQ){UWZsSgj<$tUr7*)>D{ z<2vf15I3T3_v@e&jRsbNegh?kv|Wy9M19=h*|PW^fr`!_DBG<5Fp^&O&&jzB&5)qB zbt;AG`pSx0)Is={ee988`2*>NXXrEEh3CX!#vI7>!&bUZ91coky@>?R?;W%NFJ~L2 zrOQsjxJ?B1;O|t)@PrDoJN_?mX?8++JReNZ1AcL(h?!clUWsz8fl7U$A{v>hS~D8Gz3(0Sd(7s5WBO3L zbTk<&rTj2TnC|z<%n#grN#-(Y2_U^zAST2dK;uO zIuA^9Ns%JV(g88FrRPFD6G1re%AB2`v4J7INn%a+>KL5XTwf9j!Km z02{tXqIn=e&H%Y#3I68*pnla~vq3ByfF+9fEo#6wN^cvXD}cJ=;x&IasycM_E6>)C zwP9(M#s-5rx)7%5eu7DRdbUB&Z0@w(p9Q(VJEr-si%}4vap#-IIwe7VoThx9`-(f} zPmW?z5$zd79pjjw`3p~fB?IEX;JEjAt0u`=WDRg%74lg8p$d>+P)~Ymh__Jy9p-{@ zly3|7x-hFl=aTCuQ6YK1C*lM!ci+<0DHVO-wXS&!VU-jRn_mo1gar(lc&0Y~PBDz` zh8Uf#yS`b`R{3`4lC?Ga0hoD8>Ry=V0cRDvA|P=B7$S_K6tzM6;J0P3jY#QwYEPcf z?o~HuxILdOZ-SsJMlrj*Yr$CYx0xK2j?!h{{z@%48Ja97D0i+k?7Yxwv*8SE3<6T^HAjx#u*aH zzVGw7R8WV0x06R$6e}9607XrsRZJa2KN5|yqHoSC$sMf6wQ9`cTNOOAu|-~IQxgY? zR7rRO6F&${K!OAf!#TM6st$=c2t|(bv*$WGK|2TG1D@<-NbdrN1T6i8r;Mo{MtQ<< z&3Z8a-Rs+|URR5>Xlj;4es-34G=28GB_9nBl%!kPfAd7?oC7R>1I^R49~Hin3wV0P z{I@}DIJfj@NqVNlicgJJ$Vo(G7ZjD-_*AKkInBPnhLJBM7D7 z+bA`33Qk#{72rZ4H3-_X<;%)}Fgdl3!CZ9_IrUCmCPvo#5AM9@omU(kokVS?^<;RxR^o&m3^ zUYCjmHHaM0F84MD?Bt9NG`s3l;7Wo$7izD7D<6GE;-tW5g0Dp6+0QeU+0MNXrhwY{ z=5~?L0ME(X;Vy*~f?KTqAUxitjO<7vF~LI$;tElRUyKI4f#psceZ4LG^AyfD24FzZ zXC(Vzr-|PGRdqr!K#{Nn;;>NZqrWOz``l1fTzr5f{?#hNJYqU2zFFxY&r;E@{w*BO1mAG1-Q#Uelhol!|jOS@Y9Rw_`_q0shI9Thdd zXHK+uxif_eesKrH&~*QHzRBGS;D)G-j=X*X`~l2K1AVYI#+$%)M&P!x`-=bjQUh>K z%=Z4-umc^w*nfTgDdQE%QF~CQ{gL1P9eQ=c7u}1kWf-af@Yb>B)Wocm0`-TjXiBp~ zoql!D@vLQySF%+LgeQ(E??xYZhaP6nC51oaN-7ol67_t1t;fvJYpSrXaKTPryez)=g%^t_dwh zx;YoduR9-#Y=cINT^*>T{jd!V@H1UJ#ul=Z|Mh=RpLl1J5eTh2fY z;(zZ{t_~LER9unfanT=3=W&3If#Isks-(zfZWE^aP+~|PO+k){uil+FjvF56X((=6 zf$16TYufuxJ6)t3Rsx!eHt$eu*_xQ6?x4oum%qlJlsbkq$H`-A<>pWnK_LxmJN@2f z)VFd0%3?l2ME%&0Spd$}OL<-e%>u|Qud|HQP+niB^%avpE0a#TT(73Oi!YznuCX~;3=c_T5)iFrw4!*;qe6{J&%~qkfutA*d6(DL)28Xb%6ZsF z5#h@FE3(IMBLA~l>4 z33t@;U`d71qKvqE$;RM}HtNx!asC(95JT-p?z40D?jZW!b5A{3ieoym-4NiUkDu%C zM8?v!1pW`2wLgu~YRRq)_vEm?hf)w*I6e5^r%I8kIchYCGTw9HF`@yKN_7f;GTu3- z(P+RqYg%6M#KNbXWVA0am(141%|Zi;-XCi~iAhbT+=zWq8}y$ge<66Q?&a148!c74TwxEkf1@16m&Pv%}eb2+XyB^gT zXxEn3nk>U;65tVZxBaB5&R7-kSW&PcRD1-Mstb(^LX=ga2|!*^rf%b+|Ce>2 zg#P%j$8ZV59uqh3{mHR^ zM~jWjFIsMj+~r7s;TL`j@}05RQFz=cxgHe<&zg(XD{K$)z1J^qFh zSJCx|s8C`JztA(PR2c!L4&NaI3_pcO9Hu z{{{-Wv_Mq*Qbqb!!SfhD7$iLZx>)IfO*Gzlu$FL!l{mPYot#)(4$JbaJJLOZ-P?mu zaYm(?(|w`2k?=5eCw+2|=WYY8YsT9_a~5`76s5CB;l)(K?yIhBaf_Z$Sx*(NKCFax zprLORD>(VHNGOhbr`1>uuY2i3?%)O0?=!N(G^8J}jp$+gv5?lVwAv4c-tpDaGpyUT z(}2l&YzyL;u|fI{@G;O@HAPq!w6u{&IB~RxTkrq9IVWWC>i|_2m|PlYpwChII8MA& zd2Z@4Dvo5n*cDE^KQ8DJM46I3N_p z?SlFmPB4r@*Dx)>luBC7`AM^J>^Q)XmB_HeYwCe#=<;3PD={Z0=V3ByGOdn$2k2@G z*=q|j0}es`D&=u>y@w44YOQa+wA-O8~N0+Lr z;_6q%=-RPgxgQI)n1aw<$1adpsF(L5#pltj9)=$1(gq|< zb9U~Xr)LsMJSmrvHr1jhG%xCx9c$^xyU0N);vgDP)%U(X+6zrcW4wt0CT)jW zyU@}jc~xEkzjC6x@26#Nbja3_0@C6{mG8{y4Zj~9NfxZWz<+Xd`#{W>j$F#yu6hKf ztU+QpULXo9GoHu#BBc*i9flf;UmO97va8Xa_)cLI=*cRM`I+_G6ta8PkGXnide3qh|;E#ZizI27#X}RJ93TT?Zyz6o>7wg{nm}{kGXpCA? zGOD$6)xV8*Oi2RCTDYu1=%xSk!&P**E;_*P@B zKa1E8$r!!tdsuOqSe@>M`{^AVbx5gJ6#ykEJY4fJgI}(XX4T;zi;nd`W}HuKRD-Bd z?3rhhmg!OUEu5RH*8Rtt1@OgP3M*>ld}#hZ8>+R$`M_^5Xe5E=h!pSJ@RIFnp}}n0JboXvRsv0@NJMK#a2~@f#nFX7YDyd zho%))28qpp?>MnZ^#oHmq8#6@F(#=8?z;K1h&eZDgHUJj9J|=2b9pTn7z#XyqvUrU zkniz$!Zw0;V%$ujB{xcWa)Hq(P>ICp~t!EuzL z2EteqaY8vN;U59rk<_?|C&%E;n=cfeWeuq_Ch9I)U{#Vc*Nn!Xn2WBMMmP$C2PHQ;bPvWSlJp*1i?x7 zI{%GQ-CH1s{&oH4vm^&6IcH#QX!p2uKXtDeb(H1?`#BJ@mA4AB)30q?0bKt5lQY2M zH43Q+fO9C^%p5oYkxjmjgTH3iPXw9XomMQR0|0LK2eHf{{H8C|+qRG4ETw$Ey5k?C zDHuPP?9-}FDW9wW0;oT9A1|F5FJw(vlXvyiC!ODl86V0YYjH8ZkNGbX4yXI4N51Mi zqmC0ULLki2G2Rxd$K--Eiz-lS%f)>9wJtye&l&kMGb?3&R ziE7US)Zx{8T`pRLh%0}Ny!gZ)ef7S>HBT@%TX2?}K@OlwV348*ODpyAuA6gYY)YV! z;ZdFr_uP9fY&Ul<{z(Fv0aA1Wr?jFS%xyg_c6E{JQLuRF4|P=WYGr=8Ws-2=BVp$q z%NB@NC5LAO*Wt_`Ch!sH=eTY?Ou7v;ov#84t2K@kD%v#l0`1ihDlFzH=Bo5=#elvr zx-((ChAlQK$v;rXFB_f3i@p@Wrp$$;z2E6fq9@BP+E2b}hOCID>%QD|A1OIu$ii;A zc|qf#zmN6yBEa2z(oBT|;;miKl2q>pTH7{g3B{JAPh>VTAfhkuQ~hFaJLv5}3LQYd z<10p4afbzAxan>WElL+E1!0HLU?fy0yTmU^$+hATsMe@Z%j&z~YAcc^b(8FCX_)y; zsKy<(m878HFI zgP6WoLF5sN9413~Yt9d$ld0_TEV$^bcR}wH4`2w#cZ%}SIXE~vlF-V*>yDj4fP9vs zC>Q+X6#FmN4jFMI25%X55kIYc9vsAsB2HsVkgp?oPHXS~`-#kv^Z&acyJpc0IUjtT zr%Q(~sa!T;#}spV`(y{)2{*ch7z0p*h-#H6Hsn&zS_wx2>cy=^cz5BWfX5Z0|8<|+ z3{i~u5Py%)y6o`Gl+t9vr$;@j8si|g=xfb;Fm0Nz>8_%odP_u1sj z)bh2Vkf@m|j)^294QA3STE#G4cmehlPL)NS#|b2v!3=(B*cA1rWcpHT;CX~3BQVP!CG z@CZ_v*?{VEaTxCW2acVy!d#3Eiiq9iJZ)8B@8VD=`ePG|+(hvUQv6zczW*6r@nC!& z)(A;B{tInQRR7nR(9;4OYj7zBg7E1($6tp~jzPKug$od^EUxFb*g5>A)VB$#`rAeT z1wi`0#56R{+7h`M3c21tP!fs|vGK@^vYN4Hj8cJSt$( zs8T=;BRLy+LUt5dPlQ{6DOQg%mI-dXadRi>@@(AJz%raeKx?Z7jNxezPSUP@3_s50 zL-;{a<*P$y_bQG3t7kM1By=04{)@{p26zzSdMyZh{BHYJd4Kmy>q+5V%Diluf3Oo# z0Xi^xRCKa(@gSs5ei}ELD1p^1k8+l40ia8)!3<*$%j_{G#-TTZ-;b# zEoM2V#hu3fF>~0kEQ)wT43&e2%%W(TI45;Iv61&l@6(rQaAwwpoN&-#sS6Dmtt3vQ z7>=%rifuGvcoPG@fzN;bhZX`22!RorilM797t{=#ZjI%h#u`N_3m;HRqBs{Yv^%~$ zBX6oHB!eflM)VKC?Js#v81bne(@WMV@kQsZz=p^GKKbf?Snk0u92P^{h)rw@9y{bO zb2w^U{?2mD%(wTs(iAlh4t9u2$M9@BV|JidQ)piPb=Qml!+x+oB0~DyKT304fU#~r zPBXb~{?J$nj?2wI>AuCoJ?NlIA@PPr`i=(IOiC z>V0I_J)V`m*8w(UW{R86F8EQbMvH8}zf$(rd}%rd|pSBKHKP9iOdi11vii)n!HK$3oqX+q)Od2{a)mKs`fxfZ>Z!}Z$3mJ z|IS79LR9=aULV6{t=r43%&uHD<+QS%t21|NM0F!Twab@qXT)Dw!`!BJ;1#vU18iP+ zRRMXcdSdX5up4B8eH3BN>q{G|;ATalt`kcFC^jI@9HVMWLu|A3Zm)3THkuglN*g+4 zmMO}JzEDr}VD*pXj}h)BF5z~%ZX3M zLpKTp!i=Je!+H;i-egF{z$B2hSL5uI{)3m z78JFG=Y0A3DbmMB3ZPYO?2Gptm!X+fJ-kUxDf5G0eUyHCivcOYIpXzvgQe8~A~K;>oZeWw&BS~dotp^mesi@1ZJxPWEsoA4N= zW6_jC2bADDBiHtypK7)W=aXIl8w>S-#dmcPIFmH(-vunM2Ia}p7OR92>-{VF0&A5N zMR_{p=VM5!JHoJ^Qbzrw`}Z)*pIXrr4XN;eQKv?P5F^D z5E$SK2KW84(2VA)oSk^?p>gwdDTL05=fO1rvTK9o)| zwT_#6-a3%N&PhD1Vzf-G3!YG_ zOC1ACIXb<;k*+Sbudpzow5(r7ABJ42ZY?h8WK`^ux~+urLt6)*!IpWI?{70y)3G?^ zfTDUKhe5z-D{&$nL~K^c!+Pl5He81l8maVBg&tt~#Hzz2`Zy^VR|-;v>oonl)D?<# z{`-ZW+HI#B0G-NsTU!&N$)OD?OG(@5szxyRaSW5)tj%XLGPy3$%C6fGQjS8k0t+Rr z?P)8)EfzEMvqN7c_c^>+Pdc8Jmo`C8>j{CBGdKeLNPB{eu@TX4_}F4A8I!Suy!cfCWpEmp?wWr)cW?b6L!FP zItcVHEu;QVt{0~5_KeroeN?5HErj|vAD4#HZIUu1Ua1v;UdmOf!hV|nzJqRvpwkyu zIgRdZsT(sEnWkBlYcM8%EKIUpTRfWZ)SFlldZ^GL09S7V(AdY|StK+2IL>29RAn$*A<(w3 z6CLhAEbjr5zna4fg%m=aX6h$#qn&mwHPkN-pqN7THd2z&*(D5fD;_dm5(SKO2E~w> zGIEJ1GgQ}jV;%8)wF#_$%8dtcO}}yCIA3t!Hul#?i8Ga)bC(31k{qVxNi+w#AGn-5L)7_sT?D@0KPj}B?dsZ)oN_$wy~j2%ze z7`PIV7=?C=6aXV34*|a{>*b$1z`gQ1?sIBFbz(8eFH<>lOZZZ>xy`=rWU65g6-IOe zh~z04`jX8T%d6iDNL2q0Z99E#q-*BlpOhLzoW%Df@9rHUeZqc~aw|d8W$%&EYGbVsDCt) z4s5Y|wcxh%%%RQ2_}XQGEseAVo+$v*Wx6f7MvA_9&LhN^xRchQlc&3pK(`}TnSJwA z@R*7lV%)!zl9u$6v(CQU@3R=nne|O#?T{opM{&=&cx>z2lyl=y7#c90L9O{Zzrswy zJWy!1!H+tW|LIg9xc|p9it&4egPk$cASVV$HRt=@S^{ zb7!0nR?eFU`SpLj=Zi;nBXG~0IO|P>Am~M}KjScPI@VW;9x~H`e85fc#P0qnFwiU8 z#*?KeST)uSYdhz6a1}HNuN*pc=SR}em&cr;dL3_40I*e)ZwO7mYQ=T-Yk0a97&Ms0 z%VIii;{}wv*xmy@lYx+x6056~0aHfY3eLD!D*lE+Za+LF_xceKTaEz8Zu4h45PvLk z&uV1!=NL+pWQZ9^>uWxLEae$t-&MhL@*U-T1!NZ6K1*D`D6B@TG5aOP=8~zRK@_{g zDK8vGjd{QA7rc^ZELon}0F_;jC{_7L1H3clXe{EULB;`fT6EXS-6VrNJBVd|tm6lA z_{Fn@fT(NP7!geutQYW4l1m?UJlJ_WIxyjbv6o(V9Tjl(sS`Qwi`Ab$JUJ+-|ECl)*Zjb5YTrN9g{Ft35_JVieN>)d!BqSqJ+IujA2J zb)dC#L;pfnxvaUn)`qcjx&M2rq9|E}#vO{ZI5$$WL(|La5$y_FsBDyA#fuu3jtVho zrR^AdAWVZ5h}2cn+Z<-eg_hysN|N4Jhh=>h$ENAp$6Mm=UoIuHgotOd>UUc}sYZUD zb>&)XAovElJ~F0VnGrB8x5-9F7$qq1B2Wg$8qhoEbc0P&7bW+L0h8X7m-Oq0+iV_y zrZg9#PB8EY8-Nnmk_s7kWrKf9Wog+tA?8k|*B=D)J!gp~<{kzUT zh?1HWU&9C|Z)3|d$XmmDq`+5D>FZ;}mulhm*+dTWIGbor&aax2$TZ9JW+A`~;2<*^ zyZ`G_(|#~v`nIW+sF2pmpGA)#n zqL4s~?y#xQ`wi(%86oc_HTLkm+x`)&b+3JM2QunzCFnkZJk=h4!0ziuaC;Mv02Vkj zC$Aq>rwCxi7EB~!k%2D$E0clMTg!XwRfX<#3XCD4(HKbL)F7~fMqQA2JNO9tcSb~P zgS$)3G7?Q!E>#2GL7X*jTVK1LZPvg=J`fIX?X0Nhgl-`bieyuCIE+78*VUe8Ai&L( zR;AnvaepEfw5oshPw`W2T3a!HS@*&r;kfyT*qD*o(XN&W9kfCmiG1NhhT#CJJn50sal*sV}Wrv6#`nBf>RMYbfad41!0PUSI zROMi)X^I(R??^Ruf_!<_D#ZM5fxX=y8bdfQDAb}(h`$Lr?MA_;5uCwx81q?OYmyLF zo^`1s0e&g?km40CHs;ad)7(9V!S~!2*0Fuw(#Nc_tEf%u>DUC|bH(8>FJ2nC zs?mA#V>QW8iN+|spxTPsHJ60ZYal$rN)h&v$btDwjs+P}*T&A8$2sV^ZPL`2ec#A@ zk}KPLry)skcT}9XX$s}cU@muz4Acv3>`mbisq=x(B8Pt*rjV-IoTPhA^3m~jhSBI* zPv!q_|L2nZehcsHC(jPx1yV(XK{0)!N47T^v+wLtVmsZNDM#C8l~xG>gUt#Sc$sc z3=RGx8+%!`48cjP7(mq@jhksBQ=ov}-&_@k#6Q=7Csg*KNiVa20W1iI>+_06tah!a z1hj$^OfXE9XA=WoR@^%e?up4DWNRwULT*kMpeP#gB^Na$kWY4DQU+qGJ&rOzSScPs zdxs0~Ai%v{zN~#hU*_#6u@@)qm7Q@e%lNNe>f&O6BBW#X8-^h5WHN-)<;p<*#0P&N zrWE!?ucZ3qfs=qyB$Uk^QZ7jB%r9mKl2M#XFyY+1KPMDC2cAj0`3rRe4oLr$6%Oh; z?<4(QVH~iKF!)aI)+pV%?BcdCl+%GA!iZ9tGqJy>nSUNL!{5oE130WAqvrCq);fiDBn%O4njWw7 zTJ|0he<3|EB#>#Otu(93d0{`|tc3T50=izB?&M!Ms-TReOQ9=?ZtuImH$BlpkjZ>( z?~Q`V02aHvGl%M>vYoAF@$$m_#N;DmB7?J>$BU753}1)i(yzx&k_r0@`J9c5 zcL7915mgU6mB!@20W3W8{7mkAG@X2sY_g36GHPUf0>q%CuX^kJadexQSF1kJvy4=c z2q>1qGV(Oh-D1%w5@+PjYhj<8m-1F+@9(rMTF`n2!=)It>=XM#!yF!s8Z@-&Gj(fR@AMB%(rV z;rL@Mgxs92#out>T4hF_D6__^(DWy-mT(Z5#dRrFdIBx`I{2Qz_9R zep>u&{9-CwKzEJBs-5^pP{^nBZD&WegsD7@d%K0j6%d z(0d>hMMiGRnGiDjR zT#a?_&Kjab?yIDhWQ6qGq}IlFWCh)m06#ej4Gj)iMBEY_F5F2;nI_c;0H$WVz%*B= z8ClVlk;8B_DGDFI5gm+(VY-lUy(EyoabhY{+N0a*`4#1@Y0`d z3ZX$(l9#01-e3~b0{&n`WZ@nxCWz5~2g;81GAz@U1CZ*F;h- z;+_)$Vsi$6^%iAs)xyzpTtv(?FpFW5{;+YoS+_7jY&+&9Y5m}i{pP}AT4b|Fgji0Z zO2@#~L!!6$8Lje!GZSK*1WeQQF;xUvQcl6dUvO3;xM~bf^;g0-2qI(s5|o>TxX*7{ zLFmV8#hdB_YTo$ta2CMj1!!9A(0ujaJ4Ra+YjJ;9Id9X~1b5Jp4$zks1VHFW1vrl9 zksUt1UCafEs<+jJQ$UeNdtHQj-8Au++D>CfxsyhG&&(Cq6C*H7ZrCDP!_KPUQ6iDD zB4-j*vE%Gc$Zi2U6SAHsy#G?JJn~e4n~BKW)`7ej2F<+2p6gqi=sIJ|HDQ0x1YJ58 zYW?!O#e5}deY;yf*Ukk}uUrHF!j04mzQN`_yb7^8c| zg|F^~7#l2*{4zyV1#$6<+=rd=!50css>|CB=?=3_quRL1@o96K2dli|KP6wvAUPy+ zNgXA|AsbZU+;yIc-c^9omA5}fV<0rL$<}Kczsia7>O_^D=+*txeL$L6)xrc}^2_S{ z1Th3X2&h5pu5wf2$H=1acm=C@|8BzcwKfHe$C$1xuc1Ogq;gC;Lsr&dOdk6Shav<9Xhj#{&A1%~7C|9eit{3fqH0MPgu?yi25-+O3_9j*6N!1b9=)&6^Eo`PL( znGEKwplPV?@wk_OEW;1!Z_e~$R_L0DyAY&8;S3cxt9uPMr?oF=&vSW@n6F0#srJQ* z2HL1)n}0>2$ZgxqJ%|jN#W?u;@nI#?+(ED)UFCSf&Zl@Zbf})V(Kn9U(z>lsP9>c+ ze)ZHjbl~N@hl6q#WaAyTcEP3afc=X57Zws2=!$Z*xHTdg`!$=~TF)=uj}2>`KY`3W zlZ_rMan_;fmZ^c?XVHtbTIRLU!>(jA=b@vdaceNLNJ|IOL;Ii8-5}2d1h=qA8`Uxq z?fi+U(AR}Kshw>@qNbR6{#hbX!)QTB{@D>xr$1lvy&%)N&LF~p}csG>O2e1MDoJir$p9*qHr>1I({ zB&~W;>$|5wp~IqkT_^#^R`r`6Cpq>OictGW*S+UD?r45Q3M!UM^$VtMwJOkWpW37k z>m-!73LUE{EDs>05l~IyS{jkh#=~}FX2}LI!Va}xTh?N1S^X^*?$tBzVm-Nrnzpy5 zoj|hvNrT83f%i3>`z!Ww-kDT*{@alX-whC%TxvV$8=wJl;4`!#X9pzA+OSlwBM|VI z8^40p=Zf5WqyJsZAF7+=L$GjlXQbjeizWJv zlw8@^$x3A`D1y#MnbA-=EvJqr`8~9&FAJpbqnDZZp{;NgU$yP+06Lv+f;*_gQFYi%Hnzn^iM1- z`TMycL65frMCcc>y-Cdzxdu5r!oI&dhss!V@)bI>df1qd-q{H{DqZpHZh>3ta`(02 zuNe;LlPjtJG}9J`1g8JUY=^4*nGdDecCamf)h7OO{e!+KQ@_Z>H|gnCP+_WS^X6#T zh97FkNZNoN*-n~TidnY<^T&<*^W=;d=ZH8kLO39c z%jSg_p|MG>bflYng?6X7KQG%Ll1N$RNFiaolIN&x@Zwu*Hmx9kGj14`NI1YhZ$L2| zdTjICmpjxTsYcV-#{FwG@Cyu6IHT2NP=&8YhNS%AICBHQI?Cc3Lui3Q2L8FfNXib< zXq{gulR2c~C4THd%7*^HM+3m({pV|d_zj=On@AE@tP2dS7p1al1p=9Hj3tb*FyqR$ z(URd$ai$VYza0>+??)mAZ1px|hrHE&gLQAo85-dYV}-wIhHFR0qocFj%$}zAgXLPF z%GF#Cb5+{!E)VH?^F)OPo{=CaceU-ZL-yscMcLk(DX+a8YnvThuEQ2X)o72YBJkIr zMeFG%i}9}gxB-{|_N+pD^0`wIL#AjB;Wh;h(B%%9G_KIJ5iWzHyNvyL_C z@z45q+*yABa7^XsZy`OsGH05qxz7U&0036QEp9*OWmxf<-Y`{b>~JH0<|T}Q&DDy= z)m4Bz`9CHEPD=|~l%<$~r_6jI(3o=ORFk~S1tiHVihTBoeB2BwiaEndW82K=F{0Cs zMy^*%xm`W49g5mS5?lJC|JuL@}9JVO}++Y2=_PP>Ics=f_1EO@7Oc0xk1vkgWlgo z{E}=b|Fm?<{S$DROg5b!=I|M;0T2zgWt~|s68it74umjqe(GbB1wlPqF6F=i5D#hu zZs3d)7WQFW=D6TllCsv3uVZcJ?Eg`>>7=|*Zo@fsO@JCciafTIC*r?JU*|_%e;T@;b zU&T2C+`ZOTgpsAPLbV-&dtJ=`;RnPNe+6MU*kZR2*tBDq-h%w9Uf9t0wh2TI7q9MP ziU)HpI`EVt!Y!nfaMa%aSzB|H)=2nAK)>d55Lu+_=5RCEfjX!gO9TQn`ooaVa)Z6%<`P{Yw~&tK_93m8T-1j0>Mbu4L&mz6zLg}D?c~A zO0avd^C3^&=-;mQiV2~g$2C=!Yojt%sE8Z;P@F2D%5I%$1{=5RHvK$k3%FH0=!B@+ zEp)s9<#QpHjjWhl)XInLCx(1Ic@hD1lbTB}daG4$pzs{dX^OKF*2dyeXj#nrsbE+> zK7+Fgv>V?Wo2`q+AijCXocF5U>v>?nQ8O|_93vqTYPc3>5FP!l>2cojmh*tDtD6gZ z{_ivxBDYFA3#LGOh2uT{Gi7oe%?1k|AUIW}LzXJXE;CrE-EVwohd=pw(aP3&?Keu` zd8Cl`(v`c)s`dQk;*c3bTlRm=izzQ0yW2D9sQ@8$RQx8iXL9#pl1xJ%m>E^HlU`l6 z+fg!tRVo>Rr1~#naN$y-JMB zjUuV&ON!){IQp29v4iT55MWU2P*GIlrF1v9L)M#%ib5ixPZ|#}|M&TD_%vgRu3(jH z)9+x?V%2azf?QgYPfV6ze@WsKTbtwfw3ivsMMBt&u0c=p+vM^;{W;4u1vqF^;8<&s zrT^Ddf}r>ZI|BjI_~r$N-kdb&3#K;zu-8Mz z;NyON0&c*-B(y=W8-TDhJ+o>k2eJxPS+kzQgRu>;=b68C1SL?$*>{;Xb8?MN&C%7#aY4PMwmdk+``Tg)jew8-hnfO!~lNB<$I%0d%K%{i z*M-&4HbEDZAL>d8+yKYe$a(-d@-bgSc2NJ9!o!VGDKKS3-&sMG2h0Ot+JuGWSPZ(O zc`yk8723D21V8ummG~@OSOgROe5x!PaY$8JA2##a>5$UPs)j7%boYd=R$hgtE10|*(^ z`-g^@?n=~KoMb{Qa;yshEQIuDvv4b5w%>-L{NUBrT3BEo#3=V+5&Wx=GqI#dO7(IY z`xTS$m^!m0SUyWXY5qeD3J_QwCBkiU_Lno)0I4WAr1%GGA*z;Kgl za!5?lq{IRG@+QiRo7DC3%S*MALHQ}sqB?QA`$GaZUovl!r*}v2Tqr`X-&!54g3+q5 zp7P2P+5d0%l7ZYNZ#ZmSY8BXEtpf5=wW+$t2#sg~eeZmp){K?l3e24v6%V%zw02@5 z-6Ug9{~HpBI!9P=FN|u@OTVRED-4Y<~ z0v~v@)C>Q#ihj}59%_?{Sp%KB6{|u+`SuV)1S7EOva;|pOqaH;Pd?J4I>!z1w#$=K z2Ew{Bc+q=?Qe0BNZ}OL7;N09#vU8xfz#}^naz13$ttp=JluBMMXW?XZkSUvJ;^@Oe zPg$L=5qc6FtUv-uJwap5z(KH@Jj$)Gn4Dl6qk<|TRa1C2LTmcGGRbADhy5X+)ApMvKq*3!GXn-mchYg@`0knIEC`5- zgiWh@&P`gKf}e@^h;`J>AW7g%CfLLFy0ffB>64a8o#Ie40$K^~8phg3ijk5d&YwT& zT$JbCyAst;&JkP;$BQ-VNcZhEpuuD6wp>f7M~|OA2aK1Coq*Dq1iwlhj!bF8VwMITe?aWhX8=p@6Nah(XqyG#|R~;wq?; z&|4~PUop?XZ5XCa?r`0iw?w)8GaQdx(gHtCmGkmN$--4bBLHB>{EM@VRU?dE1$`tQ zrls^HUS~uLJik#sqWEFcGTtd?{qL5}us5>Z578`aYltZ-^UlOsK_Cbt$he?KbI)C1 z`%WdgpRa%Y*^)WB4R$RUBqM$lgogAX>+^reUnH0s+Trx~K&O!U)tz7uPwMPgaUwAG z%w$#S5!DMPdLfg4-VX3(qLtJG=7$=xRo5o{M?rgTvmWn(`+4Ql%DDM5xl~C2=ZV#Z zI72b#Bnnh8o!uZa_RF4ioN1Q-^x$$SO~8zP#@zDDLjvM&h`#qCvx`NB+$wT-?_-(u z4$A2b)=nm!+FGSrm`9!lT^t_XI;?b?OT%Wa5%Fho?qr*)Tu^Qs&zuR(y)0xeAJ#p; zLJpA$%eeP~_e!BCiEkgGvob!1I{_gi2q{;H@vq6vzbWUEt%4^rV&#=#B7bF+G5KdG zdthZ>W@1#gxRn_=6U}C@IPGRro^G$?P&KaYV?}#gifg;p6e_(*ch*EUcK4aaN>|bQ zTU1s~6$Kw6{aDzim8_b2i%wqge0Xoc#SK$|x;%4=y}Sk~Fiz`3(t+$%LqMSewc%TQ zfZ(D6I264RegGZ_{h@4_A=r|Q9y*uSr_d#()`91(CoKEw*;pdqz8{4A!)D>=r!+*< zyqq1VTA+?P%-m{1gId?Ii)`e@WWWPN{GPqUPPFe)0epa$51ln{ zPV9K)7so;dy_UYa9A-m8AHB+cr^S$1W(}($-`4#h|N3)MH~{v-Z^;TWFS-Ji=*AgV zPzuQJOBIzxNZKgbexpun!d|OD(nGBvH{UN0h;z^C&M^9(Y%uBv0?S%k)W%La-eXRYbqKlz{(uy4 z2trS|Cimmhzgk!vSdq+sC!h3%3t99T>DQGHAycj=$eeSAj7^=kwSm_@>8;brI+@gW z*0>z?&(s9K(%TSPZ%;V9(!p;h{3YPVE$Tw;=2A#K=Y=0V^tL4ZR5}S! zok*A+>0kD{AUaF&!;Jg{Zj12vv$#p??>8_Q6}HjLtmgPszNSi3md`KO)2Hw)l%ZIk z$a(Jyxeq&Uk6&9nig2!@mD#DOa#DBuM6RrQP!kUE_=v{m^4T-kZLhg-`Jl-vklL56 z?o)^%x#Sj*Chj%WSsp1TT;t;F%M3(`blc>3mtO+K zF^QF6u$$e|Y|+;C{;pjGum4@?eUX>qA)Gc&!`(bRP*F86z`XKveM|UQVk;EfA?G?! zPYM@|I!Fg2XWQe0xT9>eJdm!i)!}pz?dB*$O4DmGkbjnZq-~RPpnT zo5h!IU3$|U>%?KtJ$F{4n+#eDh|mBwkt^9U;RR*9deT^9p=N8C^jlaD`r^3KdW`&C zv4vu(LhgFvA2tO0of@r*{O3`eX95S_jB(Gu{MU_8f>_eZvixoNV?wVVPBqwwS~1RM zq^o``!xVWcWhM>#xi^7zDk6WbcmAqq(?KqiuGNUyJV!1t&#UEWxKpntN(Tq?v~XAe z1E=I6W~i4QKSf6G*}1fRltnR6=UUAqH)U5Kkpa&5!3oH3NZjss!HONNy4u{cwgkGR zOp&#QlqCB|L5#uayQ5b^KdL5mkC}Mh>Jk6hwS4E8l|b*Wfm^`Gw;xY?e@SSB-ksqu zEX!yVdF9^#VVMuwY@c34V+r_8_L-YCY+R1PEB@T{Vs2lu`eKE%1-NZZ@_dDz-kHZe zoc1J+0zfaS-8(PGFuU2|9pN)RdGqWj`7ke`=7miT1GT%n)^pGaqs^CV~r$$Y-5$2Z-rXDd}oT(;LQDxE7MUOjR) z%1sAB<0M!3;@yUHAExksLUP_;_sa@gkEBN?f+Fks=TDh>WXL8DkKV&uh1cFFO`gIQ z1zBi<-|}V&$jul7YSp5--Oxx2PA;iW`6jrkyS_Hzvg7!<+UQTD(G@IFqlPAh2*mob zj5IM%(Qnhm$f1*`kJlnfMopLo2RF#a*M?@2t~UdYGF21S<7^y3`i@$SQXTdYU?j&u z3plbKNY(DV5C}pG9-KK3&dfG6TUb3#{p0h?*pZW>@UCU1Sq5qn3N$snGuUakEV)EB4}z*+ zW8(dlzz6uH78=(43NwUj5N>5wS^v5?uEW z6YYm6Q&!_#1Z%FRd_U3f3nA+hlR=z|RBqa1*!~YbJ+jE?&liydN4k`T1id!JD+wS% z3Q^#%;)RZ>Z}Ya-c%Mw&4Sa?ja(b%iS0|?QH_o<0uAp$S!|Hx0!0j4kW~VFI@lNjH zYzia;Wf>R1=Cre=Em4^8Fk|+pJKWAGQ?38!s{%ydfckN4`<6T{zS>_Mkc>GCug;H? z_f69c-K#9VKt!%>s*=1&pvp-=-a~a&Yu*|woe5ohBraEn?Y#xg+k)qvtOFxI;TA`z zz`Oq+&+JhoO6-klT})<3lCSnkx-@$ohHxO>TN2Smp2Yum#&DI!9oW+%wvnfBneR*G zA_aTGqU!K8%&c!%XMjb3lnrhh^4aKJxNo#Z`>ZwJqdv1Lg+@uI>k2an7QPkXW~fjX zh}?@aeP>Ml21%=%4!eL5_Du9g>zSY{DPjMiw%N!;&leP^a(`J3g5=kLaYT<+HOYl` z2arP_iuEx*EHKTinoy3}Mg7NGk>t<2=Qv3njD2wxBoVeY+cZnP`Y%Wzv}mlR*VCQz z^adX;Z*G}pmuw4Iee_Etxhgcs1f{YL!=CAZP=7&x@dtKgxtwHqQRDp_QT?~JX0Esy zZe$;u{Z#UrK_^;h!=85U$}5%r*^seVGF#ek=;F;Rp+S7m7(cB+TK?&q#L`|aWgg&w zV{KRC3s5StXFk7%%aMJA-hE{aClqwM4zn$#SzlQ(bqaP0!RXGyhgOmJ(6%Xu42Qc#W`qx=m!*gnfX7rkpDHOwSbO~xt5vLaG- z-5$PjSai+@Ld4Dd%H_u-ew>rLDGHg+n60;OBPDA;ASeBXQop<1XAIuvt`+TcT1F+S zb|p|XVOpsBNpnJ?Ro!W1#jnW$=vHjK;G7G_Ow4bIM|JJZOcyG7hdAjirul|SNwO@? zQxgFwe5H~#0{px?i>Yc&0uuL~B}t(#7+Hx&AC0i;l((X>hh9^LoEkhGIw$=9n{eFU z`k7@ZUZ@#fC`?5H@Em@pJg9FM}B$orGW#gTaNCFg&omrEDsgfUwmd+RlZpl0E z*I=2e{;SC;*zW|dmh2M6ZC*E4hiXKS8POS-edf^hvYPBPpJp2;V&j<(Fn5ulqqfRO zMMGuc8-;%Bq;SHy`>-p4#P+FyEiW?z&H!b872C8k%VhVgr zXX<{%H=(N58*ovr2Ds4|tz;%mvrfLTqjlL72B$Z{eEq0(H;I}GEfobIdDf&tqRn9j z@I9_~B9*X74;Jf3;=I%?1)N9Se}ucaB4joP1kl)MmG-X<~;SKlpgJ{%9Ln6Ht@2 zF_5ir;Igy}+;rSXHn31-g^ZP(%(9<+6#sd* z31>oO#sZG?3@dIjK5s9smY{Kx0H~Ync%qV?Pf;CI1n95s`SGv}VE77?d2-$&A1s(y z0Pc!-(NY}U{(OMhSUkn0@AoZ+%vZ!?)R#d6+!H}pYxbFw0&(+EDsb`R=zqKU7J9-z zYBsvw3f!t#pd5TUnOjp&AWEWg_lb?XKGXuAG={BySgy|uO!PQEnYcS?gJcl2c2xRD zsXFEY>qedVd$0eq?^nSE-gR$R4|PTG$V}dqvT0I5XrwKCb_s(}Fw==k!(E$PAd1^kQF90szhoFJe~gc=f=A zr8*{5A%Gy~g=5!EKKk*3ud=boZit%HGR&zus5VS+U{i)-C236BMu zNS7f>L?H78ow>8YgG>LqF8P4ii+Ydf#pOJ+5Ln$0VsD`D|G@Qj}P}mg`dO6-h zeU^+F=@(!EnxGPB{`8e$4CBwesMX25Yk1uh7uUT8{lslEs-X7F2F>r-YzHdgRGl|yJDu+lCX|WDP#Yc55-IWZoYSIx*6|DxU&5oT zq9wigvihWxFaVi|(~~jH zN&JkpbvZp%S23Lj@eG|9{CSey@d;+hTyq<&4r{Kc!&u+1BCl;MylieLt&@Ll>$+2+ z)t(~iuQDO*uT=tEHbe1-*mFvnZBAMQV<#+&3LSJLJ}|KDLTak}G2FM}$<%)<>;`mB zM{Ke5*IEK2BxcOtDBUqAeedde&ex)KML_N7u2HSTd-WOR>rKh)s`=AUY$jf04GR3N zXZ%DAYN9YD*(#Enq;mOndbgRA1Ir%NrzIv<3kjVRGccM1%m*e3Ev--*D`X&ztNt## z`}&Z=K)slWttkCGZfz&lM&)_V8 zD?rr0H@ocpxj8g2)X*F}c~=d<0adDxzD+atZ+05MCuYuPI?4JGq?~fvsB)#_5`!>X z0QcwM+(w@wPE{65cd+f2TRkvZ^cHp$w$KPQl(6>GHY3D+9OBZ2H{?}oZ~&@Odfh_e zEGJ>RY`as5O?(1Uu|I(bv8AjU)q(D#z zM{S!z^jLr)I0|#%p%PD{QVdK4xNwg(sT`9G@;1vH!hP+_^(FB_v;uP@)aFDDI<*DE zdgGNG{T~t7(fKYGyAj~S6!4?DK+gISk?aCV3b<|Y9?MMFzcKfK7}@J&d3d%#on(x> z^4f98E*dSp>!f8UdTs1Bf&pR?EJYQH;74JyINV2Fk>Xlf0%Oi~e9ZYts~#qSf3kU5 z=BI~|`AW`I$Jt3SLC$U!vj3?Lr@E%R0qE|w4rF}h`ZmR|3<=r=tf;b(l74b~v^YSk z!?$2B|M7Uct`sY^&ewT6u{csDzzf5+5n1ce$B4Z~ROfp^n8=2qH8v2;ap3TV$BJYe zU*T@9{q4vjo3{rfPfe%tX5#iR8l&@5OJz_7086R$5aD()SYg|Deu^Ji=D-9#h$s1b zsD1n1^RF9E3=n=T>MClIb@kDy||o1u+%BGXsrN-Z-1yCwLl*qacGR4CnsdNZ5_#$=daZ%-I$aSsT6A zbA2XSti`5+-1)5prx^sQ(BiCt0Rw09FLg-#4TCwdlwsUMn>BQ{(uY<0cA3^_o)bDUd@wHI?lcjm^(0^=pOwZ2U(3+KY+SP zAYehOkg<+7@1|R+zi>72j25&CBY{JP%N@91%#b;GAb=Ji2uQH`Zg)khET)Fklvf3X zybIXanfN(tnGaW<+q=znOcB}(Z}k=Q$IM#< zEINZ-IfKHq;VSNLDI>sv#* zYqdBd>O9>#5x0P$4aF}QP0>d>21@Mb*b2_qO+sQ8z)+%d(^W=~dfW6g@&8#_8mfxsqp|Z+Py}BFr3otUAiFQu7)HojM!Z9=6WONURU)995HDY7Ii-B~ShA_W?UF>74 zqQa=0C8!weWVKBFcuM0&u`a&Qa`n~^{eIqxL~|LKms)oTySppi-eVW zs;qke20lZvL{U$42~PQrv~W^ZM_7Kn2viTqXr^h?3mY3U{9IQd9SKXO%tySSfC{!- zR*yPGmOcU>y^erovSh($MUPfU;ileu0{Q6{r3`l{Vg29^(}4@Cv$}yDZ5Ji zUgtA)87 z&aMtItz)iwn8DkpX~Q)+<>W zXJkZHwDxFz1ln6tn@KpX&z6fwyuCCvMnr@*Z-QG9SBSZOpB@_c8$Pq#@{BAESn2(1bxZQe=V@cNsXTpn0oo84|qX^0CTTA)`=6kajG;5Ao{ zeFSV?=i)bV)}}L(F952xGYgX4Vdb|Qq@E(CgFE7hu4~^L++}Se28k<% zS_p<3kWQuP^O3$nlan*ZlmEhH1m-oeurauA9@I$Y7)@_dVe4T%-QcRKwy9pn77mXm z*CaVbLzX(JLcxUBMgz4iYHba{PK$HE;z!u+!4t^bjhVh-{Y8=OUn8DOHI$Iq0^L^Q z8eKo}gR+#{HdCu2iB#7Vl%s6o%|6}9&b2M4B&=FGcU6<_e#gB6T)GdwUbn?>7SK**qDl80P_ z4#=wi|6XMC1uXzeP*IXEV$75Oi9a!zxyB*RjO4-lxh+Zy4VK}Wea|&94jyCHNv&zF z(WmSNV+EbOnY{`;Y#O>iX8Fj_mly)Dn(jkXhF{Segf6W6pRe17&#yFVTzlVkb5>i$ zCfpajlIM|ljmn7g9H|&#x>^+4pW{@I=GcjP`!*)fl6mBmNpApuL#2!AC$4>|B@V_* z!EeHdqstu&B;TURui5eN@9f21cB))m6d>+Akss+>Kx!fcF61;$uZB&Zs)N%NN@n-! zT30T!zG&@c5MVrU5r8i3MyvNQ+Q^FpV+0S?g8hqyK-Vn!c@I@~N0)EtTzF`jurS!~iKJu-QO7v=I9bjQl9rz`7z~p@ zn)v$mw$E(@`)YY_N4ujm>CHgD<}9@+(xkeKGFozpIR%#xn30*(8LTM7j?BS--7ob^ z@**ngas4=IqV#)TvEO2tAr(y(KJd2B1BzvSlILx88~^PDMPYhTV{NK2W(LFZm$ zt^EDhCr?z3Csv8@&{9J1ni|#*QzhzXCQ;iSjgd7|0;%5v4`~B6nY4O1M1C*uuH$spllTS;d(o%)aTF!EyBl&9e(Dgjm`#L$~a=uV!OJ`wU0z^8`F zojJ|~v(XykW_4ark048*e0CjyE_^x8)3Z$y0vN+iHCvRa*)~q+B6C#*Enu6yT^G+X zUdr(!73wF*;X9YgrkM&dfyd%y;bqZ?no16pcNPEW?xKLF1E=3mzWdjD;}4}~Kdgs@ zWYu5eS#x!iqpASu1y!HMZAMuqNQp06bu$)!73EN@dp^)K!1#25Hq-U#pI*rqb%sFF zQltKt)KyovX7cu>W`;8}gSAhNTj@z;{DH(|&9p?|5}+%MzHIa|Ia8A`$^Fdi+%PDV z7j4uP7M!|NKI9FOp!X|rZh2%3PJGE?2#ZJ`L{ghopDf{KaVftLMsb?6AEVAY|A^=s zM1*WTZWR}O`u{is1Mo>aFbtSGk1)^Tb7W)d=B3Fst#XF?!)~g;|F}3*5Rt`N<*So~ z(;swP{8HRdD*RYn52%>51C1~**mb)j7)Rj959$WFZv7}(+x9hL-cw$YY~I9$4V%#r zK|s@-4wdi5dU;&2kI)C){Z22TS3d8WH&BNyrIDQtgD2T-K zavxS-^Q`$VLH}9LczorY7pYfEKYbQPEVyDFBmat+wr&7HlxE)y`|H>B1MM1nbNdh7 zCm~g9eO%GmCmdhWVlZz|i>qOr!g1~m6YEPfLR?nS;gXKcINbT#5eI=PHcEBWM@!K^ zoavZfaUbnyspS;B1x1NTl)WD2BG&$R|N9xR<(EYQdVSjgZmSz}dgfOA_00wb`+!1~ zD}YUrb$ZloqLV;&UxQlBBU3pg%{x+>3dY{c;fw$~DwiaiLf{E?yyul9K=onzQm%C$sa-x#g0-khu zF)Cqp%gy+y$Jx~JpENIYB@^rJs>JcjJE}>)xm#ejQ`*`T9#nNdRK@?+&NBCLpg@G# zVlcEF_;>I283u;9mwV6NIdH^#vNTrW!yEX3Hr;4}o_j2D*YYPCMbNy>zMp&zX06M& zrY>8%vF3wNwv3<|Mxqk10P-qs6MbLteD7u~bf=dsNPm>dJb4*jC-or*9FDUhf~Ty& z=z={it}>LfY>bF^^8TY#8Mtq4kbfyWWVrg)Sj#}^0iA*tmu_V}6HkGh0Re11yqv2* zfMA1;827U4K1_KBC;-oz|W;GwOBFm@&F zNljd8B;O|E9o<`yi7SC!A~A{!ATmrcxztiipIS=bMhNBZ61caJ#vIW*VAU28rgoA_ z$V%kp4vr9A^u&9|2leu*m}0=Tg$zt*^o|u}c3da=k-r1kdMY0pUQ!VbSKUHk`6WT@ z826hhLcRi31H^Yowr;0{{jaD;Bj+GzOm`_BgnAKu!PcfHPz`sqmD?W1+D4Q@(4>l& z{|E@;)oLxDEYR!=+MU^x&S8f>uU;O@iXShKoxQE^(km)Faeu{axTcvJ!qOO?@~(k5 z%rF#WXSze^KTC?BlC=>@;I*h6Rzi~L2)7)No!qQrI}f0aY;bb!j_$MabUwpf#Zi+K zHP87eOs^|uw?uqzGl!pCUpj)9_E1Y?D#$EXB9XNwxO6$oZ{AI#V**qoQulMW`Qz-O znbgtF+oOrAHjX)c$eGp5U|ULfuoFKY;>dYDCCMcVSiDg-t0ylu`)&G=qB`9C8s^vx zwDLA91vG_s(p5NDen##5Mk9)rm(6GNq`N(n**AR{<@iSHa48Sy%C*KXBI`V6S7bIm z|HBWDL#q>`#@p^C8M)ky!hMkxQsHFw^)R@yASIngLp|6|lE+ohr=i<~za*Egb$hu- zYp;_mWylaNAH~~#TuMaYhQ*7Q-Y-~Av=V@et6beu4Q2f=rG$<_={S*HFCst+SEP|O zKKqAx0;;2*?*~kob<8|3pvte~hfb)_sBl`|zCO1xgGs6A;%nA(!@ z_pH(TigeGk28?O8b+z}7y1#Y+FU{k%ml__vEXm3RMtmOOy;yxh2 znAB*VPKutIBYFrNC?&k1(+;oJBQ|(+Qq-*0_{tXKK_HQfQEH;%BgvoeSE#NTEr!EJ`An(0jh@&TmROD%0Bf z$vI@c(EP);UKSb=tn^Ss{M9>_^*O;`4zK}CC*C=X!jUxOfe07T@&uo|dag+c$2jOR z&2w_Sh5BbY)fbj~?sqbS40V6mOp*88b+!Ce!>Q$ud+pKga}{ja9|D5ZMIjcXCtY)K zgMZ?rLUBa*)ebPSc(RDI?xjt{`sKjT(8PC7MT*d*K(Zl$Kt zZo?JT+jd<)I5P`xcp+EMzTvTim0Od z=h)afCA1&`j7@{IhqOyTK^b`|vX+$%3K_HTcEJ>kQ8L;MxGh3o$3FG|f}6d$yHeJJ zSw?Yy*N_T3?J~n+>iT5OHKxh#o~+@%8{o&OCbCGKxs%uBse^+2c)Oz>7hR=iuf`qt zMA)V$cf2E<9^E;~q0sL>c~(|5TKE}rlY3JI;fu^#a9|RW@QS0^m zQaP;4db+ht#T;X6Sx6RC8Jjf3k^Uo|icabu_0ZLjy}EE4Urp4)vb>d#ss@XXjxDDr ze~)Nv536MzH{#Deb2p8)7ME3tt=S^R(iu}>%;zbMy2TgT@O=Wxz6*SgH0D3DCFhKA zc>ZRvjGw^04o0U13?i}0O3xe5Vg1y56AZhO;0H6AhblO0r;e$|NB(*fLo-W+PGh9* zE-d*iSEwu3anp$5EYigAO@gx(^8?2xm0 z>(8S@!A&VG{ygl?E0nP%^?Ujn3)dy(o29Jx-m*J+tpT<`er@A@eJ#!OCS}c61u6vA zEZ`$eQSz?&^DNcOHA$@NeF)23l%bFp{aSVAJN4@6Pjn0CeF7ft%2v<$3tLis#W1nQ z`KxoGeNKag2B!CJaw#doW zniVfYwJV$84G@E(xCXQjI6hjz=%sVUT#}tnOz*{&Wr}-gJ71}N)@7pS>AIii$KZx5r0}jG7V1O^rg^0R0pA15QWMs24n#M3Lc^yLDdi<^y5KX^V7fGB7=T9y0EWJ$R?QqZ8-m!_4HC}1+?d2slWOfF*UD8 zyA=IRA{L=o{&I^VD1q7j*mV?r)iDG4ky{bog(-028ZnX@`51Q519H~d*3jqV>}M{* ztj#*ud~_{I@sdw<*lZ4-dwcQEDZA&yN@nER0=HM3yLjdn^ni?0zz&c<1T61Z7&A(x4 zd2ru%SFHk{u6RZZ6L3=3Zp#wUQj#@i5SpQF!0}KEi|YMzgchZnDKI40AQdrY$Sf9& zc)t6r4e(fPhIV#cBwt6p+du&ZUr?|&W@+`4SVp&m#>Z`Wol}jepN-|Y?l9rY_RDjZNL%`y$LHK=~n z^hcAKmc?*aGMPGI4G&YL;ZZw_?I= zLk{jF$g|`chd%AZKETL>G`n6z0xO$k;r#}`_ER1-b=ipjT!7LdLWsez3ZZ~x^X5|l zLd%1<#O>4rMWX=*M{TR^ZC{N>@&H|JneRcY4mIrnK7q+-32RG&FPv+EzgMP3X$kJ!>JHmhQ4of|WdfZnORpLGK?V?Bh#N zq^Ma54C_PZkCq^{9NL9*eGKN_;!~QxowY5~D!D){=3?zm8-@rXu{air(O3+6)Do!` z-uDha>sf%~AqeaD7W?T-qE@qpRFIHa#HqGbj5)_`wZ^n|3Ay?RaFB6qDo5z}OTlZJ7M= zpp{kP?u&oU)ZJdCtb(p%4!0I}Js**IyYlonR+hnYOOncXC9Wa*OU!N>jpv%CY9fWg z)=HS^?5o1kk%48ga8y|6V%#@D(T;I=R2W4+zCb#guK-2LzH4lZVu}Hr;E|VNuO)Mi z+Ot`0?(jnf<`lYx8Jls*j)j0t{*jXeAwMD->7roI<&zWfsAS3f6j=568l?dutdIdBbZ zypF*DGHz4D)o2Bbq!U+5^62*n+U=*^um~UMC7-(iqB;2O4JO)dj=E;}*HuNuvFp0J zeuTT0aCu}Tq{gf^SpVZSuV=pbk5EmWmr;hl>Bj6yofFy>-~nboiwa zZ?|r;Jf!p12K>AOx8qXCr@;*JGXJb0EDDa&bu4}N4QEyJf)?i9gge^Xx}c6Jf>*e` zrc})6Mq8W*fAwY$Wp5puHPA{{cUETFo1+a4pELGufvc(-suUIT@sp%MTZN9QGr3X4 z#)ze8ILeEDpu+hzyCN6*)4X8bczgcvI;z75?4AXzW^1}>c-})!94E3J)*P!FFK8zd zvr7y2Uv`eJ;E6KS9OOnh(e%7NHMPm(rPU=`6*<;?Y}xF`$8sL+7hHeG5Z%N8ZV%k0 z#li_~?0F_TUyexXi0Gk+(Q!YC7I)RHSo%+LUJx8xB6DncGAy4@D%6Znx9DSR?#%5*$$Ex0GCqrxN1% zJY(EjIeVm9&Nkws#RQ8%8_P`wzf(CLZje6f`(CyWF1gcH{bv?mpU$M}jQfo-whhE4 zGhKf`e*0gEmh<5O7&zjMcO<>AdkE5RT9JT_;1yP(rv*bsv`ex07nh&P)1SzC2ZB)* zOauJn#$pMST%fjoeU!nrvigNXMLY^;WZ*77OyX_S!S z#DX2s{wZx=X@=~lR;iLO{Kh_}Xv}(#Ojal_o;A~#`*w$bd@Hv6bI|ET9^Yba84;${ z*ky6l`)Ea*zG%U3njP`8i7p+6HWNt=C%!MhbW0Hc-ZaGR9U0poLH25Je=3`)$M*X0 zS^$W#Cq)fAnfF!`F)!bzmRO+BKs{In(!78Zt0vls>u?95gZGKlKfhWxSVqqv!EQg8 zN4knqc@@Pb#=Tf!%zU~jr4z8nD!`4g1IT#Xtt;UqC#V}y4e4bF-i>5_&yr~uR@~Kr zovZha*`Z{Y+LvtO%DvKyFj{tNd|o0VFvc~1tE&$28q9#ryD&OCf3E9!NbArK))G!d zq8QX(fDlwfLARH8gWevF6F~|=?MjU_LbU~mI=}-vUyB`h38y2G^6cI}xvu*~vE>$8 zilwgyGy6m#r>%6=Q`~C?B5q)F`FO}9Fz8k@-`!RT`~>T5;h_?y{Kog~Kjj}yE^~7H z@W{thl-Yk6py3Zr989;{Ff3}tSPXbYkA7E|E8XpdBm*hB5ky=qTKhE-hstvL_FW0S zRXu;^InXFIKo1THWVNDrJm{Vr3lmpubLSzJsBz)g=sxSBW=jCInY9V)B-P?klJma& zrAZp!8_HVibgkS(7oQOB&Troo_L!NJqgUKl9ZbS!$vfhV&XnKJ+o-Y{rM>B0*G}yc zC052A7^HJbN)hWXZ|mWzHgXHW_o)jzAOLTX_B0Y|iq+MlKss{p)SS>TpD{s9u_uCr zcQJOg^{4x;#+uiuW0`10kAdM)n89G=8Terup-lpp+fuV+xRipoL64|bKp?mQ5`$EF z<@jQw4vXCpdwdaVyc}Weq}R!pZOOk$pm~GZ95V7DPIAK|i(0qXq4=Du6 z2*HO>K&uMtB=gN>>?v@oltP%~Gp-LdYc*bmOUm%j$}Qy;?G>)yHwdK9rg3~FO_&jS zxHFBo+Ksn@i-#N`y$OQn?QebX$RNhHlb{Mw%2l4%(Zk{@_-Oa#vmoK(deDPpZE z%FkXJl`U8N4{lgBSFh4-cGjEvc?j*T1FE^WnCeR94@+#9L#`~B3e6-S2G-V&S zNqA}fe)_dIqdtUMHSaJO_0|rXk&m>;(+lScv~%*5rp;~P=a3>z-ap98Q*nBDi`BMo zW7+V5F*K1SoDY`K>`+iu(svkvXvaSI-l?~O{dq31A&r%KD>o2h# zNrcPFhn=Gk)0bep(#ds;7dSYOsryR19d(j50K0G=VCPRjL}E=~q{1IHiiV`u8%j;D})J^I?@Nn%-rOvLM2 zEUd~PzX4WBjFVlNFiaQ&^=bM-Ot1i94EuSc_sv@4<>XA+i9oe9V{42F6Lp z6RSc)ZjOV83p$6gAB1HX{2(C{@C#R=FuAeGBxHS&@g(}t`F zv#vG)D8^d{c)g0jK64zw@CN&3ivrYHPa<<3GGe6qxc3IbnG-?vTuE|FW_E<=14iwA zM@%ef=IZ0$ieGO<5+BVAofv_)yK?uuE6BZVRmPG+Pzaw~U;n4qqRBjBBb7x|q+Wg? zdk@h%s}AQx1H2Kj6&q^hc8LxVJj$FWD227ZC7H6=r%^z4&KhI1>}m! z(0mKwy!PT4i8|;U?)|o^YF>$xVaQ76Ix-`ImPQZu-mY2vzgxDtW#%e3E4h}M1cn1= zg#{Yu7l9!%Hqrv7HtY2sD{ttkAWvWds$4xdCnqHZT?xtzX_@&9V0x~QUF!6#mvVp* zoWq1@h0cRsG~`KyMjx%%$1|8#@fAxbHDg1xOh(}kqEz`yiehmxn{k@J0SLn{9||MD z?_YCH%u@-zLsA(&y)^Wwi^npbD!8{@h85!9&X=74#^IwC4F0fuW-?LWtP<*4ilKtz zijs?qT2?m5b5dMzpc6-a`}ThOgU<0LZJiHRXR6a2?MQNBTT8t3&LBVH$&{7szll5} z&_NLWKNY&E7W*KwGnbhg9&=wg>`3CeB*j5qv>-0%wDkE^EThz+izqVfcGd$QMkX1R zjFc`7+e4h3bI}yVsGsAT-i)Rn1b>V(_v@>amu?nr0|=dHfu`3@A7bTLs+=>&-eyhC zlmHaQ!B+pX6c$RZ?b3)GRuG)_6<_Vs~y! z`Emx}x{ut2Il`zf-amN;2?hHY^-mjTw+56o-p3bKG#aAc(a(0mi_K7auF`&D9XvT0 zKO_~*ooIXU8;m!Ofo^TX*hD)zoLm^H9QRCD#Vy}uXS-gGBTNF9U$%&s{sVLyeW zal|3UaPI|B6z)Hf5MFvJPFGT}Sp;-muK(gmxQC5e&(!f+XTkrw_iO2ID?!eh0JmAF zl@2vzE-#W^UXqH=H-QA8ruxqk&{Dj^L85biM&aX@8*iz=9n?f$X1P(cIlZ>ss1hCm zGTx4ya&QQOVN`6+v>g0>k?Vt-8P*-r6A)DFr$F*a*t#yioQDzURra8v5kL6qrs)7; z#Ol$UAwT{4zF&kqaum@onuC`tZdoh)`W`7Vn^k(%gQ_agQ;~9QDW)^M)#}6=7|cL#k%^Ktq!)v-O(>yZMr6#7} zDva;Jg+lsAt4{ZdgauMj3bgI^4GI1>HAaSYzK@=#=+RDK8T2ZVBVoQBA_ljkDIE-| z+t4sg=L>ZL0*dTo2(TWa9IOvl%TZ-JH}1TG+Jh!pWx1DDjye?>HYz#|u%yDnGq;x& zs>nazx*fbItp(4A;Zc7WJ<5no^c3DEJEpta@z8h0pj`yscrV92<|Cmv#7CT&)9m0$ z5Dy@(g^wJGzor#?75UGo73e%oUpcbdIH-zzP9NgVm*m=v0=?-a;;g(75?Z%sOZ$>x z`NiX2_gflzTi|u|%;Vd=H|Q$8n+Y-6?~}(do$`M4dhS1ORei2G5qTQi4j@tGrjSA_ zQo<7D>Aa&acp~q}|Ad$pA$DHm%tht{E)}zBZC;Dln3q%bRXl||r{t@6lm9PR`spE| z0tw5pfV_y;t|*MP90!a=EB~nVZX&3Zzf>9Qf<(>hhc&W)35dx=>F#JLUX4By4Q6UZ zZf8EWO1_eC01Y4ZN-mnZs{2QECY{+2nRrnn@%b8anvq8(LBGK_)lEMSfR8h7o7*xQ zI|Dgyoc#!q+7j&di}I%S$^E}mg5@G3nl==G>rx*xFu@+zu}+diob`N}`rjQCLpuGu zHQ{7TqWEhec5rxLmejVo`TQ-Iv!jHjfv(SPrZJ%tLUeTtok80`oJ`7`pIqU zR#*@~T%PyU2WLOKDe_=}rw_5}@&%cc7i1FiZN0}Ib!aY$9Q&43o@^nsdP9{86d zPhc0J_6X3tO;v~(T^d($BFAFNohwqdk2kD5lk%^Bk{jq0WzjThBV6z#TC zn^2>ZoLub_b>9O*Lx60ReKDEyic}*NS(Zvth4S@ab%3_?d)ggrW?>(TGULh+_R!OO0JG&k6{C@i0?(HK$@BF zU0bi};VV^BC}u%b?0vDXVVK_#V<%^FYQgqQ#B*NbX+Kg4o5PeZUAq^l>CID-q_nTV zZlo|Fnkb|YN!f=1`Vw7d{}?!gj>;o@SjE6YKW2OgXQDvbE&G!MqpB-)jGisRyGNW^ zCL{bjWM(P>l9KD3Be;q3bm}qDL<#|I;2RF>rSok#{ts?@l1-Lg8HGho_!TmcFWYpp zC~cH|>oGjyb%9bbN}17D%h9(cDa};*`1Fdx_{a#4X{4Dam~|VZI3E+)vDF)KT?41) z5c1_RFnNiS;I zSUu_c+OnN?g@aPG0u4#P~Ef#H**kX>LG?=Ki$-9HHi6CfiRx3J?_~F-~9HApKdVotRE$L>8(iBAQ^%rZkoCmK!gp|GRVyt*%U6Xg12?P_O}^O}vEH z-n%gV@;s@zR)FTd7=cZMC*!&nZV!AwL`FzkZY`B5U5h?U9%U9a zYL!D`X-d4Dm4yx12uyIdNCFfKnQV}oWgoq3jkxq{rS6>wcja(=&`NNt)UfU3{3IsT+~}B!;jzQZkf>Fb?h2yubvPu_0`7Idq9A zxRvL8_*#VKVkldt&{lEUn3=;k43HQy+Z zf;)G~CnoMfrchPx;A5ttPO%V`>8tYcU#n=af4u6|UySfwF^_%d0PE7rauCGkA z#G7Bk>pxGq)`NLOyfoei?7=jT>OU>NHmVAhVpm-6s{#e$SeY=c0E92LP}DZc?@JsEuY0 zC>pxa27C>&0k1tCh0ISxzcYDFqDfEv!#5M2Yd2GTbv&4v;4g=id4f9ObAKTHMf9Ju z%WUd_>-O!%Fxm;l&F6S!D0iguj2pv8SKo1P#?wl;I=Aw%txC?4p6L4{+TXx@3^<(LKBbv+q~Q;-IWmY zQKyxW=kq@Ij&;bu1u0c;AMhD5e+reNx=#xi(*qm7un{~c0ZYJouTV#sFxQ{U_L*RY zAgItdQCBD>&O78xVmnjTe4B15JDDd-L?eH1D__8n?yqvvVBL!Vf%U4rfSc zjfFltDJ#Q2OmOYlSzh`0IXBsVO}$KwQH?cI3MWFRJ}emdFLRM$dIylp$}W8EgP1nF z>lB11a-bGSutg^h0g1!*lVp1fqt z0#q07Yv<*?Ub6k;x;$@&u!#Z{9=cO$z{Q0rI+VmDcz*?BCSG5EM@cl|NQ!gS8k8xd2d0ShF)l%gP9G~Ev zFH=eUpa`7H?0?CN^HmUwndURR%m(T5+so}J24np(Dj;{EHdhmly!Qtoz?8*UgP@VFQI?_)^M*NO1 zPqG)Qt4w&Qz@lT#N`byH_M1x-qWm-6vqCXn$OPYK+DfAq!F$yZLP>afm-;1F%Dh_$ zU2)f_mM9HXZXXMc__BgAc-qF4wn?LkXr*cn0+OyqsWwTC4k!lu))y2iJhlWW?^5Rs zI*P6WR;Em}Qt3ewu}06;|IdGWt|U>s_o&om-b^UK6?S3s1w^68fzB%3R0laTGKbwK zAY4i%N`O_3X8mIF*>|Lu-X%e8z}C0UqTJ`^#}FK8P?P;=!xIXJXT z%QA$NmjjsvX>PgsGCU|$@E~HsDreWS-75OH zXUz9i)eYUJHO=7a2T(6UB%s2anNA6|>zESBT%k(KmZB=RBS&+1Bu(XH8(-f^cAayKt1b5)66I8^XdD(aUt-N^IzzGO8vC}*iz_If0?{XXWlnF z+qKJe&)GTn1|7U)H3);LRu*0w<(WwiKyEY+QxUFFo5HZd6)Wej42NA57TiU}pm2v1 zs3Q^DMK*#El{!2u0B4yT#*zD{F|F~IBZOhUjY4-gVW%%mHn3ILt0VSbj4w!J?`-vq zk%O8fuyVT2!KZ|ayT}|6e5X5?O8=Bw6gTH8FsggrEKWv=27D&EKPSI2dv5oO-=b!& z#=5u$1S7}k^Zy~HA^zIy5gRPnlL-qlAf?}>ka`qg-!le!K4Z%1O$ZTorJw}6X?;^~a5oqLG!f-Ca)RQb0WO=~L}zofeBI?8=8!*#RSNRn?LKIGr$$GN z1wD`t*#S2+hDkmAHD^MTtLwwc^gSEiW{o<~(zk*TXrKCaJX z%m|R&9SY@8SMr{bfi2J)2SI)@FLuwL3@{fPJex&9MZ7hbwog_5gDOwV9JY#8`mvES* z#FL_lhKidN>gEUx7}3wIWVAtL(u~N-{T+)O`6z8A;bSdS%X~o5ebJ*QW_X>6QNSFp zeb|mkXBxeX|Z#LH}L(G+VeeKhAW9I1?*7s!3wk>E!9hgD15|5 zVLB^DPiJ|T%LMe_6i@Kb4cZJT(2Hof`vseKJ5heeE^>9FB6fJ7ckp2d3N!1{NIYKi z-v+Ddr1#<96w_^)l6}}0sxYwz{rgoA3x`A7E4^MO2I)yeG~FZj9_iT|Kwdwzt!ZRc z4Zu?nA-SYR7XDb8y8+oVsW^=jkg5ju71F437 z-+EFN(KEh@=(u&KnkBsU;_O_B-!x*SFfl-u)DOcRUN?}TBi*MuG#2Ug9L1|KY30!J zna-ceAqI=e+i2C0Rbxo!+k{`pHv8%~n^uFo;9=q(z9$nxZknW4$jQ`hQw=LC!PZ-R zl({x8QBNB1W0yH|RSh@?1m#poCvbZs?FX5N$z-8lq~vd|ujd(0Dx>6F%n8kE!Thn! zJ3z$0meNnMsE{Re?Xd!6ZpKil*FvS|PtS(Cf{;aW+IKv$O2f9aZ@NZ5YEU<53jG<- zP{d}AG8$_Ts?d=poGNEWUS(E$<$6)L>I#l~$ywe1Rzd`>q1XimGijr(% zU+ZjC->pO{k3nh4=9mwIiLJ509-Ou;oF`TuXb*p%Si0)C*>e{?n<%8o5JW0dNtBS_ zGFql4IF~k8H9_x3Kg=lQ9sFd*56|5D32C;$bcbm#(f}MipVJ~nzxt2ss0aP z7lz2BTJ%OnUOx5fgd|#$%;!^)jUl!3t7E5)qF%hO8}YdoHQ8K6FE#e83{Y$wRlqjOkZ-`n{4Ti(m#N7v8CE&6O|Ewtd2~m6Q zrs&gO6t9IBpMjsIXqNrtn+vC7t_*ogFszfR@ugd; zZbjHv4WTU=^r~wqc(7DwP0p!tv*^w}A4kEnc*7d=-1oyGF#BfxU)>{WV(*xmk2g;n zx=X?~u#_Rbj>CKIDs{FYy;!A#Ejg=y(h45_prqb#DTtq)o1_4Zjl*H-Cv``jO~ztC zo0Qo4(UZY0STWAkUuWC~pui%r$)x|qPe#l^X4|VG%iFisnI#=_c$=EwnYcX*P8ILr zJC7Y(trViBm=Xo50VPinU^_$YrdCpX!hrsP!U11a z;8DnWjlJ9Cz30Ze2|bugi}Pfb)MpiL=4&|aqL_(NaPq7$%x19j_;%b3n)^55^$_`! z4+x0+r(33S!th$}3)Ic6*XV7Xm~j}4$6*DQh3-r6XPt0vga`mzBn4f0 z8ATE9TLj2iE=ei!*!WI(N~jPWe`We<*XOTUM2vZeJpchf{=aRrKDZpsm^@!(Tt(YS zPlC!qS$L-hq6@>B9`1GB$dQDz4%Lero{9r6KQUxd{E#YHVdJ`|O&?Q6;jYk(F7BJ^ zdQWBZ0wX2pe0$l~V^JeMHXwKHZ2Kbn1w_MU)2#))kg~U<@Bw>Mhd>O|n4{I*;cT}9 z)Del&0rJJ%Srchc#8rGo5Ml?^BLxI7+yqI!jsD)VV+ba1CK}X=ZCQr#)}!$a2R4N$ zMS_>8z2mJW!{Eq#&ZjdBNRiBX5Fv?2WPN$A*psGIc}$b1EBdeDt{Ohl*uhv z-bF$7zp9rL?=?LPc?=$d85iV1Ss29d62_O>kXr|AihS?-8JPML#tZtjv6qK_W4o7E*Yny2DSy-x@P+GeZVDA(ew@u{@WO3ivRjNE1Ku&Rq%j%> zv}6PJ3>cGrJM&7MH+((5{f@~+iW=e*N=HtVHh?EG`2P4Lng&0t%Kl%YqtQBX+I; z9O#*zf4-o-nsQHi0-QxRwNM~x-A0s#QEJ_LnLXg9`g(GfHp|Zl@3t+mcvJ|zH1Gcf zQj8X|kr(Sr6<~pNX*rOMIlQ1k@9yqA7c`&x)A?y1zs~Qq`M+FP>cZTBp)t62D+w2i zU*Z=M92eTr!+Q${PQh{}q&AEk5nIFs%tLP7G~KKhTVjvMyy~Z%=o0oU9;aB-cbB+5 zPbm1J7p11UF6J@a^&ndf%rfG-HPnw@hm^b&CGvbA%yRnR7kj-LdiRsm1Do~Swnhdn zINDnLO8^gK5shEP@^cpPQM)6}aA2m|#B#RSsu!tbMR1QB8HW+EZ(U}^y82N z6TMu^pLHm^4}~-b><}$4lN_`WhnvF^5RNIX+_o-GLW^1NKgC`?Bnz8@8iAAIjh9Au zAxF0+4TQt@9;?^Ga5TuVExtq)(1wtj9(nx<_JpaiG*Ld~tghnq4x&F?ZJ6+GKWykm z5J*h#n6f}2(8O7C*<1lGK`D#j3UUn})8|rPm0{+5#RLFW9Gn+o+fee#Xe1d06xla#>^>*{4kCs)*bssF*Ut{0H0o~{mERO zHPQ(64f(NV%>oOa!Hdcq)P}0PG85GI2gwc6N~TLcI_kbtO(vBafiVMgL#}REQoN0j z=L49aw`K9X2?5S5D=BVp%FYQ|Aky(M1kqOD%o9geW(9CNh=Yq~t5u&NxBcT5n|QOAae{0mRWaAYhPE`s!;o;ino<}$=0pHk`v**!dKIpu5{Co8c$LULO;UO@B$6S3UMqP{|GpH z^_^}tL3rTWGL*U2)Crbj_cc_n^9uj8*7etIKGI_}{$nngjPbvp28T>#eF)vx^6RRe zHNHTqF=P;^_=c1f^3;JM)DhHU+|dkeWtq?LK0Ri41x#Qc3HBrbaLR^b^n2)4QQ(P5 zE0wv`uwCpe0!q5bTAi^q3UH50eaH}a_5Hq63%+RK zw540>wu>u59pJr4udu)Bpfx}yuV1fdz}y8&HVI&}8J@`}iS5a{@J?O_A%FucKs zh13ovP50BqwIm5h=#FlAedCF zo*yTeHhV*}*kJzzH24P~8JH#Ku$fMDrlL;pIV<|hBD@Iwlmyp1p(gAX0-vV(xe)-1;n9)H4q ztn|Qkx&il0hj;qixXb0AXE8ZUL+ng&XPXl~Z!G@6Nj#PI&>xnM#^o}IUk$8KpU;e? zCG3ZkS{(bS=6t|K|29o}*0Rnu-|d}VGBiU@mq*{8*nfu)!$VsI3t7r%HLra7eCo;!0&R?gb-00M99zMJL@j_ z3;+MEU95VLyW6gFIRI9{#wbsMV-E!#IhPQLGwMLCpU)QQsNA<>s=Y+SbXQ!XRAQst zI(*O>30=C_8Da|$t1;HH^}K<4s+6QHCp2J6!lXIRn?If-l%4XW@hK;229y*DQ^0pH zPKnnR?G6LA3y-9!6E-d@9tmNk*R@YFMx5X++2|Sh5IHyW1}h*;-MR!3er_0^|IG4) z^=dn8I)DnK?DSgvH!S-}&{T2n&n`*4jEv2CUTt&ukP5)Kd4M}bhEaKvIXYpR2<)mB z1hRC@&s{CHh(Y-+R>P?xpUcqca^0@1npNx0=S3}K0la~qHOv)RC01>>jGV-9t<_6; z&?3i35p;?1f-I;sFkx^~`NOu+j}z=Ea?eS<)!M*x{6^J)X6o|t?;bEEiQ4zxG_HxMin8#8~H6t$=-tr0v@p4b)SbPoPuR2bYd4%(hFoCrfQeX?I zs7=)(yb1vfY8~gSG0`rcs3k;-Z4Dpv`_0rJu$t5$oA(~`QzZaHjo|SD<{@CVWE`(+ z#t)MEFT3yZ6_z6;nBM$f&%b8Hf>upgKU6~rU|7E4MC7OGc`ls;!lF|_@lzSZuKHBR z?l6K8_WtuxCb>uM_NZL#6P}sjD+^TpcQ-pSY}fT@FVdPI9%OCDCg??ub~`f<-ROc{ zMuq9ZHc3hPWkN?N4<=2m?Ilqj>_u;ZuMI|G^<9r!?g4~v=XW~TXWRDnIL8YZ9=LQ! ztgz}SwzOWNO)UQn;Xs>QYwGux4|eo`2QSjqQC-QGH7tI*7>WvSL|(h&IY}#*zr$Un zG`vGz&}~qkk7a8ct7WId#Mp{@zK?M*qu0(>Er3eUM3b!A2tvwvLBKBk;E@hG=tQK} zRFZZOvyV};hWA^x?RzlC+gAj3kKr>N*US_~?d*ngrV0JxQ~E(fKW^XwCSV*iNl?*$ z5vZd_5sc`7<7Wc$9KzONy7247KOkU zGX)UJMDpgTC3C4Uhbxpf&9M_5BVG0$E{b(9#xqeC&GxK0Wy6wi*umRUJ4=WnG6tE( zSM8{&4c3cPo1k2gV7_7d4aYezcc@zuF&JoPSNHZ{&)jXDt-vX4bd#tCEmzPa#(cO?BjNV;Y2 z2;3ohDO<~oq_MXBuOHF&A6bPz=O??<3EHVr+$nkU@#cV=p6xkZzlP*^jE6h_apOpD z$W$*6cJ)`X#{j5kl%_OxhkTRe7JjBQB3WVUmW_UHLb8-m!CS%o+d&1$KsNc@3_*&5 zLUCn$i+f9rdDZ{6+=oHuDm-cigr&r*OUe52Egn6?5LjYlYVvaz4O$(tNvc|9;@glgDMxo>Uv<^9YDiE{nqw@H&5L7Mn?pZwRd?s*1OfF^ej~fmuDNjt8!MQ`lJ;pZJPFZM)wNZzUDxv|I{=f3dTru|D5r%gXam z<*XE1_XYJ#95vm)(eGx#R-VtnvV|v6ZzvHsSHS;G+aBLL$5e?LeJRxV4`1?ABxJS1}Wq8|)z%1?ts z-u|R)P3X+M9p?PvxQ+sr!?=(_NYS=t{|u@$1mJER$OUJ00fZj+y1gM==ONQ-Lh&U4 zv<(|mS{R<>(R6ygF)m=1Vi&wIv+{Bs42B#mM%baPs!@MTc?!d z%7kpc#YU(`;|#v)K-yM-ccDknj*UA*6aP}HA)lVuM6{Yo%yey>IhS%MU_aq!Q>@{XhchtuYQ z@rqOS*(4vZuDVV7riHs^e(od3FTQ-N+6|A5!9blU2Zg9pqg+6CG^vIX{|Y@@n{~ZV z>c7FwygcN@InHRg4uGA3>TcTHC_Z(NQk6W2!P_-DE;4PbP@8F79YR>4CC{#5x+M7? zgET5#bEFg%=9)YinwnxwSeiL5Il^DwxYo(;=+>J*o7`AENajF!lY@%Y8Djp0PLjN! z`GR@}LcwOceR)D(TQsmapwVVIo?x<6DQ{^{xG!@Z?Ky;{a(`e@zwXGTh^u3h!hh_K zOIGO}CRmOsUn*$Xhi^s@Bkjjp3{Jq8?*`@60)N@5e^8+ZLNg`SKIpA&_;SDcR^tlM z7AU7ehsL#S&flkq6A4x1!5d5Yy1+792cj2#0^wQ6-R=%sxbjvvXwkzqLQo|2wJ?>Y z%uRE_Jh+RXggg-XNwom$22pqS8MQ>ad}FslMWfH#`BllVa%1ouK~d}3JkB^1V)O;7+#O->(D z1fC6IK8W0sO6?hT3<#_wA1(TAls$IklRLaGw%N#!dvJ2iB97XxEAcPO;k29)TIF1xi6WpFxCiouPszu?I zf5kt_)gQz$8gFp8)$gWRIv=$P%b-|TQ34Q`r=}{OZ+Gj`QcH+=dr@=LiN_VY%Jng-)goGjYBd*-4mB&x5QPQ9=vb?U7mVwO3IUtG;^Jl%YQn{f+Mw%)e%SI?z%Z zAp;+)*)}M6$IE~OqWhVUz^KH_2`d06ykHlU9WXn=b!|THSVMg7G~k{xz_U%JG!C7#SsD z4;U8$uzAa1>cL4~T8t^vm{$J;<1@pb*JTvoqEtt47S$}~FNf2;sZT|`LtxwF-R#@H zvm#$02DH_7@@xT>hRo16s(iiHB&Bzpq58j?v*p;JCzyZN^i~Uy*kJ1FsDlY(0nqQ_ zVN_=AJ$6=3WfD!`th65w(y%^lyR(eB7EKOoJMU4a2eH zfFXi>Jh=bMF5(fPOS{7gV9a9R(s;IT`zhUD3u8&DMd`K~>xrtPrh^kM_}BN|{VE55 zi6zP%QHVmhNkqX%s+F2eZ3yd@_X13=)T{{RXtN`ti`goEFfnhzRu%qK;0x7>m3zjU*%!mY%+$BuWd#Y38%GC>|&{h~WnK`~sGa%!;=PW8LDD+wzsk3ok6*j~*H#y3z`XMHk`K19a?CK}|ZVyAp&`S=Z6gmT7cp3zwY4 zL%5W~B8tebSV_gbts_Ke<>7wh-Q>kCWxZ1_tCfY&lkEmoYLNVY#oU!AFm=-8bj|R* zvr$?U;Oe^?RJd@X5M+u*C|mkR;+4Urf2^h6<9&4^U%;GDacu8xTy

O4yte#Law!9y`<|bi2`2;Lrl_m z+uCEtg2LMv0X-0&QHB|SmFuGCZ+Sh6N{}ZN!hR|c?X$UZ+Xl7~2)Lx3NAa59fgwZd zGOwjTej=xguyR29KY-~5vT)S<01rb|Eo5$Dw8!MJS~8rXq7)yH6;_ z^_umLYgVyxK!|a?fLHc1|Jpl9Z4lx7m&1r+9nfa`<+8`xH*!L?>J^9S9U*SUhby?*KUrx7d!ibC$;7xRch4lZQ(!t zAAycy{&H_39HVr3Fqo!7WBvs3r)}S2NWkgZe$PxHbLLCTw2Sp2KV!N=q-4k5`Pc!S z*h#HSz*H;aTfKe7E4akgDK1q4Qz!1f`X(4aauzW;kwC(Vg>ocY-K|K%Y0ObZzI^x* z^sVsoHfJiU_Ig>8&(MK1Ca7Xnj7S|mez43UW;tT*S~To!XKz(xfGS3 ztP3e>?zKDHP7|zNPrUF^ASBGie(MS5?1{wXIuA0E%8}Td0h2x|^s&3I!`ZE~FKWdg z51o1K;Kcar&3{CsGP4d4NZ}B9Mog116K;X_WXXJ6GCoGL6J5~8E4MFm}t6wvM0==-auv^#vXK67_F1SJU6fnOr@Hb)JN>$#A3xq89blhW*@o}uT-p<}vds^@e2E93tgCrb z)xNJ%#kA1>l83jYL_}l1gp}ko_oF|YE%tFVdJq5k$M6FnP<#NkMjp8f*3u5T(5V3n()(^mCiet?PPhW~9tAwC@v6Eed6J<_1=}o`MA-EyW?(Uyyc? zPJRD@<8o0;cF*H5e>fdylc&;Ah)wnW-tu|UIkz5FY({}GasVz-g%d6SA2IQ@eH@?L zZz(&#z%>?5C9DkCW_j@4;lXqp8+O2ea76G*5y73iq0!g1IG(2+^h%4JuYj@;2sLqY z+oGz|7owtheT^#doEX{g5)AlAa2C(oX;{2x;fuwA;&W`NQfXyvIH zrut_ExXJEWmN@tEnE#GeaI>nn(0qwYUw?Vmwz^M>hlLUHm$Ivb&{-+ib~v)KDLEw8e-TK z5J|1D&A3hbU!U2TM|SZKLoULDby5PgJ~N0SNK7w^f*)Ch?$pbr(1hD0N7-3YqUa8c z;gAWt*(@*wSmtt&UhV84H%w&o2jd=D_B6Y{fPf)vskyI-{kG)ym19J3`S%{==N~CW z0t;H!WV8&_PM4mY0}oET3>Eq8q-sl3Casr)B{^{DbzokcjmZk4htea=l3Fa|QCZh6 zajRbkmxIvdh3$inAJs!Al=<`w>t3h_{t5Re@8)OwVZ0)BRp%-)@fvt#(!gb-D}w5V zSqwi;0N$B~8vka0GJ3P?swKFUleHXM#nY0LE{63pK zZTD8_<52HkrdG5t7}t{n>#gn!_K^TMh<;^4lZ9)2CWP)oQ0MyG^7>(KC8MiAe?BUZ z+9oUvGRR*j)O?hjy;yzz5r|ZP(-yZt=S(jyDHk6cVUoEy_@Lbf-})7zmiBfu5swV; zmn}UVtv`4B>gjQit_LEjJIY?Us>D!cV(E$b)PPg7)oyt=P&zKBDaEMG2LQ~^|6%$z zVX!{3y48V8rxePtO8agid%^{z)(2ECKNnGsFkK_Uu+s_soy zy{_L$*M~KzfJUNf6O)|XS_Q}|gc^1kW`6a5q>^OgLke97Rg=E9nL)L<&?}T<^iD&Z z@*Jzk>BN~z`wXtIpS~uxCUg;?4^5TMW&Ru&#hh2=*Po{?GZRJIfOEwd3O|Z*bL!KU zFM9gEi&XW_k!eQ&)q-O9yXr5R;{1uhAvvEf4nw!t*gVPbA+r`zND{`M8a)Ci(H)Fs zr^YXA>X}Rb9U=_ZjNv4|k5sd@5SxDD++htNu{Z zS`}~9R2_f`LJ%&^=vVkaI5-ebRL$Y4n?YQpa1CV@t%Lk)0s7`v&|t4tOf2|=YUpb6 zssjVJ`fPq9lGO|yW}GZorICDPwYBRK+x(f|)f&uEZ(=lixPPdkq?O}$KTNVI8xQc{ zBbXISvz9hRid0(jr-QALk#m?l2zG>yhR*R>?)`9_FrA{7dPi{Od7>@LV6xFIvCm4I ztLKfH{L~cHVyZ2+9|{?pGl>VZWcjNGIgr9Jq@lLqHsCxdwl>Ia1Sa)Haeahb24|Dq zG~T+g!@c`uY4eK@=}F8g&;DQcpbePC6T@|kBLUf(J<^<`mv{24rVIz#K|+D9X^l3> za0Le(RIxrPZ*+muHQy$t!XQ#qnP`h+SNGfKX$xI6jcC={C%pLy!-MQH7Bio(>_-Wo zVrMVRs7ix_HfFG^MYVIA`}SGOqdsdz6x{lvD?Q;J(u6-C{`$s_ToXOFE{Z1?lt7W z7JPUaZLZpqk#1(|kbvLzHR>1fhfO`k;xoCCM86p?n&0c;t++3<|GoOn}a-M&snBcsO3Fnf^gx zKfM~a(1ntj@mr7NB$cMDm}0nnD;eM(6YH5E4-8>{sg3$IeNm^n_pFM!ohhegk*l!y zasI72-2NaqSfz0TNYq|Cit46u_io0*#@}sqQph?&oYsM<^IS3Qh*2f4_Wz zFBL3kwp8I4gjY6o==)C3t<8g|fVi0i0OugaMroBiH6jyi1bR=VZNyH@)4`KU6%vZGqdQ1a zOE;T8sgFsAP534GAU9MIwILQE?&3KbhVP!053>ZN38P^kQIIg8U9{S9@LVX%c$tb~ z{~Zn%TsJVGeoI;+W;%??-#_RPBz6^CS|ztTQnZe!i@p@-yyEE6N`beu$Q-HsTK#(! zmde_yK=xw1GUQ6{s)1~Q4o0bm5or>utej#3v++KP5=82zv zO}a%YT7b*otg(CHuSFfO`C}u8gQmB~+fv~opPsd+IIF~TFI0Y+5nxEV-1#J@DRHl| zH%_VV++?tMKWG6R-p?5!s8wdWQ=R6uqh4m1h9My$@YXc1B*ErlYxr~dtEMu=VVLT0 zED=_mY@qYiU`FtE@%xsUB8F*TA6>KdmJsTOwH|N+#ap1d9cs0YcK@)iU#nBZ?CVk^ z*_k0uXRJ*N0gA0TMfd#&zEXA9r4US0`fp0_9A*FxCU~>eLxV{4+}ohRP`ec3zd~RA zGN;DZ$dA15koK)7W4GVI+m{6ubewgttie7|9=YH*f~^I|bS~NmJWB~Mjt()oe0y{1i^MeAuK>t}yz zTH>H+z2)A!Diy-C!iXcD87=XS{9~D~ZZ|%aCTFQ72>}B8eLb;|lEBJY^V5%$ek%FU zG~oL>Tq$;f>A$#Ol1{bse2AVMQn3V0pvz&`oufTADy_t8+@@O+@ zgPs%@&ZPmVx}k;plCZnu+*aSd-yzGd#-1T|_HrI0XJ)vh&gM0+PMls60kTJo9v}>+JxH=Q)OWk#-~%hfl@?jD z^-&59hErxFALX30a6wJ);=PVMxW+;@)50G>9L(g zdw#^A6dzs<8`N>R($^3-y^l;=gjIc>5F_>$J?s06R{VGBMd?td)8dhj<1wckZ7Nwgc8G3*_=&0YE@Qt(jg|&%lh4xVq^deCM9-Mv4H8fG^r!*cm zaiTaAtk4eampLgsZ+EHEGuSA6xX-*xKzJNh8|%mvD1C}b7-WU%U>!)YjTON!W%rrs z?NHG{Pn^+bL^Xs1#ab{l1Wh5LaS}3S*i&GKZVt*Y`V6l2?Ozj!2-A94X;ca{NoFy{ ztZk0RWdyAV+cqe_*6H4H3C~Q3wDiguu{m)X(2(;J`d)2bomCC5d0}HdL_fu?f6kL- zbS)xmYpLhd!l7%Q8&nMT8c5z8kbw@s3sek|U`p|2Gz4=pS3<1dF)v*26QDwFR%c^6 zoK+c0(Bu6=`xuW+?m9>*iTej0L2zw64Vj3FZt=zZEHqJw+t~!fUqdzgqVKuH{1WY0 z)iBIoKWPJ`OG3G48<5&8q0%BC1CCaa;|KuU=PT*$jd;4fc3FYMMztN4)m_8R{I!*v zz2_f}pLcZ)@EtaO1+Xj#86yTK5ljb=dZnNM13lkyPfNSdO@?J5QTZ0>IE+7Qf_Jej zT;#Sw8Jddg5cNOw8!|s^^^@A67m9IlI781hvhBp{uAV7v;Jx1(PJpPkU=B4gMI6m$ zCGBonLzRDZkk~D2h<%|3#ad-S!*4$lcRfNeauKJ8YC9k^H~Muzsv8mKP*^eV8(Q5q zjGU7-;~ZfH-#|r3QBLsMwvTUCi97Po8@n@MS4Ly<~z8vU$nX_exGqS_U@(sww7||b%2Bs zifC#%_*u|-0Q1#ubhND$Xb>6ro^5ntBb;P0(OvU3v3cC~_D!mqM?gwM+d5elm?L;$ z9sR_f4@??*#BPCyNfBingE3qd!1n-jPb)i-hz#bGUKcFW>6#gUq{{$M zsp<1GWNE2>$VzjuJsr(`J}Z&6J)JN?om1ySx{I4L4Ro1=s|d zz3pnWl_vxYdio2fIi4?{C1zSSRA>W|o{) zcKR_b(GvQ%iH&&NHYV?nSHciXku5;3fEAj$vXE9164=;;Tj)jaQ(uHun-v>Ki+Z^c zJFHVtz=Q0N>HlV9S7N9zpZ~R;Kd91XPHJPEFhvlrjgHKQsv$dwOzfees5DlcsfI=iXD+fOnElFW3Y;$_ zq%3@!d{z{=#VSdWTDt(k#K;@(Rx5MtN@rLjm>xdnVnh%zt5^yTwjq3XK1QihK1~PJ zo`nYk2JUgj>S}BSjD>@SC3CCkJs1(WqUvmkP@0%NRFGsos2L>**-@lw>ypeH9Hs?} zBVtiPg^qPk@#DS>Yq<^A`t{zfMu<>D*xP2YR^{^D)k+&%+g8@*GmLl86`|jlnwhe* z$OIxvVnZgPPMK&v1rtwYzfw`{cXLvi7?wAstdzOaq7>a*Vlvv-EK{9YpQd0frks>0wyFT9rh)b5Z728U zE(}T<|L2$ccmyYtO?q2;8bSZi_A5@bgo2Xj`7sK7Y+xNO+5mhLk+v^YE)K-38|0m> z+xOXx+%m=TER+?4cVsW6$YNF-s?Opw=PI_NjHeucFZ&0Q~Xew;{Nx>lZ49PD_ z)LPW1j|fcTQ0lyIDQzmB8`#_64|@NJz(v*pQj`=1K0?D9b){E1kTB#T zC3}KC*&{{u0X+d7OaBy`=&H)u=FMr_V>eL@AkJOEYI zHP*p;(JNGem>y!yA&Ug377}|>9;5-V>0n&U`Wx1rm5HXze@k|Bh+qDtZH9}bG2k!U z?}EFZ2P|VJYXEM~(+Jw9aa4Y%gEYt}cHWO;`~uvM<#{aikWnLh;tAW=4i2W<^o zS{|i_<4JXQ&*Xw$kToUgtXHsWtj%G)iD!Mroi5#i$@TM@%o{=QDN(_9?{!xwk1F1h zRE}!g2O+1d_>icBr@C49ma1m98?9%B^RVI#+^OG6S)6<~f3VcX6D{~~cj`X7GO;8k~XU!?oCR?fgKrW5%FNPZ$ zRo*SqXjOW?T~`E%zFQ{xwh(i23oiam2?m{oFxO4|<&MXk(u^F*7T}?VTEX1vCIt{k zQZJ4Q(arW?ByTP89E}(vd@U|vaV;*3pgJugLdz?2!z1D)4!eETW$x_AVF5WU=>x(6 zE9K6dET9UpV%W(UnwF6Bri(pzK;1yef!JM03`@Den7(t8&1F+1N1-tw@3tYPT0Sb9YFh$-jcG$k|& zYAf{wI4I1YuGfOs_VfwaS$z|$J_GU}N&Jfw#z!D?|8&fGhVB)ch)oa{gL>WEd$^7X z*hNv>r*nar$67`_Zl)lWFZBoM;*TVZOr3!OTL0a$h5*$~~jfcS)X14 zzKkIXkJV`e5W^{2Fz)sCNsQ2Nx=&4Q+8xhaN#iSC-<=$f@V<@i1T1+n(w_CR6`lJ*V+ z?zKBlK?|drSyTK%0|pBEg9C~8IpeG=#(tbsj@is{&tJ_#FnynF3?)~J@MbYHqYv+< zf^%p4-J2OgXz)MNL%DzM7EV<5xrLTV4UAu{TMI8c>1Da?PFC%XnT2z`Q8oqSkFF@_ zT%1vZW7uQgZCi0Pc1t3IQkbWl`@10^0PeameoemAf$RGq;3ckob&~%|mYjdFzbGCp zrl)wh-$cq7CrdPYpcrDJ6^R~dxUJfG-H;Gi0rl9G>27t6_e71+45IwfILc<0zT<_A zQbOWWK!Y9`py&j+Ff!y%xOJ%k7BV-i{X!>WCP)dWsrJ9J1}Rt>OD&^*tW>+<_X{P) z83%^&v*>aO!)bo>z70uR}+lh65NK|NZAQ(5r$r1rZa|V&~GCh`1uz3 zm!%G`^8yRk4zK-<_hxrrsYITg1^A@v9nYu4n+$@l0i6azUkK=+3t|2DoR*Ci;sq=%3gQwz9tRPfKJ-~UeLGP zg*U+vd8TB_Zslfl2^eF&3%dSgP zTK~rp{K%~Jqpk2uF^>0BYv8l2vUz8}ViF5DZUCZ=Ok zIPVR0o@H)f5Q&|-0130Hw9y7b z@}$iwOF(zo5!|Z`7|>buKDEeQv*2Staf&Uyemrg>@sJ`-X{;2Xdu95vasD#{{ZOV){Z3H5Xfucr1CQyF{iRJh$=YDUXAm+?gQ`Ho z_c3s#b^3}nd~?Cxd0PPL1h2Z74USx9SXJUqL!juyB{n z5Fb9EktmmCo(yIVP&jd(I@vVJc{|W`+K;s96siK9FcN-r1Y6%tLz2&>Ss1 z#GfFBE60m#CYHE-nc03B_l!Ur@fCm&nV#P1(tGT7X<&@ZAAYvRel{!vZYW)&+H&@n zRL!U_HbF+jHen*o@#cSj8=t$1hN#YjHGfl@ELfXS%&Dy7^ygIs2H7L$2MlP|<+!A2 z#-$U~{l~wE@eVQa0J^`7GUoW_aKm+cRh}e{QZ)X|D%sd(3>M=1-1)3D??{ld9CFpTcnm=Kz3yoArOQ-!W3 zC1T8mv{2X@Rbdi(6qd6}i&5oec3qk?f842~+x~>a{O&re-VDqLYC=sB}0GAKFll?2@Wv1!$Yf zCX*c1?(<5lnRnYo%ohuEL2j|&MhtpSa4=096bx5B*76HdBLN2&;@3&cB3&=sc~X@* zja$@ewgzOlM{#_x*|0?agK&rh?B#tJ+KB79-Y?aUK&U4WgZA{txwkADmv)nrwZl`9 zG5chlZdrE#;%v8>mq6?>ytQJLHE|FnBcpx03%H!xf(k>gzqi5X84Hi`9O8N{JcMhTT4%6;|uMm zV|kiU(*eP_paw$~aG#tj-)yejSIi=TmG_CriFHBB{i?1ws5<7@0tpcGfAN#s`W`S@ z)<<2f6xz`zs;F4&TN5ILrs;eiqOB!Bk|2%6^{SD>2cI$RLRsW%o8tpHXhrV_OCw3M8aSRL!S*~7I)bs!)-p3GjkIW;=J$*m$(+KHxU8=FB{px3~^q-ss8L;PpDVp=m)3>iLNUK zX0W?}-zH-TWp}+%kpI-JU?B+110FuSwI#-{Z)Xr$mF!hi7shr4gQ=_#7 zL^f$~cpfhylm;f1;EU&pkXNJxoOvdhhMAy)fNvKw(>qSB(bzfOyRdf?y)y_XS{>wh z*}reRJ5AX+jhz=pG_wQ5J6=z?8@+ZUTkcqx@1=k+Qj_E~`#B2Xbz)C(Eot7$FQH|Bi%cOfzGY`PW3CKF9j$`vWB0Raq*p+G3L zC}&};^uhPdJo$ZpTy2w~0!f0OgEo}+=0rQhxVqImeVi7S``hG%(e=3x_vgXG8)Rqf zH{KvD*S=YS0=2LKVi)q!8Cy2)-{j8e@iR&-1>4M_ljA7K z;UwI?;l_1Iw(4?@KYjuLK|sF0DCbgO6fn{U8T*M9=MY}tf7X=rsUmgDMxCRVaWxX> zLV41{P$d2;k}CdabG%;rSAYV4XA&=joyVy!kT7EnQ z(-Yaj7?gsUNgulWWjNquq~`4-2E_?6|2+2D_}HW9E`YJiZu|1CUM7}qxTA_Zw+`ck zT!gU@CKMv8jdKe*X*|;@MI1xVsSEZJ1ki4_KUv<0pYW92rveP)3JOk>g^&(%HV5Rb zgkC$!v8@pm&!ptu)lWy48L+H?WgsNe7gt_j$tFccP+2BeSYjYpqg7Po+eVFnMa64D z$yXZ{9C<=hd=>l)Z@VBqC{$i7jdCER==u%I0I>MCo`s+817eSffqpfyRy_!Yz9-{_ z5iT9m#Lo#h^^BgKR2F9`KS6IUsk2~ZULbY*2){k`pf!dW8t*5vA;F-!nOUKTaKkx? zd7Cn8LA@npA3#@|RYTYALZRFGJ|s|n?JOeQA8qL2Lc~4nd-W14!hvWO$Y?T}yH88} z2=`T4-fts@x-0!%44#5nS=*~41sODll=K1Rhr;$uA1OxHh*JWT-HnKb|g+0vACdeX>>T-L*}&#I}JSuMVL36aYD z>QdMc(bpF74c6Fw{u{^ks(k-YjFT9|bxGYGmdce5m^n;HhxEF6wdRV!`*4uC0Fu(t zJd!o#w~&0uLoB&eoJJ}_v++y(cgO4Bf7utdQG#x*mt<^V5~bH*Rkzk$2Rq@MthBAn zpRWaBXQ!_;9}rcg$ErNNIR@M11HJS7Q@7_v4iAPo&;ckzl8rMgX{vy_pO!Kt+P3X2 z42MVA;qp$OQnPnSL?ySOa~)g5n1O|-Fu9t?eNJlyK-(!CwtR=5Osm5>)P2~m-Dky? z*}S2)Y4NG=j;gkLbxl0;dIUfj!YN>ru^Shc6G@EBr7v$D41@Cou}yC}MIX+34%$7VadN<$btWxV=g9KMJ!$u;x15SKLV` z5;U8<?>Q1e3#39CdKDx(sWj{45N?^yY{3} z`!b=}2o^xC9wQMCYZ)&Cbm`Mp!l9pOCII-7S=M}|8a8<1ka+z_{kWM74`Jpx>t2_+ zMy>xC3o~2MYzjot?=r52J3;ICV%J7X@;S6BL&x$(aWVLVZvSxl)X2IYjTqNbKZ1Sy zz+2pyYi{B9kUUL;{&L29TOjjpMg{1^0(gGrJrZOmQGJXc6Sg*ujjj}GN*lMB=Wsu@ zZCct^&s!zd6FEPVf&xOCVta&(2x>^Ud zr>wxx#`di0dvN23YkK}9igY0aL&n%NpHJ`>qRkyr+5U>+xN~pPo~%Rp43Ys)QD&~e zDd9xhZljNH9^4Y@kWXNwPpuzcG!mN+<;<<#o0X-8@C^sapu1i>3~;^>=^%Fsseg?f zVVt$1VO$h%JFzi3@j<&Y+x{NHY2}l9U5Ttn(t>SIK2hMHaHKikzkpvL5x=@jHre#R zjU@yIO4Tm{W5~D8-pA)T5y+lkr11CRZ%kSi_lN~`YDJYS&(g@dR=RO^|5Qs`^E=hF z^GbqSM+V2TTxftR*a*-+jsc6OrY&{6o&Jdoi9>WvZ7k7t2Tyg?uU~E-4)z?f*pf;O z`hCP-Xnj=zU=cy(mcYEF6&iN{c)MQ9vCRs#F|mhOCoJEbPpC8%B^}Ii3e(}=8WR6s z-aqs|eq&Kiy)-CUgq#Nx7(eMNm|$}}L#QO(-DHjc?4N}22=fQ7(FW31nAGEhVO7p>INnVegFBN3h3=7O?K>NCC-{Ba#02-`+Z3y#w2{1v- zhxkW1!kr@9UBq@{V$UwFVBHG#Ds92~)Ku>>>caSBJK`0~YeFAMi-q@j8uGY#n94BM zH`im$HDP|-S%MbuLF|)tW@rlgWxe&LKoPsOi6H7{dPo;OmxylSK(!B43Wd)k*IG^* zJk0J-JIAW3Qh(?#Bm%!|K)N55K>NSxj%!u3F+Vz=ML`ZVK|c8n+b*-qF4=Mwe}T*t zLBJTXS4vnEHy?j;Bn?h)Lk@8HnQ4W!v6HafLzx59-H4%n14lkC;zK*nIMVczgVCFV zT$=4$mx)b#sH|<3U}g|`kS#ZMzl{%7M!e~} z8Dm%4-E)PYo{kQ#J#!ty#m`%~&nu#<2vuj!rmR?hNPRg}nF;G@ixxhx*!O zK&@<$R!HBnGi$gs4ds$lrC3q$F*r={io3C<8Zdgv)46U&>3{c9vW>NRkLC;$fp21=H4SPR^6<0jFFm*k)Gv; zkXXbu>G^lufO)t%*(CBmF*L`6yM@g)AW}q5$gEC2t(~I zBLZNET%|ZrdbG6=Vz7t<*C_)#lh77E-k!sw*L4U+P4dk$78+2Q3AW7x)}KnptUH;Z zWa?Yy*hMKy&V@ZNVD2%hWISP|w!2GPR}xGZ$0Y~PYI>~)gju+Fk23WEvW()$64*Yi zoCpcxRk39OJ@Tt+}>?=41MIe}aFoRM#G~19=43A#~AX zc*Ta#1lwaMktn3l0LTTd0~XlfRW~ZaNSZ;w?(|<1{DC*7H-beUz|RJ#_*-;mGxX() z^F3PPI^g$#8$!R6I|HsQzi8GpgHkL7%i_n6#%n>A;HGrhma9&yRm@Y*&bBS{N9p%kdp)zfe3IJoF=Lu zzQ#@h?*h6lkf$yIAkFa(C$_}SgH{o{`gYXoqt7fb!t|&-afNl@tV0w$g~a+IV^}C-eVy!t0QKvJmKkCcS)rq#wtstE>n`K z&L@^UKTeiD&}>1VHF?Cx@kA^0qIAFI&{! z6&}XP*~+lBIF%Q;-}3P$LhhaN|uz53`dQpk%1aN-}F?U zYgiw7T(B-Ol^|C5u#F*<-hx1i{lr+&db{Sxp#X#O>$TgW4tXfZNvXJ&#GcOrarKmk z&64%uwdP=fQF@Z=<)oY)Y=*caRRc^u8`OO27!+D^r}k_8;+6GXJ+)5*WK^`c6jS2+ z)C^IM=cmOX%}V!5-aJ!cY~~vg2)Gck9@5NF?3X7 zkt5(8+Le04hZI#PC~|(`cbGb#H?S*A=wXof@pyZl`o-NM{|jx=BU23Cs7nEU$tMB% zn_gbz`&cGLYDV%kM1^_EWKNsrOjdC2=eKWSe*xzSaI#9mXfsf#0EIauK}ZlOXtjvr zObR$k-hx^X+3tGoQQuE|GPMP4pu5TQD;3KMp_;;Y1|%iv+P~YGss33g_0=A6C+Uc> zo5!zT4eJ6E3%$0jbYvFU5uZ#`!Bg0~gJE+m?mo^GHsBd^L6eq-ES^5XUT;N6Mj}a7 zS6FA89O^*+CNKOPp}MiN{s-#F*jS>lS8h7RhO58D{Gt`$SR#ajz!5s={PMh2&n@ap z*JW}{o@#ArTZ9*&UD!tlYo=$Gg*`tXm(m!s1O>GDx}HwqIk zM#cH--=tM!Dm-FgwsmREv8R*ZZFtFx05Trx0HP>qr1(`5)EiJ%N{MH<=R)E5(nej` zQfk@cnT4(X5G|nkMisaZFq7iID-iL8mJ*bUQkeP11)`CsYiXs|1W`s;WrqwghnFF9 z8);FvbxeDDUY|B8RRX}jzL8j{JA@Ohod^t^4}J0TyD8;Y<pFzih;eWus+OCVG7h9l2TkCLjWI?SK2fIM6w6)%kNX@=s6Mhko*zaUxrjrd-!W$ z6#yD3XY1|jXnr(IglpxenocP1f-I{8QS#pm*R#Zm&>5u_1M6!qQ+s&pVxVU>#1c$_ z{WAEH$hRn4Kd!RPci!#>Wv>LQz8tA#9dx0anaX^ZI30EbCUryVrYxO7^EB)Lm<u|!7g9bj-+D1|p$z`iR|+G<7b z_&<_1u+;die2?E?*PP2ljaonH5`ygwu}){HW&`;}?CuDbk5Y?}iXk56JZj-I-(ijj z8AAjUXSrVA*zP~hF?pz8RnH+G|G}Xx=2TcikB$T$Q9Gp=H)NK)Fw<87(3}ttYSvxl zE+HJJ-|CV4f6RyfzvR2wTKYd?#W$Vb)KwFRu_Ms6rgo)Ltws}(>9auzwSMo0cCPW; z2&`ro9KEX;#e`gKSO!XBr(t>Py9faCPBPF3GZ{5n`c_O%FZf1{9xoYHFtwCU~vQD%h6 z4fIyYU1&?0wnT_F^d3&Svo(k;v=x&&vB+>er*7o3Bc)_BB_d9SQr_c^&($W7P8 z`#Tj*)|n<*OW^m(^_Q(L0a8X@Y70uJ)A+~O7sK16EqSb{ubS~)wMeZ#ni2)YqwN=k zX6C%;bIU5Ki7dj6r?>6WVED}?gNmb7284a_gOEq zj7*wmp2%P~J)fsvyOiQD?semk9AYl~~YN+_> zxm+#Xq0d;n)$r|asUqF%RWh*Wff=%j+Z#Z|e?9DA({RZDl*A2X{cp4JPJrXhpG_GF zZ~C;xb0%KLB)f9LEh{X*1qa1jqy%Bvf{1GHCad77Y`>EL-JW=7E2+G}nfZIJf!4 zn**?*q_~iN8^pC+_th$K&;q5y?otGj97(T(y?O*ER=tET&y4HfZqlFXSyYsoq^?ik z%aJmw)Iwz_J>g0?EZ;bmt)Z!i&jHf$@{*82`9nfMnMF%%e1S zd;N+=$OP03UNnu-_l?{a`zGvhmdpn4ZBBEwvu&(-L!M0|I{!CHml1AF;?q~9V3bf z$^a=HE5k1v;Jj1~z4J#rs2xz%S?q)JrCXDBFgzMjWYEZ~M=y&am+Fz?RBinrOZ(4=~d_H4S@mVo_(DbNzbvGrk zAX%rgNW^V2SW&EELJv_u{#bzUvEpCg)8T0(A`+AW{8=UvyH75_ejx-TGSblcHaDde zxbhx`>q+R`AI!?Re=Rykn{>i2U9tE8buO^ku+1Q6h=MAhyWQKK z)hUaFZhH23$PwRuFQJvZyc2fR)lA@7@fhIns#LVu=Ud83P$cFlO&%|8y9M@pq$Bem zE0OOadP{56__S-qyljFoTDf`+m>sSx8C_c2)&U<-$4s5#BvF2o7g2>`UaHfH_#J>0 z+at~;F1s-Tx!Fr}rl}5rlwnyg9MO>eSZ;^XqzghQ-ZK>-v=w`&S->eSE(7K3(h z8~)HA%eN1U-lG4esp@fW4Fj2`r#uS1X zVwk!$Xb+GYnI>)-7HjikN_=6@^t#iQa*tn7ekmc)u@NSX@Qxnn_f-~TcCU$Es{mmp*1EyswRDge`ToBH-ZP1JEcFTib;EQ5@TcX z;gVm#1h!ExthB8_&Wi=Fab_1|NN}x~`AVb!JXE$xl@TUX!u#mXs-)>W`auhzY4F#$uB5 zTk-my@B5gwC3t4+G+bjk$}6fOJx;X?sbdmb zIqvJb_A?6j%5f=%(b#p!i2QId%}=t@AY?cfCSFIb^C>I^U}@hea-#181Sdz}|6@tE z8d!pd>3rIu57fC@m24%g@|A`ruGhiltsAh$!(lyp0)LjfkDc?|B_`zY8&J{sHAe$b zFsbLU?6+uDc>{2PGxbjq2uD9+=o%Xrek>D+dd05@-wy4~u99`8;-nl@W6jFG+A~?r z14&cQr>_SBVB7}N7w9le&$VHMT`2?Geq3?vE?!28-Wdfee4vynw9o%ER(kpm3(eyg$7xgoC!>>w>{q0}P1ZN;Sa zN=WP=9~A><4rgj3y6i25_nSLif{Y~mbGv{W;mb6>BnzsFRs>K29>Nt{;jAJ0?!!oiWm$*B*0h( z?G&+h{-@QBpTfCm4CO3>lD;)rd7CzQ4o64IIy4gzj68)P9r7MI25mqC2JG*SWfV&+ zb8!ZXNhXoX^NUE|SP*WhYK8=+KcxiN5&s#OUG#He-{e5ad(^zCW`*k$7trKg6g>1q z_kgaVi%+m28iSXVhCVIBv|ne}@X{_|=qA9#HJfB?F~XVJn60&_QYuXCXo;wiN}LmAc3}XNL_myRzdy-7S27?J zo1oB^r z<^Vkn)f6oQ8IoVPIis?d)1aRHD|MI4{HWWR9KPFO`m5a8^Y=%ZuZI3Zen?-H1kT%n zpz0xX9`S|wt~7#>jqE2Nx`*Z?sB#DZHeiP73r!gQkC0LM%zp$CtYg<8QjTo)&YxYr z(R~30fUF@!%|tA?atckc7;qZs#Vk+77I!>m3~l7JEWi3F=!eOYFo{DFrcp7XcchC7 zohq>(Q@uyb%C@!3!R>XamRu+7ifiv(vxJOmc{dcmlN6_ zMWBT0?UXF+Q>008+x&SGVxzb48!X=^H1N&1VF&Q|`uTalDBbzmv5`yna2`g@Dq@4I zFO4kgJ4kLz5nr+<$DP7@*4XJO={-5fpp2QCjetO8uf-Nqz|7X=7b%}+MGkc!QdQp`(1u}Yq^bK1BR8!9 z^Sk~=iZpLUyWe@xMX!#VBRY4@oIC3n*PI}11FyF^*6SoJ`is|((Xc+2e>NFTa0aLKEy?*0K&inlNCgzB zS89qW`C!nzni&hnnS}ZwM3_(!;(F_ArFQQK8>d`SPiHM&LQ-C!8nRsdXt| zj{!C#4rg|=cuG}}_cW#7<&xzoin^G(s(joDWlXd!x5gJuE4j z11w`7b#T&nHJYiE+eyxha|&q9g~8>hvibSxlvp&W&0oVdJo01GJ$yB69X&gOJ*Eod z0(;F8IMv{r-gq;ljh?)poq3W$f5v zEr}JTa1OV|Ll&$lW2qu)c!HgESIV&T$~f(00NV`t>KiAbBt?t3zV9(;Z+oENjE%nW zAGKy7@rLXC83A4~cbL1*YCFE@1q=wTJ@o(T4@mPVB}Z&YG?xD?8T7mVgvID4fMR@; zcNZ~%Cinf5_n&VqUU?Usz}ID!2L@g1bL`k9&6h7HhJh`|Hz;cAHC!=}`c=0zE)7E` zuq-w++XXk?gr{PGjphkJhQ>rpf3<87MQf9F?_0rNcnsyVe~JGun4ne|ggqs~W{ z5u2%ImvSg}Z(?sIxSsN%+o$Wd%sdwddBkXQ^JV_VSVA0tY?Rn<0-pdf$)7-9!28y_ zZnKIT`*q>=Txw;qqdH@5YKMYJCFxD5>oO>w`_{*e3rrB|>}J;MmS3M&7hdg848eZ0 z2*ZEhE-zOXGE@kCe2f{V%!6N3`Izt>_P`w5>AdYGClg*WEm+XFJuA*YwP{5H+UH=v zTO03XKLEutsP{Bz+zzp8vS0S8Z(K~@S#bT?R$8Ky7`{9fPp%S%KE3`YU<}zH$}y)h zN)TO8q9cCgPDq}{2Fypa+n9{$Hj;ar1d})ffHcd7fY(k1c0>K%g*9eLRE(=($?vBefGAPBy zTUjLO{jIVJDK3g9d=UH!kB5%U0!9k>`tCfCc0a+R(2jO~d7?F{aE&QJ$xWa?I)Vf6 z394sUi!R#wxQ;5mhjZ$0W=pmc-Wc)LWY2RH^SbKavrJxB0?n&Ui$WAuB3roH^xc4I zqlELEc}E2`btalKlrKIl7U+gBz8mJ}UnSJ>6g+2Gt&_O|=01 zdX$!-@afr>evrJ#R4WFLJd&FpKk6jAA=9cf@@%bbaw67DRAtI1k+<8hBf9&d)qH3ZBYfUYBCudcu*=kM*j&}6TJ-(;LK98uSS{57;A?7+fCWPZCYqy)^NDlQh zlwhB%O8zlmxk>R9IL8n6q3un#CL4hKVpu&kA{P#Ur;1Iz`uPnsdrx-#fDzl{Flqmd zLAi$um|ZbF<(Zujo9))TV6GDIO$X34-XzZWXWC9PF~J!k>@Ytdl}DC0lc+W7fN2$ zcJ_j&zU2w=Q;D_?UheU}u{Qdf#f~!(XZp2Cu<%FUU&Bj?$PgGo2nKZ8&aIWWZIabw{1kIWYItZ zNFGp?<2|`EA;U=@znHzoytPssZqj`U^Us<8-02L1`-<9x1KVfDSgw2w5MJUkQN@)c z0ajRP6+K7=Z-XU%92J}vI-X_r6ecG#6^zY#q`Reh{Vf%6;cQZSW4+2tnPTNWUI|pG6ChO1 zRFE!}60L_(VR=)Dbv2~mX&Xp36~?j5m2~qvE+k0;uZE*%+=f%Qr*FQ0=x8_7yPRix zH@;|mOlYebF~v^u*jy8GM1Wgdzhc+7myuUQOgHjk$XFfJGSNfdkKrerJ{%|SK&NF> z*kqga5-O7+f)a$MF{QiKgm*f}ZkgF6!ac-VMdC2aRh;a(;5-5wPuOBHGK`^<^%24} z%2E;Cucds*X6}yn7E4PD$76eYDci23 z_h^Ieu1;6sv*|p0j)Bj0~N6pOd2>fu+Zwz3BL5ID})r7jc^Xt z%?8y=zhgk(O0uJ28aH%_V|1t8^)D+W#<;?ov)GGWzxwOnYuE1J!-#$rJ9hv|Yl3@z zKHZ}wC5dK+Uo9Zyc5W0F@RowYy!ivo)>e(1MSPM zep8&vw})E5I3Brmx&^spF@!bgtEQ9ZB256~C-SE&?BNBk*iD(gv;g~^Li+>XKXJhz zbu{!`M}A1fVZ2I_V=*KN8kdY9VLzr9&w{J7L*Lk}7E;_*o+&t) zFt@Y+xL~9t0&sx+`v~it|KKL(R=4yIV64daTIK3_%?E_>8oTCNA-|+x3!XPWiP1bF zlvb*#_nVl+`IiF?9$?Q5kDYuJzmY8sf6^$bM|?X(Is@sZ!Scq1W8cj`hVnRdpJCu1 zu?y=Kd;?)gFnC=ah5f_>f~^pe1hmZ5yDWLabWE){?V_*WKMU%wPxQ`Q)FGWhbi9So8k>R z&+KnPd~b;npY`xS;*^klSh&d&u2UZVV0D;0ZLKBUM=D&-OR~OE?*XF`tQqh3@m6nZ z6oKipq!>*Ck{64xB-IUx7Z=4S^;D9zVNc4vz&&I7Q7EVB-WJ&*zp%{@ ze|B`-N*mBuJ3N>JgUCvu{LUpe@|z6IpF!!;k=}sd!+Wf-q0Dnjzl?+;_i12Xn1d+b z*C1sJ0PbW7NIz8=;#6id$3Z!Tx8U@`QfmHST)xqmJP{hmy?bu*52}DnGWHwykiWG= zR61k10MX~(o+)|Su%1K+uF2!8Fck{aP8N{W4KeLY!Z~a%6Aa)Zg_sLJb{=*DhJFi3 z^CfuwTGmUeBiJPTjJGe9KIrKa{0|>hqCYHN$nAwztj>hZf5^7MrXQ$ev^@atyfS7y zU3CI5yzAt;KsDkult11IO4n9!r~1DvLT0DxIL^WM)0bb!r9$G#<VQO2- znuhHwpHghQZw4r8u|M`(_=TeL-tJ3tvV&?*&P(|7TuM|7(nq3y#Qwx9Jy048V3(*J zWyoVEl+xA)JdMl%WB7d@#ktjOEaqNWV8{0+W_T`t@E&Ck=zFDmnXY#3;P_X;T$U!y z3kl=TppBbGXJMC2qn+&?aRY|_exeM4$GFo9f_UehQ-4w5=e^}v{(pm(-ZH8H9rD^; zk>ne+m0QZJg?RWsm(*SR>*IExSWWDHKTx_sb*zqEQ#|-d8LR{L&J|x?p6+cIeomH6}^4!?ojq zmXFI+4}=BRIe%VMrx>+7XKsDm8`an~FBE#N`M!Fs4ub<_4c{%6Y;&2Dc)@xBBBmLK zHJgqC`LdMiT}_9jfxdTZ<3<*6&k-dU(L`_~166~tZgYJ+d)>0HUUn1q`Aj#di&;4t z+--*p>WfMJkrukUbo_jfAFd9skvjewmY3BVhnS=H=hIkdgE%kWp4SUa2G;YnPxI!& ze{AfmM0DLOu`wp(xZ2p0({Vpj8iH(G6lv|37vFsEl|g=5h-4HtxI48|`E1Pj zdZGy4N3)AK?(5Hk4G}GeR10!1C^|_OE2XCihKTrjAXYX|z9pw>Md{LH)ddt!j5o)B?)guAyNWUPw~EJEt{<2xF)n@jHG}Jhpj} z0w{SEL6Co-r%6nA7Mx3Q07G*zJ~`Oehf=F)5>3p8ll;HkJNA2mddmbUEfr7WT0WG$ z^F?`FdS~2!?|pH5X!Q=+Vt9 z8RsU6io~yr7eQh5YRkoCVAq^TxV1aeMn2F%RV3u42Nhnd2Oxr)NQl8RYY%3gxv9ZG z(EDIf-Zk^a;oIW2NDT*<#~^&|!vDzf{}Hvse)jUG$(`4gdwP-Hvd#xL)xJ0#7`vKg>f%dT5pR6B%Hc^%End0VOBGpfW^XPXF{E!R=N=Pat=OfBW@b zDF*EJ0OjPtTajpbXUy~U9StIy8eG#@!Ki6fcW}7Lq`QJcgGVURIZ=R?eQDARj6mS#~`0bJvc%JeCL@InJ<{dAWf- z2Ux7&OaPyGIX({9Pg|ljI1wU4EX5RRl-V3#$sZ;Ew}2x`(k{b5KQWmuQxk*Y&P$J^ zs8Qj+NbrdZLN^c2*auJgm&lh|#l$aWfer4Qt^us4f>?yF0VKGPS93d)9x17Bx#sZ` z6cXNzs}Zn!Vh1%@Ca>q3%aSOFAUia~56SvRc82ikOuYDS?78PNy#>Ri?+sV`llLQ6 zL%$*4S(pyW@LFOYYiE5m-VsYk6~gZJ~^zoX$4IFZFma`MV#0L$aY_&NV%apxiUExkZ?}eSy_cq}u>nyMb75sdUdhLR# zw;X6{^YhcOSZ|l)m)HW#-;O;1h#%c2g;s@ltMaEV^y}+RS~UV_}zmjD#21O)Y1q|%Xy~S*!RTSLOyXtt0}P(7S>nz?RAMN*%vL> z2s6dA*b1Fp%$jV`FH9*X^jS-n_<3p|G-~jc3?RrSg!d1Z-&O)LuyVUl~HjOXR1fF@AzW1 z=ajn6|2~-CUo}U=buYed5w!?bElA(G>cECBZh)j#hqr-}jrSZ`P6qvH!IV{vl|LisX@Ue<~LTyDO| zbP@;Y=hv4H_Eig?40eK;Yplb1IbRYNOe}<8SCCjr_D$VI5ew`;g3d!q%$}f@T7V?S zNgj46cvVUYYY;Q_3M-^Mbo@ZNwLACuB&G*W4Txh&a|za{iLnMN5u|^_bA83ZJ=^Z+ z5c`zV=6x3E<$*<`r;&GDVSLhawLxroxmdikencv`Yb63fABvmHyj!d7E4B6S zM|S2ZIiQRSbm&oL5+}J6GjS1?IJ*Y@jh9f10_BaYrByIV$#!T|!>aHnbx;UbA|Y%S znG8^2!b9ZTW}WpR@?lyEY7&Q5y%Ygc&}f;n{oyG0S2)W0%_~_Em7JpWdbjxAfYW0G zmoAwutAsZK3=l|z+-W^JHb#hvO}wRpYtt^|Z(lLl2aauP`K3Wt}gPdy-NH}M-{h+QbclE^ksBH9;*@lI|oqAw&n3 zhljK}{ABbgn>^Z^6R1Rh2IC=}>f&qN{&M^%X@r)05U5kT$b0~E3!B^ZNuX924Ws;A zjTi!XVR#t>3?8hA7|8Jv)a`ENLxcvWQtkbxCuHcbTsg{_FQ9nFotMx(iT--K^Z?l4u~A zN(68yMisFW_c@khP=+=y`yuBQ-fR4=q5YFLKED5rR>lT8h*H^4MLW&Ed0%qT+6+Ij zV|{|B_UXr|0R=qfr&egvBJ9T>a%Mfkr8@CUdq$st+KvTqB5XRS$r^ODyTh}tJ-(YZId1m-=!G3Ein!g_oNNgqsxE_}NO<*D)=It}HR| zP0+-`gCWT)h;Jal#@d?=*a^LTQW?U*?~)Z_hq2I!yd@H82A`KUD?-A>t(K63UM4d;XJBx#7SH0cic^EV>>c#EW1PZ_;hgeej4Z4RjC^nILzOR9Q_g~AN z2MjaGZ4mT}=CLI)%mFhnT%zdPs8Ipl*WQV6b~Qn@&my`H4YwREp6)Y1C4l)}mc`9( zKDq*SkI++cFwQGR1-wv34?99C6LyOmA3UDGpc9k^Nez!x2iX9{ zCi7NNq68%;xBu{?0tk=*Hd{pL9^@p+IrG2-Rpe)0je}GW1j0Uf_0#^0Lcso=sL_M;!Z9hC=hhnfFYHLwYnGJjaUT(a2rToNz%P|BMcC<6f4V<1oo?(Nd@kft~;u+H^L);Y1Jt<#HwVb^pv5|IN^ zu-1}yQzdxe%HG)(St9@$yo}kBFR@`NEYh4JgQj0i?lB=8V2D60D;3gkKJzC%=v zn`^m4Hs~DqcUx-Y`tA?q7m$C%E$BoEZnhTQQyEs84lG(`^l-xMR$F1pJ6<(KeMwfbLQ;05o~qfiLY-ss`Fl&O+!Ux5XRec8*?_kFkOg>y9AGZ_Fi0 z2+?udXD0|yK6%lWuI)7Am?x7os9|HrbGHV9k@$*cFM2#CIlM6E-Pi zkn8GD_Hcol^N4V1njJMW=PW=qOUX}940P?F*5RgEux7lnDgS-^hI`b|(0xlLH>$`S zO`n2n1PWlm;C8e|8f7|eToOfuv3~QFPA+fIKrv@^F&z{~t@mt*r)rf;xlp~FQmo;) z;NE*;2xl};D7zTo=rZf6P23ZqZm?DLLx|B0n%H#e^PShe-yIZ~+x}Z_1y%6{vlXKM zOkoSFrw$EIWuXhYQi=r4SqZNk*UDs@uR~i{I5by3Q%Y5MPzkZvkxw7*qGvT4;8qv? zVb-M#qS;FO^1uIy{Th#3&vCCVKkSkxXEu5{BDuuc6f`n9``+u_v%~ibY_4VIqH7*- zM#(Me_R_EYiW5o1+Y5n-lO@&~U9||dgt$+gWJ_>8|IIN)-}9>NX9zo>1s_&UpbD49n3$MoN<>)F56 zq3ZDXrViWTIdU3YIUA89=KUyfyH2R^yiISL1`_(JRDLxixdCEJJaU-chczKy^FEfe zx~i_2k`(NVrJ2euwNsp;($*u3O!Ej8vcAt1%9IxCi-={luuI?G1x~X$&e3`Nm);jz zlX?v}u)Go)Ssty<>p~he@>~tOXULEJqS;^$saKYmF5w^*p{+F*qnI!)%fXyGJR)j4 z0XXGqvgG^;kPmGjd0kY_}fT;otdaCH*odV}lr%*TII&O<@ zUD+P6MqbojyumZlOBqn%&;N11*_dY7pvCgo0@)Udy|E7L4T zx&_S4^s$0)Dnp62P(RGXtG1ipnM?&PP~M!T` zUEC@$_LY4eOv*voFE|SXl~s~*t@yfw{J>`i?O@R21iMt3TuzY42njvW8GK1P`6?Y& z`TI^^Ix7VZaoIt##k@OPhFIq?kZd;xLbO^h-QMVGwL#nJ*@tj0YhaFV2RxU1hpW`N;_}PO%3o@KWu6FhQJ9&ZL;6dQ&hXU zuwbYo-VugZ_GS7ZVS}v;By<##fI^yDE47t7L(>Vv=oS`cNGh{Pkd z7GzM!Uz+T}*Ys1mg2TRxC?Bj3gN+0SP@$*7+KNE?Q!RYYVnSd+zW<3>D}$WuCvGw- zbHz(S^?jr;F%3h?S!m z0>z$T{YDcy8%H4UOm!g;V#m6X1rsacYtjIr3I0*9)-3`mmW0Pz1EAc0t!#7h$a%~C zdawK=5+0Hq4FSZC^*Q})N+CLNh)gRe2AP#z1Mf$*X*qDe^jHeECDgoY^!Mj8Oz;)XN}4}KG_0QGFu<(jacs>&G>H`Ck% z*5g0TNrJs8&_@lu0c>Sot__!7kQ!^wqI8&Bb%I;TaD4TwAh3sZDD{yTzQTd%DfOFqH+0N_d8>VTTNKo%`81 z8@~&@creVmK0? zIM!7Z9e45EWo3h%bo6?~5z=t&jq<}?L5CKP4&*BMQwmz#FxO9hz0E1ENxSjN6GU^N z1-X8L+fU7yH{4x|eQoO%#!v0(pOAYp2Q5CTn2!A@2A9zBX2s{W>;fOEi?e?X6;yPEvo2s-EbJBIRY|{w znjDQGKsuiiJc%?_1EUT5W4EfmHW4{;Dm1h{@EL;<=L>k}GcrhRJQw;=yv55__R*l$ zB&@L8v~+Ng7I6)oiSK7v1>W7QGP^a?6?!<(Y!Exus>b3${7^1iH4Ovt4#GXa!;5xV z8>L#z`VmZ~d^3qUEiYQTa6<*&nKA`GhYgJYbCVbR5KC5;MJl zVPT91Zgc?X1~dSoPsI05#5dK_Vljk^!(uJ1S9;SJX|ynEhuQaCNo3S2K& z+Nq(*!|ASUIjw(haI*57AHaxbU?_RnDxxa;h#^1VkR~OK09HRLHV^u!45)@Zy4W8H z1M@GtY6HW_2cAZB01xk%9Yep-hc2E@el@N1e*vJm9)nXziL$>s0=<3?=6ucE`j}>j z_@@o(Ww!J=DxYOx?WX*VdqEeRSFhj;=jmi)WN|e(!eh)Ck{o^DL?EN|6u}70 zH8rqP_*rTBI%(6u4K5{QIOpfQ0(!6Fm)#|fpp`^og>Yjtj{~@K^vCLqsHE;V|Bumy zHNgIGD@TbS3)5zrC|1+qN9ji5!K4C*gc}?aswXA(vzqJZoU&g;R&e? zRkoe1RhVHCP%|Z}dag?yBiM4&~H|FqbK$oYBxwkUiRE4PuoiTH-x9CBQ(3`TG1DmJ#n)w zjKT;cJbmkOIi|=&dy=-etvhMu+JqyX8!WjkD|&gS&CLKqrvA4$fs9Dajs1+1$NcXv zpT3Fgsrpj5x>pAx#zwKYb{E(l(Az~b%PwgUwTtu&D+z5LvKfl_f4r#);)a?0fa##J zi?Rv9$;96&c}4M5(@yQi&fFr+E7pCgq%;;sJqE4%Zr3^v9V_gb%UfnX*@e^f z*n+5dpc<`9at<*RMQ6g^pNKUzfCpXd8`m_^$(an5Zs(l{mLP?Gox3t16IF>of70tZ z^Abfg9Bdiy_(Ejw|8C zAJ-evwQxe+ZzN1siH_DPPLMRgc_*3pDZH_VpW)r5sQ)TM2*tzC<3FPiH}@)5O`&lJ zL()nf`SL0m+Juq{9O@rpB(A>|9FC%rDLe)05aT@7LJ!r-;^Im&=^mP&DTJymO^8ST ziV~s_!jf>Ql)N|>k`!+0yt3t>)!o=JC&E9}%w?qwR3-1;lZ{4fK-0MAzLcpC*GL6K(;&d<_bC4}FugVNNeb2@ya9&1b{iNJeWE>*Hf6SC zvo3(yf?UIZr>ee>06a!9b1{s=(&eya-hI60q350gvDDTQ*)+W8G)1r$xh!lg2wDdt znehP+jkE#7IKA#hmAY(Nbo9Ncw;DHPK(5OIrEG?;YZ@}0L6K_WVs{&4EHYIcgd`c` zU);u=;jh30jFFpf)IsY9bt;NEV?Owa1 zT!E`KyrbYDZULxNT|2F)6;DO)?3$CY)-l>oPy_`%YCYH;k9@;CmJ67l{LL@=qm79sGUy(9^bD)K$HZpU z^RsPT;M@`nSkUn`oXw(^{|%=VGE+kTb4v~$sjm*9qD+k+Ify_G&SwZjls^}G3QwXJ zQfHoX6e6|U2H{mxE~FWAj>#|w<_04X*MzU6c%jO~uYKS~V!gGzlKXu`0xn^$ z5mx>_QScj4suUhAz`=ERV6V6o1udd?EU_sBzQGElaDqQ5DRDbC5crx_sRYr;Ar}`E zsQpjge%C6kTzbSPfGAUq<JqAf`DXogt!!De!qMalhPsCdOuhCUv+o$}{A0pT zM_`0tbU>m2l*!mxuB%x$CF-A_YReor>j4GkdjD!8JBoMhlEv!*!_Da1W~Ww0^sMG; z3|aVqy@9fe_$}NBXa(<|iaOGgc%Of@rcjVJprZPO9!8c33h%XY<8xtS?3Tzrwd1zj ze6s@8GMy;fCMKYsaWnQ8{0vmUQN`kt1tor!T#+Sf0ob~V`CO%OOqpgh64cI8*fn|9 zEsx}6S_ggaEO9)D>3(5QJCIkuN3=ofYSZR-3LY0g+2)+K;HzdMzvEB}`;lfl4mY~U z%CT-}*wahc)U&>Sa(eHp^9q-x_H4m-#-Tt7>~{nWXu zK+XIQL4v#(dKMxKsrZ=CP6}zM_DWFsojJTNm@53ypGw|hdbl~pim8CsHJtSbbU(lF zA{hM%tL3G+h~?DGy6`*(5h{Z2fnipE)x#YGG~W3gA5tVPLp)-TBkMxR%V_iUMDVIc zadN5MozOnA8>Omo#X(S^iuHb2Yiq34V*SJq_%FtRiUa+uxY?F~Iv&u7+$u}As!)G? zmu_ier}DuCiG(9p3poIS7Tj^f&kZNSeVJ`^m)^8!SPFKFv&}6h6$w(7OGq0g(l#R< z;r{-dYme9!L?ou*tvrOjXuBYMXj6#*`|fSEd;e!tQ2C8=jVhi8v$-O_(9hTj3;^j} z|3=R&AN<|UaM9`A;8pLfM6*Q|SZA;Egh0XdU_A*1QTBdWczYJ($S(KWPn}8utT&_0m{@+by-fy>nPpxj z7wvJ9nLRgn1@I*HHl&xE3WxQ6T|irQaMOiqtihgB-XxI3xchnhANMeAnB!^1&Na_x zI9#firfc^X?{;hTOu7Xs!1AS<<#$;TEGss3V8_vzQC@6B(J9_M=rokrSkR+Gq$!MF z&}s5e1$qiSmfT`!BhWFxJ~_R#_-_hindi3F(YrMH{NrUDy8_nP8^-m}8MaW6Jh$if zY-EnlP+_#4stMoH2+G8tG-0wADhNLHq4ZNb&%4gY{_%?Yrf-XPxR*$1$t6@)vK(Rh zL$0g_$~ZXT@LN6S*g>4kxPlGO_hPDfuV4fe4L2aM52Hn+r_`E0R27I}?h%$9)(TzB zPjX~P1m+5~S_j~v^AN`2Z!F@Y)1&zn^&z==cH?T>WyW5b2t-6H{T+BB6v`0Q` zN8NCUi=HxU3TdyH#KSaPLW6J@S>2N?Hv>~_p7bjV|X>Qn&IHkA~4WhfiC5dK8`(4=cJQ#=Tohb04SLljSFVC7craOX5aU)1&h6% zf_NdyK|Tr~c}XiQs|g%IE=qkXN>4qW04DD5yt|#5Hl5}&dYlOQx%heVKV2JG zKU+oH7m_h(N)JpL@dZ;l#;fJVpSR!E zyTXknE2HX9QU7t;)03t|hjYdB$weM+X-Mabr1!A=d?AD=dML5P`g**J2AU+4Yaok4 zwpXAi9YjYAupk$4VF*!PbY`WJOJ4Qahr#Y{VpNIhVNA41yEza8A)oM9JIL=Eb@d*i zuP2=V$OJ<3D5-_UQKp+K5)zFmc;q12F!#?Aa3904?1S;1=3)9&GvzNbW=KT&MtURi zFv)Q5!HAPv%#oN@U8Izh`XF9E)QP*`>q3-vl8(i<2*!ZSO_a!jpWyjMrllx%-EKiyneu3X z=^?T7`}YrV0zPeg?F1QX@?@`;Sp;R?RiVuZ+x@}Y4%jQ6=BRwjgWegQPyt7}u_ut8 z#f_4CjtW90WLDQnY}1R@H{h80Sl3Dnjr=g|d%u*qwuhT`l7#OIiPEKiN%h8<{izfG zoky=ImB+f$dhmP<015un(p?$;4Q+}g7!fpTR$A=lcf7s$5}K4bECh*WKmdQX8$Gx7 zT*~~#+ww8Wfs)&Swhg3?7f(i=6G?gOUbTjztoE1sjLDKn)18O2AVW_v{yZ)MDx5D= zFxc!iyo|hKgukds6%Yy`tGU^am$1pkft7}(rfp>)@{x|wY;tTnqeaiH~SiwoqNi4}rh1^V6jQLTfZ=0(NUn)4;CdrlOh z*fPovWDO)hBVoGa(1%uow5yRkr>TJo@-f+kUUnVDQzx`8{a*fEb7LQajSk>M6B6uWM0r9*uGteMFk31X z&?S-xqYIj_c{5|&BSAss6KEShn@`7^lv*R^*5zLmToXG-uC2N9Z;dZ}?9v5bqmb2w zEI1~N!-0rVS7pEvB& z0=MlI&HZKT+<$?OsJ3q)^1K0&8g7P$?uo5U`{{%>=x1T@@XZ?tDg*vu zT8l{L)5UFE`*i?8 z@*d1aAoiUI(zoLQ&5;!#0M@1jNnYIBnzo;j$%O$dBwQ3vzd8~{1oTP|>NV^W)<(i3 zq0pt#5Ad2@hPkGp2IOk1)i$3p|K#xy?vXyb!gH>)yT{ayTsaN}xR|8TsWN};rOV2G zB#8;f0=?2rTE}TapZ#QbYit4R^P{Hn6@kcaIo7MB#49Cc7f?yqxSjHSnlFtShfJthb-Kd5>2Hm$te%WtNe(Z%LkWR&^ zDJ7YcOA(lE2qod#AiR%=So13}ztt%%U)wA=nS?lboo24ij1?%Vjj{w8j@x+c-!QZ@XtgX@@V7{^f|q5_BI%~U(<=mZdDg< z5Gi8nRmOKEdVMz(&olauP&vB?4#E2#MMbRp{PX(wg1!73w9EN2DAfe-FX5HsfwD(sm3hqvBBP!L;qfITV=()f&8%p zlrgax-U)5DqQ`wEJ(}L`HF7(}kx=sSI@MXoE3$JmYka~I2Zs7b?AGW~tJ=(d5@ZH% zm8u6=kxe8?O>pS4Ux4@-sq>)>||$>8&Q$}6w_#rB~0B{f@+;r3jb6K(_T>Z z&wN^)uQWsSDGtPFqxOLr%ERc_$h<^^C1Dv86+}zIAidKmUk+!lXOBD|-Oyu6{HBWq zL@t6+l|APKopbn>$!oYXI0Dt<{)hwWXX!G0@Q~aIrn0Na@QX{Jths50B(btH$$goq z^NZi1EF@=1T_@d1F>d$?IbHS;v#!t0k15o&`UM6ka%U8OyMHb2M$tsv`2|)OBs9y5FL9)++C`!w>tI;CL>RswRqsfw9SX#Nq_}Ihe})bza9u-1 z@qTN_Npk(Hndw2?mTf8fJWHNl^iPhqVHH-oG1a)-`x!SNH@aFLV1nn6y%54r@9zX@ z&^y+of)SPyeEp8C3xd>I+>$Ui#&*VsF7d1cUT_(Pe9UEUTO_#0QwmCV`UwLSwPW_N zqPJ|idVB=lrt#v58FSYNK;t*#P#+o@70Z|7wm7W^G2I85z#7I`%$}fj}kVj1;3bK`5fW-Y! z#&Wy+Eatv8FI{4)_Jcg}DJDoiEXJ1Ee~FOd28}+83~waDRWFIUyqKYh`zeGKGBBG71496 zMQ;#P9c*p^Q{@ARt@=u^;IET}r>7}4c1Zzo+550-BG4uVkLn?<_1LJ`GoV?eiGr8!Zdc9BybU7L{y~?OTh>uB&W& z{Cj`J8CGTF95za*O<)7e}kzjh!9o7hDwX-bN4K>yu0)%-QesTlrHDAR}UwIn0IQZ zzckoOy0%<-i?x)lhqM|@W3hpoY?_ASK@(RXD8d7lLlHGAZwz*PAU8xr^)pQ}PS(RA zn!t@mon*pv7)e)~lp1RCD&a&#O%X7D<7EH!E7$g^5TJdN$$hX%Av z=D%OOxbwb|f=8S^Yxe9LOuR`j810JtlbXwR$FfWrDP&h}(w>_b#`u2J-bY&sudENn zdiK+TE4O&%K6-%#RfP*ph~ImZioF?9UJ}5x@jrOqe4aP>>5Qy<6r(;I-_l7C1Y7?c zLoROX@IEmazO_2SVn|RKBU~55Qm^!Ji8U*k8a{n~-<-P)>sl^`hzPZ(`zf3WL7WVY z5Xs29%0QA0JN>wL51~FaQc@{|2k;~O846=<|7Nj{+?pF(PWX*NnwXvq7KH{ACLD*{ z6@rV>zptCL<)MCbhh*`Tx&^BFx$?H5dIST<|AkxftS}o>lG7rmxw+0oFS8j2%}Q2I zm-yAc8y6=%)!9hRhITp5!Y%O6Y`z-$N-yom_m@y6AzVUx++>c?ag5(gr|dPmm{l4G zsw9N@xmDGTG#B86hPzftdNs@g)^eBMiTAZ`uLoX?LuT6yF6l!>Py7PR- zg%Y+B(sn+o5f<~aopeNf1UMI z!O?<8GPnZS1cctr(e3&b-YOL7x%VjmRZ1pRPwMCdPp_rY&ArZuk>=H?fSJPD3fLV8 zdJ-ynLy#--SJ+XKq^5*+$WOQI{*j?0q0PC~F!i=?#JOk$zOGISyJZGc|Ea(; z<&N(|&Dz9m18>UHWMJ6-4yy*pf?OnhT6Uk)9vhxOPFIGZe7w+Tw(RpSnkFfab;rw* zen&^lFkcjaU^(Bs-G<)!K3I_lltWR$BhD@T}@u$b&nJBK8VK5BZFnQ%)-4M*wmwe$9F z|GGu3yFS=5k@1rBSWNjvXZ^zx5>2rP$->IpZ`nYeNnL4qS$iSdHfk6160#8?*BI2Q zP5^pTdaWn8l93}k|35Q6MQ2w+s-yEqSBpo)2wLI;g4=+f`#cM9jEkj{%KxpFlz|bX z+6hD!&wl=W{t)HOb51xfSbk(z{yOxd%9|1u+nCCid{=QO8pgiQe+WRIZQ#iq z$Y_@A``f!rqH6R4j2R5D*~J#}S#P$bB$D>|+cQ%W?C}Gmgaqmb?|YNYa2rQ|1)tyw z+x&9wzn>79phFTJYy0U-ex)zKA-d_V-{z{u|2NLC>6hs_!yPt7D2 zyMOm(k2*5IccR#iWcc;slu=8I(%sj`3}8%25{delhsdQThSKQYXv4y?X!o_r`MRe&N4j9qn{Gn?hBG06U~cmJZXR6Q2;CGqBr!Ay-_VseU!v3Kq&y zpV;UbrN;m?P_@d4^aO}^PoV`6c zd{CS#t#-a-I}6i&HT3%Ky)c^X=JlO`@pLf|^(OM#$O-Er8>&5$PCOp;hI)u(=ejOW zLDy7GB^84|^mVGxIhfE(uC!zNId?TrzK`vMiMqhffB%@N-13Bvr}{^3#-%7(6ik9| z-RUPO^bvVBHWD~>AgH4f9}DysK4JNpvWGUao?~61)$}iB;prpT7ov%$!{UkoZQ(4L zK6VUy8=}^aKRJi%76JY_t#nAqwnknxv!c*{8ah^Ys#KdR@Ufr}My^@PT4-m!uAJrMZIn*thP@h!UeZF521L>eG;0so*_7|P z`O+)iqM`( z@P!>61Ch#z-Gn|g$N3%u510Tsk)i*(eS*&^A0&jfHx3m<)2q~ws(wfIuDEI)3^K9@ zPGa`jufk~dsX>h;oZBjWnb>#%dP`IQ9@H8++{maUwTwu1@88-8M8Y!^Uox3OQE5{n zfUsCrRIumoAWvA~7B&(Mhw6OFKBlMDJX4zZ5+&pI?cOf2_>QG_~$LGsSpJ#T3c{AQg()cb{% zjh|PsEmwj#kkA)=XfOOMII!&M_>*lWe%Bo* z-9=h2aM)qq}0X(ef3S zR$YLDxpE(jJF;DaV9>!1_{vxY63}cx71BzWL);W48%MfViPunja6Rjm?_F@j5iZqf9*+I_}f#qTt_G@t)Y$((CX zP6th*7xpgM&U$OOJU=4D`=mA!3Uga<#v}T2hh*eY7UE5^~JTWi8Af^a8Mo0}IFU#PiuOr&)RXboFJ2%_6DprcJ8?TX&Dxf$^)_ zOU1WW9NrT0>j5fq*a&lL!0iG=#4;#z$Fh%JY^P7#{kx9ZKRnx2t$8byC^(uBU+2al zI!!+7Kche&`TGHe;(NFRe+7=bfo+jBM40M=Ror~57;7vx}(;1 z&6E1xX2)+GpUn*O#LvWipg4ng+8ejczze!TddDl+h+LX}7~-aLI9q{!g0s_B0ruxx zDj0f3P38mOSd8@<=Dp|(J^c9AY2Ezym~NpQ#$~f3^!vCxoRn#8jJjLVJcmUToQn-T zig~1nMl6$~`C%Pvoeu5%koVT9YV3a2p+gf7p{z1txOx* z2HDv5Zj!LW;rwj4KD0azSI={-GNhEQed(|@m&`tHG-f>VwHdoa@#x^c?bUjCEbf3l7CCiH4#hYxN)arDH)(;9R5n|n~3bXVX=wW(&_q%eI> zLa6v+$lWm9oBHH)5uo`ln8;ti?#*=u>yFh~ELqR|fV$F&Dq4A3PJ-P-DqiS80KTQa zDMkMr|5XHb&+wB_1NT4kW!3XMF|tw(42}&|8qVoboT3XY6t!BcL3rG#3XU;MDf;^= z$5ZC>$cBcRfr`jcr=4y<$4q|z+vFBH-IFta*cv6PL|q$g?o3=9$GOofk#e!s`9ejL zvc7*sEBzT3#a^iKB1fh^zmNkz+fc1PPjeU8wDhd42}|^Yn}DD46D@BHrw;_!Y8zjw z{ZO@uP!ZP!=4;Z!3YIXy#D#SRolHH}D}%<6H?Uavb7OZ*;Fi?Xg)ZD84{92}iSZrS zi?Lp6uDfj>gy-d6Z+ilw^Uy>BMA{yR1?$f^S6nNUlqclJI&wDLE9ayI*%&a~mS4HY zNs$^xT)>ArSpMsZl8a>xUG=)X+>2nR#+`N{tc1uX%5;(I$XPcjYq{e;>meLkwyDmE zscG7-xxvnPC=-$7sQBX94r@1uHfxFMc!CeBRG{cRHgX?s(LufC& zP9BRb=mV4QZO;@hsNYKb@4eGDEfD>j$sfzsDR6EFTEVA~ z`mmPmGfKWbp?X{KJp%pU$i#OwJzY+bIUYhEE~}$8Mwz5Dk?h;3h}JyZmo*T4NRvu6 z1PHCwKL%%>&7}~q`e7Edl$~gaFS{L^0X=i;oOv#IN_Fp60-Su8mn(+C%lk@XQ*I9b zPvf=4g3eH(Pmqw3*sTE8Oo=DC#qB?oR#>YC!2)kBi{Glzb2Km-?IosTRH2=lzvJZi zkKWPCykYD6&RZ_J%!BaXU|H~=CsMq!5F}lT(3I^nbqP-rxwkq+v}WWqf9ciPEo<_6 zHbDW#+GgK5Q4p+rost20hOQTz7I6JOr5}W}oEFc|n%^WBOUnZ}l>D(e{%Ke3Jmf&^ zW1!4#&EN>Rz6^O8`5ltYdp;T%TXz%8Is_mWFJc zTl%7b9v_}PSI7^%lsTl0veX|@pmSM)|AIV`6oHxWS&j1CX`?di( z9Vf$1Ve>r4N>nG6hI%a##pk%#mO{8%V{a;yR?~JYQYsd?78C z{{<)tIF-ofsULi@u_^rpJ>WE9tlnK`J3KU4J1MXaA-Q7Hl8FOAKoSL@Vq>c_XS?NS zn}s7{?T(7J_P;oBlsrjzQi1mU)Ck8A`6%cnwobO3#e9PdVbd5P#Np>Y*D(Z-v=GaPKGmPlfD~+wTcH zed!rWyEiDw53Vk72E@Cy;>gF?A9GNYjq$>`m0hsPD4S^Ie6g$0@Bb%w1SH$rLPk+* z9pSi8L)<(7}`IhFRbF%_lG+GE-A^&3>pV|$mG0s(w23wsrsw0$l`ejG4HpK^h zp$8t)bq4iV8>+hufwXB_9F;85*C+2PgB%N8VF>=SsC+r`jXx~O3&w1Ikd?wKWhW|A z=~pcsrhx4rKj&hp84B(dtaxH{>?>D-E2bR2gui|9J3~@|oe2EYzu+5iKiwWoy%oeg zIr{~&*VJ@30Pw|?P6`l^2*IBH4iRgKJ}BBjMPTut*F<=w6|bz9jFLu#Kwf5EwrG$c z$CSHjkD{Ykd47uq%E&f`_8q8hmfUC7T1I4QkMxt-ap)&|<z2WjXp?~;~4!XmTj`(_lbTKR`K>^)3h?~WkV$cYJ zZU$+wSN#&GyD(%`yVb*H<8Cs%p54Tkepu!z9^AW;K`WZY9)_XrCI@SBj!DfzQqDZ< z%!as2vV2e@e*FkuD9;oF9neg9O2$ax!dOyT;u9TV9!PVTy=23nfESi1{nZ3YIPY{t zdxp38o{f^Q&7g35rZ8C3=?{F@5*&Fc3`_ zkcE~kytBBe5Aj3%qmx^x$_=#;qRtba?{@wMX*&-+bj)smAZz5vwy?^Gx+7)#v&-^B+N8B zHKgTn-aY7L=wMk7o(DM^dbd#8_hn=5+oO9Cl%ge)6+N;{-P{%P91Pf*OptX#zHy4+ z#jJZsHf>#ZBER`-+P?XN;FTRH2nb;7gtC-x#_bit(HUvL2yvgtTQbIgjH5Qxg@7UA zQnM3Ca3@!$brZc-T^J+7y;3ch8xbhv8jlKOpbfJVn<)NKDU8!xThj{_`rDkY3w%@k zdzw*ZN~T)ulbFco105r>T7r+E_fh!t%^TI2ZT+{+d|7Jw#VrggmpMxj*oI$mp~gX@ zLbBh(AB@z-wgEVOP?bS>DJ>on*yAAq zn6-F%<}76vs+xg1poTTe6*STPxq^ql%1UdA>`5m%+xf7B*t4iPFa!=P;Rt6D?>)uN zQakD6i~o2^Q{$oQ4N7igg=T^xstfrHUX#`qO{J2Eq%LkYq4LrSP^;44nfN>{4Pf+H z4DN|{V7D=_UGrGJE?E6!!`>3~*eN$qQ2~*WbkOhvDupM(`iOChuLcBFP|I5`xIYU` zxsqeQt*GEsbYX^VS{Fq=p*`U;s!ANox&97rhNSAezd3S#Y*h34RGaa_l@Qit0Ujsq z={Qh2?&=LI08B19FL?L-BU`2qcCktP|B_$Fb6K{MGl%2+`$!yhDD_}-N8P3R-6k`) z*-&@$9P*)->R&LqMiyrm;sc1;{Q!P*x%7nyJ})rMg?M|I66Ifc1ahM^^C&3 zY;=%4?g?rErSN!A${Ex^RNbfX%z1@FM3165CV#}HSE0p=1#28sN5J@Ft&=%1;!f@Z za>eRIrXHVudV>nIaMhUt`sx>}8Jk0{T$VU# zev5peKr)m~+D*OmJ$}#yz?C8p*3T>$`9;B6V7J@_*rJNy3HMKO_d@9zk2c+Pz@9eX zCWIAABvW!A&Q5Z=N6zJ|iWN25%S)nt2`w^pC&U5tdg= zp3yiHF${t;mXuSA!MplXtOPZOKG-&FF*Ip<+|-Hkq<-L(L`vdnyW@pY`A$r)8dzt3|0R(_deg|%vb{UI+a~fis}wbW2OCXR zg1OmtU959pxD$f8)Y~ulrWkN8a;13$-PE`%ilT|{orLwo{Zfohm)pl`x|y_4=KL#j zs8D>1mMl)Uf*Ohsz8Jy`aaIDDw+HRE&JT1^pN4Z%+qLV4{yx$cyl}28uzyg2f)W_+e0(nmWY}^ z2N_yNiNI<>=+*^nD`C$v<{7nLBO8#2em0`PHVX4=)6Ud@BmAa_0Z8+dbgy^aC^E~? z_y)i;MbtqZ#r=T~!?-o=RWw@UDcrXkkbDfU`4DvQpI_TH0Gi)fI_nwRv_d&Qw%wmO z?rffbadJue3A-2W=l74(c{8PZikFow{T2V?Q zKEblTowGfX_l@HRV65(&w7*y8N_vn*)eW3`Iv6WQOWK>$d%jC~?DK9q6U6&>xKl0ew6!K+f$XqRzNOB7B0#ah5qDsx;xsDr(*6 z_fmZxm#!)NZ!ow>{QxmQ&c9rc?%&bLz9ViHy5esD-V-+6eZg53ZL6}{exoez(>@~K zGrV=3%P!s&#g38qsnUSRZFe#hghE;kQnTS0G*vS)AgRy(^>R8Q$MUOq1T1Myk-5Ri zfjzsl$4`iJFk2>3%mR9TXaoh>Y|BwmB$^LWdel;s(hzB9;5z^xgnyr!&dGua!7oR4 zu@s)CHl;ON4^+0_E67hdj+uPoj2_o0XF5w3>Cm=>@1QH8_ssW3MIFj5SZd8k1yz=J z1!=0Gag)GVjv#{T;cYW}4pWuZ)Yy$so5Q>FgQ8eF9I$f{&O{+GS;mjnP$|2hZjeTF z`S}v(GOz~no(5B2g!A z^Zkop0Oj&e_H$uHeO-_caDj(xOInr5{m9gHY;r8lr53k&EbeB0ox!dKmPx(>@%dT? zT~hRSnVPg#wy3+}9j0)2!k#qYU?GazJ#N$mFu$K&bGF7{y#flpK;%gwDAp-PoV5Oj z<@a8Jel}yK@jf#&u7)DuK~UtfU(rmVXg7sv%PAV?IYQjj$R1CKIBwD4LF6so+a3<6Z3j5`UO9;!gU-q}V=cZS7}(rVowt&d%isMCUGBISNNcV} z^s-FqZn3*C4_i73rpU#wKgvryH5EZ`4%~XOURIFg#4|IByB?G1!%5kv-4}wQU0gd( zR#P=}zRSB2Fsux2xBryDFyLpoKbzFdu+DwF*#`CG1h0nFeQ6GW4eSa033_ftOA9=)}mQ?P6FJ8kn z3Ti}*!41ZI-i{+jZBkfIZtr)zp#!nHR^G~yOmwX^1qut6UmK3;=p(9b; z1)qarp*5DXOTwrTAI=0AC;#ycp${)3bQinvxKgF3ZLE0r-B9BNo$Ty0qI$(qn79-bc}>f{adPkBc)PrZZb^{XTY$Pnv6 zB!VzLw@l912~NQ!c+1%>Ul^NPHDHIAOWgNKvu^fUJTK*VRSOhV<}GgO@gJ1>Bdfu` z7boF57JEvNP5KgawndQD_jWVWTq3ROE=HPIaNZ}bxW0FWezvIY2ZSTF_2<{xdSsc| zpuPUK$p-ufiBR9HvgxSDn_8@dAb+mY^+?&~R+Fvzg?t#3@V3e<{w3!(0GXl?lFiNk-G_VnT6 z4N7S!=ev0Mi_%w#-zri0`{EcF?HncF;!XYA{`CkGG?iFJVQ@R@{)kC9xjG}E4}qtC z!sfnsKG*OiSSo;5)8UkTFyj<9B+JK$*Xe2DX}O3h6Y7$GozSvUjE|B%WsTJz$ClX3 zaz|qJIfCFWgXMqHoIa&QkHXXc2T`u0IRE?-`w!{;h7E|kC(g$fNSYv6e+bmCQgc5w zp}ZwbOeJF$0`J+PX^8)4E!eC_7V}^jAYb}sKTf0W=l60%UHT_qbz(yKT|V4iD%K;f z4=RqL6a^>A2XC+bJ$L9@-48UHzenG)7%B&H)KMnIwRg7*v|qyylZl?CrfCtkBXhjw zySX{E)VpviYW4kP?HAo5KKW#6B0DLK#U%zuH{|lOLRYi`p+XF|@RbS(20Jy1G-qkS z>`ymsr#|sZ6-9x8_;K!xbfgOB%buEn(U-pox_4H+?|y$YvsjF!tQW$Ad_7+*Lvg#W>^_`)k7wf!lPF`~55P}DmZNT|AL4GR$MiQ^)(;%-~0@QeVa=mtqykV zixxJOH>*hyqT{O~AZu@eCgg@|b=!FUQ?f05NbGcMn6w%9m9?!xwxzKA3w?E*+nN%s zKZW8w?D|}mBEzXmLj;FAZ28x0f9j|w?Z_tGb#sw|7C(P{#zRf?k<(maVk}rakB(PtT*uBbX54vjM?cHg z#ouN$6=3kaO^TMobt2c!p z2h@HYft;6W>O8ML-zrE~wrl%l)w=+$`>GC^gNNfNVM_Gst~c2sFs6v`vH7#dzgA!d zd+9q#Omk+S67v9aq^jMzL^TIREjfbTPsz($;Ht!59WHD=IlDpjw(7Y@%+(n>YVvg9 zeFG>4?S0vZ9d~9zWeBK|0XaNXrrY5^XHC3&B(48k1>;aZnYBZbeEgfhn@k;$(jJVz zs36UDKn6T1%l@1EMjNv;QUCyiqu_I<99dh5?3zm=F!eWWq=lF{%-+F8?QTQ8^Cqy% zy0X`4Cr_q&_G!*+5~cj0g*vYsUWRIHL#Mz(sB1}`U*l|gZ5e&m>VD$_o{0)F>av7L z^cf8JQRJH&V^>(IPkr6h6aM-|cCpM)!p6Z?5CIUDF=);A>Ns4iK-6E>zUkX|yIFNC zt4S60TG9t#XUn)bAU|s60{~-3M$D0pmjmE?=m?;xkWDG2{XXcksM1)iB0eQ_`W%ZJ z!mrQ4A-&X5s)$qjw43S`7W@+Y@j6$4xVpyF1pPl-Y96JCn8N^ZJ@&WRCG}KD0l+$v zCXKR?N?o)W`5EXli)*qhNmCv?8w)m)2;# z^S8noKc{TD5#@UV&bXfx*B+~eTv2<$#xV#cIaHaT-l~E@$dL(wimF97MZB=XWq;#OI;%(-J_HyStPAY< zAvF|-a!gER9f?Wr@3=+%emX@C)dz?%%_b#Aec?{av?Rh-WL;$TADg^ncoOUK=cEyo zcfp9qt2foX1k}Z#J6vt>dkx?&1*z=K<4uv`(>HV!;9moP6`9?NVyvV4`5eg2r_9hA z_Mz2P@YToldchCf9#!H7eoW7@B}mBl0Q53>dC4Lc&dhnD;v_>SL(Tmb(VKsRE@Td@#KqQ=Gwq+!nW$r9j+D*Z(y17??s0Yo2@Y%LR{?nT>gYb1d%|Qb*-c$)k<|gjS*Tu52>JP+iko#OUdyyr(oA9w^Z|GZ`!e%9&2~I7@zP&lT zqRc%v#ifP{YXB_>9W-wtCZLh}*-N=5ith>dEE%s5qXjw@wrN7~l(}g3iwh=-*g}lh;jFd`R7oahxbuCc= z&&~w!8-qf5j|ZA!_b54It^vC;h0m8K{Ri3W)QpwAGE4QSTgJd&n*44CSAEeth`L-S z_ofczYIV3dgU~VCC4TMPosD>&64y{dQ*p>diuig$3P6NZ`9IE>6xRJXZG>l9Jrid~ z#Z(4fd7gsa6Vi~HjkSGA+GB}bCG%Y>RugF~a+rO4_393b+l=eH$&`Yd*>ThwNoA!^ z;xotQ`XMA8s7d}LWoy=zlr1X_P&lW>l2w5+5aXVre$OzJQs>)Z!IlIoPQKzV9@ah^ z74E%_6nK}=|8QzT!u;Ot7x1z_^hk8zhEmyU^8utScnxF+DZk@Y6E5IEV+n8dA&gab~dxpFF#?3@ICa%Ci=-P7rVP;>FIa1VtW#a33n=jQ7{C zWPRN|h?9WQ&>tDMjXj${>ZKFXDumTXkOtjL0h(%g!$1T6@yLseyU6K6qnTGY@i;ZO zk@BbH_~CVtF&aneC(@Pdc2S?6e_>?<{G)>W>I3y=(I8w(a6&?{>4M~&C+M@$`|ocj z{P^2_0n4$0Pei~5uJNaKZO^Q-KEP*=u$UDNo}(_V!7ID#P{)#llLQwPF8GXAK&k!7 zBWm5>cV4{$7{hD$dN)-tO~m*sd*4>Ik`Q@w9EJ04AXg+@OLkz+%q5;6;i4iI^ge_* z3JZ`xiz*2%!suSEt?%I@Ut^-#XMG-sl7wN~UDzx&E5PrEJHyI^pK(Vu6;QaFDH1`k zXA={}B_pjPc5efI=>w073|(0e6XJ$qQ!`0Xquefj+@3QBKFZvqlHyY4#^njUd(``b z1tai-X))7M_^9)4?qGg54&Bd`rC)R<;;V_}WQrDynsgRVv3%kqzy|KC9S$p;JW>Og z+V)bmUr+Yt7{w5F)JPPjR*}K0+V&Dbp)&t3boOmfAD!#x6B>kpI&Zx6BAj&47JxH4 z4^+!Uo|a%6y|ty($I?x0v1Z;TY#fDCA)px1ZRO~q2d-4T8gmr_b;lpSTzVZpk6waVoU;6 z+)L3Zr&NED%LHUuwbS=$euZB3nj~IXuvHKOtQ*A}P`(!CA?pWAVffG?Cv^kv!MD1; z7s6pKbyMK5J<>tQP=zz}kMa0W^i7&d0d2WypQcMpcqvU96tyYj2!iCfhYp9ef5uh z)EemjN>aI_W8PN}^!PS>N0b>$8yEL`TxBCGcoF(2CeQ0V*oIA}t4xU2(5Pf7*_xOH zx^-@LOP&Nrkzq|6*qw1dqE9yuEH}_jX>%CE5Tdf``e>#qj0rA~NBC%);Zm|0IEa@2SJ9>X}zmiF#c)+h5VeX_x6L6m@B@I{XMC4oK!0r}4 zcBHBbKGaR-@LA#_$%6fXupZeI6&Dd|QM`{i#f$2~d`LXWc!EOI8X?pAh%7I(0r&pV z^Zwt4H#7b7xzJ;|3+DW0Z85=!|FxUeldJUa>LdqrE2FZJ1 zDnhn(;3+qV_sj;O13VR;Vd5`M2bKniDzt&+Q6HZ?5mK+TEqkL1Rbod&d~Ga7C)htN zB%GPBVnA-HNYn`5KGiV-+d8~lZZoU>C?)lGVHs+e>8>^4y;fRTK(GZfA{;-sTx^cb z(HX^j;d47|7u4RkRjZ5#2-8kG7g63u)yz)Y<2A@51w%^v2jkUlnvH(ymGEQ}o&6Tm z#os7;!EK>>Pc!=}FSvCTdUx^66x*pqX9s$)b`vf|W4_%R$x0A^45z9NnyK-y@S-CP4+Xw7dNI~AZ z>rjKM{fmyDLDo~cF^#Sm{7W~9X%2a7+ff##fwja(;^zIYDl;iXFHngY?@y*=aDok~ z-Q;2LaE$^Cu6-mmvbSl|WDn^U`^f=6n3m?U)d60Jwc_7tBVK|66Jf1AX@uSND0swTyk~F<%Bd5x4a;7zLEYSI`xFF?G<0#$VF<&A{$c` z{XAJA6o6X}m&Yci3z!t@^sBs6N#9EQ(FJ5RarV@=$&T|I%%**Sm_Jm1Wp5DgyXy8; zK;}DI;H>33H@w>c7$Sk*fJ91S|Mda%;+S;Ai;V`sXWSTHDyxESaR#8v>|M#%F{_Zo z)`xjZLaSHkaeA%FJ?sWP5@2P4)mf2iJq)xbtroWM0!G3MT9#vMz?+HgR6J*2`>K&Y zncV%7=`=R!{$*yeXhkmkFv}omqPVwX>SV4;#wY$6VdYH}=3quT= za~)`vf22cnW!{T=fe){{7idhCabxWM-nSz6(_*%4TRd0dYy%p4^Re#Onm_}!gDNXL zo!qmxJZU_K9^${D(B?8kok0K}yEOHAp_S`rF8DE@@@1PQ z_Y={FF(KN0e&tfU0#g`CEvjxN1$ON%^azaJfmA|GBUL;V> z;IdG3ABMHr?d`V>*5FqZfjnwI1jz^ZquM&+TcFN(CeAcAbFvG<`&v)~JiV&)o-92v4~u@3R5p}C`R2MH zKG9WmB+ZXcjUk}80b1leA5z+WB0Y_KloOeCV)b`(`w954?^L%N>j|M2*5wh<{V%db;G)LyZSO=CcR6FDZ&Yu%x)> z^=0Yf(os_W8uA=m{~exj#vixK>WXipy54DRO>hiw z-k}?Pta`0>24Ca?zyo3=%aTmROLhx0*;;!ROLRe$#t_rN#P#yJx^~5wWUbH}cFxg2 zeYE8x6k%0n>ETx{8UaP4y)|Cn)~%j`6YP`?)iUVGnV(RVI4)2ZXf)f^Ti+Z{3ibil zYsrsmKxLR2RJ8-w# zdup-Nm0N2rL7yTCQ~x4gn)s}5-a|Icd^g*Z@kInaqoo(h8?grIb{JprHz|ah}T z>_$;azrWN3$l*a^Lx}AFW6rwCso6RR40i)g#s@Dq6ir1@7NFu<+N>5euRcVFY!320 zG{g&_zPEf>PG6v#NNSXej5U-K$f9naOegP3V^A-EOMX(%l6Lf(9}!i7`CiFlE8cM{CPI_ zgH?m5PQF(uH^qTNR>x(w^i}nt0vV zQv8W3P{ndofm(y$5Ka)U-e>bY#Xhjk?_=W|$LA$^DdcV~XZ(=GO1^{|D(9l=25R&g zv89&93udN8hz6`Bpsi9;D{nVnwaHg(O!y`E3!XQ#4nj3Q-P8&!w#TodH>_c)`ZAOoo`YO0v}zLTS=leot5gXRZt2VUp1j zW94TDa~N~W|64B`psB)HOw2|y-l_o!1wrlYO6rkukQ_@+L{-3-QD{Ag(R_r{`46V! z?%xN#zBN@<5MHIB&8Gfy<>Mn~<6{_A4`&%ELKx7t4i}B4V=wBCDg%23@AT4tOU-u> zTlWU@wO+oW;h_IryrDJAB7Kyf0=LKm3D1>|*boU&G9T-$I2v6^voWToqD0qTOUPbT z4E|ulm<&)&xyaOd+i!(&a((d7J}rG@B&~)nA;s;iGUH=6xu@>3YF+0*sc9krw)<9$ z2SsT|bKULDc-Wr>PJfkS=YBP1)|S2^Mu&?DrfRiQ_iqBp9H|qm0<7~MN(p}7oyj}L z+7kp<3&?QOW`a9A4;hTv608xacU;I8-oW8a?|d99C;G5h(eX>T&1Xb@{LiZ>Sh0ye zrZH>erT1MVU|aG@PXJV$da+P$uEck>L@Tb|sa&-xQn}9WJxSoPI!I-k(H}KA)cbq8 z^O3aV?JZF1U2J}`nt0Alkz` z&i~gbh_*6t?G?tAOec_76)duJ@^@je5{QL*Sx(F;)dlGyO}8*|>dM5MA?#k98w-T> zAw{bOS$;0}uzc4-o_*x$ivjWszSBNy;PHHXgkk^C^4%cBw1xO(Le&%~rr`WbFGKe* zUVkP|)4vJSFNV=)TWDFS@)baRRXYVt%{zzhU6lk`y z8lx3%FV|HfRbxXAQW4(g!DQ-q#sW?Uac{JteYR4|N>5fBjl%e$_qvY;;LG$6F#R2I zRxBs<1+dlmZ1m5H{CUljSt&8me9T4|C#1I!aB`JN*n*R0$-{+0)*)-a1u9x7aWR={ zyj+VvEsW{zQB3WQ7Glrh4IsY700+n)(vX4^eZq_vW#kVC zivK0RV+>hv3r>690#c3H3zJ_qq_1Bod*7Sj79eH7(+-r;drgupkJN_=8U<&BDx@Vs zSw7u$1Ns^ueewy9ri3tv-}2k*@!nQqcd&JT0x`&KZoB5-w^8d-Xt%FW6D^Q^4GUJ< z=rW>Ktj76T7aJVE^$)xIzwKk{TRDFv_Be+lS<%jk$yx4$hKqGcUKK$Oq?TsB)t8WX$o)>V@44&YgkT&^`Z$+FK`y6O+n;SsjSYX=U3?8=rIdFOvVQDrCR_#>1PVu^{Y9uqwhWt3+7r|fmAxmCEr=&VQ-~_|2oA#guNEJRJ z9*ZufzYl~!iZTtgqhVV;Q=y?RSG*_X^N6*O`$xEt)pQig!gL2Qhp0JUdZ8u-}$SYXcZx*wRZVoJ3jg+Cw{6|Ehu zv)hsk%e-rdsFWDTHhX)&Z~Wk0%^MCZw$j4YrB`uxm?NicQJD&a{gV6dlmx5=OfrBr zS~tG(Y=M6~s{t`t_;fNZH@DMv9pF6FY*2o|AO6YVn^u+Y`d0G{FwB>zE|tXKfzH7; z08)?N@%7Td^U+F@lAGj9Q8Lsxs*E;I{TGTU=xB(U&q+g)rP0RI+s3G zXrixN!r37x5|7pk_pme5Jrvm`yAgmM(XzfNCju$zrLP*=M|f9iN=#QSkbhkAt#edQDEp9Gua&^nQ6gm zIW?Y=Enqe_Fe<%#yG&4teiL-y8FL9=^gNz#uuM{2D!LBk@nE6$=ot*{UyIqA8t#og zsD}AIf?J%+W&4wPEIDsZGuD-9yO+|K_~VAsp_z|(CB&Z4{G;yA45(slq>0>LVZ=^cTRRL9aQ2FdW62G;hZj|($S<>*8AfcZ&gDrY-uGW-C4rA1>Wykh?qPbal`F2rTaxZ0bEcewh-( z#v#K}J^Kl*{~KH3M&_tJUt6j&*aZT1v(5oqX0G~xn}p<}!p$QuI*?P6NgyU_Z2C|D z3~e|Nk@$J8XZlM)>>rySY4YCQ&?4h5|8SE^nVDOX6oLNx@~Ieqg+=#qYfskA!|w+X zQ!wpXNN@7@Pb1t$kQWXo#Ss4~-LR=^FJuA2|@(yzf%a-=}DJK{I-rXipUPTTYdTz(%+!tC%4Y+tsktTA!)eT z%er8|ABLg?RpmK?!qSH ze@VTxN*_QGDAcIaMgp3Y!UE~tQbKa{B2l}wt7HXI#}Nztvb<4CEx8Ax&|ZVmA8qT8 z$1j~ePBFTsw8o8 zjCIYbhhxVs8aD=v z?Q;(FCFteoa*!0bORTupk}8m{R$C%uc#1n;C&DRS{`nQk6I<8ccb~#~urPsMbUz^% z>h)yCL%?QPjJ?>aA5Mr7ma%Lq5@2(#C)aa}@K#(a!{mmUB36MNO&1q$eCLOx--{}e zSK5#bp~Vay%Fj35dQqGDFUBI7%e!m8Ccf{uLBK?SsF&MaXk@gc)WvUTbx4-CBl*uz zt_~aw0Q)SWRJL`+{jDg*ALAaS8y4ZBW1mVNX0Tv>cN~Cao#_W1QP$X}e+BKwC!#37 zybkFJKamK8w;rdt-`zaqaLDW@4d!6XJV0TW3uh=$-iF9|5xs@CtGwf{$gr~2I=}pn z5GJ2bKdlAj5j&Z)YL+)@DL3cGpfvzqP9-qpif(Q|VEkp{2B3eH=ox)1zzB63P*j=p zRj+4vQomX}pNptUJjZTk9{&)P3MlONp;783TY)&AwQrLv)%c_TP_ofGo+!ST)}?26 zT5q6LL)wpld`4nkDq3IZn{k$)B6==&P0?2l6wrt#Uk-umjrDI!cNo2aVLA@5ei0O> z!#_P&Sz_T;WlTTfzqpms;?JVx9NvVd>VueRSF-lujlpAKcfX#ibyS1NPfENFfGQqj zBJPwNQjE*}ARB}np_R*J+&21UcceLa01QH6PMvA|P0Fp-d$p)X4|X6bfS5UcvGAph zedQn&ZAlRBtzLCG)21t_CpxY*E!r!DzQl5V@~ElyIJg~FR{KKDn_4Snb=(X}6wmb+ zftI-t1N-d_=t0Po&szD@-^3THxHUq*nrb9J6AC|Sdly*wWx}RTq&{}+)OtA8M7$+y z6ptN|#YMGrrIGCd#cjTlEtg&k-4Yoq5-nqGpbb;GiN6kk&Wu0rYH-nn3^8;AY6rY| z&qMP73)Qgwjc<^WS?A*fr@ipmF{r4aAWk9NA}_o(anzYkt`*A5l+9c!=V^n{G3NLs zMj+=wGjsecUhK!}qUjLQ6MsrX*AR)IET*KfesPg$Hd} zQ)(5RKOlF>JE*$eA^&*K9MM$e;j`nuW%+{3F@mr@73b7cP6p*m) z{Jkj8Sss1@0;w3t$(yc=?yKMcP7U*JIC~vPC>;4CAvgrvEG#eYX%SU==PX@lKLny& z1FSz+{EP%w>M}wtZ%(i4ijqkxv$1%MwPi<3v!=j03ID^zwZSiJ{2^G}TyvCB7H02NI43*eWUweFXcZaJyO_gtl$@XV(J7vb zGwO0DH(usfrZPXz$rAz@wM=MUgm)EkzL5J;OInZKQX;1KK7y{Nkw9_D??#4KARaKj z&%03dK*3&mFdfAVA^>#`m@fG@gUFG#P98GaK0{x;eSD@)sp$`gvzO2&RKK(zv@3F= zN_iHLKNZ2{96V=_tg;<4(asbf`~^?A;BtflVD%1x;71t6GI@A`mNYd@ynhv7$udtA zP00O=rqu(FYqaRiIc|wDO~#8*K_$c#ThmA7l0Xw9a^W`kxY&V(Mk)ZWuj7t;fDB0h zA;92=ShoFZ#IQ5;petdgvoodZBAB~Z){c|GMW{drEbTiAXMqd~yY<=^Q^@-PH32j5 z)0tN`oXEw-TqTl{f^DhA)h29OKLr8Liq#}KC)+)dfA4>OK00+7p#Zr*8=rG86t@11 zFr`K2dTpUW(2VAQx93ujORcZZB~wt`$+Frk-wl|{F4~!RMAE_2;CLeBt4Xmq=yfEM zpK4`}QpSBYDKy$)9@YmPj=9sa@1K}O^5GP?{b-bex=Uu+Rwh*tazT3#!!LInBNTP< zCS8W5F5CL~&j&xIBkr9s6t=G-|M(HS(UexY`A-Bk?6nw(-qwq_*ToEfg^a$+v~amE z2}(Y_@_jDIX9;~uGNJ)EF|v;fqWO%#jlz~H9%J@8*BzX}gW1~s%9cIEpaRNi1%&); z%mZ4DKtJ{+p|$0$UUBi%&E3ZC4v)uQk(d_cYb^*Au#u=b5h>oW1fEr5#2_$$gV#X? z`!L`241n`iU_yRsd1o_k$xJ~)la(LgVlfN8NxFv;03t_^$@{cj)kZW7X6t3SgMPAA zglKKP_dxe@$gr0oaq+f6R&emK*57~Bt;)@KSZv|$l@GLlm!2Xfo|ftvo?Lldc&t(fcTu|&3?FSA$(TXb{9(=2Yd zPR1H0^R;=1v0z}ADn*|Su?u@8`loTrX**~vq8(Vog`;ZpPkm<1eyhjeg}c=HQQ>b3 zRVB9Aj(|zMXU_)d1sqYha*bn_LKU6zbaKQzLQXVIu+i<&_l(WB8%qVX9nwtb0eE57 z4rYT@8M#s$Gov|UjPdwF}1u4yVRb_k2V3ip^HT4z!kw z$tWHJCMMr$O+lsU3P=-S=j9)Du1wmlIUr=kLZIcmVOm$~x zsuxu7`c-*1wGM|X^htb0{a3g;ieA}QwB%B_=_EnV+I_2-j@2YD9Hb4|ce_s{%|WM6 zsMZ$#3seM_G75j%;I7_UuA%th-I-nSb6jVeIg6ZhMGaNIDrpwXTHHCCtS5j<$Se$5eenZ#p z8wYRguia+jXL39qOA$82w;nosQ9(Cbc@h*-0I3ULht}AC8mQDp4lm%42`)_wWzsv4 zp1NRTwL%!Ni^;vg(VtTGXYm1$CNR@wQ}pw2!Ly|{X%j91ofwOF8)q)WC>`*j3y_7L zraKw^|MgFyUWR~tDsVLkERM+eRPT=uV=Pw|M;Oc8cpY|2qj87Ye*`I7SO$V5pAo2UBrtysy3qJGZ#Zv7_&`AnDg69DNLbUA!jXY>m4qH(U>rER=nrM zZME{4oPrQE1eyrYMLV+g>+EE=xhwQW50B5byJL2Mlh>#Uog1M@3MVl1)2owm`}eK& z?2P)y>gRxLaj%laI>qAri$~HO;Ho9HWbLXnTZpx6z#0u7`Lawj15_7crsPN>iLQO!S zqD%x-6JqcGPnU;e-&+8=8@U(kgF>0SzUMV1hCZarfN*!s-LEQwGRGVYCC!u~kJ{`x zqpsO_t5m_?QgD7n?>w%1(DupzY6Iw>DO)8>`D9qk16_DerS6~=W}W%1D5~%R?(@KA zQDL9on(Q4d!N|0)_ti8aNpBLf+Lb?Ogi@I!wj(4Wlvss-;9}Xpm2u_07zLxMHJJMW zMJF;Ja<`I?3hA(;?!_s;Zl*%yK_l}cIOTjV>E%@KDhe|K|AP*4w7A^*qz96lK}by9 z_&JLK#~Tasx1YylqLhHsf6{fv225XM{2s)a^PZ7@OaO*s37-2kZM@22bDhMGMtRON zDc8Y5_u|awo+(t0qy?gt2D0Z^9=rv@twQ!ehS?D{#Yy|OL1W|!xIQF-4|(6A74!gY zXhO=|VR&w$=`Nq7xoa&@;IyP<8r;bCKa#LAHb#*A0pyZ~MB@OusTcnA9zHX1pD0aU zV3IZc0R3wSvS2$QdTlcw z)o9B4U18rD;ysUX4zd61s)(biD%w-Qio5L}l1#{2j70luIoA5a053j0DBbP9@5U@O znHfqOW@n1vKkFbZmmjQU{1tdv4=shl=l_zNmk`L>Xi9df?12tpS*X zzS(u}{ZN=+Q>F7PXvf&wYnt$Xf%eyT5F*uT&+lW}*m@I!BJh9VYg|~CWiY6%rWp(C z<*sy$b*)+4Uri;{wiD_YoAD!HilgimaC94zuN~LUSD~3646gM@mBPDFqxlg~%}>*; zlxwiGnSM?#A$Nvrwmm>2QiOGWKqMle#)rEPRS7%|3w zo6cgJH)&GV?-0iMg}=A^|H17kbdVJvX$(_=XHncYYbN90xFs@C9aHuF2~>H3L73Q} zC^mBzAJ5{6l^BUhZdaufINF8ta$kBs;_cPn5DXmvws}>sF|D1&#^8LMDDmfR78}UL zs}eI+Q<&1;N$?^ysLxVUDSH#Ow2sp`6=OG8VhfGVnX_pq)bU%I&pm{cX$LdpeiMHs zVV{X?ctmwr0dt5^s^%j!qJkt#ZD?@gY&kt{NTqYLCX{&-hTcLd`ga9;DuQzA`4D5fnu=nM0Hc%W$zs5ONZqbSfw^Fm(8I5Hy|ADswKt<)l z%E;wk;aw~723&dreXW1N46*RV^U;iLz+d0|dpHiJC^5-k?q89r+X{@YvH7TSz!vxL zqP<>60imVj=K}Zc9j!QnYCzonAzD?FoWg&ud(@`WJG$D8IRNvDV!%c`r7##jggFdW z2;w#Y$#P?!@|jcyd+CLs9j&gla`C-+O3EU?JP7+XYI`#o}ekkcX7 z8`A%tT~5e0K0^~ri7&9mFegsoUX*n$`B@EHh8q%Ib?m zIrp?T)gKfrqIHU7?$|ydf#03h=zU z)F^TAfrtT^Nq-nzi(oHl1r5sM2-%1%>|Q2zG50_Q9l8f)O;6Dj%X46I z^6R3f59CBvUN)BVP|s#mwbYu1+k}KmbmiX!g(HQ8e-X+ab4bxPVGDg9P|S@Pd8*@b ztpI248Yr#*mj5KFTG_^|#J~-rxnS|MqbH6-2b(1;Df^9oS>xpNFA%_z3!(zxz&&S= zTM;&hwNQm-bEK17#_Dn7LMhY<@kCt=BhR#i&a%%CG}OiGY7~0fY59!T^5$EIVQLE2*4h$*@oinchNgk_S15d;`?Me{K%`MaHvmVDIp|37NyJSce zj1o}B{U*2+H#*A+uV7lXBlBhx^9(FXq+BE2Fh6>m(3wB)Qy;gvYS6EJfUYFt9t9_I zg~l0)!~uBafPGA76GNm>9)CHsrYDCo<2!*2(76sp0up2dr&eH?X3_g>YG!F>y=4*} z`j%wz6==PkzK5@^dzOf0&|5g`Qq5G%<%pyiSk`%7Y;;HumQCPTlL(PnYRuUH@0IPCYx-;8p;mtL5f+-oy_J&pHRk>3X6x)+^{yXD%Ep9$ z4{VkL#y(e`rNx9%|5eK!?i_A1Q{YCPFnzbeNvSIICdqAXF^u$`hA>=VDkUR;F6g=P z3WTSA`r<(8%8(u?zc+Ht9R4r>qRvDQg|X+*J+40xk@StF@78Or&B*up@j+qBrT8{9 zdl#}}e3OK3O1`4tljl?lh03eKB+4tKsH4p)MmO%clGUZ2_j~LapUXJ%$Ty2k1|#Go z?OgqNPO13i8jVx*Zll2mJ7qS?n}&F_)GL{3j8&%yuwnlrAFs=UU^WU#Gc(`Q4W>bA z`gAKnQdp%!6n8;y)iTpdhy`!gP_uCXfSpO_&XjK{F)f6u((so4%m;Oj?A;~v)W_YH zNUzX-+v}D{946zmh82E7Dv9EkUmY;CFC7|H)wz`)fn57sy|@Wh=ain+Q|Q?2Wg496 zTY?2uo(`a6a4nf#tdJ=P4*(f=|nlwp1D$H(rtiZCgc}Q*1rGv?M&sut%=l^ z&)?eXRv4NTaZ7-Zg^{7My^Lmhuum%5C@`?4vk;+^wy5@D0DF>`w@TDa9lth=1 zOMpXDLJaOb6|E|Oe23LOpB`nM`M}Jar-q$3So@$N*^3OXk*15y`0J6PgGel~TV&7a zYUjfO_jA?*IdfXMI?;2K<5tNe{UrO4fGe~`ZY(QWPI}~TI7Re9y6c`Am+gy}`C+%% z2Rgk@4Q>{T3zviOGyww2a{d_;x)G@~iEg9auY>y*Gd(;oIa6OLRg2*az=tU@i=XP` z1|tF1UmEkQc{%d}W<*6}zD?>b*DYfw`*NC$GB5|fm$vN037K=DF7yGvfgdAsej|3n zQA3Ifd1}fDW9=YK1KOO&5~|uT_bhd-t`XfPU|Hu&^Nl7BVmmW<8c@Ue*30ru_uFRs z(s4&k;=I$HtBnh=KPo`w9@5&rs6;frT2Jc=sTKYgDbnX$VQB~FPLtZTN_0fd5x*vU zOMGuu`Cc>eOHGZ=%7qWXpazK5UeJAQcmEko(8Mb9z|QIK#@Gniix`zXVM^eyq5p(h z@`jnl8edA+mUmXo=)IX^ae+MT$qs2KzO#1OHEtGI|5D?}(_y799NH-AC zea=l2aYwaw)}e5o77(xJE6}UW=3UCSygh(d6@VD)M}T*{ni6NHC(OIBCur5t5=gBT z=5{H=;>D|}{R!j$oTk8>)d%5<$lGIV{#0q!QR&ch1mAN!U`7sh z0nD?C{P!jV8c{9h>gz@4Qc%}Oyn3CP%v`WKKm$|x$pRVHmAXL!eGW^2*pa{PLQy7e<76(vQN%dHYZC}om*aTexnn5@bZq0@Haj?Gwr2V zp{A>tf+#dC&^c`G$QHH*6EQFw|Kn1}suI8$)+F-v4xFPXFBQOH%S^otB}qS%!=YS5 zv&S2&sk9&hu)0=m_uz!8f z6vq^7QyAP&?{yR6Y>>g4b)8r?$b$$n7wWLMoF6@DFH(D8eoCo-}1BZ3)Uzd|70q5m)`YZUNdquYtfY+NITuJ^*{iRLX**Ais`p z_Oj&OX)`aNJMRjKI)!GruQR<6n1e9iT~gdL@ZT4~?ub@dcSnQ`mTaP&@Ie0?{8hna zy717CTaqk?mCsyYs)OHeT#m`#C$UTkr{q@cDtqtwxR=g=hj5Cg2B3>#AL;y0hS>L_1h;W_*z&`T;H5vx`-9Ayb1VslYxPdE-~4izgB7{}>Td z#bEBQpR^=8DPjn%(Tm&iXGxTWB(k=3kjGi5;96ghJZ)YyodG@qj-ITSJT z_v4AME3xg4XG8dU5>g!gMzU{()Zobr&wbf7EVTH!@Jy(`R)_)v?h{K^__wl6%EMg% z2|)J0xR^Y9lSf6{iI~#1qz|tWx*EmyaNPtX_>YL zfW*cP74(3h2&JmEqhyxD3obEsRQv2+k$2VQn!gWn-3%ZQW;iT6{uXUg3WDImW6Ym+ z1KX|x1PjKamg+l2?`%fweqIvZDNmU^f0QsdS2cHxO>(YI2ATEQk%a7%;Y;5hC$p^O z(k9`nCb)f_y`ZhUPrIp~+BVI5FQ14MJ)5u1wIx|WOfeP;H*yuV*yXF`#(q$Xp!`D_;W%{f;ZRu7kc5k7g(+qpq z>-P)l46x^1m|T#W55(X0eV4xQlF_!h8)A$Dkk;VsSaWi!u{S7)F^aez+(XI>WP`!^tRv7(WkEB{Do4A8ieGe)^ zglvv*h!uE3V_|gCXW7}CbCAZ`@O2j_kXC?V0;ErpBUGPXW9Pe1Kkw@J{&(w8#D*^# zdrSyQ)Ej-HC!@vQy-d)~0+2Gkd0HFV_PSPg;?{S9 z*C@h9nidYg3kQ5#iwX%L;Q_eiucdRWpZp^c@iY415$M@6a!{gY*xT^gZ83LD`%U}_ z@!C{`yQxnmBx}Jwkwjqx{)G?@?$J_oZNnU3Rh)%Zc=a4%)LptuFQ1;Ayuy%^?H-fS z4NmLFz*&$1RF{G?JAB9bCdt;F0*(580c+vHQaZN9VD!jyyt<|~O$}-iDhH=lW5w{* zE&u!&=+D=UKHp<&aZN2KmkmuQM&0+Ny_6AxMfGEO%-q+ za9F|gk(x6v=l+APZwT|SgH6m=r*aMEIf$aShli)oFyL)uyT?QJYuP^H`nSrwL(=Rd zuVM<%99@3-t-^=-+%4Z55joWR*R};HHie+_%}m9Z{A5-t<@BcAdvg@S_2x`s)NnqN z|ID`3o{uf{LRz|9i7Jd34BU4Awhy~+Kyr3b@I(HOF*gUvZwKbr$0cN4sWS>rh+C#w zz;{BTxD^|!dZI}nmk;e(uZiM~B`GNj-;+Pz|G|lm(o^-^Mmu0V!v2^t{PJD^B!@N* zhVDZ-&7Io`SgPo~^Sbw^K%<$aG^u+MaKz{F@YNXJLB{nh804j2mJTs25C={{qpLG~ z7@!sOEe2=7-$ER)$#CXND+$3UJT@NcfL`Ru4ZGZ?E@TRUKh&SPuYX)1e~UE#arR0T z6S8T*6Z{Ec86lxeKzzsPOGpj2;Foc_y8<5q zw+$QhmrPA~uQ|ePyrjPflHH2h5-F(jEeG57{2M%sR^44*_In&u+e(MzjYZb_Uh5x- zsq{ioU~_eN*W>{S(odwGWR)_+)j%saj|`)x9lB|vu?c6?tZ^+Zr0uWpk(-%B;u?z{ z3vlVAFfQlGe90UZoEyTzG>g}V4IISFZ_9k=@Z{h!oK%BwBZCwJiMTIB>JRoOUqCGn z_TEDjKIP&M_+qy+z{f)EckR56gAlS#(eL88ClaGuR(Y{r1z!v&koB(&zX40*qm+~+ zT;=@TpTco|*0~I5L(AUC(HG_bVfT^lmX5B?>KZ;*VuC%yh#(mOcxHWwZ{&QIDvV~+ z_*uAf$-I*Oci4e$B{qe#iN#(%q~xijTV2QmxWAicLYY0dxf_OjuEq(0 zTt#DG&{v8sIKp$Xce>EvQ}ZpUAV(d+3koQ#J^%qOqWsRCd4C@P+o8=m0+P0lRo`8( zyfKF6F$*jeTpXuXz0&GKH4jOI|E@;6AQCw!wbn2;K;XYWBYZ$jOA9ZUtM4X`9I%$^ zzUnN|YXcMV%wjuIS${@@z87o(P}?{c;BWOH{I~-U4~oK_dGlcQ77Ub)CYM_f(G}=L zpZLdPteczy>$t!WIP?;zt3oQ2eeQMWZ}2$B@=C9GJvdSUlwibrfdJCQLG=f@{QKR- zcq!t#O<()tanL=lCFOF%W{4u8zR*nSVsW2ef}ts9UOP8JL29P>yn3*K7Ce20$YgfO{;=^&S9xceoA5@k(h zHW~LXsf-`Oo;?cE zQ7u9%7xSO??v5+5W?}&={IcidVaN`Fp<$2;j7A;VjW=_tj4;@{b zZ+#kYS)ad5lK!rjyIEm)*R-J%L;2zb338YSa=DMB`GL& zNM#zx1I3T4vNzbh(~gr9Y$=Om4mxhv6E6XuXpv~D{?JCs9fj5-<;3RQv3qD6ISqwV zuRg&fcjac%_wrjooiPR$5~psn!CX>Juemx%IR^vYAET0=wCu^?yXjFfHbPb+hgN{ifA&Wgsxrfk>!2>jzoz;~io6yYKVJcek{nnTKmp4E2*KMh)_ zPC8C%u_Lg;J=Oy5`&{#xX8mpG=E@=PYa@~o4JMW$^iD2{e^8cbHyI9r_cq}!8W{P$ z1U59Ou>Xm1>f9$H&&t>w0Quo-t$;r==UmM}x8EoajJmv3(>HLiEfBF3&r9o|he(8J zeNzB~xPONq3Oi@sKAnk)RPX8!HXS*!uRgYhzGx9InS9gqjL7Ym`2Vn<12(ewPkGui zg!!e%`0p+ikxz+fRH|>oZ0;3$f16JKE8{)B@9s?6S`98?vYgO@9jv_wMg&W%TZP_jV{CPm&w@q+Llb zP*S4KSGE6O0x8!}L>$)P?8fimFpyYzCBi|*YxL_M#CcS%t7K&C)JXHB^Ba_pmw0qP zh|t@)E_U@sl{g@i8wX7>MI-yg|6p?uNhY-i`IY=TaRudXe#u-}zUP-;Gt?tMV_XJI z*W(?-99GO-v9I0phi6Itbj?YloWq4dduU2Co1%2yH7R3h(^!rK^|O1Ix`HEO>qZ3M z)^CKw{K4|D_4Z#NC;Kuy%lLoPMpxv9$O^g%ZixYNoW``t&dRdj;=T;Lg=zbS9z+pp z)`3JiodgUWv-w~+rtDVhH#~Q=o^9wN=X&W6K3@AcRChmFjCPXcdYroOw5&@k&bP1Yv=1VIf<>s}L!F=8 z>{XLi@KzUq&&p5qV#~dJ982z>1^0+gfd=B?sg30$sfWe>ln0)#&%;D%Z=aWp2jGkq zDSKC21fOWgv&(dO`$5PFw!JMZTr2)7)t0|hx`s}6z{1H{xQ=3OY_#{p*JPAn(|YEQ z+;}p|iHGQ$m{}}!edo)orn7)R8(ydVfsNK6P>6QZHc*f#JexcAaRUSg1iq1gz7yiw zS?}-{>14bcLpB5G$EJS3vKc@~kVt>;!3YkIoDfUm|A?@8=zEhUd_WX@Yx_oU^xB5g zm%GQl7`n~M+~;5@i&;x64tfL6QT~W9PE!tn)gdFQ1)v67{}XYmV#>EFnJ``Xl5{Bj zAZwBQaVc%4Akv+{+W|$mwnqf?ptrq^S8-wVCg-h);s<}?G#fZKqw9Bn%0sM=NQogG zkTTbq8OMj**m|N--nq~?jvc_l6Mogo!*d-P6)we~Plr7X05Ni9Ey;_ML(73=<+9og zgH1s`5G+r>S12xP^A&tz8qQ2^#9upG<6lDIvYApXqC8b%qE*H2z&M2CvyTsZMP)fq zMM~rlxXlE~u$1JyQPaHbY8(6ZMiI|eADFY{;8cQZbP#r*0{h6ZLyZD22LDyM|0Y_P z5}U29B%m}q10`25iB>Tfb02QqQGG))%Qafp9UP!d$H-^{&^S~jxf1GU&$G*1olg1y zlBDomx`(_YQSm?rTuB42^=F2NyejeHZ5*^9%1AKKf#2hbmar%2DiR#LP>C(%#9qZ+ z{PzOq_z6}Mh$|%L4QadMz??xqSN>*8P^{0>j}uw89sjWi>+bvLpz%Yus3Br_dagi6 zol>t|@`Djbu!k6WOc-vDv$?9xIBm85&5O zp}fH_0@w$QB)q>ui)ot>>Axg=c`0G1^GjhHicjW8h$sLE6A^noO7NqzmF=B#D} zK(Ry{0zA z`_lSu1hm6Uq!Pk_p^u)-1%JLo+^TL^3=rgQ*!R@Ec>Uv^CF>%%4|%JPZs)!Iv-^dV2!Su@QPGeKZ2w>PRp8C90weaaWeraQyQe{Or{&3C4Av#f>OE zHplG+{wX18&@ZM35 z#<1Ui-4D_p$Mm@*RtB&m99b8q|5eyGSqtN$I0Kd%>^ReN%*(v7*`e>6mSmzTrLRdr znu>ZEDU9)3{~Q0*@9jMq(m2{9=%YM5!0#-$ZpU>vObTsCE2VzT>YhJrO0rL8>=R z1Ku}G*Pn+Ntb>Wi-tvR)8R}cb-D;mKTB?}>KbxUBKTLmULRGp=9ZBCH+x#$!036qK z-$vRXhpZtajZB6x)A~`H7@6(P#rqxA)lxIDHN1hy*Sp~v(U1v#Q7oJ}pk}6vHpRJN zO-@PIisM))11FlIuUoip_?IaF8Tf!;2bl?=CY3K<^gy1geXgEoesnu0T>AjlG{AZa zxW7uASub#nKgKLR!zp)qnezNqiB9G=T0;OV4Xm1QI^F0=3F^8;6%w3jG*~nweD)A# zCWtI4pot?_&bUdRfurjxw)rjR0Ief0CO9;aCO;gNBBU_(h|{q2d5ssE!w0D(&h^Yz zwx2CHW=I_t;Ni zxcaG|L@{B+^e;@i2rDWjCD|}O{b%;i;#xeV=aUb1|QV!OccR=GB}X)vhmzBMY@XCu)=xN-XA?*mWr<_ zwCH2LZ=^(q>iU^&$>!5p=&5*-Fb|+ePqCD>AQrheC<8?{CvVTB(U|tW$3gi^YIwg+ z`6glF8PN+SLj-Ivgqd-O8fdp_43SaLGLz(_w!Yf`cJi}#(KH<7L!@e4vZx``X~dBJNMg1wGyJxe>GOFb3_O1Bg2;R;C^_{ z#_cR$T{)!iamFbW{{)fp(y74 z7aB9EWNEpvF8?e^Tdh@61-*_F{vd{qu5t+&R1jK`a2dhU@d&k(p6<7rR=9mqpv)VRPcpV2!uV5l&x zK0l^Cme$F5E)M(AWsn}ftIL2P5!^A*>C=tle-Lk0S5C`!3eo$1OrcctAqt4w^i47= zi$lBo@grEz77q;eqs_M~N$pbfC=_2#8oIS41)m%ll)1M_hFuWhRR%a(LA2sKvA@{Zia1@kVK^b76&-A>?9c( zZ_$-*yag;2OWU(CaIo&~;g?$u?DqIA;O<~GLi2nIY2p?hWXK}px9?@H8v@2tH4Ls$ zU?RWDxhD>vT_4gW8<`Si2UgWi+M|PHGQ`APqm{)oDI8KdMclntLwi1&p8ktVs=|=W zAyrv1P=a&2f^l*q-yW8Y$>3^E24t#+qnZ-6=8fb~ORs+k#P*hXNqI0>=hO4xXcoLF zZ_o}c6dv0?ikk^D^rq--)qofOt_Gi^2}*(--R>GhrmgR)E4jMq;r2DxC{4`ArmFBR z8SHeU26=1JbhRy6N{==84YxDYz%N~d*nm_ikQfNYFAj02=F)y%6$^Ch>}r#6eqTob z2T51+R9@Ox@|ovlen#&E@}n*_4B~Fuj+z726N(x7BwQxx<_f#JB2ER@ z@RdF>P53|x<7zm~#j16re{}$2Tca}&iUj7M<0YztsRiWlt9qZpGj^blO}GZFr#CcX z#GV2QSbhYr638qgGEFyHGtlC9OP=RNXQ^2m2Vl)o8P@m{fxL((dWRt?0__F7`B|(`3VlaWpS^J5SlY?4w z0Ki1YG&r-=Ce_f2^u6cUDx2CtKcpNWY5kf;b@NVC@P z04tT4cau9RQQ8ODij)zBJxgXj?QDE`*flLIi?Wa0ATv4jyYW9caag`=#O&TpnzNM< zS}y-L=baOaKhjGO@UHemoyiPE#C7m>+L05vsNBS(ZEV!~C^!gs*)gkU)j<-%H~#&5 z+V5)={N7r2tketCxvVe6?1?go|x@-uz@|4A?E z$?IDqda<%}b7<>g#E*@5Cu&&Sceg7-q0JM@%{W>>LS|2|t4&zgdnzG?x8!t$E$KXX zU2U!A4Y(+Ge5%ty?L(q1m|X1P`$~xdHTnZId>8Q7A*DRCMB7Aud$BxQWF>B+Un-y3(sjNY)K(Tq*6(@>Yw=R%uF-1BqK z6G&@Z8v36Kgpm!!uD%v>VvTl((q`+a=M%H0#$)W9*zi+ zaanZ8$+ljjH>P^&BfXMqllCGiuR*tJRF%#yMf*n2BkbwA%8lA>{!H5v*jL`YoAF+= zZ;$s{g>*ch!z)#qWfliPhv_5Bz0o*P$-Q*0<@k!F=Lff;q3CRChwRU-R8@9MPs|!h zdX?&zTxIGugZ`@6S;vkZc+0O)<=DToZ#thL=f?lTWi3)f^@IRR@oN=8pVF3u*4X5Gp4VB^dEPC>SIrwuko8gqM+3ZY{5vy~=-V~6Ctbo8 zfBMz;ykt{$7%6tDc3U28?j)f!dY2E>uemLoF-J+@Q`c0=(@`uE(vkU!;zC zLiO{CfG*dF55`ye?r`!_eih^BKHIb6;5B-tUz3BwGZwQ~!R z#Cx+`O2onOX!M@_3#WMU0c414!E;l={$SGs;xxPX?42CV^VT60kL%3`5k2<_Cr(_y zY2@>I^ZnlPX%a1(C_m3YHU`dLnh{9ANb$Sjg#Y?$D*Ux%i1wwA$Or!52Y0C)Vlo%% zFiiqub*DXro`HKY$}|?ZfQJ5>71`b^g?pVLi?}39Z!CA!!_pnx)Z>_;4bIj(Kca}7 z4Yj_JhUnJDyci7yg_gA;O2Af(5BjcO_+VVoeewM~*aqWeWB0~T4adAOKV({i|IE^! z>L*!SYgV)IPbV7`X!#+&0eRD-VIy7Z!n$oUX7ETLfpf}n z*dT*0+C+{Zl-xGhEP~cVh_rK^Tmu$8=3f z-H~`bKZbf=m^M>(SVTp^gV94zID9!OJ5ljR=h1H26%Bi54vndBXNqHl(`ZB`wo%>H z`8|_gR1;`pZJwdH&07z>68I*GMOvbBLh=A;sqI8ZB(>wee8Yn^}$ekzG$_$x^K7VC9i8;s_){yw)-U&I&v9HX$ME zZS4i-6>^Y4I~aSG#Hg1X$w>v2t?QEI@NaIhgn18h%#^GH(gwY{*Q*CG2%XXdm2Ei}$e-bXt4PaFW;ZGDFU`f$cBCf^jc&WD~ks9&jCH9x2N z_w}pa%g{VTH8BiRW~%C#GFl4H+qgkMgQ}SK3(y!DegW|OZY8}(D54@;w;q!&+^(c? z^bn*NkMUvNllSJ6U&wco2fRzhn&m}>N&5B!psZ(E2>v&eHSDm1;e!+npnMMeC4HtA zv{DJ-=yL*x&veFPSEr|@s-kaZ2gv+k)W96PvSk+wFQmuc{n?l3nMNNy6q}e2E*#8_ zX$;E8nnEL;)}U7W5avt=wJ@~jYzt# z-0vz1lXpGGSo4o$qrZ?^>qNOY>?6X3J5Anu0HdZ&O&F7D+U(*vFKNRfH~PxRLDo5R zjJ=HQg2tQS{c@OAWN<)sO|1?)7J?8QkR7Xe$ayVgn}PvxM=J#eVN+9XXTwUkUr(R& zG=z;`W3N2Y<^>b?b=nHkP^l57#_&&XGy*s>jivEaS-!#T;iZ*J)8$}@#FA`#qw+YL zDn5CSbADTo zs#ZKm4hrVF?}H`u)MbaQQc+c zu5N9Qc@_%q;vuC4k*`_0x!-ftp}m~vc8&Lj-eH$bdeZw$>XO(Ub%hUk9(UrVKaBp1 zv6#nV(=9r(i37A=y!azv!F7L}-zs@^cr{QfH!x?eXCF?lT7{?MF$&7gy3R@5%7=b1 zc*j9H>FO~1cYh_jegiyg0yqcE-I1|=cGxjk+g7lS&)g9?k$YjDxPFcMD~FCffc+s> z4vAf#;d`7g(QOepd%6=97p5h2O~Ba8JU{I?X{S7hOzssx`Svx4BDG~K>a#v~n`;#3 zB8(C@*F18eA;?ol3XdM&3H(GRvT(h1HIQn0k*ZllMX5)5t zow@EYD)f2@t_qdXX?*)7{k)dX&g_{M_IWgcfpz>bDhaymqcck`403bWeiKAH{H?^2 zirq0%$J6=cgs_7wABgBHbwq@{^5FR+k#sL@`grd;*(@BX%erg@>#ejkzqLo+h2rSW}(^t!Ad=-IY14R+TCF#FNP| zZ+!`}U{-g@bk7(DxIMb3St-+PAHmkffr~vn3R3FgB2Fi&eA|O_4EthyNIk+I%-&j+3Sk%nOy2gO z(jij9)YvatZJ9aql3up;%*KC9T*mJrq$~^^I4o+*wm*5io)&zqVZ`GZa2GHH!>g-Q zGpkp6!MPs;yTg;fn-X2sGhwg!NF>iOItRo-q6HB>TQ@O<(5I|LF2I$ z08b#dD%pNKBKxprVx@`MyKW4rJ?_J)dBrpv(r>CwxVOlXS36={$0-@(onJGe2^A)_ zxRQ8tqydz6jF$Ho425f{Yml)B6hB9?te48HOlQEWTMsCvecsU-N6Gg|MktvW4*fG0 zv{!2j*2972@jkXLbUO7K5!4n^Iym>S${DuIZ;xwOuqUp6gI z?oCB^nqME07w}m+3tjlX^#{NMw)2tmm)wHlzXyeHWJ)ZKFd(PQCZ%(d77yind7ZM! zDr$h8;g2qI&1jw4u*)Ibe)FyKp*{r6;GBLm942u@K_l|yb6c6UYZtIzFqLppm=Jf( zUPp*g0MDg(VqyCWcv75`7BY+1+7alLt8NkiYhu(@> zZ56L`FS##1(&Ozr@TngPe-p@TEc;y!Y%{_KNZ|p5r3%8$aeTN8ZhX4IG)AFe zg>u&mri8(b^T2C?E$*9$R9p*48+Y2P%k;&*0UkkP^y-0Mr~-ThO{gmr0E*AdTr z7JObUl6|bkt5^M>jrTzq0$Y~+1tN#w9Xco1#H1|O>Bo(ZJNOb)EgVIN)kadGY16x*v82Yxte^}Fi z_DniTj8Yx<+w;v1#-F1fk{Gh^1FtLP1G;>PRI88_Er17D;a96Snl-!Nki1Jgmdp-% zHA>o`?diEu(=r`R%>raY@bbnQJe@{5gTmt6V<4(M+ZtZ2l5RlajYc5d+5A^mm)u`c zf5y2d(35I9x$5FGr~xuG^TQQ2w)(jVN%Ijayb+{i((zs`&q7o*MT;XIa?6Gh@Yqr$%(+rjzgaTycqQ<-_V z{K^BM;2KI;4|KC?gdZ2x9y!rYfwq1nIWtaRx_h3$EU)*5z*8sf1ySN4>vhEU475dw z&(byWPU{yNR%iLznuPU(vKtP#!Pvvlt?~jhMQ;cPgjAOQ!}0?jmPlE|K<+H3d5;(+ zc+-I`Bj$&Ky_P<$;A*j}JTUJ$Wz5p`lXm+_9w80VQ1hb4x;#u(^3{Q^BWB{@tu3&A z=ID?dT7Xt@{}4OcrPeW-CJ(`S1_(z?!Uo;M(B&+oQ@%fKpwqiGEi&IPm+_<;$^Cp6 zE=*b`*kF{BiIR&%T87tdhz+z&A^H-x&MlolEh&8;(tn>YO1PR&WB}B;Tpvd~B!S15 z>--Mg;8>yf!<|IqkQmN42T-EskY9$4`(XWkM5kg3h)icyHsX<{OAGm6*1D)AmmjQh zE>|_)k5`t;pJ*v{wGU`lDfI#YUa3*vDWPb@P_BB;m8tc5a!thtx{O>prs05Hp*&Jb z{u{ck$|^oA5LGz?_yfo>e%>W{i?Jo8RVktv&7SPJEU}#nlfP=hCt}4kkMDFgVco;f z;u+^7dJL0nqB(wnTUjsd0E^2n;{ZP~VW)$Cml6SV0nRpPo0KyIsUgE2J=E*>@`%jDjC~^?eTG%FL|(xI;|h?A<{EngdZtY zMcO9%E5>}-W3XoK9ozR%3!3tg|Dwp#$8SvovAy|_lw7STWR;c6rk2khI+BA~P94$l zp3uz&lBI0XBj!m<;nz==hE57b9}L~qtOJReNwh@P(-bxO-YUc}foo6^ur%bHh^A*- z(#Uy;h2wEt-_1Mpu$$MD+otH?(>hzRCu~wh={sxq6~P)u=gA_=iOsw0DveL;wVoha zm+&A~cck>c==iz|g}1sMv@eL0@AzNF^R$H0*+PK)_{c#bH%Rc0_vW+?>vlr{6u+z! zL2oOy_3a^rv7#7ccFP-Fo>HxsZ1ntjb?T8HIXByWv64wZm@s+OQw0Ai^lpgFauxk}QeCswX1 zM`wKTLe`b(=&3Zt0s79@e*mdiG0QWFc%>~* z>1QR6?mHONMDaxW;@XBvFYHCc(+wV`R{9N#3Q3cuNaAN7+azy|G>7H_n=!a9Lv+6A z1*t}O@6eVFuC?#~5==7*^p=0>e*|uWqxR;dKIC*jUKOsUTCJwnFU4Ull1csY=T%tT zpF53aR1O`4BVI98XW%AlAl;GEbD~76K-;@@baX2<2OTbZVP1L^5=YM*3)aJXA^jd8 zrmJ`N({T*OZGCV0%9kbo@ z&}ysUAt5~XIkyUr9+4R94IT#1Dsb9%o5`fMY+Uj6QV2Q6$ z0v^{p*QsZIOp9b}#0Udv{Q}gE`dwvXT8?p+zb9vrmzHmmY_bcbf*QLK=IAC86Gv-> zd>27tAZXL`qU6WQfG^3sdw-^3sW38C)U2)*w)32c?E0qCgdz6 z38P8a^m0H3lC$Y5bUadWt4fN+8Y~ttnYoG|Wl@BQ@3tlI4+O z!mo6RL6vlIoNFcZ=4~OO$8Sa&Xt%zoWD+YhO@5InEhfmIWiCepp2@Sqn;UYil`*ll zFaU6F&uUWOsDhPxp`vy(7?ZY99>&JeFgd7z+VW_1YL2`s-T2MoH$-|~GA+*E#2{b7dzl*-{V29K z$emMXC(=|DqeaBtoTJ!k(8NfW^WLVBbyVT(V`2~%It)4Whr1S zhYjHMkjOUBKCw3xPJ4frTjZLtl>TS}L_96};t7eB-rp1MHwdY%&i_OHm#&L+sCq!_ zEw0LFG%p~nXOGz$e!LqJ;1SHnIH3ha3_z~Zi@=wZd|KW=@On>^ZH2qsA(dKz{;aNA zMOQy*JAD`+7hwC%Vp}g^ja$m-#)sb0fnQozM+QMNnX=gU*wJSnLdmzTzFDw5?}FKT zAlH4v(TtoqobCFCQir9hrQ?6f<`sLn`1AL^tQ(#>3lsRaPhiOBon`8$N?Q(JvL*>9 zZs7^ivUSIRfsyZ<(LPYOlqKRsi2BWTG`2`&()gD#w<44tD_8v7bD6Ghc#PK5-(O$0 z^(k?g4eK;$${bv}udF?f%}elto8%KZG0Wk9s+6NzVUbSyK(o;`pEZEdSmyP)`XVCA z@v%}9HL`D}`NrgyygY18}lP!#K*D>iG&{RFC83)CmrB1L?E~g&Kz`xyn5K+3$ z1q%rWN7p>%Yk;DeU?ZO))m?AOu|-q*)u!7E36odmwpW}v{vsbZXb7hy(DAthAksU_ zo00T(N2N7RpJeTI*Ry!oA!xBwiP0?XE&Ed7AL75vI3>6A*7I;*rH3GG@CI$`)!-3j zW(@VaSGhLU=XHC5VPpM=(|p~~+3D3?a(y9KV3&s;XXAz1?1QBR>*U^x<0*U~JyQB2 zgd=VisTxAYP!vq{L6b$hM=ZA;!p0G39VcQhoSW4N=o_1Qt~9}4Xu z3OV-Mo`-+S4fYD>I(O`$0j-R|)*) z@p(~0_QdZ7hremh>2WR+s@(|P{Wp`LUSUIv1}F}9p#R%U-p_g>{H`ay*AH;E%>=0Fkg1_3R0L8jU)mTLU3T_SGCA>M@u0#D3CL zpqfnh!17ZR6dbU~#J#7t8 zdlgIxur3_Gh3tv7{2bs6${6@pg{1@xKc4cxx`z!YYaA?mqbITvE?%i}$Bk5K3Y5#B zJq{M}wCGF34`2a$m6k1_#zhqHWNg}oj(a`7Ezk*mwK7>&kft5WgA_|h#<a`BQr*gUHQo{(jY7Cjc5ymn){2<;2|ui0o<3y?)mPn6K&rynMu|CF~2W@yP%MD6IWBdb&Tz z&D(ee7zxL1V9UJs<0cf8b0LHZg*->%(y*SMdj=k{Wjny^@QUtJBH9kh6I_6xz!UXr6XJFSlHsUp7_?88(k-^qkSjSg~r1E1@^Tu54W44lWRIjiS@g# zhylc-`(bya3=4aERcn6baV7vPaD064rCYzj9~?~SzCfrq1S3G@DdAIft9b}$0n}!N zEU)27s%hU(n{2C}_*1PL_QEw!?|5_ALTTV|iF0$!E=;&~*U;Tt_3YZ^B#EZn_4k8F ztF%(jmx{&l%#(Ey8T!uGER=qh5N$yJ*4&_Oos9d3gQ;c zf>e11A6KI%7P5Ea3VW~Q1As|=R^B3KZpqwvUcAWM5#~P%(9j!>=ds-Cs_!%^_crd* ze2}SYW6`x3>sfZUS{~`ypG*u36;E{FI}EmZyodh}9$`QUI|$E#joF{nSv|Ca5ycrh zKK2bm=sobaq*JN^1S=AI6Cp}IiBXy8wwAsns8apO2GF}9j8*Sf?QYrb(OY>Wqv?+7 zcW4baz38I+N53vj)tdy9YU4i@xXmv+eul2wT(hN&T^EVq^2&L{!0;uQO;UM=bFZ(0 z1F^%;+vdklHjfvXL6E8!CxYLwi&iKYC=b9-oR&;_4Abq)Ti^|VM@>KpokE*iNuRF! z_NCH5L2wTC|PAt~E&jmx|=(RmaDo{kxHcbp|?IDMLG);6RX41?ASz zws$siM^Wg&Lk6FLP^vtevEw1P-Sz&!yfS*r_4?Zb)oKd9_=F8fZb7 z@cjv>4qh2ypzLdyA!?{8Ppbr<+9rDCX5Rbq61&=v*l4oe(#wz<(eJ)!lci&eh8}rb z<9DJTq6ife!wFR+yYX)B0qrt-BFHdE$^f#2Bx3QUW)@!%3p{-y95(5zY#$6EKTuKY z7g>-Xp9TxfUqE)Vl4dw71=(zY1mcm*xJ02t~wN1IIt7(&js43&h5;c;@-i8 z`>^vBjxh89<*-^0QuPL#q8iL?*q4py!U*4Yqa$L0e-0&sYc#m}|Rrh4(oa?L8`?Y1U(|_lc6Dj_epT_2vQM7y}nz3(}M(SC<>puBIo4-cgm6>=lY_fD9I!9E9N1p`_<^AJ-| z6tmj878NiIV~SkT8&ik&qs`wzWXJ2ALvO1sDrR1GkNBUA6aPrV_OiKPm%d-r>j-#p z?s`>#yH}(Iu^DfUm+MS3_6!b?sPb(`aUJKbRCljHp}EmMqvR9xFrKw0l)n;Vu&gff za1k(7mxfHRC}7D<#g%rgrRag+Yh+1dfS-sR&s=QdfymFhephuIfR`WiZ0vm!zyN6V zsnq9DdZ`l+GZ|4~Eu0|C5fb-v-f?v?big4UD-6F|cNDj=xqmXwokj2AfW^YyBo z4*>mBkWOh_r`9v^K@w5v=c)tG1T?EHfW0LT;Kt{Yjtk?I!bjKTO=Vd2WlhcQfsb6EU>YlbUTQrOmQ1;1cOLQaL{YEif}>r+oT%6LET2 z6Xs>>8@dk&dcwP$jAc>Hi`rP;nHpiVdgq$1S!RnNwx7M@CX{bM`CP>P2v0dOSU7tD z$lhGpKT+l%K1?vtuQXW71ZPU~RntpyKRE1a1UPH`eRlXNHfYc|61{1=&!+v2v1(yy zV2&9r3~j~S#k@(eX7f;JDX7fh?i1uMP25!crl*W|bjDR$FjZ;4h3ONUjaA^=HYLsV z4T|EBpIqkP3fiPkUeQZe*G;Nkc}8)?xDq|X3U9K%D9`xb|5ICFh{er^;B-X7ZT;dX7vqfJjRk=qo2W>5v!|LXPaFtLO8iIiP140G!L`(*d>Bw* zk5tP32n0Jf(S)dXoqBZp5LUV!tXTjFK=!{An46DmSZN?bvFY>dlf>A%epUI;qLEkl zquwf6jLho|bIydPmA8O~UV0BeQn0BGN`M#@-ET?vg9QX+QhK#lixf=EF_?&)c_61h zP#G!-=W38;!hrjzF-e_Txwqx8`71{6Wi*$0DZ%&y!9JrsPAR(AF=5}l73X>%I{v`| ztVCDGap~TZ_BoyVpgZrfK~?}5aB`2c)!EH7I2~Z+HQCxR zWSL|E9E z(}RFSz->~p#```U!4`)!_6X?xVM9JCPN?)uIK*q!Fm{WY#`fd}@pEEvT)&|84oTXs ziCo7|Fnk%oNk{kpmZLp18;cGLqInjqcovc|qsg*qQC=?C8;MkgyB&q&UO)l3w%`3b?5 zNeh^~YA>bm&*knA0yvXw=etc&M4BS~%3G?~_-5qD?;-%^M+~0grQ9Va;%(zzLo}ib zHzpYLlSQt=+2p=f(BAA4&>Hu(@WflguiiVb!D1UuKYU!#WM9na9Q_a4trGKsy(*k* z>}zCHG~iKFK4d5EULW6_#U#ww(kaJCacPV`BeQJA+Ff#(oaJxo``3uH8oqSS>IoCJ z+Yp#YTOIiazyj1aku@{-r1D^^2dP-O1nv4~F$zEF^s|bL#j0TB7DmOh55;OhlFsFF zXiD%RTHU~%PNX*#piK>nHtW#NJ0Z_whlBdW3=`%Tfz?+*^9zOt>0pBv?Y+Cy+N}>7 zRqH>?dl0wAnT>FbeD7Zz2&z&l3YTCBh5QECHFe1zlZ1{J$QM7c$HeH7QseCV%1Q(c z;nGvo1d?d{FpvQXAR)7ZCj>c1cg1APRC%%SBx^*$xxN%+6Z&WnSzajJOqu|GTibO1wKKn5j_s`Aj5K+Cz~_^+Oz=(+;H~W|R_V%Gi*o8dE6%pb zkKlLRnE{yOGv{(dI1h2poiGL>k^)-oE38gONFY1o!Yj1;xyK2)`*!V!XuEH;*rzR} z$4OKcp3Nuv+WC~a`|`#??SkKA5MVKOmHG1XEsTAKvd&+T>n_r3E(+jaa`D^|edw zXE_~q@2DjB+6-5-t#3K^H7D`Qm;K_Y5ZU9H3J=RCrc(d%G=2>>s#AA~T@9V}6Kk|e zD1NET$P7uv6tR*a8y%Y7S4&=^Ed!xi@DmQSz+;C>{5Go%mCd06ba}YkZYwKciNQd` z^rXKU?2jjZvee)F04fr2bceyTyLvv@{UZ1U_3PJRHh=A9YIuodJ|-?@e^a0wbD$pM z_y28G-G@eEN=yb|`<^FQ$aZy1+ZUg?Qg-;hV#mGpg?}E=IeIE2kPt@P5?;63D*6<{ z7F+eR1@ph`P*rImn=%G-O}d-?=(Y4Im*W-E6GD;VL2VDrIOJ zz0gAwjsb1|m>-FXpS6RH9MKF)bH*QwG_(tLwI(}9eZ&^&ga%+vB-2V_1bjxcBtx;> zk*H86v6JG@y}_W-#l$48iF;^VVglupK?6$3&q>%HTjlh^E9^2ha&h9A_95>XUqyMO z59w3JdvV}9xVa`X>t6x-*ah(btg2=1lJeOt=b4w%Q@`bACx?H>W{;PA|Dfu_&X)xV?~E$kw!v>@ zu<~??<|LFcg9-SLv-C?(+$s4vBoxs0iS+s$r|S`#ThVbb0C%6O4BXM(=_1d)^EdjUY=zDZu>WrZ2NDtpTPC4Q*Q>L5!3(Blf>+wC{b zHersyL$TR{D}>w|hP8%yS|5EqeQJ5DEnsMkvi^I@NK5)~W|A{uVknE%UPFJWq`W7# zIaz&qvy|~`pj9k}L{!l@kpj@BU%)vGp8y(K!PiU9z#e?{XI5o*i=H5<@pzEh$MzzT z3p{s7m1RTK0j7U8n{jp4vDAYT(w5Rl4`p%<#}4jhklSAN4Oy>vid^vs2TzBytU1w#Wnr@Od~=6 zP7mw-d|nh<*@CHj|#Ms zuVlv}-R!Q_Fu|tk>gkfrSIKZ#Whv$6wmCkeJJzbKDhU7W#XCw*4eWmah!*b@GfSe7 zp#mKv#W~Z$c6QQ_epW`_*=*EZZJKqH0^$}3_D;3GEAmE(6!ubfIAk&}bCPieA#)Fw=&Bt5$>UvW6Fq-XWWbIoB1 zqAn8Up|gT_Pi)arkX`UW8iAZX1ICM)TR|B2LHh0hf2364u!nm5tb0ShSVD7MYOJ}~ z!stW+SN9=k72|p{xAn1i88y8ine8O%nP*sWX7`}FL0X2J=rGM6@qf0#R0;-gKCuib zCBo;c zpm8qJF`DvosAw@fz;?x+^p<=arU@jca!|0?AspsEf^v+ByXM}wb_Ixbj>zWnC&I)< zYjBZhwgq;v)&2un!p+zaYHzAEZy>iXMm17$DnD4nO0CuD^V0Fh!Ffp-M;iJAkn^VH zNZ#%}If<=GlISt!wkUydKQ0^Crr};oSe*@65NdI~xre^9&M)%9v1)9nTaG---P>aV zWHeRP*%{>#)&s90+jsQhuZg%g3ITURUwTpc_Itlk6spg$4QXsvU4*fy$H4 z;DF`f+w|a&y*hV(Wark&R#0nQT^Kl>;;;?q?A`3L=80WZ&Tbw3Cs#Vgpc^uMl-g=% zD5I07)#3i6$$Kz*jC|RVp{@5$Bq9hb`-X3r&m;b8lHQHzec+s8Di+BwVX@z9FU2&scfS*jk9 zjgx7=66}fMCvz##`_PTe%?WE(EeBBXqdJ zmkeN{Sil*o_AFmWw$OLs?RAqPF;WD>+9h!8cl{l~UCk@mOVE6ngmMjahNHc0fW1mw zLn$BBEV$3CBQW#j#A`EE_-J(BX%l!Zr^UtxNcsM4p+8>Ocd`$JQ;5=Qry4TuJ8JwoB%_H)MZytKK^ATfE2BL>yfVI!naVPD(l$=Z`FBNIlf=zj zceL(af^>>rf{yjQZJLc%M-YvIqAw)MD3wxH08{2jg2RCuuxBCtM^tr zpM26D`!g4|Va=+{92n(K*#!3HatDHchV-L{>YhS3n^0zxCId-YyBaPf zz@^#ERD~32Dn#Yk2t4ii7K%i7h#wu#rGO}#%+HgRGjOCh9>h1fLRaFdA?_0@?#-T(oT!v6rseMQic6IQm8v zH91KVupilYZaG%LQK|r|qvz4@EvbhYo(DPFaD*=Y4ee16)6R{<6AbzK z5~pG!T?m-kv*Y{)N2#xH<3m34^u(gd*;o^VE)}%&l!yJ?_jH)mmnnUBf1C#Jpgk9_LC0PvUp3HR@P};_*$`!7iFV|xg z-jv&6_S#AlNpjK^BI#05#uZevzo?^+dFU(ui^RcNY1F(0UG36-Oii)!EdL6XfKsu_ z=*Xj}WxT#&w$zpkec!EVUF0i2oj*$~FJ+A3E#MqE;r?3Gi`}$(50(c@l1`-6MYi%3 z3q(b+SYO(>JXjQtOv20xza5?_q~?7kc|#|H0|40N%%bvmoI%AEtMgJ~`@-JWiP81RWH)NVCr&nUy}>EwWr)|r zXRV4xlvhebUvI%^DBb>F4AqG4E?e~Q?jl*^Ns(Uzg@i@Ujf;2%@Zjz{iTQlvW?1 zPPw*N_W>FR6(UqB3dRGhqJ3|C^b8E#QN^8DTwx(9bqg5FIz#NvR{<*TXU{Wo_)jan zlRLS|&*U4B+hSj%ccz2m6|a!oHgixyoHIua8}Oi%)j$PDOiVyhb17AiwOLXp)f{3h;(bW(R1$ zihpki=V?wqk}Nf4SI5D53PY1j_YG}v)d;SgFuz6lNsm}Hm9^W+&&$-gEo)$&@fJ%W zn&NbKymjXaP4}-j>z0oK7)t?bya<>>P?0m(0@uhQ)X=)9usAynfy&qa(>0yKGwTv|b;A8tajla*0W#l7? zDlL^#&6JX!+$qI9zqz)lC>n~0^-#!Mz9Fq|5@bVTIGeF{kVPrSoCTuN$jWCYc`W5 z;Y!;sN|gnsOKsT)x|q^BsY>KiRktn_Pgyx)Jx|mElg0qUDOKE1RQTRV?oFV`O*hc$n z-97I4?o%s}y3=f|T6Fv64RRnxr6+ZF`lbSmCf3W@d2V_B0 ze1dl=ter~N7COcNRKhB?Ok>*A`nW6!{gt3LZ4X|UMInn$((s}jdC`7JzEx~hDooFr z87z~657LqpCq4QEhp}1j>_O+EL>48o_Rot?IM8P>T%a9z%{0@52JW3xbC>;_5%WAh zh9Dvg^U~9*NWr`*`x|GvUb6npQE}Lu=S*Ux<#S^|k2S!lUnF=yWZC~0Rys{(ccBhs z`a_NN;VC7gRv04OD6NdA zV5h?HcAKxy_JTJLja=tmkd8x&;UeOtKrU*@$ksosBxqwTP%AIfD8dOKHruq6xvfYa zS<4rMbJJmT>bT}WZCwuVu%KfuM_Uc{PSva3sB3xt7ii&JjN!Mg7jUIt2%rNaO@mcPE2*V33yx&>fO!Og{FsxHUH|i zURhTbX(32U4z~mc2^(}0G((PKuHS|Csm}dFVbtL0M~5)yQ^kGl6EM$kwFI{ ztunDVR8vyMZ%oPc`n26!`mohWnaXNI-aQi5oJ#ub$$?Zw6HyF1LdZS??61nhdqK+B1aSReJ32jVk@6K-=Co^0*RIM5Q;o{b?$5VRnMW+K z8-TIXBQL2mvS*3UrkcGLs|h94=OQI4(s^Jx&I13IFQTEvT4G@G=~9B+?Wqa{m#^z2z``J$~LxlNqB1eS@aLRd|)`Q@uq`#TISIA~-a?RW_AC z4FP^_ErX1f(vNdhUy)Pl@G&t(=KSlRD+=*+e4a0vkI>tgOeWY0#Yy@28T{2rn-Xb5 z2rx;u`!MNgf~6&Q8xtoYGFv_n2eh01VGR82gfEV+|!}4INDHjy; z2!8xRqfxmXtNB~Q+CV1^trD7|2{ItUE^d@H>*Mq_Fk--ZR=K{7%K?LeL=bi8)97wS zs~+VI>K8bV5RG9xoL{z-mI;g+O>&0c-wk)6`S{^#I4T9hh;fhR%kxZFehPL~XC{)4 zLmqe8qM&;qu28_$ZGB5+@fWs5-$Y?1-sPn$sLX644=|P8%EdNOyIOz&z@JsmK%o|T z;_4otmQXh)h!HA5B6}oaGzTm`dvP_Z6JS5DK|*b)<5rc5Dc3D;rwU)5+~|F7WxjfO z2EvtTTPwn`Ox)MC{T5`ZKWG;<2GYh-r@%6bs0VLgc5p}h<0m#8h)^X-?>8ZF1j5Gl z;cbfo;9RSCelSZ8z4`{0@%TYUH#gMAZ^9ah+CJ9HfVKbZL3;)zcw!F95{z@Ia zXXwz81!r#N_0sKF8dYB7tz9%j7qeV?9eV6x2i9ZJEMlcxx`zc3pDCcnbLW*v>%dOJ zZ3QFg8K$oGHXSDd&XWOc9-SRi1m#6b$YG+REzg4d3u}Q^N$Xk~xi|sC9dAcWg@M7R zy#tU^E4rR3cN;KaVa4&qmj&xo(DeSo}l$8b%hvr>oI1! z1=tz@C$VuEv0VqIsvec9Nx_K**I~CfuVVbi0-j=egJJV9-|-E17(Bc%#S!DK_ssH) zVhQqA=*Kns{()8)1NKaub&Oig+de(a{k1F`9wM6rrR7O}nn5Gf3%HoCFeXJyX?beL zPCee~e4#aiHoyQ%F3RmPjizVEXS4417v5lK$2KRcEvxC55#?1xJ)3djFEKAz zsDW{OlhvUzq+7~sOqzpYI%dL|D}acTE|z#&a}vUM2w6?-@Xf9M35VGYtdo@Nda-PS z;t~r#(Tf16g)F|I2(-wd?0 zF!`d!#%gDGLp9RvD>&u<@Qu%766DMcOFRcosjaV)FWJ!Ec6g{pV4M1Mlgf${xH|ur zEhuyyj;Si#J&`5I%$?P8xQ6bKK5)~HsqOETzs#7ZrS4tk2=5*8_1fx*!3CDWi?eQJ z*^`5eFxqWulEfrI2x7Mja?duD+xmv5Wg9m^LQ~T}nuetU5X_G7hXvXIYUiK+tLZ%y ze8m#|(x^=^U4CK*)h~p=2O~`(rq=PDNpBk#8ut7M)BFHN(O0E+cEyzX-sR;L{F&-K zE63YH)k7JbFBr@wdyKNrTExM7Z>-b~=S{yz0MOiSKJqzDar7IE)@^S+I0eVfL?cY8 ze4Hf|>X#)eQ&1V)-MH?lSD0<))j=OW9Z7F=9@uM)Nh+;YsrfyF;W$Llt*UXcr8rN>T2##H>C zL3^~_-tphnQ5^JO4lBw!nhu*%R3=P|bn4G}Zv1wfrN`p@Q%`=(+{pYqZhg15`=Sy! zysc3`0^K_UYnMH;1C^Pq_#xh~()bQJalbLe&u@U zjh@}hlVK3OQ^nVVF$23QC;~om9KplhWMgi4JSb68;3)^p^;cXU=S?g>O78h@-NSPg z*^w3(*unWmP~pII10362SOa!P9sOO#(bE zJb5Xe@0NkWqqC1$#jyShf!EwN->5Z#e_S)M4w_N)$$<>J|4u6ARp2ci`Gj6g*qZfZ zLOa|6qa<3#N%!M2HI<}d_xTIMv&-sQ#55lB4`{=AvOe}^)TPqx#^1P3@0swOCvaY$ znFV1t{kfAEyb6l8rCc9?jQ7K1IVxz>bDX91ay8${Qp^E2%DQ=N+HpO&*De}hEcZZU zp+@MY1-jBlHob<8n@V*LVQ9yNoZTJhH1>B&9qIi+nn?TpBy-!ER z=dVh>Ib&|@d+B4+;pwmu}5 zuE%PP#AN<$p}<%Ry!g;<&4roenu-z~!>U{Suy%@0&`?;^M9Tg~_u{7z$HDKaU@s6U zD70^{mqkw_w($n_RLizE0V~tuAiFbk$5imGGP<%yhzP~R#CDy~x|Yr@u5y^~e#Ru4 zuR&>h1BUSPbV7^uX+BQ9Y`?#Bif$eFy^!?v(CuFd!FR?D?LllvEolbIIG+UToBUT+ z-lPVED)PTt>}fm@u5hN{TeAA$G|-!w4RYL~PvBAAXk(&lrB8-u#)o^y_VwuW9NqRV zeLn-b0?8s&doe^foPvqwsw}~@dSPXlU^Q{~IY3vMQ+2q-s)v_vNRst0&!KTt+BAeW zdi=lnHk(a#z#yj0vM$`FZL7bWNkw2lo10O+E2NItRTi z2GtxSAFI*v3ixH~ZOoxNPDJWvbeGhMF8}7k4_$>C&6GkuI;k9=N`Jb|;={d12EB^w z=>0(n#t0(h-cIgY-VJh+UDJ1P zOLT4NZXVM7$-=!uUeyKi*G2VBvo4n4xxKV(l45~Cb~3}2#O*_XW$G5xT|l#KNOgts z!3X1>e{YU*eiWJ}w)ddrDri(GXUfua~2zTqxa231Z(3Zg; zty;98@gw8@5h?p+k>yF2{sGr*)FTGod0r5|7um?XV|Nsx`KKAxgd}DRajvYVTl78Q zX`&mKqUG)TPi{ackLy}gJ7sr)k8iZb~cNZ~uek|s@hUD~a&5j{SA z*6xsvg9el%z1>Ppt(>UlKp!Z+dZL6g@z_1MSy_fd>bl{Ha!SioGSvm#tcn}oG$?MK zFmXFCQg%MUFWY74b12#%Jo+N$vND3EcIQPIScZ-i^{z%eUi8T9ERMW`WYi5@tDWi# zW(XH%k1^QtX2YyK^F4=uE@jXd+vuISt9y`nUdWR}`a+mh`xxm&{a=?>b=QYrUY9CI z^Snn>qy!Nh6smnxMD(*I^#XZt%LIVs<$Tj6oL7v8{Ngu|82^Ead7;*Z5Yp+l$IQ03 z0X`LRv`4F|B}(3 zB2b*8`ymlK;?{`+osAjfbs>yx_;E$tG9n8^VSuYx8U$O*(XqWcG0q5`6A003J9=I% zEc@Wqwl5o5`yhKi*}*#e=DW?s0yNHf;YbP;N={Rv{+$Q_Ka z5M*Y*?jB{iMB0t)s03Zf{_!K=EV5ZTH)fv}kc_bw&QLU>GIVIo3^AzT}&T7H` zAyi)}a+hRv3Ob^3f5o=SC%rY7lIU)vcwAcD_uZ_cW~aZrW*}w!W<~mIGRA1qpB=nt zRk`@*FR2Tx0UK{U!d$OBRzGTAtoZ$uzffNBaCCsU4pYbfgZGd7EWbe_{${01J`Zaq zSh)+hxqvB&5CwaNBW2o!CdB>)YT_zC5FKUR)4k_dUoYjhqas96pL$XdJ5x*E9`)XL za^g|NQc~WM0Y(b&nxjm#ebZDC#F^+9J5813c%ZM?!|#yykFd;-rodiBrLJwMWB=xuD?HVNsp^-N@S9>+lnnpEEZ;?Ut-Tgs^xHRJ4+O) zRMwmf$ECl+m#ZS<7itp{yPLb_eRJh{k=gFZalAS9kM8VC-olD*GR4p8e?C$2c&brO zu$X;VR7(`25p#pJ-US8EJMxRfBgZp*RtG5xG%=GV!bk%^xK$z8O_G-Ld!ou+`yQl@hpz|Ldf5~os*0E0MNzXHD(4-6SF$6-0)96Mm2X?kYz+e zr5A91U0I9BVy8^oZ!7fH-kVtx;^&N62@DdUqrfel0C|Pp%$@#MJ<^TIr>~rR5ZqZU@F#hHGv`k;ExL~fX>>MF_Xwj(DAob93rQ9BZaDTu% zOW22u+8kG*mED)mhGu%v>qgqQ=|bs+20%B& zm-FT7`66ZSRwax_2;N0DR?RhLPmYZ5jg0kTnNr@4SMr}gXc8to;6Qx2JCU9Oun(m& zsq;7>4D}+2w9X73`V79!@*TE1b7yH}7Mvcw_ku0;ukYlNEW<7uo940^5!&)wzYtI~ zmT%0m{AkbY+<6S5ucSX%&@kaUV=>y@YF?uJc|loCVJ>3@R;MPOW651rnOaw^Qz;3Y z`N$Vj%sZ7Ac>55v{3M!wQ2ufU3h1`{*R>a-ZIpdeqqYDkT7JWib1bvPQUV8x8GDW+ z+`<`~Y|F?p;ReW+=Pi4FI-c?jU2dFGNuKfd4%>_Ik3wi2tq3-xvG?PerzE($55{*Z6 z2aXZbMp~*jPrw7fzOPlCjE10s$uLnF%{wI6O(}y_P!V=Wy<3NJ2-JQ7soX4iN3L4i zOd_`M3YeWTlef*MG|>|dI3^KJH1Fo0e-B>nF#gywJL|8P{2$$V$3x^ZAVKKOkb*u% z=2H4Fi5Z=>+V&UcTGK$1gj6aEih>n)D`&Pjn{WmUs~QJ6VG8$YMN1 zbp8Y6zCl8}Glxl2$B+{ysyV%!In{_;F*tE~F_zNo|O8#f~@HacKf)lq^PMa&~d zX5QJ0q8ROOZ2t*8X&*}%S1SZnR5TZ!U`Krv0u7}CZRfONwxZ_m(jQ^rn5B+dGJ7au zoT&1OLtM7(-AU^>qm%PTy%X`txj>Rx&I8-^ta;vRZexW;A6k zwTjWYO`)Q!Mf_u@t8)Nirdx+=a3kscbr!a5QaoZ8Bd6_4mttfr(H)wFQA@_4QsXfg zy9k#8q%#;dYS&dPagfJY3lR-w4RT>X|LK=voN){N0;ZuiFHH{OnNDv#nygKM!`sF2 zeP--h6Y_S{eD|LQ4)kC}#*9t0@DCZ=nO&JPo$wKQ*bdi&&JQ7jd39McfYB*%%tOiy zyj2!Q=`T@EZzNeGC<@ljhJ2w{bU2}BBul-P33Qe{%bY#UNS8%HQKOA)pJM}0_#!h2 zV5V1tGWrt17wvk&_6-MO>q$23FN*Z+{2&aCK8qr^)Z*`6$`j|M*a3R>500&0lvY6F zV;H>QpPE{Khn+$4A^~w?O1j8)!=xUYkMI-h%g%rr)eVYhU%X1>dvkrF+2_|wFzLx2B$G566OHtt)syH>zh)PF}T} zEVCQ2#21zBp2*1*9OaS&vvM)0ir3ca5W~|zQ#^ocS-4Z};LHV#Ya^zd6pen>A4ip{O!!J=(LXY$M<9o#_z{O`K0+Q{Da zbLh0w6FDCV1qsE&@%m){3)~1qR)1VUIrEIome{ynh6zC7W^v?b7d2Fu+h_fzqyr~u z6CYQ{Ircjb$PK6E?}g>-C)JSFA}(MRtK*F_K76}!BPK~MYm|1*VQd2Li1j7JNRx2A zn$k-6(o|!hp+xj<7R;BoP`by)0)zU%8MN)!+`9HQ&0bh&;JB8%pyRNDsm`j+G7MCk zxxg|_LeC|nr8YS|ZDk!;Wx!uU&=-z<3aHdL{|RdcscBo%p@4LL*HR#v5n{a{E(Z7p z7G%`Tk5*b%Lt8UXuMPh4U?4LdR?c)A1>VcnF$+N(_Gmz4_vrMJ6-MCrLCxaeUf#m* z^CM~3m7kS)L9&l>GfR=AFkKzbYTzc%t|BSQv@DkR!xBlh!?_m(Y|@K9W;~Cgv~E0? zr+hvmKSZ)=S#co~qoq+LJ^`ic;8sBK49@y`02uQzHX{FE#seDa?;FKUY268m_1eQH z6|0i^C;g5e%L%>Dy%?GPEEkJndO~Z2_!}IK6-r21o`gsQVFLuCz)4b?OhYpS#2f4k3E|-AqU1r1pQvAiKY1re>VsttgolxGqcAYRTZ< zN_#62gjtIBiA(g)>AmG<_dh2=_x_fx#-YJK{Sm)`xmrMdc@=Jho!JH^*`1Jt>GoUi zp)wt~;(gDP6<#4L#hMt0)_}J!)6q8PSIZxM@&X+QkNKU=@W`|%5t3*PV;Ik3jM8J?Oh3G^gd*fLnUd=L|xU5p0s7n#-204u1u*ONFzDMSR;qREv074@cXcMhqzsdc>7|MG5N@5vR9W| zbg;B+TeF|L6iBYK+E_^>!s9`Dum%j~3&Cq+%o?ex3u>E}KAcbtm>ez)RN@4)vw$;I z6-(=(3RjHVWF4OW>gZ+z{BNJB3Vz9iRJ^D!Kbi%u%^Eu*TgIY1Mi;zakXPVt$EbGc z>zk>=x3{rtAL$R1(vdlEEeDPdUu12G1W_O2_!xActkGS_%+=~jLWYPeLrr&$NLY5jnIHA&AT z$(CJqH$T-O%$mi7ttUwA!F6c&N`45kGxgD^w`1|89i1D$7ro;;mLLJ4;T6)3R{RZo z`A_sBCARslfdvUjyoIe`sXT7#_z`fhKYzzBDayd_jlPkr@}wW|9|(Scc9se8J-ft) zQkakUstOWHP2czZr%bm`7F{=?q={}?#FEu5V>ErIjhg6u^^4BA;i&wK#!t+h2HYx# zKuovEtGh=mD=9c*Y_>r_e4p}Zkz_^XdCmE@1!;+MH&2iyD6A3~xznT4swU4nYDjO*?6DgJ)Hge` zb|MAPBO`r;hU3E)$s#YNeKEGTH!f9(`5H8$Cu0pav5(MFpg?TSpJ!^-5P9^IU$cD( z(`!>Q`KgrQ6r0US)max6WSX`EXnR>$Q9M)3HKKoP2`U(Dxrozd&;>ZtN+Ny8PFFJb zZgTC_kqat9AN6Dh7E8C^POM2A;O}9XSN6JH4^RR^LvKTmXl!g~b}HkvkG=4#+0vJ- zu!!)@SH(o6`AHKvo-aU;hyJLwQp-tTh3Kn8ml6aOCvbcv#c4LGKxO_T?d~m@rLAYU zAC8k>yzhFQLM?W>ZjktBF1bk5stbJ|9$I(&AIW99)*jb?YPUM75Xer2L3R0=@iLv- zHfcLmB$Y+nE;lzFRa^-^^0}JGXt?{p7olP7P)1Scvp`5~d-n3we-=punS;L0qkH7F zM15GQm`*9WfJ71~V8P(Jvj^Ofg~sm~3&Y9Pigx(E^7@RO(EOZg!SCCl-!|S2^)~I+ znvkl%juyQM;qZ8uFB*oF>61Pa1fP8jpC~5;jAr=V*}23z!{RBhf&}AfX?-K)ub7+0 zFmu?BNtCkUSAh5T8q-+&Q=#49Z!|@uE)rONj-=1!`#(f5VlI5c_h%Dd_I*ic8s~&# zWs^Iz=C?8%f!yq?(SrH2r(M=eAIA2Rf*buCC3_WqRAzW&J!puSP+}z#V%YWYv7I%0 zrj87IPufpu9zu)re1Eb}l9mQcO7gP#?lG7Or;9{dz%)Q-1(?$*3p8T+)8|SQAJvvC z`uu7&DKQ2ozQLx~2IS}v12_hxmrGsuv(3{sIyax3%C&MM9eTn8zVKK^Nu7d1r-t1? z!(Cvtqf-+mPkQnN$uIpuzj*oOxrG-}q1Q(O5)ktD*$h*Nf=0Zzf9Srof-VRt0c1Mc z0UBGIHWSKmU(g8C9=+3Gu3SXI{o}pmsUg-#i4@)C-QUfg}{n55=S4eZw$(!R$ypBL8uZS#TQTC2jwq+U|CnXVZq1OF4bd zAQHVc@5B(0!!xf*4FEYn#=j*=p{ZBOXqaRH4Gs6$j&2XBE%0TQOFzmi6tM!ukYdPm zU%+IFAF_3rXy-nFUu}q9rF4IFyNjk(oW(!lyCnn%Wh<0x?16-!MrO|2=Pxaim$I_B zQ0i%sLxW*^OeeDtQ!o3rgdRD28pKPiXd^T51kYx ze-fy?yMn{kf|6xxvO%KO^F*UX5mBZYJs6JrHdH2YRpTb}%6W22yB<1?{iK0w%1Ut? zNew{n%{?@VVMql~rzXJwnb;)fD&N+xJfy|dl-g4ZuxBr=!mkBZos?WV1@fqBQtL|2 zTd6H>hb90e!Q~s7Mq0~Ne5Pf;fY!xJ61xHgx8d#ZxZB(0>CYv(_dYBWCqK%)svZ1}jN) z)X%X(PEh4*yzAljXXEXXbOj2#lK>!yqhZ0~@L5uBsB%e_tnQQfhPx?TKr)cRa@w55 z6zn|5*f>&{tr<^HHCZ=}?0t)`O{15gZBGm2s9E~O!zec2HQ+wS(hMD`xr;8Ye$@nE zH%b)O=OkI_t0#DbRZzyj2@vVCD-!8i(iJjoi19s#00YfZc>_W7Qh{IdtiV3k^;mXw znQ!f}i5ogwM1fz)+T(G@L(Y(@v9d*cX7e0t*zQ~+{n9e=##pLyHYqcMT%Qa1mWEec zdEwl`jueU`?^zCQp?Y&x*bn;1##o_oY;9BKd{NOozHQ5kl<%WoplU4~2;Q_)t4;~J znj(~AmO⋘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

Qd`*ks=-;AS^DMM#vI>Nu6#u1l2PT?lU-@x+ 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 6: + stage: syntax + image: ruby:2.5.3 + script: + - bundle exec rake syntax lint metadata_lint check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop + variables: + PUPPET_GEM_VERSION: '~> 6' + +parallel_spec-Ruby 2.5.3-Puppet ~> 6: + stage: unit + image: ruby:2.5.3 + script: + - bundle exec rake parallel_spec + variables: + PUPPET_GEM_VERSION: '~> 6' + +parallel_spec-Ruby 2.4.5-Puppet ~> 5: + stage: unit + image: ruby:2.4.5 + script: + - bundle exec rake parallel_spec + variables: + PUPPET_GEM_VERSION: '~> 5' + diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.pdkignore b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.pdkignore new file mode 100644 index 0000000..e6215cd --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.pdkignore @@ -0,0 +1,42 @@ +.git/ +.*.sw[op] +.metadata +.yardoc +.yardwarns +*.iml +/.bundle/ +/.idea/ +/.vagrant/ +/coverage/ +/bin/ +/doc/ +/Gemfile.local +/Gemfile.lock +/junit/ +/log/ +/pkg/ +/spec/fixtures/manifests/ +/spec/fixtures/modules/ +/tmp/ +/vendor/ +/convert_report.txt +/update_report.txt +.DS_Store +.project +.envrc +/inventory.yaml +/appveyor.yml +/.fixtures.yml +/Gemfile +/.gitattributes +/.gitignore +/.gitlab-ci.yml +/.pdkignore +/Rakefile +/rakelib/ +/.rspec +/.rubocop.yml +/.travis.yml +/.yardopts +/spec/ +/.vscode/ diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.puppet-lint.rc b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.puppet-lint.rc new file mode 100644 index 0000000..cc96ece --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.puppet-lint.rc @@ -0,0 +1 @@ +--relative diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.rspec b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.rspec new file mode 100644 index 0000000..16f9cdb --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.rspec @@ -0,0 +1,2 @@ +--color +--format documentation diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.rubocop.yml b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.rubocop.yml new file mode 100644 index 0000000..bab25db --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.rubocop.yml @@ -0,0 +1,133 @@ +--- +require: +- rubocop-rspec +- rubocop-i18n +AllCops: + DisplayCopNames: true + TargetRubyVersion: '2.1' + Include: + - "./**/*.rb" + Exclude: + - bin/* + - ".vendor/**/*" + - "**/Gemfile" + - "**/Rakefile" + - pkg/**/* + - spec/fixtures/**/* + - vendor/**/* + - "**/Puppetfile" + - "**/Vagrantfile" + - "**/Guardfile" +Metrics/LineLength: + Description: People have wide screens, use them. + Max: 200 +GetText: + Enabled: false +GetText/DecorateString: + Description: We don't want to decorate test output. + Exclude: + - spec/**/* + Enabled: false +RSpec/BeforeAfterAll: + Description: Beware of using after(:all) as it may cause state to leak between tests. + A necessary evil in acceptance testing. + Exclude: + - spec/acceptance/**/*.rb +RSpec/HookArgument: + Description: Prefer explicit :each argument, matching existing module's style + EnforcedStyle: each +Style/BlockDelimiters: + Description: Prefer braces for chaining. Mostly an aesthetical choice. Better to + be consistent then. + EnforcedStyle: braces_for_chaining +Style/ClassAndModuleChildren: + Description: Compact style reduces the required amount of indentation. + EnforcedStyle: compact +Style/EmptyElse: + Description: Enforce against empty else clauses, but allow `nil` for clarity. + EnforcedStyle: empty +Style/FormatString: + Description: Following the main puppet project's style, prefer the % format format. + EnforcedStyle: percent +Style/FormatStringToken: + Description: Following the main puppet project's style, prefer the simpler template + tokens over annotated ones. + EnforcedStyle: template +Style/Lambda: + Description: Prefer the keyword for easier discoverability. + EnforcedStyle: literal +Style/RegexpLiteral: + Description: Community preference. See https://github.com/voxpupuli/modulesync_config/issues/168 + EnforcedStyle: percent_r +Style/TernaryParentheses: + Description: Checks for use of parentheses around ternary conditions. Enforce parentheses + on complex expressions for better readability, but seriously consider breaking + it up. + EnforcedStyle: require_parentheses_when_complex +Style/TrailingCommaInArguments: + Description: Prefer always trailing comma on multiline argument lists. This makes + diffs, and re-ordering nicer. + EnforcedStyleForMultiline: comma +Style/TrailingCommaInLiteral: + Description: Prefer always trailing comma on multiline literals. This makes diffs, + and re-ordering nicer. + EnforcedStyleForMultiline: comma +Style/SymbolArray: + Description: Using percent style obscures symbolic intent of array's contents. + EnforcedStyle: brackets +RSpec/MessageSpies: + EnforcedStyle: receive +Style/Documentation: + Exclude: + - lib/puppet/parser/functions/**/* + - spec/**/* +Style/WordArray: + EnforcedStyle: brackets +Style/CollectionMethods: + Enabled: true +Style/MethodCalledOnDoEndBlock: + Enabled: true +Style/StringMethods: + Enabled: true +GetText/DecorateFunctionMessage: + Enabled: false +GetText/DecorateStringFormattingUsingInterpolation: + Enabled: false +GetText/DecorateStringFormattingUsingPercent: + Enabled: false +Layout/EndOfLine: + Enabled: false +Layout/IndentHeredoc: + Enabled: false +Metrics/AbcSize: + Enabled: false +Metrics/BlockLength: + Enabled: false +Metrics/ClassLength: + Enabled: false +Metrics/CyclomaticComplexity: + Enabled: false +Metrics/MethodLength: + Enabled: false +Metrics/ModuleLength: + Enabled: false +Metrics/ParameterLists: + Enabled: false +Metrics/PerceivedComplexity: + Enabled: false +RSpec/DescribeClass: + Enabled: false +RSpec/ExampleLength: + Enabled: false +RSpec/MessageExpectation: + Enabled: false +RSpec/MultipleExpectations: + Enabled: false +RSpec/NestedGroups: + Enabled: false +Style/AsciiComments: + Enabled: false +Style/IfUnlessModifier: + Enabled: false +Style/SymbolProc: + Enabled: false diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.travis.yml b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.travis.yml new file mode 100644 index 0000000..ed27d4d --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.travis.yml @@ -0,0 +1,45 @@ +--- +dist: xenial +language: ruby +cache: bundler +before_install: + - bundle -v + - rm -f Gemfile.lock + - gem update --system $RUBYGEMS_VERSION + - gem --version + - bundle -v +script: + - 'bundle exec rake $CHECK' +bundler_args: --without system_tests +rvm: + - 2.5.3 +stages: + - static + - spec + - acceptance + - + if: tag =~ ^v\d + name: deploy +matrix: + fast_finish: true + include: + - + env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint" + stage: static + - + env: PUPPET_GEM_VERSION="~> 5.0" CHECK=parallel_spec + rvm: 2.4.5 + stage: spec + - + env: PUPPET_GEM_VERSION="~> 6.0" CHECK=parallel_spec + rvm: 2.5.3 + stage: spec + - + env: DEPLOY_TO_FORGE=yes + stage: deploy +branches: + only: + - master + - /^v\d/ +notifications: + email: false diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.vscode/extensions.json b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.vscode/extensions.json new file mode 100644 index 0000000..6177782 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.vscode/extensions.json @@ -0,0 +1,6 @@ +{ + "recommendations": [ + "jpogran.puppet-vscode", + "rebornix.Ruby" + ] +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.yardopts b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.yardopts new file mode 100644 index 0000000..29c933b --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/.yardopts @@ -0,0 +1 @@ +--markup markdown diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/CHANGELOG.md b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/CHANGELOG.md new file mode 100644 index 0000000..4c954cd --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/CHANGELOG.md @@ -0,0 +1,11 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +## Release 0.1.0 + +**Features** + +**Bugfixes** + +**Known Issues** diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/Gemfile b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/Gemfile new file mode 100644 index 0000000..2aeab8e --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/Gemfile @@ -0,0 +1,72 @@ +source ENV['GEM_SOURCE'] || 'https://rubygems.org' + +def location_for(place_or_version, fake_version = nil) + git_url_regex = %r{\A(?(https?|git)[:@][^#]*)(#(?.*))?} + file_url_regex = %r{\Afile:\/\/(?.*)} + + if place_or_version && (git_url = place_or_version.match(git_url_regex)) + [fake_version, { git: git_url[:url], branch: git_url[:branch], require: false }].compact + elsif place_or_version && (file_url = place_or_version.match(file_url_regex)) + ['>= 0', { path: File.expand_path(file_url[:path]), require: false }] + else + [place_or_version, { require: false }] + end +end + +ruby_version_segments = Gem::Version.new(RUBY_VERSION.dup).segments +minor_version = ruby_version_segments[0..1].join('.') + +group :development do + gem "fast_gettext", '1.1.0', require: false if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.1.0') + gem "fast_gettext", require: false if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.1.0') + gem "json_pure", '<= 2.0.1', require: false if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.0.0') + gem "json", '= 1.8.1', require: false if Gem::Version.new(RUBY_VERSION.dup) == Gem::Version.new('2.1.9') + gem "json", '= 2.0.4', require: false if Gem::Requirement.create('~> 2.4.2').satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) + gem "json", '= 2.1.0', require: false if Gem::Requirement.create(['>= 2.5.0', '< 2.7.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) + gem "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw] + gem "puppet-module-posix-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby] + gem "puppet-module-posix-dev-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby] + gem "puppet-module-win-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:mswin, :mingw, :x64_mingw] + gem "puppet-module-win-dev-r#{minor_version}", '~> 0.3', require: false, platforms: [:mswin, :mingw, :x64_mingw] +end + +puppet_version = ENV['PUPPET_GEM_VERSION'] +facter_version = ENV['FACTER_GEM_VERSION'] +hiera_version = ENV['HIERA_GEM_VERSION'] + +gems = {} + +gems['puppet'] = location_for(puppet_version) + +# If facter or hiera versions have been specified via the environment +# variables + +gems['facter'] = location_for(facter_version) if facter_version +gems['hiera'] = location_for(hiera_version) if hiera_version + +if Gem.win_platform? && puppet_version =~ %r{^(file:///|git://)} + # If we're using a Puppet gem on Windows which handles its own win32-xxx gem + # dependencies (>= 3.5.0), set the maximum versions (see PUP-6445). + gems['win32-dir'] = ['<= 0.4.9', require: false] + gems['win32-eventlog'] = ['<= 0.6.5', require: false] + gems['win32-process'] = ['<= 0.7.5', require: false] + gems['win32-security'] = ['<= 0.2.5', require: false] + gems['win32-service'] = ['0.8.8', require: false] +end + +gems.each do |gem_name, gem_params| + gem gem_name, *gem_params +end + +# Evaluate Gemfile.local and ~/.gemfile if they exist +extra_gemfiles = [ + "#{__FILE__}.local", + File.join(Dir.home, '.gemfile'), +] + +extra_gemfiles.each do |gemfile| + if File.file?(gemfile) && File.readable?(gemfile) + eval(File.read(gemfile), binding) + end +end +# vim: syntax=ruby diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/README.md b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/README.md new file mode 100644 index 0000000..5fb82ae --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/README.md @@ -0,0 +1,87 @@ +# profile + +Welcome to your new module. A short overview of the generated parts can be found in the PDK documentation at https://puppet.com/pdk/latest/pdk_generating_modules.html . + +The README template below provides a starting point with details about what information to include in your README. + +#### Table of Contents + +1. [Description](#description) +2. [Setup - The basics of getting started with profile](#setup) + * [What profile affects](#what-profile-affects) + * [Setup requirements](#setup-requirements) + * [Beginning with profile](#beginning-with-profile) +3. [Usage - Configuration options and additional functionality](#usage) +4. [Limitations - OS compatibility, etc.](#limitations) +5. [Development - Guide for contributing to the module](#development) + +## Description + +Briefly tell users why they might want to use your module. Explain what your module does and what kind of problems users can solve with it. + +This should be a fairly short description helps the user decide if your module is what they want. + +## Setup + +### What profile affects **OPTIONAL** + +If it's obvious what your module touches, you can skip this section. For example, folks can probably figure out that your mysql_instance module affects their MySQL instances. + +If there's more that they should know about, though, this is the place to mention: + +* Files, packages, services, or operations that the module will alter, impact, or execute. +* Dependencies that your module automatically installs. +* Warnings or other important notices. + +### Setup Requirements **OPTIONAL** + +If your module requires anything extra before setting up (pluginsync enabled, another module, etc.), mention it here. + +If your most recent release breaks compatibility or requires particular steps for upgrading, you might want to include an additional "Upgrading" section here. + +### Beginning with profile + +The very basic steps needed for a user to get the module up and running. This can include setup steps, if necessary, or it can be an example of the most basic use of the module. + +## Usage + +Include usage examples for common use cases in the **Usage** section. Show your users how to use your module to solve problems, and be sure to include code examples. Include three to five examples of the most important or common tasks a user can accomplish with your module. Show users how to accomplish more complex tasks that involve different types, classes, and functions working in tandem. + +## Reference + +This section is deprecated. Instead, add reference information to your code as Puppet Strings comments, and then use Strings to generate a REFERENCE.md in your module. For details on how to add code comments and generate documentation with Strings, see the Puppet Strings [documentation](https://puppet.com/docs/puppet/latest/puppet_strings.html) and [style guide](https://puppet.com/docs/puppet/latest/puppet_strings_style.html) + +If you aren't ready to use Strings yet, manually create a REFERENCE.md in the root of your module directory and list out each of your module's classes, defined types, facts, functions, Puppet tasks, task plans, and resource types and providers, along with the parameters for each. + +For each element (class, defined type, function, and so on), list: + + * The data type, if applicable. + * A description of what the element does. + * Valid values, if the data type doesn't make it obvious. + * Default value, if any. + +For example: + +``` +### `pet::cat` + +#### Parameters + +##### `meow` + +Enables vocalization in your cat. Valid options: 'string'. + +Default: 'medium-loud'. +``` + +## Limitations + +In the Limitations section, list any incompatibilities, known issues, or other warnings. + +## Development + +In the Development section, tell other users the ground rules for contributing to your project and how they should submit their work. + +## Release Notes/Contributors/Etc. **Optional** + +If you aren't using changelog, put your release notes here (though you should consider using changelog). You can also add any additional sections you feel are necessary or important to include here. Please use the `## ` header. diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/Rakefile b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/Rakefile new file mode 100644 index 0000000..395df54 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/Rakefile @@ -0,0 +1,86 @@ +require 'puppet_litmus/rake_tasks' if Bundler.rubygems.find_name('puppet_litmus').any? +require 'puppetlabs_spec_helper/rake_tasks' +require 'puppet-syntax/tasks/puppet-syntax' +require 'puppet_blacksmith/rake_tasks' if Bundler.rubygems.find_name('puppet-blacksmith').any? +require 'github_changelog_generator/task' if Bundler.rubygems.find_name('github_changelog_generator').any? +require 'puppet-strings/tasks' if Bundler.rubygems.find_name('puppet-strings').any? + +def changelog_user + return unless Rake.application.top_level_tasks.include? "changelog" + returnVal = nil || JSON.load(File.read('metadata.json'))['author'] + raise "unable to find the changelog_user in .sync.yml, or the author in metadata.json" if returnVal.nil? + puts "GitHubChangelogGenerator user:#{returnVal}" + returnVal +end + +def changelog_project + return unless Rake.application.top_level_tasks.include? "changelog" + + returnVal = nil + returnVal ||= begin + metadata_source = JSON.load(File.read('metadata.json'))['source'] + metadata_source_match = metadata_source && metadata_source.match(%r{.*\/([^\/]*?)(?:\.git)?\Z}) + + metadata_source_match && metadata_source_match[1] + end + + raise "unable to find the changelog_project in .sync.yml or calculate it from the source in metadata.json" if returnVal.nil? + + puts "GitHubChangelogGenerator project:#{returnVal}" + returnVal +end + +def changelog_future_release + return unless Rake.application.top_level_tasks.include? "changelog" + returnVal = "v%s" % JSON.load(File.read('metadata.json'))['version'] + raise "unable to find the future_release (version) in metadata.json" if returnVal.nil? + puts "GitHubChangelogGenerator future_release:#{returnVal}" + returnVal +end + +PuppetLint.configuration.send('disable_relative') + +if Bundler.rubygems.find_name('github_changelog_generator').any? + GitHubChangelogGenerator::RakeTask.new :changelog do |config| + raise "Set CHANGELOG_GITHUB_TOKEN environment variable eg 'export CHANGELOG_GITHUB_TOKEN=valid_token_here'" if Rake.application.top_level_tasks.include? "changelog" and ENV['CHANGELOG_GITHUB_TOKEN'].nil? + config.user = "#{changelog_user}" + config.project = "#{changelog_project}" + config.future_release = "#{changelog_future_release}" + config.exclude_labels = ['maintenance'] + config.header = "# Change log\n\nAll notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org)." + config.add_pr_wo_labels = true + config.issues = false + config.merge_prefix = "### UNCATEGORIZED PRS; GO LABEL THEM" + config.configure_sections = { + "Changed" => { + "prefix" => "### Changed", + "labels" => ["backwards-incompatible"], + }, + "Added" => { + "prefix" => "### Added", + "labels" => ["feature", "enhancement"], + }, + "Fixed" => { + "prefix" => "### Fixed", + "labels" => ["bugfix"], + }, + } + end +else + desc 'Generate a Changelog from GitHub' + task :changelog do + raise <= Gem::Version.new('2.2.2')" +EOM + end +end + diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/appveyor.yml b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/appveyor.yml new file mode 100644 index 0000000..ec38949 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/appveyor.yml @@ -0,0 +1,56 @@ +--- +version: 1.1.x.{build} +branches: + only: + - master + - release +skip_commits: + message: /^\(?doc\)?.*/ +clone_depth: 10 +init: + - SET + - 'mkdir C:\ProgramData\PuppetLabs\code && exit 0' + - 'mkdir C:\ProgramData\PuppetLabs\facter && exit 0' + - 'mkdir C:\ProgramData\PuppetLabs\hiera && exit 0' + - 'mkdir C:\ProgramData\PuppetLabs\puppet\var && exit 0' +environment: + matrix: + - + RUBY_VERSION: 24-x64 + CHECK: syntax lint metadata_lint check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop + - + PUPPET_GEM_VERSION: ~> 5.0 + RUBY_VERSION: 24 + CHECK: parallel_spec + - + PUPPET_GEM_VERSION: ~> 5.0 + RUBY_VERSION: 24-x64 + CHECK: parallel_spec + - + PUPPET_GEM_VERSION: ~> 6.0 + RUBY_VERSION: 25 + CHECK: parallel_spec + - + PUPPET_GEM_VERSION: ~> 6.0 + RUBY_VERSION: 25-x64 + CHECK: parallel_spec +matrix: + fast_finish: true +install: + - set PATH=C:\Ruby%RUBY_VERSION%\bin;%PATH% + - bundle install --jobs 4 --retry 2 --without system_tests + - type Gemfile.lock +build: off +test_script: + - bundle exec puppet -V + - ruby -v + - gem -v + - bundle -v + - bundle exec rake %CHECK% +notifications: + - provider: Email + to: + - nobody@nowhere.com + on_build_success: false + on_build_failure: false + on_build_status_changed: false diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/data/common.yaml b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/data/common.yaml new file mode 100644 index 0000000..ed97d53 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/data/common.yaml @@ -0,0 +1 @@ +--- diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/hiera.yaml b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/hiera.yaml new file mode 100644 index 0000000..2251c23 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/hiera.yaml @@ -0,0 +1,21 @@ +--- +version: 5 + +defaults: # Used for any hierarchy level that omits these keys. + datadir: data # This path is relative to hiera.yaml's directory. + data_hash: yaml_data # Use the built-in YAML backend. + +hierarchy: + - name: "osfamily/major release" + paths: + - "os/%{facts.os.family}/%{facts.os.release.major}.yaml" + # Used for Solaris + - "os/%{facts.os.family}/%{facts.kernelrelease}.yaml" + # Used to distinguish between Debian and Ubuntu + - "os/%{facts.os.name}/%{facts.os.release.major}.yaml" + - name: "osfamily" + paths: + - "os/%{facts.os.family}.yaml" + - "os/%{facts.os.name}.yaml" + - name: 'common' + path: 'common.yaml' diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base.pp new file mode 100644 index 0000000..5256709 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base.pp @@ -0,0 +1,31 @@ +class profile::base ( + Boolean $firewall = false, + Boolean $time = false, + Boolean $repos = false, + Boolean $resolv = false, + Boolean $ssh = false, + Boolean $selinux = false, + Boolean $motd = false, +) { + if $motd { + class { '::motd': } + } + if $firewall { + class { '::profile::base::firewall': } + } + if $time { + class { '::profile::base::time': } + } + if $repos { + class { '::profile::base::repositories': } + } + if $resolv { + class { '::profile::base::resolv': } + } + if $ssh { + class { '::profile::base::ssh': } + } + if $selinux { + class { '::profile::base::selinux': } + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/motd.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/motd.pp new file mode 100644 index 0000000..c7a831a --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/motd.pp @@ -0,0 +1,5 @@ +class profile::base::motd ( +) { + class { '::motd': + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/resolv.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/resolv.pp new file mode 100644 index 0000000..b22a9c0 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/resolv.pp @@ -0,0 +1,17 @@ +# This class can be used to configure resolv.conf. +# +# @example when declaring the resolver class +# class { '::profiles::base::resolv': } +# +class profile::base::resolv ( + Optional[String] $domainname = undef, + Array[String] $nameservers = [], + Optional[String] $searchpath = undef, +) { + + class { '::resolv_conf': + domainname => $domainname, + nameservers => $nameservers, + searchpath => $searchpath, + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/selinux.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/selinux.pp new file mode 100644 index 0000000..cbb4f46 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/selinux.pp @@ -0,0 +1,7 @@ +class profile::base::selinux ( + String $mode = 'disabled', +) { + class { '::selinux': + mode => $mode, + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/ssh.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/ssh.pp new file mode 100644 index 0000000..d6520f8 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/ssh.pp @@ -0,0 +1,19 @@ +class profile::base::ssh ( + Hash $config_entries = {}, + String $permit_root_login = 'no', + String $ssh_config_forward_agent = 'no', + String $sshd_config_allowagentforwarding = 'no', + Hash $sshd_config_match = {}, + String $sshd_config_port = '22', + String $sshd_password_authentication = 'no' +) { + class { '::ssh': + config_entries => $config_entries, + permit_root_login => $permit_root_login, + ssh_config_forward_agent => $ssh_config_forward_agent, + sshd_config_allowagentforwarding => $sshd_config_allowagentforwarding, + sshd_config_match => $sshd_config_match, + sshd_config_port => $sshd_config_port, + sshd_password_authentication => $sshd_password_authentication, + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/time.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/time.pp new file mode 100644 index 0000000..93fc3a9 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/time.pp @@ -0,0 +1,16 @@ +class profile::base::time ( + String $default_timezone = 'Europe/London', + Array $ntp_servers = [], + Array $restrict = [], + Boolean $set_timezone = false, +) { + class { '::ntp': + servers => $ntp_servers, + restrict => $restrict, + } + if $set_timezone { + class { '::timezone': + default_timezone => $default_timezone, + } + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows.pp new file mode 100644 index 0000000..bf0532a --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows.pp @@ -0,0 +1,17 @@ +class profile::custom_windows ( + Boolean $config_server = true, + Boolean $install_package = true, + Boolean $deploy_iis = true, +) { + if $config_server { + class { '::profile::custom_windows::config_server': } + } + if $install_package { + class { '::profile::custom_windows::install_package': } + include chocolatey + include staging + } + if $deploy_iis { + class { '::profile::custom_windows::deploy_iis': } + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/config_server.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/config_server.pp new file mode 100644 index 0000000..6127dcb --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/config_server.pp @@ -0,0 +1,57 @@ +class profile::custom_windows::config_server ( + + $user_name = 'myuser', + $user_group = 'mygroup', + $user_groups = ['BUILTIN\Administrators', 'BUILTIN\Users'], + $user_home = "C:/Users/myuser", + $user_password = 'Puppetlabs01!', + $ensure = 'present', + $manage_home = true, + $user_dir = 'mydir', + +) { + + profile::custom_windows::define_user { 'myuser': + + user_name => $user_name, + user_group => $user_group, + user_groups => $user_groups, + user_home => $user_home, + user_password => $user_password, + ensure => $ensure, + manage_home => $manage_home, + user_dir => $user_dir, + } + + acl { "${user_home}/${user_dir}": + + permissions => [ + { identity => $user_name, rights => ['read','execute'] }, + { identity => $user_group, rights => ['read'] } + ], + } + + registry::value { 'Enable IEESC': + + key => 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A7-37EF-4b3f-8CFC-4F3A74704073}', + value => 'IsInstalled', + data => '1', + type => 'dword', + } + + registry::value { 'Enable shutdown tracker': + + key => 'HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Reliability', + value => 'ShutdownReasonOn', + data => '1', + type => 'dword', + } + + registry::value { 'Enable shutdown tracker UI': + + key => 'HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Reliability', + value => 'ShutdownReasonUI', + data => '1', + type => 'dword', + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/define_user.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/define_user.pp new file mode 100644 index 0000000..13466f4 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/define_user.pp @@ -0,0 +1,31 @@ +define profile::custom_windows::define_user ( + + String $user_name, + String $ensure, + String $user_group, + Optional[Array] $user_groups, + String $user_password, + String $user_dir, + String $user_home, + Boolean $manage_home, + +) { + file { "${user_home}/${user_dir}": + ensure => directory, + owner => $user_name, + require => User[$user_name], + } + + user { $user_name: + ensure => $ensure, + password => $user_password, + groups => $user_group, + managehome => $manage_home, + home => "C:/Users/$user_name", + require => Group[$user_group], + } + + group { $user_group: + ensure => $ensure, + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/deploy_iis.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/deploy_iis.pp new file mode 100644 index 0000000..9837b40 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/deploy_iis.pp @@ -0,0 +1,69 @@ +class profile::custom_windows::deploy_iis ( + + String $user_acl = $profile::custom_windows::config_server::user_name, + +) { + + dsc {'iis-web': + resource_name => 'WindowsFeature', + module => 'PSDesiredStateConfiguration', + properties => { + ensure => 'present', + name => 'Web-Server', + } + } + + iis_site {'Default Web Site': + ensure => absent, + require => Dsc['iis-web'], + } + + file { 'c:\\inetpub\\complete': + ensure => 'directory' + } + + acl { 'c:\\inetpub\\complete': + permissions => [ + {'identity' => $user_acl, 'rights' => ['read', 'execute']}, + ], + } + + iis_application_pool { 'complete_site_app_pool': + ensure => 'present', + state => 'started', + managed_pipeline_mode => 'Integrated', + managed_runtime_version => 'v4.0', + } + + iis_application_pool {'test_app_pool': + ensure => 'present', + enable32_bit_app_on_win64 => true, + managed_runtime_version => '', + managed_pipeline_mode => 'Classic', + start_mode => 'AlwaysRunning' + } + + iis_site { 'complete': + ensure => 'started', + physicalpath => 'c:\\inetpub\\complete', + applicationpool => 'complete_site_app_pool', + enabledprotocols => 'https', + bindings => [ + { + 'bindinginformation' => '*:443:', + 'protocol' => 'https', + 'certificatehash' => '3598FAE5ADDB8BA32A061C5579829B359409856F', + 'certificatestorename' => 'MY', + 'sslflags' => 1, + }, + ], + require => File['c:\\inetpub\\complete'], + notify => Reboot['dsc_reboot'], + } + + reboot { 'dsc_reboot' : + message => 'DSC has requested a reboot', + when => 'pending', + onlyif => 'pending_dsc_reboot', + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/install_package.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/install_package.pp new file mode 100644 index 0000000..288462a --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/custom_windows/install_package.pp @@ -0,0 +1,71 @@ +class profile::custom_windows::install_package ( + + String $package = 'undef', + String $version = 'undef', + String $package_provider = 'chocolatey', + String $choco_provider = 'windows', + String $install_dir = $profile::custom_windows::config_server::user_home, + +) { + + chocolateysource {'custom_source': + ensure => present, + + location => 'c:\packages', + provider => $choco_provider, + } + + chocolateyfeature {'allowEmptyChecksums': + ensure => enabled, + provider => $choco_provider, + } + + chocolateyconfig {'cacheLocation': + value => 'c:\ProgramData\choco-cache', + provider => $choco_provider, + } + + package { 'unzip': + ensure => '6.0', + provider => $package_provider, + } + + package { 'vim': + ensure => '8.2.0246', + provider => $package_provider, + } + + class { 'staging': + path => 'C:/tmp', + } + + staging::file { 'master.zip': + source => 'puppet:///custom_files/master.zip', + } + + staging::extract { 'master.zip': + target => "${install_dir}/downloads", + unless => 'cmd.exe /c type C:\tmp\7zip', + require => Staging::File['master.zip'], + notify => Exec['7z1900-x64'], + } + + exec { '7z1900-x64': + cwd => "${install_dir}/downloads", + command => 'cmd.exe /c C:\Users\myuser\Downloads\7z1900-x64.exe', + path => $::path, + unless => 'cmd.exe /c type C:\tmp\7zip', +# unless => '7z', + } + + file { 'C:/tmp/7zip': + ensure => present, + content => installed, + require => Exec['7z1900-x64'], + } + + reboot { 'post_exec': + apply => finished, + subscribe => File['C:/tmp/7zip'], + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/monitor.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/monitor.pp new file mode 100644 index 0000000..581c856 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/monitor.pp @@ -0,0 +1,11 @@ +class profile::monitoring ( + Boolean $docker_install = false, + Boolean $nfs_mount = false, +) { + if $docker_install { + class { '::profile::tools::docker_install': } + } + if $nfs_mount { + class { '::profile::tools::nfs_mount': } + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/patching/patch_unix.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/patching/patch_unix.pp new file mode 100644 index 0000000..e606663 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/patching/patch_unix.pp @@ -0,0 +1,59 @@ +#Provides automated patch management +class profile::patch_mgmt_nix ( + Array $blacklist = [], + Array $whitelist = [], + Optional[Hash] $patch_window = { + range => '01:00 - 14:00', + weekday => 'Sunday', + repeat => 3 + } +) { + include os_patching + if $facts['os_patching'] { + $updatescan = $facts['os_patching']['package_updates'] + } + else { + $updatescan = [] + } + if $whitelist.count > 0 { + $updates = $updatescan.filter |$item| { $item in $whitelist } + } elsif $blacklist.count > 0 { + $updates = $updatescan.filter |$item| { !($item in $blacklist) } + } else { + $updates = $updatescan + } + schedule { 'patch_window': + * => $patch_window + } + if $facts['os_patching']['reboots']['reboot_required'] == true { + Package { + require => Reboot['patch_window_reboot'] + } + notify { 'Reboot pending, rebooting node...': + schedule => 'patch_window', + notify => Reboot['patch_window_reboot'] + } + } else { + Package { + notify => Reboot['patch_window_reboot'] + } + } + reboot { 'patch_window_reboot': + apply => 'finished', + schedule => 'patch_window' + } + if $updates.size > 0 { + exec { 'Clean Yum before updates': + command => 'yum clean all', + path => '/usr/bin', + schedule => 'patch_window' + } + } + $updates.each | $package | { + package { $package: + ensure => 'latest', + schedule => 'patch_window', + require => Exec['Clean Yum before updates'], + } + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver.pp new file mode 100644 index 0000000..e2eb0f8 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver.pp @@ -0,0 +1,20 @@ +class profile::puppetserver ( + Boolean $puppetserver = true, + Boolean $authority = false, + Boolean $nfs_export = false, + Boolean $metrics_collect = false, +) { + if $puppetserver { + class { '::profile::puppetserver::bootstrap': } + } + if $authority { + class { '::profile::puppetserver::authority': } + } + if $nfs_export { + class { '::profile::puppetserver::nfs_export': } + } + if $metrics_collect { + include metrics_collector + fi + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/authority.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/authority.pp new file mode 100644 index 0000000..c0839d1 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/authority.pp @@ -0,0 +1,30 @@ +class profile::puppetserver::authority ( + + String $jwt_secret = 'undef', + String $loglevel = 'info', + String $validity = '0', + String $ensure = 'latest', + Hash $config = {}, + Hash $jwt_token = {}, +) { + ini_setting { 'policy-based autosigning': + setting => 'autosign', + path => "${settings::confdir}/puppet.conf", + section => 'master', + value => '/opt/puppetlabs/puppet/bin/autosign-validator', + notify => Service['pe-puppetserver'], + } + + class { '::autosign': + ensure => $ensure, + config => { + general => { + loglevel => $loglevel, + }, + jwt_token => { + secret => $jwt_secret, + validity => $validity, + } + }, + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/bootstrap.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/bootstrap.pp new file mode 100644 index 0000000..033650a --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/bootstrap.pp @@ -0,0 +1,34 @@ +class profile::puppetserver::bootstrap { + + ini_setting { 'hiera_config': + ensure => present, + path => $::settings::config, + section => 'master', + setting => 'hiera_config', + value => "${::settings::environmentpath}/production/hiera.yaml", + } + + file { "${::settings::confdir}/hiera.yaml": + ensure => absent, + } + + package { 'puppetserver hiera-eyaml': + ensure => present, + name => 'hiera-eyaml', + provider => 'puppetserver_gem', + notify => Service['pe-puppetserver'], + } + + package { 'puppet hiera-eyaml': + ensure => present, + name => 'hiera-eyaml', + provider => 'puppet_gem', + } + + file { ['/etc/puppetlabs/secure', '/etc/puppetlabs/secure/keys']: + ensure => directory, + owner => 'pe-puppet', + group => 'pe-puppet', + mode => '0750', + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/nfs_export.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/nfs_export.pp new file mode 100644 index 0000000..8b62124 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/puppetserver/nfs_export.pp @@ -0,0 +1,23 @@ +class profile::puppetserver::nfs_export ( + + $domain = $::domain, + $server_enabled = true, + $export_root = '/export', + $nfs_v4 = 'true', + $server_export = '/opt/puppetlabs/puppet-metrics-collector', + $export_mount = 'mounted', + +) { + class { '::nfs': + server_enabled => $server_enabled, + nfs_v4 => $nfs_v4, + nfs_v4_idmap_domain => $domain, + nfs_v4_export_root => '$export_root', + nfs_v4_export_root_clients => '*(rw,fsid=0,insecure,no_subtree_check,async,no_root_squash)', + } + + nfs::server::export { $server_export: + ensure => $export_mount, + clients => '*(rw,insecure,async,no_root_squash,no_subtree_check)', + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/docker_install.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/docker_install.pp new file mode 100644 index 0000000..5df58de --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/docker_install.pp @@ -0,0 +1,17 @@ +class profile::tools::docker_install ( + $docker_version = '19.03', + $compose_version = '1.24', +) { + yumrepo { 'docker': + ensure => 'present', + baseurl => 'https://download.docker.com/linux/centos/7/x86_64/stable', + descr => 'Docker', + gpgcheck => 'True', + gpgkey => 'https://download.docker.com/linux/centos/gpg', +} + + class {'docker::compose': + ensure => present, + version => '$compose_version', + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/metrics_dashboard.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/metrics_dashboard.pp new file mode 100644 index 0000000..973576b --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/metrics_dashboard.pp @@ -0,0 +1,25 @@ +class profile::metrics_dashboard ( + +Boolean $dashboard_examples = true, +Boolean $overwrite_dashboards = false, +Optional[Array] $master_list = ['peadm-01.pe'], +Optional[Array] $puppetdb_list = ['peadm-01.pe'], +Optional[Array] $postgres_host_list = ['peadm-01.pe'], + +) { + class { 'puppet_metrics_dashboard': + add_dashboard_examples => $dashboard_examples, + overwrite_dashboards => $overwrite_dashboards, + master_list => $master_list, + puppetdb_list => $puppetdb_list, + postgres_host_list => $postgres_host_list, + } + + class { 'docker': + version => 'latest', + } + + class {'docker::compose': + version => 'latest', + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/nfs_mount.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/nfs_mount.pp new file mode 100644 index 0000000..06b801b --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/tools/nfs_mount.pp @@ -0,0 +1,15 @@ +class profile::tools::nfs_mount ( + $server = 'puppet', +) { + class { '::nfs': + server_enabled => false, + client_enabled => true, + nfs_v4_client => false, + nfs_v4_idmap_domain => $::domain, + } + + nfs::client::mount { '/mnt/puppet-metrics-collector': + server => $server, + share => '/export/puppet-metrics-collector', + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows.pp new file mode 100644 index 0000000..a2c5286 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows.pp @@ -0,0 +1,11 @@ +class profile::windows ( + Boolean $base = false, + Boolean $account = false, +) { + if $base { + class { '::profile::windows::base': } + } + if $account { + class { '::profile::windows::account': } + } +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows/account.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows/account.pp new file mode 100644 index 0000000..e69de29 diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows/base.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows/base.pp new file mode 100644 index 0000000..e69de29 diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows/chocolatey.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/windows/chocolatey.pp new file mode 100644 index 0000000..e69de29 diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/metadata.json b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/metadata.json new file mode 100644 index 0000000..4eeef0d --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/metadata.json @@ -0,0 +1,65 @@ +{ + "name": "chlawren-profile", + "version": "0.1.0", + "author": "chris lawrence", + "summary": "", + "license": "Apache-2.0", + "source": "", + "dependencies": [ + + ], + "operatingsystem_support": [ + { + "operatingsystem": "CentOS", + "operatingsystemrelease": [ + "7" + ] + }, + { + "operatingsystem": "OracleLinux", + "operatingsystemrelease": [ + "7" + ] + }, + { + "operatingsystem": "RedHat", + "operatingsystemrelease": [ + "8" + ] + }, + { + "operatingsystem": "Scientific", + "operatingsystemrelease": [ + "7" + ] + }, + { + "operatingsystem": "Debian", + "operatingsystemrelease": [ + "9" + ] + }, + { + "operatingsystem": "Ubuntu", + "operatingsystemrelease": [ + "18.04" + ] + }, + { + "operatingsystem": "windows", + "operatingsystemrelease": [ + "2019", + "10" + ] + } + ], + "requirements": [ + { + "name": "puppet", + "version_requirement": ">= 4.10.0 < 7.0.0" + } + ], + "pdk-version": "1.14.1", + "template-url": "pdk-default#1.14.1", + "template-ref": "1.14.1-0-g0b5b39b" +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/spec/default_facts.yml b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/spec/default_facts.yml new file mode 100644 index 0000000..f777abf --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/spec/default_facts.yml @@ -0,0 +1,8 @@ +# Use default_module_facts.yml for module specific facts. +# +# Facts specified here will override the values provided by rspec-puppet-facts. +--- +ipaddress: "172.16.254.254" +ipaddress6: "FE80:0000:0000:0000:AAAA:AAAA:AAAA" +is_pe: false +macaddress: "AA:AA:AA:AA:AA:AA" diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/spec/spec_helper.rb b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/spec/spec_helper.rb new file mode 100644 index 0000000..feb5720 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/spec/spec_helper.rb @@ -0,0 +1,54 @@ +require 'puppetlabs_spec_helper/module_spec_helper' +require 'rspec-puppet-facts' + +require 'spec_helper_local' if File.file?(File.join(File.dirname(__FILE__), 'spec_helper_local.rb')) + +include RspecPuppetFacts + +default_facts = { + puppetversion: Puppet.version, + facterversion: Facter.version, +} + +default_fact_files = [ + File.expand_path(File.join(File.dirname(__FILE__), 'default_facts.yml')), + File.expand_path(File.join(File.dirname(__FILE__), 'default_module_facts.yml')), +] + +default_fact_files.each do |f| + next unless File.exist?(f) && File.readable?(f) && File.size?(f) + + begin + default_facts.merge!(YAML.safe_load(File.read(f), [], [], true)) + rescue => e + RSpec.configuration.reporter.message "WARNING: Unable to load #{f}: #{e}" + end +end + +# read default_facts and merge them over what is provided by facterdb +default_facts.each do |fact, value| + add_custom_fact fact, value +end + +RSpec.configure do |c| + c.default_facts = default_facts + c.before :each do + # set to strictest setting for testing + # by default Puppet runs at warning level + Puppet.settings[:strict] = :warning + end + c.filter_run_excluding(bolt: true) unless ENV['GEM_BOLT'] + c.after(:suite) do + end +end + +# Ensures that a module is defined +# @param module_name Name of the module +def ensure_module_defined(module_name) + module_name.split('::').reduce(Object) do |last_module, next_module| + last_module.const_set(next_module, Module.new) unless last_module.const_defined?(next_module, false) + last_module.const_get(next_module, false) + end +end + +# 'spec_overrides' from sync.yml will appear below this line diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/custom_winodws.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/custom_winodws.pp new file mode 100644 index 0000000..cbcc9ce --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/custom_winodws.pp @@ -0,0 +1,5 @@ +class role::custom_windows { + + include profile::custom_windows + +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/monitoring.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/monitoring.pp new file mode 100644 index 0000000..fcc1eef --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/monitoring.pp @@ -0,0 +1,6 @@ +class role::metrics { + + include profile::base + include profile::tools::nfs_mount + include profile::tools::docker_install +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/node.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/node.pp new file mode 100644 index 0000000..9a5dc59 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/node.pp @@ -0,0 +1,5 @@ +class role::node { + + include profile::base + +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/puppetserver.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/puppetserver.pp new file mode 100644 index 0000000..facdd72 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/puppetserver.pp @@ -0,0 +1,6 @@ +class role::puppetserver { + + include profile::base + include profile::puppetserver + +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/windows.pp b/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/windows.pp new file mode 100644 index 0000000..ca7f28e --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/site-modules/role/manifests/windows.pp @@ -0,0 +1,5 @@ +class role::windows { + + include profile::windows + +} diff --git a/.onceover/etc/puppetlabs/code/environments/production/spec/factsets/README.md b/.onceover/etc/puppetlabs/code/environments/production/spec/factsets/README.md new file mode 100644 index 0000000..dd72566 --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/spec/factsets/README.md @@ -0,0 +1,7 @@ +# Factsets + +This directory is where we put any custom factsets that we want to use. They can be generated by running `puppet facts` on the target system. + +**Hot tip:** If you already have factsets in here when you run `onceover init` they will be picked up and added to the config file Automatically + +More info: https://github.com/dylanratcliffe/onceover#factsets diff --git a/.onceover/etc/puppetlabs/code/environments/production/spec/onceover.yaml b/.onceover/etc/puppetlabs/code/environments/production/spec/onceover.yaml new file mode 100644 index 0000000..598b2fe --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/spec/onceover.yaml @@ -0,0 +1,61 @@ +# Classes to be tested +classes: + - role::metrics + - role::puppetserver + - role::windows + - role::node + - role::custom_windows + +# Nodes to tests classes on, this refers to a 'factset' or 'nodeset' +# depending on whether you are running 'spec' or 'acceptance' tests +nodes: + - AIX-7.1-powerpc + - SLES-12.1-64 + - Debian-6.0.10-32 + - CentOS-6.6-64 + - Ubuntu-12.04-32 + - Amazon-2018.03 + - Ubuntu-12.04-64 + - CentOS-6.6-32 + - Debian-6.0.10-64 + - AIX-6.1-powerpc + - Windows_Server-2012r2-64 + - Ubuntu-18.04-64 + - RHEL-7.4 + - Debian-7.8-32 + - windows-10-64 + - Windows_Server-2008r2-64 + - SLES-11.3-64 + - Debian-7.8-64 + - solaris-10_u9-sparc-64 + - solaris-11.2-sparc-64 + - Ubuntu-14.04-32 + - CentOS-5.11-64 + - CentOS-5.11-32 + - RHEL-6.7 + - CentOS-7.0-64 + - Ubuntu-14.04-64 + +# You can group classes here to save typing +class_groups: + +# You can group nodes here to save typing +# We have created a 'non_windows_nodes' group because we can't +# give you Windows vagrant boxes to test with because licensing, +# we can give you fact sets though so go crazy with spec testing! +node_groups: + windows_nodes: + - Windows_Server-2012r2-64 + - windows-10-64 + - Windows_Server-2008r2-64 + non_windows_nodes: + include: 'all_nodes' + exclude: 'windows_nodes' + +test_matrix: + - all_nodes: + classes: 'all_classes' + tests: 'spec' + - non_windows_nodes: + classes: 'all_classes' + tests: 'acceptance' \ No newline at end of file diff --git a/.onceover/etc/puppetlabs/code/environments/production/spec/pre_conditions/README.md b/.onceover/etc/puppetlabs/code/environments/production/spec/pre_conditions/README.md new file mode 100644 index 0000000..f0a81bf --- /dev/null +++ b/.onceover/etc/puppetlabs/code/environments/production/spec/pre_conditions/README.md @@ -0,0 +1,24 @@ +# Pre Conditions + +This folder should contain any \*.pp files that you want to be included in every test. + +A common use of this is defining resources that may not exist in the catalog when you are running tests. For example, if we are using a resource that tries to restart the `pe-puppetserver` service, unless it is compiled on a Puppet Maser the `pe-puppetserver` service will not exist and the catalog will fail to compile. To get around this we can create a .pp file and define the resource like so: + +``` puppet +# We are not going to actually have this service anywhere on our servers but +# our code needs to refresh it. This is to trick puppet into doing nothing +service { 'pe-puppetserver': + ensure => 'running', + enable => false, + hasrestart => false, # Force Puppet to use start and stop to restart + start => 'echo "Start"', # This will always exit 0 + stop => 'echo "Stop"', # This will also always exit 0 + hasstatus => false, # Force puppet to use our command for status + status => 'echo "Status"', # This will always exit 0 and therefore Puppet will think the service is running + provider => 'base', +} +``` + +This will mean that the `pe-puppetserver` service is in the catalog for spec testing and will even allow you to try to restart it during acceptance tests without the service actually being present. + +More info: https://github.com/dylanratcliffe/onceover#using-workarounds diff --git a/.onceover/spec.xml b/.onceover/spec.xml new file mode 100644 index 0000000..88b5aa4 --- /dev/null +++ b/.onceover/spec.xml @@ -0,0 +1,344 @@ + + + + + +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_AIX-6.1-powerpc_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_AIX-7.1-powerpc_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Amazon-2018.03_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_CentOS-5.11-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_CentOS-5.11-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_CentOS-6.6-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_CentOS-6.6-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_CentOS-7.0-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Debian-6.0.10-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Debian-6.0.10-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Debian-7.8-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Debian-7.8-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_RHEL-6.7_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_RHEL-7.4_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_SLES-11.3-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_SLES-12.1-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Ubuntu-12.04-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Ubuntu-12.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Ubuntu-14.04-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Ubuntu-14.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Ubuntu-18.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Windows_Server-2008r2-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_Windows_Server-2012r2-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_solaris-10_u9-sparc-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_solaris-11.2-sparc-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::custom_windows for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__custom_windows_on_windows-10-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_AIX-6.1-powerpc_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_AIX-7.1-powerpc_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Amazon-2018.03_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_CentOS-5.11-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_CentOS-5.11-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_CentOS-6.6-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_CentOS-6.6-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_CentOS-7.0-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Debian-6.0.10-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Debian-6.0.10-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Debian-7.8-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Debian-7.8-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_RHEL-6.7_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_RHEL-7.4_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_SLES-11.3-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_SLES-12.1-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Ubuntu-12.04-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Ubuntu-12.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Ubuntu-14.04-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Ubuntu-14.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Ubuntu-18.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Windows_Server-2008r2-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_Windows_Server-2012r2-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_solaris-10_u9-sparc-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_solaris-11.2-sparc-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Could not find class ::role::metrics for christophers-macbook-pro.local (line: 11, column: 1) on node christophers-macbook-pro.local +./spec/classes/role__metrics_on_windows-10-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, ssh supports osfamilies RedHat, Suse, Debian and Solaris. Detected osfamily is <AIX>. (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 389, column: 7) on node christophers-macbook-pro.local +./spec/classes/role__node_on_AIX-6.1-powerpc_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, ssh supports osfamilies RedHat, Suse, Debian and Solaris. Detected osfamily is <AIX>. (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 389, column: 7) on node christophers-macbook-pro.local +./spec/classes/role__node_on_AIX-7.1-powerpc_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Amazon-2018.03_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_CentOS-5.11-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_CentOS-5.11-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_CentOS-6.6-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_CentOS-6.6-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_CentOS-7.0-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 6.0.10 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Debian-6.0.10-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 6.0.10 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Debian-6.0.10-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Debian-7.8-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Debian-7.8-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_RHEL-6.7_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_RHEL-7.4_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_SLES-11.3-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_SLES-12.1-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 12.04 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Ubuntu-12.04-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 12.04 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Ubuntu-12.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 14.04 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Ubuntu-14.04-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 14.04 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Ubuntu-14.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Ubuntu-18.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Class[Resolv_conf]: expects a value for parameter 'config_file' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/resolv.pp, line: 12, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Windows_Server-2008r2-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Class[Resolv_conf]: expects a value for parameter 'config_file' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/resolv.pp, line: 12, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_Windows_Server-2012r2-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_solaris-10_u9-sparc-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_solaris-11.2-sparc-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Class[Resolv_conf]: expects a value for parameter 'config_file' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/resolv.pp, line: 12, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__node_on_windows-10-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, ssh supports osfamilies RedHat, Suse, Debian and Solaris. Detected osfamily is <AIX>. (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 389, column: 7) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_AIX-6.1-powerpc_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, ssh supports osfamilies RedHat, Suse, Debian and Solaris. Detected osfamily is <AIX>. (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 389, column: 7) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_AIX-7.1-powerpc_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Amazon-2018.03_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_CentOS-5.11-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_CentOS-5.11-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_CentOS-6.6-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_CentOS-6.6-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_CentOS-7.0-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 6.0.10 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Debian-6.0.10-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 6.0.10 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Debian-6.0.10-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Debian-7.8-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Debian-7.8-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_RHEL-6.7_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_RHEL-7.4_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_SLES-11.3-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_SLES-12.1-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 12.04 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Ubuntu-12.04-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 12.04 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Ubuntu-12.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 14.04 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Ubuntu-14.04-32_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Function Call, Operating System : 14.04 not supported (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 332, column: 20) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Ubuntu-14.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Ubuntu-18.04-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Class[Resolv_conf]: expects a value for parameter 'config_file' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/resolv.pp, line: 12, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Windows_Server-2008r2-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Class[Resolv_conf]: expects a value for parameter 'config_file' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/resolv.pp, line: 12, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_Windows_Server-2012r2-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_solaris-10_u9-sparc-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Unknown resource type: 'sshkey' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules/ssh/manifests/init.pp, line: 1089, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_solaris-11.2-sparc-64_spec.rb:37:in `block (3 levels) in <top (required)>' +Failure/Error: it { should compile } + error during compilation: Evaluation Error: Error while evaluating a Resource Statement, Class[Resolv_conf]: expects a value for parameter 'config_file' (file: /Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/site-modules/profile/manifests/base/resolv.pp, line: 12, column: 3) on node christophers-macbook-pro.local +./spec/classes/role__puppetserver_on_windows-10-64_spec.rb:37:in `block (3 levels) in <top (required)>' + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.onceover/spec/classes/role__custom_windows_on_AIX-6.1-powerpc_spec.rb b/.onceover/spec/classes/role__custom_windows_on_AIX-6.1-powerpc_spec.rb new file mode 100644 index 0000000..3087d81 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_AIX-6.1-powerpc_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set AIX-6.1-powerpc" do + node_facts = {"aio_agent_version"=>"1.8.2", "architecture"=>"PowerPC_POWER7", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "domain"=>"delivery.puppetlabs.net", "facterversion"=>"3.5.0", "fqdn"=>"pe-aix-61-se.delivery.puppetlabs.net", "gid"=>"system", "hardwareisa"=>"powerpc", "hardwaremodel"=>"IBM,8231-E1D", "hostname"=>"pe-aix-61-se", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"system", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,en0", "ipaddress"=>"10.32.77.35", "ipaddress6_lo0"=>"::1", "ipaddress_en0"=>"10.32.77.35", "ipaddress_lo0"=>"127.0.0.1", "kernel"=>"AIX", "kernelmajversion"=>"6100", "kernelrelease"=>"6100-07-04-1216", "kernelversion"=>"6100", "macaddress"=>"66:a4:d9:f8:4a:04", "macaddress_en0"=>"66:a4:d9:f8:4a:04", "memory"=>{"swap"=>{"available"=>"410.43 MiB", "available_bytes"=>430366720, "capacity"=>"19.84%", "total"=>"512.00 MiB", "total_bytes"=>536870912, "used"=>"101.57 MiB", "used_bytes"=>106504192}, "system"=>{"available"=>"10.88 MiB", "available_bytes"=>11403264, "capacity"=>"98.94%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"1013.13 MiB", "used_bytes"=>1062338560}}, "memoryfree"=>"10.88 MiB", "memoryfree_mb"=>10.875, "memorysize"=>"1.00 GiB", "memorysize_mb"=>1024.0, "mtu_en0"=>1500, "mtu_lo0"=>16896, "netmask"=>"255.255.255.0", "netmask6_lo0"=>"::", "netmask_en0"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "network"=>"10.32.77.0", "network6_lo0"=>"::", "network_en0"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "networking"=>{"domain"=>"delivery.puppetlabs.net", "fqdn"=>"pe-aix-61-se.delivery.puppetlabs.net", "hostname"=>"pe-aix-61-se", "interfaces"=>{"en0"=>{"bindings"=>[{"address"=>"10.32.77.35", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.35", "mac"=>"66:a4:d9:f8:4a:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}, "lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"::", "network"=>"::"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16896, "netmask"=>"255.0.0.0", "netmask6"=>"::", "network"=>"127.0.0.0", "network6"=>"::"}}, "ip"=>"10.32.77.35", "mac"=>"66:a4:d9:f8:4a:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"en0"}, "operatingsystem"=>"AIX", "operatingsystemmajrelease"=>"6100", "operatingsystemrelease"=>"6100-07-04-1216", "os"=>{"architecture"=>"PowerPC_POWER7", "family"=>"AIX", "hardware"=>"IBM,8231-E1D", "name"=>"AIX", "release"=>{"full"=>"6100-07-04-1216", "major"=>"6100"}}, "osfamily"=>"AIX", "path"=>"::/usr/bin:/etc:/usr/sbin:/sbin", "processor0"=>"PowerPC_POWER7", "processor1"=>"PowerPC_POWER7", "processor2"=>"PowerPC_POWER7", "processor3"=>"PowerPC_POWER7", "processor4"=>"PowerPC_POWER7", "processor5"=>"PowerPC_POWER7", "processor6"=>"PowerPC_POWER7", "processor7"=>"PowerPC_POWER7", "processorcount"=>8, "processors"=>{"count"=>8, "isa"=>"powerpc", "models"=>["PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7"], "speed"=>"4.23 GHz"}, "puppetversion"=>"4.8.1", "ruby"=>{"platform"=>"powerpc-aix6.1.0.0", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"powerpc-aix6.1.0.0", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "serialnumber"=>"21280CV", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 571109ba578ea17c854dcefad0e667bbbe4232c2", "sha256"=>"SSHFP 2 2 acd6ea2ff8cc0a0a8be88e6dada2688a17b7adb2a52312745208696f99dce945"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPJEJEzFa4YmVyS17c4Cs8ZWFJIg+igYRWiG/oJ4KMAu9R+cq3TuokGp0h5/T69yNeOn32h1WPYPIjnr14FyOr5Bb6+h+ej3WKnS1IpAGSy2H8Z21r4Cz0qX+madm/dGrtN1TI+6OV1xXXICZB0F0Lg4xilzix431nGunqbm1XXLAAAAFQDjxidL5XtudVMcTUzGFQ33cVwdTwAAAIBUjvKhMQP1304lW+Fr7A35ypaQrCVbsJFQD4egb9fGKY5WKIlQo7UGS/jvDtPS7iRDaLdiC2K5D4MYM9EUHgkprIO1d/o0i2UsYgec8WCJSBja/I4n0slEl7XEwM3SmnYNT0xfZM01Caj9+AyJFtRoF7l00QjSoxyOGMlEfvbCDAAAAIEA8MTmNjwDneigJnnxK9ZL4cvW4zQ+PQDglCdjJ2sB/IcpSvVyu6R9jbHSnfKhergRmmNJzKNA1Oc/INvNr4i9FFAuXEKkafmUyMavgd19uMxdpTAcvOJxwhG8TCrLQtJbm8Rn1e5wFM+4wnpc2y7HsBYGonmK9O5p9Fd3qkUx4BY="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 2faed3b06ba31bcbf069dcdb759d36730a2c649d", "sha256"=>"SSHFP 1 2 51fbfd79200a8667eeb1a8a4eee2487bbdee663189a9ca86a07069f5d95f9826"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDP+DHJRMbR8a4WvTwUGnz9rq+hHDVcP26xG+WIvIC5vlBk/N2lcrD7qs45Ht1kpZo4k4td+PQmi2k6I3BSVEeR9FTwbHEtjv8op1F7VTPXSSdY+90/CiQ4MA5s7d2Lbm5jipMV6dCneYZWsEkHKHzcp/Qst3w+0JSAHpx1wEOAlk/uJuLHHvAFYPZtdwzxTOW8/di5CpBIz/Pl1gcO8vQrFygvkFdYKPL44/zS3MZbmi7Hi6Q0PdcarFlWn6IodAlVSrJ/hcBbMkXJWV2L3zCt5nX4tJkYoOU9IIjGQEh+1cmIcWGdXpyvyaUnbSXJsFP9yAzi+MszYLJq9mUKIYch"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPJEJEzFa4YmVyS17c4Cs8ZWFJIg+igYRWiG/oJ4KMAu9R+cq3TuokGp0h5/T69yNeOn32h1WPYPIjnr14FyOr5Bb6+h+ej3WKnS1IpAGSy2H8Z21r4Cz0qX+madm/dGrtN1TI+6OV1xXXICZB0F0Lg4xilzix431nGunqbm1XXLAAAAFQDjxidL5XtudVMcTUzGFQ33cVwdTwAAAIBUjvKhMQP1304lW+Fr7A35ypaQrCVbsJFQD4egb9fGKY5WKIlQo7UGS/jvDtPS7iRDaLdiC2K5D4MYM9EUHgkprIO1d/o0i2UsYgec8WCJSBja/I4n0slEl7XEwM3SmnYNT0xfZM01Caj9+AyJFtRoF7l00QjSoxyOGMlEfvbCDAAAAIEA8MTmNjwDneigJnnxK9ZL4cvW4zQ+PQDglCdjJ2sB/IcpSvVyu6R9jbHSnfKhergRmmNJzKNA1Oc/INvNr4i9FFAuXEKkafmUyMavgd19uMxdpTAcvOJxwhG8TCrLQtJbm8Rn1e5wFM+4wnpc2y7HsBYGonmK9O5p9Fd3qkUx4BY=", "sshfp_dsa"=>"SSHFP 2 1 571109ba578ea17c854dcefad0e667bbbe4232c2\nSSHFP 2 2 acd6ea2ff8cc0a0a8be88e6dada2688a17b7adb2a52312745208696f99dce945", "sshfp_rsa"=>"SSHFP 1 1 2faed3b06ba31bcbf069dcdb759d36730a2c649d\nSSHFP 1 2 51fbfd79200a8667eeb1a8a4eee2487bbdee663189a9ca86a07069f5d95f9826", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDP+DHJRMbR8a4WvTwUGnz9rq+hHDVcP26xG+WIvIC5vlBk/N2lcrD7qs45Ht1kpZo4k4td+PQmi2k6I3BSVEeR9FTwbHEtjv8op1F7VTPXSSdY+90/CiQ4MA5s7d2Lbm5jipMV6dCneYZWsEkHKHzcp/Qst3w+0JSAHpx1wEOAlk/uJuLHHvAFYPZtdwzxTOW8/di5CpBIz/Pl1gcO8vQrFygvkFdYKPL44/zS3MZbmi7Hi6Q0PdcarFlWn6IodAlVSrJ/hcBbMkXJWV2L3zCt5nX4tJkYoOU9IIjGQEh+1cmIcWGdXpyvyaUnbSXJsFP9yAzi+MszYLJq9mUKIYch", "swapfree"=>"410.43 MiB", "swapfree_mb"=>410.4296875, "swapsize"=>"512.00 MiB", "swapsize_mb"=>512.0, "system_uptime"=>{"days"=>418, "hours"=>10035, "seconds"=>36127200, "uptime"=>"418 days"}, "timezone"=>"PST", "uptime"=>"418 days", "uptime_days"=>418, "uptime_hours"=>10035, "uptime_seconds"=>36127200, "clientcert"=>"pe-aix-61-se.delivery.puppetlabs.net", "clientversion"=>"4.8.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'AIX-6.1-powerpc' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_AIX-7.1-powerpc_spec.rb b/.onceover/spec/classes/role__custom_windows_on_AIX-7.1-powerpc_spec.rb new file mode 100644 index 0000000..b2c3c06 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_AIX-7.1-powerpc_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set AIX-7.1-powerpc" do + node_facts = {"aio_agent_version"=>"1.5.2", "architecture"=>"PowerPC_POWER7", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "domain"=>"delivery.puppetlabs.net", "facterversion"=>"3.2.0", "fqdn"=>"pe-aix-71-se.delivery.puppetlabs.net", "gid"=>"system", "hardwareisa"=>"powerpc", "hardwaremodel"=>"IBM,8231-E1D", "hostname"=>"pe-aix-71-se", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"system", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,en0", "ipaddress"=>"10.32.77.36", "ipaddress6_lo0"=>"::1", "ipaddress_en0"=>"10.32.77.36", "ipaddress_lo0"=>"127.0.0.1", "is_pe"=>false, "kernel"=>"AIX", "kernelmajversion"=>"7100", "kernelrelease"=>"7100-01-05-1228", "kernelversion"=>"7100", "macaddress"=>"66:a4:dc:28:bf:04", "macaddress_en0"=>"66:a4:dc:28:bf:04", "memory"=>{"swap"=>{"available"=>"1007.14 MiB", "available_bytes"=>1056063488, "capacity"=>"1.65%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"16.86 MiB", "used_bytes"=>17678336}, "system"=>{"available"=>"16.84 MiB", "available_bytes"=>17653760, "capacity"=>"98.36%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"1007.16 MiB", "used_bytes"=>1056088064}}, "memoryfree"=>"16.84 MiB", "memoryfree_mb"=>16.8359375, "memorysize"=>"1.00 GiB", "memorysize_mb"=>1024.0, "mtu_en0"=>1500, "mtu_lo0"=>16896, "netmask"=>"255.255.255.0", "netmask6_lo0"=>"::", "netmask_en0"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "network"=>"10.32.77.0", "network6_lo0"=>"::", "network_en0"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "networking"=>{"domain"=>"delivery.puppetlabs.net", "fqdn"=>"pe-aix-71-se.delivery.puppetlabs.net", "hostname"=>"pe-aix-71-se", "interfaces"=>{"en0"=>{"bindings"=>[{"address"=>"10.32.77.36", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.36", "mac"=>"66:a4:dc:28:bf:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}, "lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"::", "network"=>"::"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16896, "netmask"=>"255.0.0.0", "netmask6"=>"::", "network"=>"127.0.0.0", "network6"=>"::"}}, "ip"=>"10.32.77.36", "mac"=>"66:a4:dc:28:bf:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"en0"}, "operatingsystem"=>"AIX", "operatingsystemmajrelease"=>"7100", "operatingsystemrelease"=>"7100-01-05-1228", "os"=>{"architecture"=>"PowerPC_POWER7", "family"=>"AIX", "hardware"=>"IBM,8231-E1D", "name"=>"AIX", "release"=>{"full"=>"7100-01-05-1228", "major"=>"7100"}}, "osfamily"=>"AIX", "package_provider"=>"aix", "path"=>"::/usr/bin:/etc:/usr/sbin:/sbin", "processor0"=>"PowerPC_POWER7", "processor1"=>"PowerPC_POWER7", "processor2"=>"PowerPC_POWER7", "processor3"=>"PowerPC_POWER7", "processor4"=>"PowerPC_POWER7", "processor5"=>"PowerPC_POWER7", "processor6"=>"PowerPC_POWER7", "processor7"=>"PowerPC_POWER7", "processorcount"=>8, "processors"=>{"count"=>8, "isa"=>"powerpc", "models"=>["PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7"], "speed"=>"4.23 GHz"}, "puppet_environmentpath"=>"/etc/puppetlabs/code/environments", "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.5.2", "root_home"=>"/root", "ruby"=>{"platform"=>"powerpc-aix7.1.0.0", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"powerpc-aix7.1.0.0", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "serialnumber"=>"21280CV", "service_provider"=>"src", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1bbfbd9caff8924d4584cbb2a748f1be2690d04c", "sha256"=>"SSHFP 2 2 73ec4c25ea880adfbb7f66c60e92fec0ff130c4988765b5799e4707a7cdde68a"}, "key"=>"AAAAB3NzaC1kc3MAAACBAI5I6MVkSh3bO0WVTWIxbB0VyoFrpIXjAtBBveHKQDiB5I9OmCGkzytyR7ERBG/yqFS04hcEX8JV//3DoJeLJ0vupRCDLr4HoTYDGS3Dkvb3wqLn8aaaadz4Ca8IgRbx0vr8ANQbu/XT0/eTv5fRs3YWeijPe4Zgto2x55Ap7UDlAAAAFQDtb/7QYsDVPUt0dVWhOehzBNvybwAAAIBTxxfl95ZRcFG7b2cWljphohnZGzZCJortjE76JBIhnXRlVnlXQFT98hrjkPwedjsj9KWM0RpiKOdas3QAM6iTWLoAv/4GcvAWDa7TuJ5fs3eeQO0yCsTzRzpPwkOv6dcHK6OWWLiGybf/kPxIb546COFONVekdyIdksfZzwJ41QAAAIEAgj+4V9gdRBZcOX7XchaNUPaezTc3pNG1HG8iYTiCTV28EkpkQgzMtW7pPU1Nzqv5CX0LnFS+QN4lTWtuqtADYWSu3soz+7GuL8u3vximAAp6RcmWYSRpIdIQkHGvcyAzT5LlNRhGc/bBPM6RNoCkPzjEDHJDOgTdPx+tRNWXb8Y="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 8957e5a6df12f351fd768ee9615b3906861ff4e5", "sha256"=>"SSHFP 1 2 5a2dddf4df75bc8f4f352d30a8192824e01386b4720708d249edec6f05c5eb81"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC38I+hMQxC/++t3XvgXPtpVglDV2Qp5Xqqp/ZmdJrW7gh3ylKWlOrJOlx72p9Qa2fTAU+eJpYeI8vAAKxtBqqoxVNfn9rGt8wR3eubcwm6CRLTCOqf2OoDJzyJw3RcgidhHuT2KPVYtNOpNEkFyTjtpru3RWrO08PLpT0simATc5XJrvSH9ODQCqzVi5Fhe58Kn1kyAmH9gr0vz/9zrhllBjxVhc3YFz2TKqnZD+zIYlYhoI1vm5zQSzUWA+8B9XBEGs3TUaSDKPANEwof2lt+auTHySlGRXTPL4D9mYw2BhrxRBESgLsbba23SVCMGPILDvb4JwI4vYc7E6AvrFIB"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAI5I6MVkSh3bO0WVTWIxbB0VyoFrpIXjAtBBveHKQDiB5I9OmCGkzytyR7ERBG/yqFS04hcEX8JV//3DoJeLJ0vupRCDLr4HoTYDGS3Dkvb3wqLn8aaaadz4Ca8IgRbx0vr8ANQbu/XT0/eTv5fRs3YWeijPe4Zgto2x55Ap7UDlAAAAFQDtb/7QYsDVPUt0dVWhOehzBNvybwAAAIBTxxfl95ZRcFG7b2cWljphohnZGzZCJortjE76JBIhnXRlVnlXQFT98hrjkPwedjsj9KWM0RpiKOdas3QAM6iTWLoAv/4GcvAWDa7TuJ5fs3eeQO0yCsTzRzpPwkOv6dcHK6OWWLiGybf/kPxIb546COFONVekdyIdksfZzwJ41QAAAIEAgj+4V9gdRBZcOX7XchaNUPaezTc3pNG1HG8iYTiCTV28EkpkQgzMtW7pPU1Nzqv5CX0LnFS+QN4lTWtuqtADYWSu3soz+7GuL8u3vximAAp6RcmWYSRpIdIQkHGvcyAzT5LlNRhGc/bBPM6RNoCkPzjEDHJDOgTdPx+tRNWXb8Y=", "sshfp_dsa"=>"SSHFP 2 1 1bbfbd9caff8924d4584cbb2a748f1be2690d04c\nSSHFP 2 2 73ec4c25ea880adfbb7f66c60e92fec0ff130c4988765b5799e4707a7cdde68a", "sshfp_rsa"=>"SSHFP 1 1 8957e5a6df12f351fd768ee9615b3906861ff4e5\nSSHFP 1 2 5a2dddf4df75bc8f4f352d30a8192824e01386b4720708d249edec6f05c5eb81", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC38I+hMQxC/++t3XvgXPtpVglDV2Qp5Xqqp/ZmdJrW7gh3ylKWlOrJOlx72p9Qa2fTAU+eJpYeI8vAAKxtBqqoxVNfn9rGt8wR3eubcwm6CRLTCOqf2OoDJzyJw3RcgidhHuT2KPVYtNOpNEkFyTjtpru3RWrO08PLpT0simATc5XJrvSH9ODQCqzVi5Fhe58Kn1kyAmH9gr0vz/9zrhllBjxVhc3YFz2TKqnZD+zIYlYhoI1vm5zQSzUWA+8B9XBEGs3TUaSDKPANEwof2lt+auTHySlGRXTPL4D9mYw2BhrxRBESgLsbba23SVCMGPILDvb4JwI4vYc7E6AvrFIB", "swapfree"=>"1007.14 MiB", "swapfree_mb"=>1007.140625, "swapsize"=>"1.00 GiB", "swapsize_mb"=>1024.0, "system_uptime"=>{"days"=>160, "hours"=>3847, "seconds"=>13852500, "uptime"=>"160 days"}, "timezone"=>"PST", "uptime"=>"160 days", "uptime_days"=>160, "uptime_hours"=>3847, "uptime_seconds"=>13852500, "clientcert"=>"pe-aix-71-se.delivery.puppetlabs.net", "clientversion"=>"4.5.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'AIX-7.1-powerpc' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Amazon-2018.03_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Amazon-2018.03_spec.rb new file mode 100644 index 0000000..0addc95 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Amazon-2018.03_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Amazon-2018.03" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"10/16/2017", "bios_vendor"=>"Amazon EC2", "bios_version"=>"1.0", "blockdevice_nvme0n1_model"=>"Amazon Elastic Block Store", "blockdevice_nvme0n1_size"=>8589934592, "blockdevices"=>"nvme0n1", "boardassettag"=>"i-0816d4c53ff8dc6a2", "boardmanufacturer"=>"Amazon EC2", "chassisassettag"=>"Amazon EC2", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"172.31.0.1", "system"=>"172.31.0.1"}, "disks"=>{"nvme0n1"=>{"model"=>"Amazon Elastic Block Store", "size"=>"8.00 GiB", "size_bytes"=>8589934592}}, "dmi"=>{"bios"=>{"release_date"=>"10/16/2017", "vendor"=>"Amazon EC2", "version"=>"1.0"}, "board"=>{"asset_tag"=>"i-0816d4c53ff8dc6a2", "manufacturer"=>"Amazon EC2"}, "chassis"=>{"asset_tag"=>"Amazon EC2", "type"=>"Other"}, "manufacturer"=>"Amazon EC2", "product"=>{"name"=>"t3a.xlarge", "serial_number"=>"ec21b37d-28ce-a3c2-956e-527e2857aeda", "uuid"=>"EC21B37D-28CE-A3C2-956E-527E2857AEDA"}}, "domain"=>"us-west-2.compute.internal", "ec2_metadata"=>{"ami-id"=>"ami-01e24be29428c15b2", "ami-launch-index"=>"0", "ami-manifest-path"=>"(unknown)", "block-device-mapping"=>{"ami"=>"xvda", "root"=>"/dev/xvda"}, "events"=>{"maintenance"=>{"history"=>"[]", "scheduled"=>"[]"}}, "hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "identity-credentials"=>{"ec2"=>{"info"=>"{\n \"Code\" : \"Success\",\n \"LastUpdated\" : \"2019-05-07T01:03:28Z\",\n \"AccountId\" : \"581165678935\"\n}"}}, "instance-action"=>"none", "instance-id"=>"i-0816d4c53ff8dc6a2", "instance-type"=>"t3a.xlarge", "local-hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "local-ipv4"=>"172.31.3.153", "mac"=>"0a:ca:e0:39:c1:f6", "metrics"=>{"vhostmd"=>""}, "network"=>{"interfaces"=>{"macs"=>{"0a:ca:e0:39:c1:f6"=>{"device-number"=>"0", "interface-id"=>"eni-04e7710af3cf1699c", "ipv4-associations"=>{"34.209.204.164"=>"172.31.3.153"}, "local-hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "local-ipv4s"=>"172.31.3.153", "mac"=>"0a:ca:e0:39:c1:f6", "owner-id"=>"581165678935", "public-hostname"=>"ec2-34-209-204-164.us-west-2.compute.amazonaws.com", "public-ipv4s"=>"34.209.204.164", "security-group-ids"=>"sg-05a2c52388c24f3ae", "security-groups"=>"launch-wizard-2", "subnet-id"=>"subnet-3bafc660", "subnet-ipv4-cidr-block"=>"172.31.0.0/20", "vpc-id"=>"vpc-287af44e", "vpc-ipv4-cidr-block"=>"172.31.0.0/16", "vpc-ipv4-cidr-blocks"=>"172.31.0.0/16"}}}}, "placement"=>{"availability-zone"=>"us-west-2c"}, "profile"=>"default-hvm", "public-hostname"=>"ec2-34-209-204-164.us-west-2.compute.amazonaws.com", "public-ipv4"=>"34.209.204.164", "public-keys"=>{"0"=>{"openssh-key"=>"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDk1QR+MwLPRohIOiWbCC8xjJKFYeCjIh2g2wAKnZFCkPjCG9BD3L4URnszJXdv+5XylfWO1y9O1Z95etjWfObApRZ5Ej22Dz1EExWWRNOKl9QdrEfCACSlc5gbT5rflHd/He9eD5OFRHlMY8fNIApEKdQrlxZgr1/NOusVQggoS/MiszxCl0dob3kz86XX6PrAmMyGfv7j/mPeeEUzP3bGxtjJyaZGcwukjPvlgq1yI4AzZlveY8fnokRsh9uDHXUEVB2hLNaBBZB/Evw261J/+QsnKopAuqQpwct/n/ulbg+w1h/2ZBiDXDBK8DQ8kOC4zuum6qwri1KNKdX9zIif thinkpad"}}, "reservation-id"=>"r-0b89c0e198506ec1f", "security-groups"=>"launch-wizard-2", "services"=>{"domain"=>"amazonaws.com", "partition"=>"aws"}}, "facterversion"=>"3.12.4", "filesystems"=>"ext3,ext4", "fips_enabled"=>false, "fqdn"=>"ip-172-31-3-153.us-west-2.compute.internal", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"ip-172-31-3-153", "hypervisors"=>{"kvm"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"172.31.3.153", "ipaddress6"=>"fe80::8ca:e0ff:fe39:c1f6", "ipaddress6_eth0"=>"fe80::8ca:e0ff:fe39:c1f6", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"172.31.3.153", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"4.14", "kernelrelease"=>"4.14.77-70.59.amzn1.x86_64", "kernelversion"=>"4.14.77", "load_averages"=>{"15m"=>0.02, "1m"=>0.12, "5m"=>0.06}, "macaddress"=>"0a:ca:e0:39:c1:f6", "macaddress_eth0"=>"0a:ca:e0:39:c1:f6", "manufacturer"=>"Amazon EC2", "memory"=>{"system"=>{"available"=>"15.36 GiB", "available_bytes"=>16489611264, "capacity"=>"1.10%", "total"=>"15.53 GiB", "total_bytes"=>16673153024, "used"=>"175.04 MiB", "used_bytes"=>183541760}}, "memoryfree"=>"15.36 GiB", "memoryfree_mb"=>15725.71875, "memorysize"=>"15.53 GiB", "memorysize_mb"=>15900.7578125, "mountpoints"=>{"/"=>{"available"=>"6.55 GiB", "available_bytes"=>7033344000, "capacity"=>"15.45%", "device"=>"/dev/nvme0n1p1", "filesystem"=>"ext4", "options"=>["rw", "noatime", "data=ordered"], "size"=>"7.75 GiB", "size_bytes"=>8318783488, "used"=>"1.20 GiB", "used_bytes"=>1285439488}, "/dev/shm"=>{"available"=>"7.76 GiB", "available_bytes"=>8336576512, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "relatime"], "size"=>"7.76 GiB", "size_bytes"=>8336576512, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_eth0"=>9001, "mtu_lo"=>65536, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.240.0", "netmask_lo"=>"255.0.0.0", "network"=>"172.31.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"172.31.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"172.31.0.1", "domain"=>"us-west-2.compute.internal", "fqdn"=>"ip-172-31-3-153.us-west-2.compute.internal", "hostname"=>"ip-172-31-3-153", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"172.31.3.153", "netmask"=>"255.255.240.0", "network"=>"172.31.0.0"}], "bindings6"=>[{"address"=>"fe80::8ca:e0ff:fe39:c1f6", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"172.31.0.1", "ip"=>"172.31.3.153", "ip6"=>"fe80::8ca:e0ff:fe39:c1f6", "mac"=>"0a:ca:e0:39:c1:f6", "mtu"=>9001, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"172.31.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"172.31.3.153", "ip6"=>"fe80::8ca:e0ff:fe39:c1f6", "mac"=>"0a:ca:e0:39:c1:f6", "mtu"=>9001, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"172.31.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"Amazon", "operatingsystemmajrelease"=>"2018", "operatingsystemrelease"=>"2018.03", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"Amazon", "release"=>{"full"=>"2018.03", "major"=>"2018", "minor"=>"03"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/nvme0n1p1"=>{"filesystem"=>"ext4", "label"=>"/", "mount"=>"/", "partlabel"=>"Linux", "partuuid"=>"893c59db-bd86-4d67-b40f-221bc82c14c8", "size"=>"8.00 GiB", "size_bytes"=>8587820544, "uuid"=>"f25f5092-0401-4edb-9fac-c57f3c673803"}, "/dev/nvme0n1p128"=>{"partlabel"=>"BIOS Boot Partition", "partuuid"=>"9d1c14c8-e25b-4405-9171-de3c756f61b2", "size"=>"1.00 MiB", "size_bytes"=>1048576}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin", "physicalprocessorcount"=>1, "processor0"=>"AMD EPYC 7571", "processor1"=>"AMD EPYC 7571", "processor2"=>"AMD EPYC 7571", "processor3"=>"AMD EPYC 7571", "processorcount"=>4, "processors"=>{"count"=>4, "isa"=>"x86_64", "models"=>["AMD EPYC 7571", "AMD EPYC 7571", "AMD EPYC 7571", "AMD EPYC 7571"], "physicalcount"=>1}, "productname"=>"t3a.xlarge", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>false, "serialnumber"=>"ec21b37d-28ce-a3c2-956e-527e2857aeda", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 0b8e09e2fe5c820230d717a8f1c4bfd4bcb11dfd", "sha256"=>"SSHFP 2 2 956e88a3dd192f4a401c05deccf92985b16542027b7a77d36172a3c014c8491f"}, "key"=>"AAAAB3NzaC1kc3MAAACBALzgFDQ4Hu4sjtB0gYwh2uv/00U15avjHKLuffc1+rDmjnoW99OlbeijOb9nPBTDR/+OkAJuVzFdfP/EmPAajAMSE2bOPn5jgNBoKdw7g4LMhtRGomJ8ZxJ9kphYbFaq1JdX6a06HSJHn8RlkV6MV9WYnGQiE89e/7kf3krFssXJAAAAFQDuL8oufyAzYtkWvApZlOX+UlFvxwAAAIEAhibNA8agHCpQIrswmMj9PUOhEVx3OqS/F+0TB/vOqWdubFK97zlt56biu+2R2gHNCiqyiGorBA83xonkHrdjn44Nw2KsZVE9xR4BCbqIyrkwQkWbTHfGYwq0QCo9UyuTdrhen2FnFdZXsQw4b4mcedNDxSPzgLy9Pl/EAVINm6EAAACBAJOfk9MzOocneM35ROEMKRZV5oWFwkglRg/qT3Xcvc3PabEUKlTWQs65fVlVkyipri/0cIuPEo8NKUFJ614FHYGedgja2lFz4xEAonJX3wG3c4GSdbv9uMJT0K1p3zbfCuBoZ9my2nJvWBYPYrXvZgXMt48ewJHMy3HlTnhNSklI", "type"=>"ssh-dss"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 8fc1a45df472f27fd3fa19cd5e6df68434fa60d4", "sha256"=>"SSHFP 3 2 c4b4bb4362c47a3d0feaf030779e1bf06e2fd95911b1f8636ad2032b57cf087b"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL2ZVP/li7lMY6UrniJHcWOjBvTs1xdw2NQlmzLtuyaPhnolyh2uwoZctB5tOnlG97NlGqkBKV9pl7+fplDWip0=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 10e0fcb0020748f776ff7178310be3e8e1c788bc", "sha256"=>"SSHFP 4 2 ef9e38c12ab7fa4e4eb82e26d6707110352d82a5beae30887f3de96e7a83fb8f"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHtcpSu4oquHdhVu57O9BP/sHvy1vgMuEWZ2Aoq1elFP", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 70e536ec33e8312c25b6c606546d7acb2f471e28", "sha256"=>"SSHFP 1 2 ee810f2ab351653e9c2ca93270f9c73eb31dd824318b50af72d0afbe31d5d462"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDT/8RUum1jt8FZg8GJRvjjOQyU1VLn1199yjI4xr4aSx7yAmm3eHb5bsSPsxxPUMnlWcd8bq0hWQ5VI2G2WQfUpM4Tyx+wRnGdU1SB7xY8Flzg7w0JOIIIKf1ulxcscacCnGR2y/6rJUkdYVsiCKMADuQ6MUpqA6jLbWHAv8dJlvfq/vtCxBtTOzbhlWmmuvo0WPGXEmHW8Hvj94wcPkvRbf/Pohn+A5NrGs1SlIetn+N6tnK6CPK/g1dNMomPTwU+1+yAIUdTMedJPEeiB8pX5ydDhmO0X76KcXmaqIGvPWWMPEBoPKH8f/IFauOqkoaSAycdKBLYEUbb0iDIlXG1", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALzgFDQ4Hu4sjtB0gYwh2uv/00U15avjHKLuffc1+rDmjnoW99OlbeijOb9nPBTDR/+OkAJuVzFdfP/EmPAajAMSE2bOPn5jgNBoKdw7g4LMhtRGomJ8ZxJ9kphYbFaq1JdX6a06HSJHn8RlkV6MV9WYnGQiE89e/7kf3krFssXJAAAAFQDuL8oufyAzYtkWvApZlOX+UlFvxwAAAIEAhibNA8agHCpQIrswmMj9PUOhEVx3OqS/F+0TB/vOqWdubFK97zlt56biu+2R2gHNCiqyiGorBA83xonkHrdjn44Nw2KsZVE9xR4BCbqIyrkwQkWbTHfGYwq0QCo9UyuTdrhen2FnFdZXsQw4b4mcedNDxSPzgLy9Pl/EAVINm6EAAACBAJOfk9MzOocneM35ROEMKRZV5oWFwkglRg/qT3Xcvc3PabEUKlTWQs65fVlVkyipri/0cIuPEo8NKUFJ614FHYGedgja2lFz4xEAonJX3wG3c4GSdbv9uMJT0K1p3zbfCuBoZ9my2nJvWBYPYrXvZgXMt48ewJHMy3HlTnhNSklI", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL2ZVP/li7lMY6UrniJHcWOjBvTs1xdw2NQlmzLtuyaPhnolyh2uwoZctB5tOnlG97NlGqkBKV9pl7+fplDWip0=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHtcpSu4oquHdhVu57O9BP/sHvy1vgMuEWZ2Aoq1elFP", "sshfp_dsa"=>"SSHFP 2 1 0b8e09e2fe5c820230d717a8f1c4bfd4bcb11dfd\nSSHFP 2 2 956e88a3dd192f4a401c05deccf92985b16542027b7a77d36172a3c014c8491f", "sshfp_ecdsa"=>"SSHFP 3 1 8fc1a45df472f27fd3fa19cd5e6df68434fa60d4\nSSHFP 3 2 c4b4bb4362c47a3d0feaf030779e1bf06e2fd95911b1f8636ad2032b57cf087b", "sshfp_ed25519"=>"SSHFP 4 1 10e0fcb0020748f776ff7178310be3e8e1c788bc\nSSHFP 4 2 ef9e38c12ab7fa4e4eb82e26d6707110352d82a5beae30887f3de96e7a83fb8f", "sshfp_rsa"=>"SSHFP 1 1 70e536ec33e8312c25b6c606546d7acb2f471e28\nSSHFP 1 2 ee810f2ab351653e9c2ca93270f9c73eb31dd824318b50af72d0afbe31d5d462", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDT/8RUum1jt8FZg8GJRvjjOQyU1VLn1199yjI4xr4aSx7yAmm3eHb5bsSPsxxPUMnlWcd8bq0hWQ5VI2G2WQfUpM4Tyx+wRnGdU1SB7xY8Flzg7w0JOIIIKf1ulxcscacCnGR2y/6rJUkdYVsiCKMADuQ6MUpqA6jLbWHAv8dJlvfq/vtCxBtTOzbhlWmmuvo0WPGXEmHW8Hvj94wcPkvRbf/Pohn+A5NrGs1SlIetn+N6tnK6CPK/g1dNMomPTwU+1+yAIUdTMedJPEeiB8pX5ydDhmO0X76KcXmaqIGvPWWMPEBoPKH8f/IFauOqkoaSAycdKBLYEUbb0iDIlXG1", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>136, "uptime"=>"0:02 hours"}, "timezone"=>"UTC", "uptime"=>"0:02 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>136, "uuid"=>"EC21B37D-28CE-A3C2-956E-527E2857AEDA", "virtual"=>"kvm", "clientcert"=>"ip-172-31-3-153.us-west-2.compute.internal", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Amazon-2018.03' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_CentOS-5.11-32_spec.rb b/.onceover/spec/classes/role__custom_windows_on_CentOS-5.11-32_spec.rb new file mode 100644 index 0000000..c76b58b --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_CentOS-5.11-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set CentOS-5.11-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_hda_size"=>0, "blockdevices"=>"hda", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"hda"=>{"size"=>"20.00 GiB", "size_bytes"=>0}}, "domain"=>"localdomain", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,iso9660", "fqdn"=>"localhost.localdomain", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo,sit0", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:febf:56", "ipaddress6_eth0"=>"fe80::a00:27ff:febf:56", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.18-398.el5", "kernelversion"=>"2.6.18", "load_averages"=>{"15m"=>0.11, "1m"=>0.28, "5m"=>0.22}, "lsbdistcodename"=>"Final", "lsbdistdescription"=>"CentOS release 5.11 (Final)", "lsbdistid"=>"CentOS", "lsbdistrelease"=>"5.11", "lsbmajdistrelease"=>"5", "lsbminordistrelease"=>"11", "lsbrelease"=>":core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch", "macaddress"=>"08:00:27:bf:00:56", "macaddress_eth0"=>"08:00:27:bf:00:56", "memory"=>{"swap"=>{"available"=>"1023.99 MiB", "available_bytes"=>1073733632, "capacity"=>"0%", "total"=>"1023.99 MiB", "total_bytes"=>1073733632, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"429.48 MiB", "available_bytes"=>450342912, "capacity"=>"14.58%", "total"=>"502.80 MiB", "total_bytes"=>527220736, "used"=>"73.32 MiB", "used_bytes"=>76877824}}, "memoryfree"=>"429.48 MiB", "memoryfree_mb"=>429.48046875, "memorysize"=>"502.80 MiB", "memorysize_mb"=>502.796875, "mountpoints"=>{"/"=>{"available"=>"1.09 GiB", "available_bytes"=>1171632128, "capacity"=>"52.22%", "device"=>"/dev/mapper/VolGroup00-LogVol00", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"2.28 GiB", "size_bytes"=>-1842671616, "used"=>"1.19 GiB", "used_bytes"=>1280663552}, "/boot"=>{"available"=>"86.58 MiB", "available_bytes"=>90790912, "capacity"=>"12.29%", "device"=>"/dev/hda1", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"98.72 MiB", "size_bytes"=>103512064, "used"=>"12.13 MiB", "used_bytes"=>12721152}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "mtu_sit0"=>1480, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"localdomain", "fqdn"=>"localhost.localdomain", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:febf:56", "mac"=>"08:00:27:bf:00:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}, "sit0"=>{"mtu"=>1480}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:febf:56", "mac"=>"08:00:27:bf:00:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"5", "operatingsystemrelease"=>"5.11", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"Final", "description"=>"CentOS release 5.11 (Final)", "id"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "specification"=>":core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"i686", "name"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "path"=>"/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 3a63a36b70f2d9a56a9dc3a1159a64ff9f89536f", "sha256"=>"SSHFP 2 2 610f5aaa0dc46e30df3fb0ecac0eb3e00e7cac79d610c8c9a2a1eac341244940"}, "key"=>"AAAAB3NzaC1kc3MAAACBANIQgUl4dqCF84m1riBm7rlb5j6v6Dco/P7w0+AE0by81oHLA/i2V89okSrenm2scb4/u57ZpR/GeyVaLzicLyUjBICBwPOsv/+eLnVUtL/+vXwnVleBqaZn+2FUswdkz+J4QiDRSyl78kAkLMAFqEfNimMUB12DirtvgYIFqKaZAAAAFQDTiJhQ0rCPN0ax1rHbjLAMYYoCLwAAAIBWYAzgNYnG5TCzHWSdQZHeJPItH3MUrLFgggb3H9kFZBKCLSBW/EWV1s27G8a1Hd9JAsGEwDGBHn2VLz4uMSssEbJpdJY4jeRmeqeyqZ7My+83XLu0stm2xu6Tt7dwH//DPTTS1XmFXYdx/3tR5JWBIUm6yTb1WS43WUTSyxyPCQAAAIEAzyoULrHnqiBjuJeLB/2OF1vnRT58D53Vd3cQW1xZwyzsPSralv2lMGW0rGaduGrFQjCrDQk0k1fajZnjFX3qfdxaflFCgz2I1W46AcrGXeFy7AlRlCIE1LZtYGd04l3ERiqcUQT+vk2Jv54qMUwSQeyYWY67XcAnglf5GLqwqMo="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 6b3dbcd02fe71fb6106ad074454f8f16917327b5", "sha256"=>"SSHFP 1 2 913a32e7a0b2c81b5419903654c1dc42680df07f4fe04c82d7d70892b77b824b"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAsNcmWEvgjOkr4XA4uYa9aAfcxv1IygDmFnM/zIFbcMUmCxoza/WWZwm/mDO319xq71YqpVtvhgpSTHLGek6Iwb1rZukQvbwZnlzrIe0G8Bc4JpSAmyZkZceve1cau6nOXEI8eDrlbRLtrUNeptaIVHaa85KJqv7Ksc+NxGIRS/xBTWus3rxx3cQaurcyIK1rBHLiL5VpN+ove3Nl3zsHyyOym6FjbqIQuVMStr5j0+lQ3B+AqZpJixwbGKaxSIKZUcQla1pGCchBt7BuAq+A4XE+XIdsi2gRks2IjPGMkOXh0IiYud1ph7JaO7iLjSalylvF9qZSO/70J3w7nKLJYQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBANIQgUl4dqCF84m1riBm7rlb5j6v6Dco/P7w0+AE0by81oHLA/i2V89okSrenm2scb4/u57ZpR/GeyVaLzicLyUjBICBwPOsv/+eLnVUtL/+vXwnVleBqaZn+2FUswdkz+J4QiDRSyl78kAkLMAFqEfNimMUB12DirtvgYIFqKaZAAAAFQDTiJhQ0rCPN0ax1rHbjLAMYYoCLwAAAIBWYAzgNYnG5TCzHWSdQZHeJPItH3MUrLFgggb3H9kFZBKCLSBW/EWV1s27G8a1Hd9JAsGEwDGBHn2VLz4uMSssEbJpdJY4jeRmeqeyqZ7My+83XLu0stm2xu6Tt7dwH//DPTTS1XmFXYdx/3tR5JWBIUm6yTb1WS43WUTSyxyPCQAAAIEAzyoULrHnqiBjuJeLB/2OF1vnRT58D53Vd3cQW1xZwyzsPSralv2lMGW0rGaduGrFQjCrDQk0k1fajZnjFX3qfdxaflFCgz2I1W46AcrGXeFy7AlRlCIE1LZtYGd04l3ERiqcUQT+vk2Jv54qMUwSQeyYWY67XcAnglf5GLqwqMo=", "sshfp_dsa"=>"SSHFP 2 1 3a63a36b70f2d9a56a9dc3a1159a64ff9f89536f\nSSHFP 2 2 610f5aaa0dc46e30df3fb0ecac0eb3e00e7cac79d610c8c9a2a1eac341244940", "sshfp_rsa"=>"SSHFP 1 1 6b3dbcd02fe71fb6106ad074454f8f16917327b5\nSSHFP 1 2 913a32e7a0b2c81b5419903654c1dc42680df07f4fe04c82d7d70892b77b824b", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAsNcmWEvgjOkr4XA4uYa9aAfcxv1IygDmFnM/zIFbcMUmCxoza/WWZwm/mDO319xq71YqpVtvhgpSTHLGek6Iwb1rZukQvbwZnlzrIe0G8Bc4JpSAmyZkZceve1cau6nOXEI8eDrlbRLtrUNeptaIVHaa85KJqv7Ksc+NxGIRS/xBTWus3rxx3cQaurcyIK1rBHLiL5VpN+ove3Nl3zsHyyOym6FjbqIQuVMStr5j0+lQ3B+AqZpJixwbGKaxSIKZUcQla1pGCchBt7BuAq+A4XE+XIdsi2gRks2IjPGMkOXh0IiYud1ph7JaO7iLjSalylvF9qZSO/70J3w7nKLJYQ==", "swapfree"=>"1023.99 MiB", "swapfree_mb"=>1023.9921875, "swapsize"=>"1023.99 MiB", "swapsize_mb"=>1023.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1067, "uptime"=>"0:17 hours"}, "timezone"=>"UTC", "uptime"=>"0:17 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1067, "virtual"=>"virtualbox", "clientcert"=>"localhost.localdomain", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'CentOS-5.11-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_CentOS-5.11-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_CentOS-5.11-64_spec.rb new file mode 100644 index 0000000..62d8062 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_CentOS-5.11-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set CentOS-5.11-64" do + node_facts = {"architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_hda_size"=>21474836480, "blockdevices"=>"hda", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"hda"=>{"size"=>"20.00 GiB", "size_bytes"=>21474836480}}, "domain"=>"localdomain", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,iso9660", "fqdn"=>"localhost.localdomain", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo,sit0", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe3e:4987", "ipaddress6_eth0"=>"fe80::a00:27ff:fe3e:4987", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.18-398.el5", "kernelversion"=>"2.6.18", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"Final", "lsbdistdescription"=>"CentOS release 5.11 (Final)", "lsbdistid"=>"CentOS", "lsbdistrelease"=>"5.11", "lsbmajdistrelease"=>"5", "lsbminordistrelease"=>"11", "lsbrelease"=>":core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch", "macaddress"=>"08:00:27:3e:49:87", "macaddress_eth0"=>"08:00:27:3e:49:87", "memory"=>{"swap"=>{"available"=>"1023.99 MiB", "available_bytes"=>1073733632, "capacity"=>"0%", "total"=>"1023.99 MiB", "total_bytes"=>1073733632, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"389.45 MiB", "available_bytes"=>408363008, "capacity"=>"21.76%", "total"=>"497.78 MiB", "total_bytes"=>521961472, "used"=>"108.34 MiB", "used_bytes"=>113598464}}, "memoryfree"=>"389.45 MiB", "memoryfree_mb"=>389.4453125, "memorysize"=>"497.78 MiB", "memorysize_mb"=>497.78125, "mountpoints"=>{"/"=>{"available"=>"16.96 GiB", "available_bytes"=>18212638720, "capacity"=>"7.23%", "device"=>"/dev/mapper/VolGroup00-LogVol00", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"18.28 GiB", "size_bytes"=>19632164864, "used"=>"1.32 GiB", "used_bytes"=>1419526144}, "/boot"=>{"available"=>"86.04 MiB", "available_bytes"=>90215424, "capacity"=>"12.85%", "device"=>"/dev/hda1", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"98.72 MiB", "size_bytes"=>103512064, "used"=>"12.68 MiB", "used_bytes"=>13296640}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "mtu_sit0"=>1480, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"localdomain", "fqdn"=>"localhost.localdomain", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe3e:4987", "mac"=>"08:00:27:3e:49:87", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}, "sit0"=>{"mtu"=>1480}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe3e:4987", "mac"=>"08:00:27:3e:49:87", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"5", "operatingsystemrelease"=>"5.11", "os"=>{"architecture"=>"x86_64", "distro"=>{"codename"=>"Final", "description"=>"CentOS release 5.11 (Final)", "id"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "specification"=>":core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "path"=>"/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1139f2967264a610088812d1ed3ea8db448c417d", "sha256"=>"SSHFP 2 2 ddb6064607ac29a8c83978d33e46ed56e677f27ed727341142a08156906bc9bb"}, "key"=>"AAAAB3NzaC1kc3MAAACBAK4mrAWHX3BUGyimNDl6+rtP3BXx8hvZ8UCfySeFw3vliSb5uzCLSdbcLmNZxqVrYv9skhO7wIaRFo4xwLSBPbwMffwuO8/2kIXGxkkVKnucsYmsNNaaLAgrfTR+d2lj089fs/PBDGUiJThPPsbNLMVxDEy1SOuby5FAZvNGQTlxAAAAFQCivnpYKhk5wFrpmn1mZv7ayD8HLwAAAIBQ64m92s3WWK+tdChTH2rEvfn3lJlatruRDeZaXrTuuzA7K9uJhtfqg3KAs9gtZup6vOGNJbJWZVxTG+I3jLXgA2Mfd/lAcbtA1RXnqgUITgg2/sd/TkEkCrke/NVjBaiiXVhsly63OIv/JAvq4ulmNxvUT7Pj6Fz9dKvV1elbJQAAAIBqHveIC7RZnN4bGEc+rZZ63aOYI7Pm/9OE2soVjjvGYgk9Iew9S7xwDmcrDKICqSCwzE3ISalkGAkqXKBJnKx/gKziLWdj1VOoNv16X4nVTwxaL7u9nAg1cQ+H5whnWQ+KDoLJPtc8bCpnamGMY4W89a08Qv0U5RECNhv92AQcqQ=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 29e63bdd87c88c24251d791b474a8f3b56d581f7", "sha256"=>"SSHFP 1 2 cfc171e3db64806593cd26571556b360882507938c9a71e477478837cfa6ea9c"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA7Z6GmWepCT3oXq1qGkIq736GM5oXr4ISMuJtGF2+8yOyM+qqvM83zgnZVkCSkNwtiLOODfzbFmmfKKdLoN30xE6oRP+hu9LH7dzRnnIwsx2DBgaX6QPdbcsIG1dnfH34PO1/AvZGRU4YRwrBSVsURR5wow6BYTs56qznYUd6VALvDg0iOLde7eniqQlVbzfLsR+GFeQ9zp9qMI4JjL17RJYBeVam0wP3cYXglE5PsMYuJwVLP6aOIFx3nQPem76bh5fyTVFsav+jsdamw+dZ7uZn6lkRlCtqyxQzFyyT3RgCUW1qVwdus42xsJm8GPojfIcqhQ3HUEDZ61D5dgZjIQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAK4mrAWHX3BUGyimNDl6+rtP3BXx8hvZ8UCfySeFw3vliSb5uzCLSdbcLmNZxqVrYv9skhO7wIaRFo4xwLSBPbwMffwuO8/2kIXGxkkVKnucsYmsNNaaLAgrfTR+d2lj089fs/PBDGUiJThPPsbNLMVxDEy1SOuby5FAZvNGQTlxAAAAFQCivnpYKhk5wFrpmn1mZv7ayD8HLwAAAIBQ64m92s3WWK+tdChTH2rEvfn3lJlatruRDeZaXrTuuzA7K9uJhtfqg3KAs9gtZup6vOGNJbJWZVxTG+I3jLXgA2Mfd/lAcbtA1RXnqgUITgg2/sd/TkEkCrke/NVjBaiiXVhsly63OIv/JAvq4ulmNxvUT7Pj6Fz9dKvV1elbJQAAAIBqHveIC7RZnN4bGEc+rZZ63aOYI7Pm/9OE2soVjjvGYgk9Iew9S7xwDmcrDKICqSCwzE3ISalkGAkqXKBJnKx/gKziLWdj1VOoNv16X4nVTwxaL7u9nAg1cQ+H5whnWQ+KDoLJPtc8bCpnamGMY4W89a08Qv0U5RECNhv92AQcqQ==", "sshfp_dsa"=>"SSHFP 2 1 1139f2967264a610088812d1ed3ea8db448c417d\nSSHFP 2 2 ddb6064607ac29a8c83978d33e46ed56e677f27ed727341142a08156906bc9bb", "sshfp_rsa"=>"SSHFP 1 1 29e63bdd87c88c24251d791b474a8f3b56d581f7\nSSHFP 1 2 cfc171e3db64806593cd26571556b360882507938c9a71e477478837cfa6ea9c", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA7Z6GmWepCT3oXq1qGkIq736GM5oXr4ISMuJtGF2+8yOyM+qqvM83zgnZVkCSkNwtiLOODfzbFmmfKKdLoN30xE6oRP+hu9LH7dzRnnIwsx2DBgaX6QPdbcsIG1dnfH34PO1/AvZGRU4YRwrBSVsURR5wow6BYTs56qznYUd6VALvDg0iOLde7eniqQlVbzfLsR+GFeQ9zp9qMI4JjL17RJYBeVam0wP3cYXglE5PsMYuJwVLP6aOIFx3nQPem76bh5fyTVFsav+jsdamw+dZ7uZn6lkRlCtqyxQzFyyT3RgCUW1qVwdus42xsJm8GPojfIcqhQ3HUEDZ61D5dgZjIQ==", "swapfree"=>"1023.99 MiB", "swapfree_mb"=>1023.9921875, "swapsize"=>"1023.99 MiB", "swapsize_mb"=>1023.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>847, "uptime"=>"0:14 hours"}, "timezone"=>"UTC", "uptime"=>"0:14 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>847, "virtual"=>"virtualbox", "clientcert"=>"localhost.localdomain", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'CentOS-5.11-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_CentOS-6.6-32_spec.rb b/.onceover/spec/classes/role__custom_windows_on_CentOS-6.6-32_spec.rb new file mode 100644 index 0000000..4a03264 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_CentOS-6.6-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set CentOS-6.6-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"6C33275E-3132-4167-9318-9BDE31E82035"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext4,iso9660", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:feff:42e5", "ipaddress6_eth0"=>"fe80::a00:27ff:feff:42e5", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-504.el6.i686", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "macaddress"=>"08:00:27:ff:42:e5", "macaddress_eth0"=>"08:00:27:ff:42:e5", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"1.00 GiB", "available_bytes"=>1073737728, "capacity"=>"0%", "total"=>"1.00 GiB", "total_bytes"=>1073737728, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"451.91 MiB", "available_bytes"=>473862144, "capacity"=>"9.40%", "total"=>"498.82 MiB", "total_bytes"=>523051008, "used"=>"46.91 MiB", "used_bytes"=>49188864}}, "memoryfree"=>"451.91 MiB", "memoryfree_mb"=>451.91015625, "memorysize"=>"498.82 MiB", "memorysize_mb"=>498.8203125, "mountpoints"=>{"/"=>{"available"=>"1.02 GiB", "available_bytes"=>1099689984, "capacity"=>"51.05%", "device"=>"/dev/mapper/VolGroup-lv_root", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"2.09 GiB", "size_bytes"=>-2048442368, "used"=>"1.07 GiB", "used_bytes"=>1146834944}, "/boot"=>{"available"=>"450.39 MiB", "available_bytes"=>472266752, "capacity"=>"5.42%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"25.83 MiB", "used_bytes"=>27088896}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feff:42e5", "mac"=>"08:00:27:ff:42:e5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feff:42e5", "mac"=>"08:00:27:ff:42:e5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.6", "os"=>{"architecture"=>"i386", "family"=>"RedHat", "hardware"=>"i686", "name"=>"CentOS", "release"=>{"full"=>"6.6", "major"=>"6", "minor"=>"6"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/VolGroup-lv_root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"bc353fb2-82b1-4d41-a43e-6512030a2a28"}, "/dev/mapper/VolGroup-lv_swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"eb19f39e-a1cc-4e43-bf33-809fa7f52044"}, "/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"51727e98-6cd5-4fba-8a1f-7d4dfb575e1f"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>-525336576, "uuid"=>"vkG7sJ-bfu3-Cko3-YJ7v-jPys-3uHe-vki0jZ"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 5c44d0a9f52668fbaaf05e6957f058d90264adfe", "sha256"=>"SSHFP 2 2 de1d70753fc8dcce901b997fca065a08cdfcc9d7ba44f630e0e16be7a54df877"}, "key"=>"AAAAB3NzaC1kc3MAAACBAME6dtbuRJGNiBgp3QqD50a8LmJLduCTsifX5ST6RA5l+LHIx/UpCo66dsSY29mXVsMIK6tlZyu0MDR4iOz/4oFcKwkgHvbZ33WFY7G526IDrszdLdWnEqxPw7pUC+izWmD337K0gcZnDMJGZk1PVEjK6i5MeFYI4SwYkdd/m7DTAAAAFQCzZLb3M4+Y0TBLUVImfxc31+KXiQAAAIAbk33qNmIiB4+iHJ0coB4MfSdwoPnhU+vG7XpqiA0W/68U6lGIFFFHW0R1utZUQ28E8jUhSwzM0EGXtiSyFpTzjAnS44UiIWvulTkbpa9RnTn1gVzR2Tpbc24LMiKqiz/ZrvKmp8jLUO1/BPCmD80yNXXo+v59wXnVD8Yak4u07QAAAIB0lpeV5gShABSEIBXBuAPGW67mjCdUqbj6Ry1ZV3XTPtUXWVhCehWQrPh9yYCItpepKWp55t7neSqVjaxFo7W8O2gBkYwv24eQiqaqI8vgV3fJf4mdb10cdAb6IzM46WVhSxo1al2XPLBDVtx1z/4RH/7agKpbfmP6QrDgKkMKow=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1002ff7e5e42c3c9c9681d65afe0f195277d2a8", "sha256"=>"SSHFP 1 2 ac639861032637e9c24f0af7126242086540c3d1f41640576c011d6eb9f4bf24"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEArd8ro8164ykLYynBWxSiPBNUy1hLeh2S284vuYCbJwNC/naFBmcXORUFIsegfJpRxFKg3YsCbQUrHfZ6cfAc/xKUdoORUkF+8ixsVl4YzHg6vybxnRlaanBvS0eiR/wzxsVepqC/S3gd7YF3/Lca5sHNixNuqgxsd9iy9VEz7XMZ32mMxBqgTabR1KorBSufGMRADq/jauXpd2QRul+bih5uAL/Ilb2bZutcHUohnWi3UQnR10bO9MS1wr6c42VJBOHW6fZXvGjRvjd94AhNB7RTKvmRCucPCMvkgaDsr+z0cCjmpmptsdy119UpKmv4uCHalPbtHOWMYk2QVnqoQw=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAME6dtbuRJGNiBgp3QqD50a8LmJLduCTsifX5ST6RA5l+LHIx/UpCo66dsSY29mXVsMIK6tlZyu0MDR4iOz/4oFcKwkgHvbZ33WFY7G526IDrszdLdWnEqxPw7pUC+izWmD337K0gcZnDMJGZk1PVEjK6i5MeFYI4SwYkdd/m7DTAAAAFQCzZLb3M4+Y0TBLUVImfxc31+KXiQAAAIAbk33qNmIiB4+iHJ0coB4MfSdwoPnhU+vG7XpqiA0W/68U6lGIFFFHW0R1utZUQ28E8jUhSwzM0EGXtiSyFpTzjAnS44UiIWvulTkbpa9RnTn1gVzR2Tpbc24LMiKqiz/ZrvKmp8jLUO1/BPCmD80yNXXo+v59wXnVD8Yak4u07QAAAIB0lpeV5gShABSEIBXBuAPGW67mjCdUqbj6Ry1ZV3XTPtUXWVhCehWQrPh9yYCItpepKWp55t7neSqVjaxFo7W8O2gBkYwv24eQiqaqI8vgV3fJf4mdb10cdAb6IzM46WVhSxo1al2XPLBDVtx1z/4RH/7agKpbfmP6QrDgKkMKow==", "sshfp_dsa"=>"SSHFP 2 1 5c44d0a9f52668fbaaf05e6957f058d90264adfe\nSSHFP 2 2 de1d70753fc8dcce901b997fca065a08cdfcc9d7ba44f630e0e16be7a54df877", "sshfp_rsa"=>"SSHFP 1 1 d1002ff7e5e42c3c9c9681d65afe0f195277d2a8\nSSHFP 1 2 ac639861032637e9c24f0af7126242086540c3d1f41640576c011d6eb9f4bf24", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEArd8ro8164ykLYynBWxSiPBNUy1hLeh2S284vuYCbJwNC/naFBmcXORUFIsegfJpRxFKg3YsCbQUrHfZ6cfAc/xKUdoORUkF+8ixsVl4YzHg6vybxnRlaanBvS0eiR/wzxsVepqC/S3gd7YF3/Lca5sHNixNuqgxsd9iy9VEz7XMZ32mMxBqgTabR1KorBSufGMRADq/jauXpd2QRul+bih5uAL/Ilb2bZutcHUohnWi3UQnR10bO9MS1wr6c42VJBOHW6fZXvGjRvjd94AhNB7RTKvmRCucPCMvkgaDsr+z0cCjmpmptsdy119UpKmv4uCHalPbtHOWMYk2QVnqoQw==", "swapfree"=>"1.00 GiB", "swapfree_mb"=>1023.99609375, "swapsize"=>"1.00 GiB", "swapsize_mb"=>1023.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>430, "uptime"=>"0:07 hours"}, "timezone"=>"UTC", "uptime"=>"0:07 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>430, "uuid"=>"6C33275E-3132-4167-9318-9BDE31E82035", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'CentOS-6.6-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_CentOS-6.6-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_CentOS-6.6-64_spec.rb new file mode 100644 index 0000000..350fb8a --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_CentOS-6.6-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set CentOS-6.6-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"DA4CD203-2C23-4E21-B169-293D1749C38C"}}, "domain"=>"pdx.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"ext4,iso9660", "fqdn"=>"centos6a.pdx.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"centos6a", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ip6tables_version"=>"1.4.7", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe0f:d276", "ipaddress6_eth0"=>"fe80::a00:27ff:fe0f:d276", "ipaddress6_eth1"=>"fe80::a00:27ff:fe66:988a", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"10.20.1.88", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.7", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-504.8.1.el6.x86_64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "macaddress"=>"08:00:27:0f:d2:76", "macaddress_eth0"=>"08:00:27:0f:d2:76", "macaddress_eth1"=>"08:00:27:66:98:8a", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"992.00 MiB", "available_bytes"=>1040183296, "capacity"=>"0%", "total"=>"992.00 MiB", "total_bytes"=>1040183296, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"348.41 MiB", "available_bytes"=>365338624, "capacity"=>"28.95%", "total"=>"490.39 MiB", "total_bytes"=>514215936, "used"=>"141.98 MiB", "used_bytes"=>148877312}}, "memoryfree"=>"348.41 MiB", "memoryfree_mb"=>348.4140625, "memorysize"=>"490.39 MiB", "memorysize_mb"=>490.39453125, "mountpoints"=>{"/"=>{"available"=>"16.94 GiB", "available_bytes"=>18193268736, "capacity"=>"6.51%", "device"=>"/dev/mapper/VolGroup-lv_root", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"18.12 GiB", "size_bytes"=>19459338240, "used"=>"1.18 GiB", "used_bytes"=>1266069504}, "/boot"=>{"available"=>"448.35 MiB", "available_bytes"=>470125568, "capacity"=>"5.85%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"27.88 MiB", "used_bytes"=>29230080}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8555670, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"pdx.puppetlabs.demo", "fqdn"=>"centos6a.pdx.puppetlabs.demo", "hostname"=>"centos6a", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe0f:d276", "mac"=>"08:00:27:0f:d2:76", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"ip"=>"10.20.1.88", "ip6"=>"fe80::a00:27ff:fe66:988a", "mac"=>"08:00:27:66:98:8a", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe0f:d276", "mac"=>"08:00:27:0f:d2:76", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.6", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"6.6", "major"=>"6", "minor"=>"6"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/VolGroup-lv_root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"a29409f8-0b58-4271-a348-032caefec8b8"}, "/dev/mapper/VolGroup-lv_swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b30b464a-8ac9-492a-a1c5-2da75bb7488a"}, "/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"da946872-1406-4ac1-9a4d-f7ce5f7be47e"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>20949499904, "uuid"=>"nRdWPh-INkA-aHPs-TNtk-HjJG-SxBU-DdqI8a"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_razor_server_version"=>"package pe-razor-server is not installed", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"el-6-x86_64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 5dad11db93cde6e3b1d5ce5a5fe5ad02825037e8", "sha256"=>"SSHFP 2 2 576fe2b6a8412ada50cb776e6f1da5dd4bc301f2aa682be2ff82c70558c14745"}, "key"=>"AAAAB3NzaC1kc3MAAACBAJSFgQJi2VfgHnp2MQsV2wNpONevQuhi1Jb/nX0EjHtrAgc8MNRXLQTmjunh5q4+mjcYMHXDIx6F0Oc4XCnR5g6uQwBOGg70oXJmUkmwCw/mdgu3ppepOQJssBKnKFCR7QsbrBL+U1YmYmV8eGYDB76eXWRBOd9LewcGkjhHYbpzAAAAFQCShhFDlgHvmj6kcr6XRUuYPNziNwAAAIBBjLzEbwqoedlUKXRGuKc7nU71qWAkahN8rI4lU7d6PrVS7XziNX3OTCXbRCF3wT/dlYBU+grjmOIF4dbOrjBCHmmYVzlntXsefyR6XIbJw/H08L2LdDT6aye+MDWdYGK0PqgV6AZ5pWUzu7wS+qJduOaNMts5YrzqvlhiFDO8EAAAAIAJoqYk2bkNTPnjYi4qhIP3o+7Lhpxh5akAkjPMpM4tf/BedBqzKimvWhtDNVTcNCOZwJuSkHL4SSafvPCoxbKY4YhFWYykS/Vdle9ixNtH+wMU5d8DsSsvZpfa4lvj9FpzgfcM+NT1aYHis/pIRpBblPfHHnFBsxGKX66v6webHg=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 e1e2811771eb093d9b74333a111e089bc8e434ef", "sha256"=>"SSHFP 1 2 4513b7ba6b47b22319ea40fe9e0f12e9ac200b367b78508364a80a2a9b92409c"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA3Gn072MPvlL1R0RpTGod7BxiCvm4Wp6p8gRYJgEba9FLtYTWYhx18ueLnuFWKnK6WMpwe24732ZGGCsagjBkEo8DFJZABZbfSHxW1gsmU6smUM9o2wt9ZEeYJ036DqIkg4DzsBLc206NKStuKCTOINFSwBtHAWkZCeGdon8ssEoery//yZchbHBXQB1f312Re42W4eLNpWm0T93eEwRRMOpnLtNFrVa9kvHv71eQx2crvDG2xd6BfN0PkU0tx0TBzDS2xUqBg5m1MdNbarxWH1Km8JUEH40jl3YKgh5g0lrfEE36xIItPtW2mFawsMBpMK0iPerqs60or9SjM1LwXQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAJSFgQJi2VfgHnp2MQsV2wNpONevQuhi1Jb/nX0EjHtrAgc8MNRXLQTmjunh5q4+mjcYMHXDIx6F0Oc4XCnR5g6uQwBOGg70oXJmUkmwCw/mdgu3ppepOQJssBKnKFCR7QsbrBL+U1YmYmV8eGYDB76eXWRBOd9LewcGkjhHYbpzAAAAFQCShhFDlgHvmj6kcr6XRUuYPNziNwAAAIBBjLzEbwqoedlUKXRGuKc7nU71qWAkahN8rI4lU7d6PrVS7XziNX3OTCXbRCF3wT/dlYBU+grjmOIF4dbOrjBCHmmYVzlntXsefyR6XIbJw/H08L2LdDT6aye+MDWdYGK0PqgV6AZ5pWUzu7wS+qJduOaNMts5YrzqvlhiFDO8EAAAAIAJoqYk2bkNTPnjYi4qhIP3o+7Lhpxh5akAkjPMpM4tf/BedBqzKimvWhtDNVTcNCOZwJuSkHL4SSafvPCoxbKY4YhFWYykS/Vdle9ixNtH+wMU5d8DsSsvZpfa4lvj9FpzgfcM+NT1aYHis/pIRpBblPfHHnFBsxGKX66v6webHg==", "sshfp_dsa"=>"SSHFP 2 1 5dad11db93cde6e3b1d5ce5a5fe5ad02825037e8\nSSHFP 2 2 576fe2b6a8412ada50cb776e6f1da5dd4bc301f2aa682be2ff82c70558c14745", "sshfp_rsa"=>"SSHFP 1 1 e1e2811771eb093d9b74333a111e089bc8e434ef\nSSHFP 1 2 4513b7ba6b47b22319ea40fe9e0f12e9ac200b367b78508364a80a2a9b92409c", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA3Gn072MPvlL1R0RpTGod7BxiCvm4Wp6p8gRYJgEba9FLtYTWYhx18ueLnuFWKnK6WMpwe24732ZGGCsagjBkEo8DFJZABZbfSHxW1gsmU6smUM9o2wt9ZEeYJ036DqIkg4DzsBLc206NKStuKCTOINFSwBtHAWkZCeGdon8ssEoery//yZchbHBXQB1f312Re42W4eLNpWm0T93eEwRRMOpnLtNFrVa9kvHv71eQx2crvDG2xd6BfN0PkU0tx0TBzDS2xUqBg5m1MdNbarxWH1Km8JUEH40jl3YKgh5g0lrfEE36xIItPtW2mFawsMBpMK0iPerqs60or9SjM1LwXQ==", "staging_http_get"=>"curl", "swapfree"=>"992.00 MiB", "swapfree_mb"=>991.99609375, "swapsize"=>"992.00 MiB", "swapsize_mb"=>991.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>352, "uptime"=>"0:05 hours"}, "timezone"=>"UTC", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>352, "uuid"=>"DA4CD203-2C23-4E21-B169-293D1749C38C", "virtual"=>"virtualbox", "clientcert"=>"centos6a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'CentOS-6.6-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_CentOS-7.0-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_CentOS-7.0-64_spec.rb new file mode 100644 index 0000000..03011e2 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_CentOS-7.0-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set CentOS-7.0-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"sydney", "dhcp_servers"=>{"enp0s3"=>"10.0.2.2", "enp0s8"=>"192.168.56.100", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"9D7BE471-F3DA-47EE-B023-F659129270EF"}}, "domain"=>"syd.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"xfs", "fqdn"=>"centos7b.syd.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"centos7b", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"enp0s3,enp0s8,lo", "ip6tables_version"=>"1.4.21", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe39:183c", "ipaddress6_enp0s3"=>"fe80::a00:27ff:fe39:183c", "ipaddress6_enp0s8"=>"fe80::a00:27ff:fe39:832c", "ipaddress6_lo"=>"::1", "ipaddress_enp0s3"=>"10.0.2.15", "ipaddress_enp0s8"=>"10.20.1.92", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.21", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.10", "kernelrelease"=>"3.10.0-123.el7.x86_64", "kernelversion"=>"3.10.0", "load_averages"=>{"15m"=>0.05, "1m"=>0.26, "5m"=>0.12}, "macaddress"=>"08:00:27:39:18:3c", "macaddress_enp0s3"=>"08:00:27:39:18:3c", "macaddress_enp0s8"=>"08:00:27:39:83:2c", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"1.03 GiB", "available_bytes"=>1107292160, "capacity"=>"0%", "total"=>"1.03 GiB", "total_bytes"=>1107292160, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"297.76 MiB", "available_bytes"=>312225792, "capacity"=>"39.28%", "total"=>"490.41 MiB", "total_bytes"=>514228224, "used"=>"192.64 MiB", "used_bytes"=>202002432}}, "memoryfree"=>"297.76 MiB", "memoryfree_mb"=>297.76171875, "memorysize"=>"490.41 MiB", "memorysize_mb"=>490.40625, "mountpoints"=>{"/"=>{"available"=>"17.30 GiB", "available_bytes"=>18574749696, "capacity"=>"6.32%", "device"=>"/dev/mapper/centos-root", "filesystem"=>"xfs", "options"=>["rw", "relatime", "attr2", "inode64", "noquota"], "size"=>"18.47 GiB", "size_bytes"=>19828572160, "used"=>"1.17 GiB", "used_bytes"=>1253822464}, "/boot"=>{"available"=>"393.11 MiB", "available_bytes"=>412209152, "capacity"=>"20.85%", "device"=>"/dev/sda1", "filesystem"=>"xfs", "options"=>["rw", "relatime", "attr2", "inode64", "noquota"], "size"=>"496.67 MiB", "size_bytes"=>520794112, "used"=>"103.55 MiB", "used_bytes"=>108584960}}, "mtu_enp0s3"=>1500, "mtu_enp0s8"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8563388, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s3"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s8"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_enp0s3"=>"255.255.255.0", "netmask_enp0s8"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_enp0s3"=>"fe80::", "network6_enp0s8"=>"fe80::", "network6_lo"=>"::1", "network_enp0s3"=>"10.0.2.0", "network_enp0s8"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"syd.puppetlabs.demo", "fqdn"=>"centos7b.syd.puppetlabs.demo", "hostname"=>"centos7b", "interfaces"=>{"enp0s3"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe39:183c", "mac"=>"08:00:27:39:18:3c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "enp0s8"=>{"dhcp"=>"192.168.56.100", "ip"=>"10.20.1.92", "ip6"=>"fe80::a00:27ff:fe39:832c", "mac"=>"08:00:27:39:83:2c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe39:183c", "mac"=>"08:00:27:39:18:3c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.0.1406", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"7.0.1406", "major"=>"7", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/centos-root"=>{"filesystem"=>"xfs", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"db651e5f-a2c2-4236-9570-6226f63e1fcd"}, "/dev/mapper/centos-swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"ff4ec16c-28c0-4715-846d-11e7c9b4e53b"}, "/dev/sda1"=>{"filesystem"=>"xfs", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"39ce4ad1-4e9d-49a4-bce0-8a30b459490a"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>20949499904, "uuid"=>"pg7zVv-M3hI-zpjY-eYlZ-06aD-ZRO2-J30GLd"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_razor_server_version"=>"package pe-razor-server is not installed", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"el-7-x86_64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 91edfdf5e7e098f4392606865c017dabc26804bb", "sha256"=>"SSHFP 3 2 f00c65a1884bfec52db11de89254f0bfd46baf9e759546654c94371a05ee0dba"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcSUcHQOfBDZElr6PBmxc/4ZDaIhsugXM7OE2SQj35iOMCN/I3XfINMo8SvBIQ6CsBqPnzgbKRBs7e1FPFnsT4="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 f25e9ad2faddbe75263cfee4fa97dc965bc1d581", "sha256"=>"SSHFP 1 2 0173e386031a134e4cbfb7f6971788761a5aa3d9e39dafcf163f003de2537199"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMo35gwbuqQvRq1gy6L8vddeyMNBYr5WPVcftMKSJR1jmwzxcZ+h0AEb3KPfoMHkqe9Xy+3oN981qe5ZCE780HO884AaXzXry9zdWQjGysrI+zHQbqbpOkYAGsVbJiQ7VnH7lMVZo2jCbABj4OdsbeCOeP3oDXTNCTaWWdQChzqvYgNBvb0mg/na1l0naQ1nsJYD85O8ZRQ9U/JOADMaOjummfOb2z7MgskZ9abm5eFCCQl+wUUNXKqQx+uyVM4lyyoTHpW3M2IV0P9wxhWJF6eovwyREGuMgJCs6kbHCFty7HtAYbzziabgQav8pMe68aBqjshbpU6ll/+aXWhD1"}}, "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcSUcHQOfBDZElr6PBmxc/4ZDaIhsugXM7OE2SQj35iOMCN/I3XfINMo8SvBIQ6CsBqPnzgbKRBs7e1FPFnsT4=", "sshfp_ecdsa"=>"SSHFP 3 1 91edfdf5e7e098f4392606865c017dabc26804bb\nSSHFP 3 2 f00c65a1884bfec52db11de89254f0bfd46baf9e759546654c94371a05ee0dba", "sshfp_rsa"=>"SSHFP 1 1 f25e9ad2faddbe75263cfee4fa97dc965bc1d581\nSSHFP 1 2 0173e386031a134e4cbfb7f6971788761a5aa3d9e39dafcf163f003de2537199", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMo35gwbuqQvRq1gy6L8vddeyMNBYr5WPVcftMKSJR1jmwzxcZ+h0AEb3KPfoMHkqe9Xy+3oN981qe5ZCE780HO884AaXzXry9zdWQjGysrI+zHQbqbpOkYAGsVbJiQ7VnH7lMVZo2jCbABj4OdsbeCOeP3oDXTNCTaWWdQChzqvYgNBvb0mg/na1l0naQ1nsJYD85O8ZRQ9U/JOADMaOjummfOb2z7MgskZ9abm5eFCCQl+wUUNXKqQx+uyVM4lyyoTHpW3M2IV0P9wxhWJF6eovwyREGuMgJCs6kbHCFty7HtAYbzziabgQav8pMe68aBqjshbpU6ll/+aXWhD1", "staging_http_get"=>"curl", "swapfree"=>"1.03 GiB", "swapfree_mb"=>1055.99609375, "swapsize"=>"1.03 GiB", "swapsize_mb"=>1055.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>78, "uptime"=>"0:01 hours"}, "timezone"=>"UTC", "uptime"=>"0:01 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>78, "uuid"=>"9D7BE471-F3DA-47EE-B023-F659129270EF", "virtual"=>"virtualbox", "clientcert"=>"centos7b.syd.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'CentOS-7.0-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Debian-6.0.10-32_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Debian-6.0.10-32_spec.rb new file mode 100644 index 0000000..1dad79c --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Debian-6.0.10-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Debian-6.0.10-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"6E39B0C5-08BD-4595-AC3D-576DAA677DED"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fead:dc1c", "ipaddress6_eth0"=>"fe80::a00:27ff:fead:dc1c", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-5-686", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"squeeze", "lsbdistdescription"=>"Debian GNU/Linux 6.0.10 (squeeze)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"6.0.10", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"0", "macaddress"=>"08:00:27:ad:dc:1c", "macaddress_eth0"=>"08:00:27:ad:dc:1c", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"871.99 MiB", "available_bytes"=>914350080, "capacity"=>"0%", "total"=>"871.99 MiB", "total_bytes"=>914350080, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"434.46 MiB", "available_bytes"=>455565312, "capacity"=>"13.56%", "total"=>"502.63 MiB", "total_bytes"=>527040512, "used"=>"68.16 MiB", "used_bytes"=>71475200}}, "memoryfree"=>"434.46 MiB", "memoryfree_mb"=>434.4609375, "memorysize"=>"502.63 MiB", "memorysize_mb"=>502.625, "mountpoints"=>{"/"=>{"available"=>"1.69 GiB", "available_bytes"=>1819041792, "capacity"=>"35.07%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "errors=remount-ro"], "size"=>"2.61 GiB", "size_bytes"=>-1493307392, "used"=>"937.10 MiB", "used_bytes"=>982618112}, "/boot"=>{"available"=>"213.27 MiB", "available_bytes"=>223632384, "capacity"=>"6.35%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"14.45 MiB", "used_bytes"=>15155200}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fead:dc1c", "mac"=>"08:00:27:ad:dc:1c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fead:dc1c", "mac"=>"08:00:27:ad:dc:1c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.0.10", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"squeeze", "description"=>"Debian GNU/Linux 6.0.10 (squeeze)", "id"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"092d5625-eb03-443c-953f-006bec7d5476"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"f9e1cf7c-ab54-4949-8e55-290adc8d853f"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"2c798378-1738-426f-a847-c929a507fc73"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"cG2Syv-bT1d-2TyA-Wqgz-33I2-RnTz-jA2LxS"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 3e0f92fe3eb7ee9737cead81e7465b5903d6ce57", "sha256"=>"SSHFP 2 2 c67d0777eb694d679a1d24335e76dd0475ca92077ff8d02c91f26a4b9cf56b09"}, "key"=>"AAAAB3NzaC1kc3MAAACBAInFvAyGI1vy23JgBDC4/AZeO2jhNRqlX0kdL9utKPaMgrIzIiEN0aqdlSJY4uTFcYAdfYxMuIkYaMh0FM3EMDB0ZL/1k9W2dCVFYpSHgIa/zJwSEqY7sFHdXjRsD3mjOzEZwpjV+dFq8sHoIouIhMcTC4nejrDRno994JoJSyP3AAAAFQCjjYeNB9geUQHIrcE/nY90aiI9pQAAAIBDoY90WppP0db2EyCgnAsl9J70YQg6bCPHHxl61ktEwStzGu7eEZxXVBDCPtFDYKL2gtmIlF0lAbt5KoC9NnVCb0n9vV4qY+xdwxWAjQI3CtrOfEZTaSlsn7lbgcnjXCODnALL92/nS6ahcVRt1KfmWTjCYnP1We+9QBSz/mRD8wAAAIBT+9TbXOqhlfNP/J3X3rEzZ1HsYh7DoLGbh3krSO0vpdC0crj6vx6NTDfJhwye6axWAgQOXF8g87FFTFERgmxEHhZE/QH7YxueNllJxKPtC77uiDBfaHsGtpIhISirr1fPSRTOVeVN3aCqHMualyCCH2xaYC8yGYwvL8W+mgqG6g=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1795dbe0b42f87f01a7a9f822b8ceb40bd6420b", "sha256"=>"SSHFP 1 2 7a4b0b01598345e44894393168d2e803b2dfbae8795a844b02e7ac16a999417a"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCyhapWpsFVIKdKwjNSiqZQYx6m5w7k3+bsmaNs7YU6qg+HrmBXBR/HwckXTPDMAHPVmmDYwi80N89Gp8NPZvnYJnhZwyQPmMUfORWO0aW8SE/TQKgbpbatZOzKb7pYtLT7g7ZbaWBPJBEqU0aCKAl3AW8FX8Hfja7+GD4DBLUi+rPyGPCr+uxa//NL9PE5nO1mQGLsn0Sy1Z7ChECrFVL7mXZ4xVSfTM3v0HI/SNUuq8qCpw8ysZFmUEbRzVEwTFm5zff8IaTZPQi7e/RofgELzn4+cuXiYHYKyiZDSJVDoHnc61OGmPWVxRHzcxNZDJS4dnc1mO48wyKpaM9xZF7B"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAInFvAyGI1vy23JgBDC4/AZeO2jhNRqlX0kdL9utKPaMgrIzIiEN0aqdlSJY4uTFcYAdfYxMuIkYaMh0FM3EMDB0ZL/1k9W2dCVFYpSHgIa/zJwSEqY7sFHdXjRsD3mjOzEZwpjV+dFq8sHoIouIhMcTC4nejrDRno994JoJSyP3AAAAFQCjjYeNB9geUQHIrcE/nY90aiI9pQAAAIBDoY90WppP0db2EyCgnAsl9J70YQg6bCPHHxl61ktEwStzGu7eEZxXVBDCPtFDYKL2gtmIlF0lAbt5KoC9NnVCb0n9vV4qY+xdwxWAjQI3CtrOfEZTaSlsn7lbgcnjXCODnALL92/nS6ahcVRt1KfmWTjCYnP1We+9QBSz/mRD8wAAAIBT+9TbXOqhlfNP/J3X3rEzZ1HsYh7DoLGbh3krSO0vpdC0crj6vx6NTDfJhwye6axWAgQOXF8g87FFTFERgmxEHhZE/QH7YxueNllJxKPtC77uiDBfaHsGtpIhISirr1fPSRTOVeVN3aCqHMualyCCH2xaYC8yGYwvL8W+mgqG6g==", "sshfp_dsa"=>"SSHFP 2 1 3e0f92fe3eb7ee9737cead81e7465b5903d6ce57\nSSHFP 2 2 c67d0777eb694d679a1d24335e76dd0475ca92077ff8d02c91f26a4b9cf56b09", "sshfp_rsa"=>"SSHFP 1 1 d1795dbe0b42f87f01a7a9f822b8ceb40bd6420b\nSSHFP 1 2 7a4b0b01598345e44894393168d2e803b2dfbae8795a844b02e7ac16a999417a", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCyhapWpsFVIKdKwjNSiqZQYx6m5w7k3+bsmaNs7YU6qg+HrmBXBR/HwckXTPDMAHPVmmDYwi80N89Gp8NPZvnYJnhZwyQPmMUfORWO0aW8SE/TQKgbpbatZOzKb7pYtLT7g7ZbaWBPJBEqU0aCKAl3AW8FX8Hfja7+GD4DBLUi+rPyGPCr+uxa//NL9PE5nO1mQGLsn0Sy1Z7ChECrFVL7mXZ4xVSfTM3v0HI/SNUuq8qCpw8ysZFmUEbRzVEwTFm5zff8IaTZPQi7e/RofgELzn4+cuXiYHYKyiZDSJVDoHnc61OGmPWVxRHzcxNZDJS4dnc1mO48wyKpaM9xZF7B", "swapfree"=>"871.99 MiB", "swapfree_mb"=>871.9921875, "swapsize"=>"871.99 MiB", "swapsize_mb"=>871.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1441, "uptime"=>"0:24 hours"}, "timezone"=>"PST", "uptime"=>"0:24 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1441, "uuid"=>"6E39B0C5-08BD-4595-AC3D-576DAA677DED", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Debian-6.0.10-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Debian-6.0.10-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Debian-6.0.10-64_spec.rb new file mode 100644 index 0000000..e29b6ff --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Debian-6.0.10-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Debian-6.0.10-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"8AFC52E0-2A7C-42BA-BAFA-62B8413FB7C2"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe62:fa69", "ipaddress6_eth0"=>"fe80::a00:27ff:fe62:fa69", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-5-amd64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"squeeze", "lsbdistdescription"=>"Debian GNU/Linux 6.0.10 (squeeze)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"6.0.10", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"0", "macaddress"=>"08:00:27:62:fa:69", "macaddress_eth0"=>"08:00:27:62:fa:69", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"871.99 MiB", "available_bytes"=>914350080, "capacity"=>"0%", "total"=>"871.99 MiB", "total_bytes"=>914350080, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"382.43 MiB", "available_bytes"=>401010688, "capacity"=>"23.04%", "total"=>"496.90 MiB", "total_bytes"=>521035776, "used"=>"114.46 MiB", "used_bytes"=>120025088}}, "memoryfree"=>"382.43 MiB", "memoryfree_mb"=>382.43359375, "memorysize"=>"496.90 MiB", "memorysize_mb"=>496.8984375, "mountpoints"=>{"/"=>{"available"=>"17.65 GiB", "available_bytes"=>18949697536, "capacity"=>"5.16%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "errors=remount-ro"], "size"=>"18.61 GiB", "size_bytes"=>19981529088, "used"=>"984.03 MiB", "used_bytes"=>1031831552}, "/boot"=>{"available"=>"212.24 MiB", "available_bytes"=>222552064, "capacity"=>"6.80%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"15.48 MiB", "used_bytes"=>16235520}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe62:fa69", "mac"=>"08:00:27:62:fa:69", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe62:fa69", "mac"=>"08:00:27:62:fa:69", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.0.10", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"squeeze", "description"=>"Debian GNU/Linux 6.0.10 (squeeze)", "id"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"d2763d16-5203-4625-8733-a6f2ecc94f5a"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b5661448-0339-4ba3-8593-21cc6a049d33"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"415531d6-6955-433f-921e-8f266ab56649"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"vGb2LM-M1SP-IynO-OZJV-sYKl-Pcfo-fAFbiz"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 c9683f8ef6dc226d83a014be6349f496b65d329f", "sha256"=>"SSHFP 2 2 23aa109e68ed1d1b6766259c72d5168a93df3b0818fc975727b203aa6c4eb6ad"}, "key"=>"AAAAB3NzaC1kc3MAAACBALw6MnSlMUiVwDHFe5OUWDLBt0OooRutGu9pH1L3Ir6oZRNCbeFf3qoi+WWBU0cradbi0H1vlwtApdxVwymseyn9OqzfSt8urWkZS0o87vrJ1Hrz8RJe/B0TrWqgI1lm8h3zVBYsR7OXVFlSQC4ljK/3yZXfkIWEDBn8yXAsVMv5AAAAFQDuMctG71BY6fTAWG754jypFIJ/QwAAAIEAkqkhJdtDwZKty47LzSKIPne0t4TfbY8zHRN6atEtEFuOjgSBJoeYY7ILJL8zK8G7YO6nNdY0gVJv5x/R2ac1mfn06cq7xR2I/rD+BICmRt69kyFNi9newk2C7cLG8Mi6JvIHMduU8DegYeqz0kjh8WPUZWPakY5nqbYob6NE6vMAAACBAKh42Jooiu2+P1yrHjuYmjB9Wq8CoDSUwyNslY47HcEvzCuMcEZ8sVutpP0gjvO72bvFUPDzLP4HwqzphLVbGvBCc2N9RPTgJzijnHryB/LFXWS6evePwo4LMLhUMgzPOyIyxXxhG4bTTLR2jBmQe75EDqz3ibKJgb3CKz+hf6SZ"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 8e4b010ef208a5d1ecbbef4999ddb1a20ec0b6d2", "sha256"=>"SSHFP 1 2 1819579b1d40afe00107ef9d153e916f443fbddbefdf7f77583e84f32a3503b3"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCx/7sL2SPCsd/gcIPPvJhhOwYZdZSboDWqbIyUzzothrO7aKGHf7bxRdn+zu4vWUwBMoueGB1lf3xnDbrbDMxdh5sTpKYHWGKvBdgat+sWlEH3YiRd9vkji28R0+GEWdvmRTKfUxGEoJ7/NVZ0RroCMKlWO7tsDIUPhWn2NDZ3z4V3FAv4WvaE0YF1g0+71kF263+9IJCoxx6ztWBQfdJvEdu/k9cvCIJ6IMxscZ48vAqLRali6QCKRNHUqZFOLattqKFvGHdU/WvX+xpEj2QLTD+Tuat2uImblM4wge44oS8nlhN+reO1Cjafjf6lh3cCfUWphndK3Wvv7a18l2av"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALw6MnSlMUiVwDHFe5OUWDLBt0OooRutGu9pH1L3Ir6oZRNCbeFf3qoi+WWBU0cradbi0H1vlwtApdxVwymseyn9OqzfSt8urWkZS0o87vrJ1Hrz8RJe/B0TrWqgI1lm8h3zVBYsR7OXVFlSQC4ljK/3yZXfkIWEDBn8yXAsVMv5AAAAFQDuMctG71BY6fTAWG754jypFIJ/QwAAAIEAkqkhJdtDwZKty47LzSKIPne0t4TfbY8zHRN6atEtEFuOjgSBJoeYY7ILJL8zK8G7YO6nNdY0gVJv5x/R2ac1mfn06cq7xR2I/rD+BICmRt69kyFNi9newk2C7cLG8Mi6JvIHMduU8DegYeqz0kjh8WPUZWPakY5nqbYob6NE6vMAAACBAKh42Jooiu2+P1yrHjuYmjB9Wq8CoDSUwyNslY47HcEvzCuMcEZ8sVutpP0gjvO72bvFUPDzLP4HwqzphLVbGvBCc2N9RPTgJzijnHryB/LFXWS6evePwo4LMLhUMgzPOyIyxXxhG4bTTLR2jBmQe75EDqz3ibKJgb3CKz+hf6SZ", "sshfp_dsa"=>"SSHFP 2 1 c9683f8ef6dc226d83a014be6349f496b65d329f\nSSHFP 2 2 23aa109e68ed1d1b6766259c72d5168a93df3b0818fc975727b203aa6c4eb6ad", "sshfp_rsa"=>"SSHFP 1 1 8e4b010ef208a5d1ecbbef4999ddb1a20ec0b6d2\nSSHFP 1 2 1819579b1d40afe00107ef9d153e916f443fbddbefdf7f77583e84f32a3503b3", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCx/7sL2SPCsd/gcIPPvJhhOwYZdZSboDWqbIyUzzothrO7aKGHf7bxRdn+zu4vWUwBMoueGB1lf3xnDbrbDMxdh5sTpKYHWGKvBdgat+sWlEH3YiRd9vkji28R0+GEWdvmRTKfUxGEoJ7/NVZ0RroCMKlWO7tsDIUPhWn2NDZ3z4V3FAv4WvaE0YF1g0+71kF263+9IJCoxx6ztWBQfdJvEdu/k9cvCIJ6IMxscZ48vAqLRali6QCKRNHUqZFOLattqKFvGHdU/WvX+xpEj2QLTD+Tuat2uImblM4wge44oS8nlhN+reO1Cjafjf6lh3cCfUWphndK3Wvv7a18l2av", "swapfree"=>"871.99 MiB", "swapfree_mb"=>871.9921875, "swapsize"=>"871.99 MiB", "swapsize_mb"=>871.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1211, "uptime"=>"0:20 hours"}, "timezone"=>"PST", "uptime"=>"0:20 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1211, "uuid"=>"8AFC52E0-2A7C-42BA-BAFA-62B8413FB7C2", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Debian-6.0.10-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Debian-7.8-32_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Debian-7.8-32_spec.rb new file mode 100644 index 0000000..f3166f3 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Debian-7.8-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Debian-7.8-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"75AFEC9A-DECD-40F4-B25F-A737EE8BA7CA"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe18:59a5", "ipaddress6_eth0"=>"fe80::a00:27ff:fe18:59a5", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.2", "kernelrelease"=>"3.2.0-4-686-pae", "kernelversion"=>"3.2.0", "load_averages"=>{"15m"=>0.03, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"wheezy", "lsbdistdescription"=>"Debian GNU/Linux 7.8 (wheezy)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"7.8", "lsbmajdistrelease"=>"7", "lsbminordistrelease"=>"8", "macaddress"=>"08:00:27:18:59:a5", "macaddress_eth0"=>"08:00:27:18:59:a5", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"872.00 MiB", "available_bytes"=>914354176, "capacity"=>"0%", "total"=>"872.00 MiB", "total_bytes"=>914354176, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"432.02 MiB", "available_bytes"=>453001216, "capacity"=>"14.00%", "total"=>"502.32 MiB", "total_bytes"=>526725120, "used"=>"70.31 MiB", "used_bytes"=>73723904}}, "memoryfree"=>"432.02 MiB", "memoryfree_mb"=>432.015625, "memorysize"=>"502.32 MiB", "memorysize_mb"=>502.32421875, "mountpoints"=>{"/"=>{"available"=>"1.52 GiB", "available_bytes"=>1633996800, "capacity"=>"41.68%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=remount-ro", "user_xattr", "acl", "barrier=1", "data=ordered"], "size"=>"2.61 GiB", "size_bytes"=>-1493307392, "used"=>"1.09 GiB", "used_bytes"=>1167663104}, "/boot"=>{"available"=>"211.24 MiB", "available_bytes"=>221499392, "capacity"=>"7.24%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw", "relatime", "errors=continue"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"16.49 MiB", "used_bytes"=>17288192}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe18:59a5", "mac"=>"08:00:27:18:59:a5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe18:59a5", "mac"=>"08:00:27:18:59:a5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.8", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"wheezy", "description"=>"Debian GNU/Linux 7.8 (wheezy)", "id"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"c87cb2c9-ffb8-48d1-bc31-024a57d3e44e"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"864df30a-fc50-4a93-8cfd-4624251c1589"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"b8ab8500-a238-4554-8d11-9c194ebba70c"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"NvdPwA-esP3-xUuv-n9OR-Ep7r-kQAr-qyUAzr"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 ffc65c9d4e1956519935d902798fc58cbafde1fa", "sha256"=>"SSHFP 2 2 3a59447b36760803f33fdda5c1f58681b271a8a5e6fb4997ee7241cb29a59906"}, "key"=>"AAAAB3NzaC1kc3MAAACBANJna2zK1ufiBINsA3RgaBhVXUFlya5rxD6A2KkeYr1yWcDECATGcsSh6KDEC4asOEtoyIogsZx/5ygefXeR+0R1XYQghrFsZWSwIdVV+jrt6IWddub3KXp8UvfWYUUXKAm0fiGXzTJ7sodap1ep/FBM0cyyaWYXvQCgiBr/T+lLAAAAFQCGGv9dGnuyKCMssoWebZ7PRd41cQAAAIEAsmFTg56Q5KwsFyYrtUR+fZlL983DI4m+/PPWI/pZ4sgvRjA7NWfr+gfJrSObH88ZAccu7edbVSfOyRVcOqCjBYU3nybG9vuelacqm4qdTnZbUWlMZJ1clJ4GlRVPO9zEhuODBleyxQW13XiwgNe9h9vOXlu/xu8aogaIyLfXGZgAAACAMe0yNEoADrHDE8rXr6nvytfibxofPnCtZj7L54OY7HuaBv1I0OqdJVjLw7SjJQ3vIiiR2pMMFVioROgVWUokdskTT/M3RvEcoNG55iYFVe8p43Z1HY4NNLgHIoPZ4C3EDDxiwCxiFK0kmhbg9boyV0Dyra/rbEAyZH6xNZYBR/c="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 5222b070970562793c4df0db8916f7828334bad4", "sha256"=>"SSHFP 3 2 920d4e5ef5dc8064271df26a5cda37211772a9133537d4520addef0e2dc0a480"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOkAfihhbn6Ht/z9rqOPlshRbi8MFhg12kUUf9PBVvKOBA3wgmHzOlcwSdhpO9olPla92uplSlntiE+bqR7eZhA="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 5bd78bebc725f3afc34cff576f09eaa052ef6c3d", "sha256"=>"SSHFP 1 2 c9e8b904a928e59d86e90e84d972b95bc3eabbfcf465ce0bb9569547ac5c2aa6"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQD4eO7mc/0jHFMbrPCrT6ktvNPzIqceRoIo6Kf/E845UlOO0eX425jMKVLqmnQCorZnN168LyyRfBoKXCmC/EEe18BlTcosCBseh/RytFcOpaUcX5etnmaqf8yBg4Hcp2zkRQx4HsHJMK5/52Dha7ZU7FvgJBMfCJULaEL9t+eRp1bOLN7GnFsMkXAaLmUqI3d6cVI8rc10ocQMu1nhzzNX4FDjoSvRH/AKGTzcIm8LBXUAR3v1ubFf+8Qc8vYF/sGcyJAJ0Bhcmg9/KH9NQMT01u0cgCOsxzBXu56CF5zeKERrbi8k6OJzz0t+rT8/7mwJOgKx4QhHt69jqt4KVeJv"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBANJna2zK1ufiBINsA3RgaBhVXUFlya5rxD6A2KkeYr1yWcDECATGcsSh6KDEC4asOEtoyIogsZx/5ygefXeR+0R1XYQghrFsZWSwIdVV+jrt6IWddub3KXp8UvfWYUUXKAm0fiGXzTJ7sodap1ep/FBM0cyyaWYXvQCgiBr/T+lLAAAAFQCGGv9dGnuyKCMssoWebZ7PRd41cQAAAIEAsmFTg56Q5KwsFyYrtUR+fZlL983DI4m+/PPWI/pZ4sgvRjA7NWfr+gfJrSObH88ZAccu7edbVSfOyRVcOqCjBYU3nybG9vuelacqm4qdTnZbUWlMZJ1clJ4GlRVPO9zEhuODBleyxQW13XiwgNe9h9vOXlu/xu8aogaIyLfXGZgAAACAMe0yNEoADrHDE8rXr6nvytfibxofPnCtZj7L54OY7HuaBv1I0OqdJVjLw7SjJQ3vIiiR2pMMFVioROgVWUokdskTT/M3RvEcoNG55iYFVe8p43Z1HY4NNLgHIoPZ4C3EDDxiwCxiFK0kmhbg9boyV0Dyra/rbEAyZH6xNZYBR/c=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOkAfihhbn6Ht/z9rqOPlshRbi8MFhg12kUUf9PBVvKOBA3wgmHzOlcwSdhpO9olPla92uplSlntiE+bqR7eZhA=", "sshfp_dsa"=>"SSHFP 2 1 ffc65c9d4e1956519935d902798fc58cbafde1fa\nSSHFP 2 2 3a59447b36760803f33fdda5c1f58681b271a8a5e6fb4997ee7241cb29a59906", "sshfp_ecdsa"=>"SSHFP 3 1 5222b070970562793c4df0db8916f7828334bad4\nSSHFP 3 2 920d4e5ef5dc8064271df26a5cda37211772a9133537d4520addef0e2dc0a480", "sshfp_rsa"=>"SSHFP 1 1 5bd78bebc725f3afc34cff576f09eaa052ef6c3d\nSSHFP 1 2 c9e8b904a928e59d86e90e84d972b95bc3eabbfcf465ce0bb9569547ac5c2aa6", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQD4eO7mc/0jHFMbrPCrT6ktvNPzIqceRoIo6Kf/E845UlOO0eX425jMKVLqmnQCorZnN168LyyRfBoKXCmC/EEe18BlTcosCBseh/RytFcOpaUcX5etnmaqf8yBg4Hcp2zkRQx4HsHJMK5/52Dha7ZU7FvgJBMfCJULaEL9t+eRp1bOLN7GnFsMkXAaLmUqI3d6cVI8rc10ocQMu1nhzzNX4FDjoSvRH/AKGTzcIm8LBXUAR3v1ubFf+8Qc8vYF/sGcyJAJ0Bhcmg9/KH9NQMT01u0cgCOsxzBXu56CF5zeKERrbi8k6OJzz0t+rT8/7mwJOgKx4QhHt69jqt4KVeJv", "swapfree"=>"872.00 MiB", "swapfree_mb"=>871.99609375, "swapsize"=>"872.00 MiB", "swapsize_mb"=>871.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>800, "uptime"=>"0:13 hours"}, "timezone"=>"PST", "uptime"=>"0:13 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>800, "uuid"=>"75AFEC9A-DECD-40F4-B25F-A737EE8BA7CA", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Debian-7.8-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Debian-7.8-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Debian-7.8-64_spec.rb new file mode 100644 index 0000000..202fe1d --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Debian-7.8-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Debian-7.8-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"117385F3-E367-4C81-BEE6-78384BAAA1DB"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe83:ad56", "ipaddress6_eth0"=>"fe80::a00:27ff:fe83:ad56", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.2", "kernelrelease"=>"3.2.0-4-amd64", "kernelversion"=>"3.2.0", "load_averages"=>{"15m"=>0.01, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"wheezy", "lsbdistdescription"=>"Debian GNU/Linux 7.8 (wheezy)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"7.8", "lsbmajdistrelease"=>"7", "lsbminordistrelease"=>"8", "macaddress"=>"08:00:27:83:ad:56", "macaddress_eth0"=>"08:00:27:83:ad:56", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"872.00 MiB", "available_bytes"=>914354176, "capacity"=>"0%", "total"=>"872.00 MiB", "total_bytes"=>914354176, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"382.02 MiB", "available_bytes"=>400576512, "capacity"=>"23.13%", "total"=>"496.96 MiB", "total_bytes"=>521101312, "used"=>"114.94 MiB", "used_bytes"=>120524800}}, "memoryfree"=>"382.02 MiB", "memoryfree_mb"=>382.01953125, "memorysize"=>"496.96 MiB", "memorysize_mb"=>496.9609375, "mountpoints"=>{"/"=>{"available"=>"17.49 GiB", "available_bytes"=>18781380608, "capacity"=>"6.01%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=remount-ro", "user_xattr", "acl", "barrier=1", "data=ordered"], "size"=>"18.61 GiB", "size_bytes"=>19981529088, "used"=>"1.12 GiB", "used_bytes"=>1200148480}, "/boot"=>{"available"=>"210.36 MiB", "available_bytes"=>220575744, "capacity"=>"7.63%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw", "relatime", "errors=continue"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"17.37 MiB", "used_bytes"=>18211840}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe83:ad56", "mac"=>"08:00:27:83:ad:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe83:ad56", "mac"=>"08:00:27:83:ad:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.8", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"wheezy", "description"=>"Debian GNU/Linux 7.8 (wheezy)", "id"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"7b853135-fb91-48ff-a25c-8d34ada8d549"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"486756ce-bdd1-45f4-864d-e4b6fce59b9d"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"8aa50802-2811-43ec-9686-a30f6a1c3ade"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"eGBBBU-DZw3-wy0f-OMxw-Sf5d-jDyA-ctqcpx"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 36d929686c60f981438c3e708f76eaa8aea811ac", "sha256"=>"SSHFP 2 2 f509f25d24c474bf0f2b0fae387b1c798174632af84f7e7b064ead1d1e23b144"}, "key"=>"AAAAB3NzaC1kc3MAAACBAKo52UJRnjkvuOvraymZ2bDiTUEUexIZ50eR2hx47JpOCUW0OMFH443axvl4TeCpPwqTbf0MH3RdkdSqpGOSAAcBmDfOyI5o9dgzWwSIiplNTxO29tUB9YinkduLEe4pXL5FwZ20owYnvcbrlc8t+LNl8Vku3zWWMrng6mf620MVAAAAFQC5KtOLXLxKD3hk3ATXQbnli4wMRwAAAIAy3bLl4X5yk+WYssTadam8ScUdvzVBCXsrfK9o8HNHfdHCAQqYRYYlC7muDATZxhyw72IhZsFzw/Wswr+5K35hElvrH8j3pFXafe+5dp18CP3V+vXTAzVBiiOnA+AG1tvudBRsrh7bhD9oq1LnXqijLRiI9nD0Faem4uGcT7/jqgAAAIBudV2Q2VYl/N+pRv4/JTgsNLtNz3X12dMjeNXwbpM9LJZUVZDq/KsT1vdDTYOy42g/v14ucRU50QyyAxx78prRgyTIfyKFDEiff9i5uok0c/YN0t2w9ayYkYl6xBWVj+q2SiUM6WdqJdb7sltOLGwsjkroqAV0xdBpbiN6ZWvzKA=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 263f3632f018d8535aaf8374ff4e8bdfc2eb118a", "sha256"=>"SSHFP 3 2 f14b4e61f1569a8181800a082ce91452ce352122bffe4e39314888b280f598a6"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEspGa8fuYvtfy2pnBhKV/d/xfmUmvAVUhCJLOlwRURmszRQBW/+GwvhPIT1avptddqTUF2HeA1XKLkbabnxoHI="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3f543127df57aceb9be2259918ff9115e507be37", "sha256"=>"SSHFP 1 2 90114d6c22d6a759b85f4df1316c567828da41411ae36e8eb09e480bf3cd8ac3"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC8R/CbG0zr75BfoeoCv0GuLcxEIf8Yp5+s2OJKrYRqRmfD9gM6f4J3lVGB/+i5WRiQqJ61Mogstd4CSFmIUhq+opARvDQGxIz1mgV4aHAZDIAGYZ9b1nwS//JWb7nW5mMQqOW3fq59XWxssWjkW6kjJqNSvJtH24kDayxg3jB6Xt2jChz6NLq0t+WmRf24EKCymfnTOdXc4a2sSusAwSb1yl6iHnLpkd5efsUm/ZNCOzHbUtUsnAfDW4MNCUTzq8M/9SpCy2CRid4F29bD1jnJEvyPRrIRAwfPdJTuNZ06pzOWexvS0PcOY6tb0XbdFE78iDdUrVHqTGJiVrFHLoAx"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAKo52UJRnjkvuOvraymZ2bDiTUEUexIZ50eR2hx47JpOCUW0OMFH443axvl4TeCpPwqTbf0MH3RdkdSqpGOSAAcBmDfOyI5o9dgzWwSIiplNTxO29tUB9YinkduLEe4pXL5FwZ20owYnvcbrlc8t+LNl8Vku3zWWMrng6mf620MVAAAAFQC5KtOLXLxKD3hk3ATXQbnli4wMRwAAAIAy3bLl4X5yk+WYssTadam8ScUdvzVBCXsrfK9o8HNHfdHCAQqYRYYlC7muDATZxhyw72IhZsFzw/Wswr+5K35hElvrH8j3pFXafe+5dp18CP3V+vXTAzVBiiOnA+AG1tvudBRsrh7bhD9oq1LnXqijLRiI9nD0Faem4uGcT7/jqgAAAIBudV2Q2VYl/N+pRv4/JTgsNLtNz3X12dMjeNXwbpM9LJZUVZDq/KsT1vdDTYOy42g/v14ucRU50QyyAxx78prRgyTIfyKFDEiff9i5uok0c/YN0t2w9ayYkYl6xBWVj+q2SiUM6WdqJdb7sltOLGwsjkroqAV0xdBpbiN6ZWvzKA==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEspGa8fuYvtfy2pnBhKV/d/xfmUmvAVUhCJLOlwRURmszRQBW/+GwvhPIT1avptddqTUF2HeA1XKLkbabnxoHI=", "sshfp_dsa"=>"SSHFP 2 1 36d929686c60f981438c3e708f76eaa8aea811ac\nSSHFP 2 2 f509f25d24c474bf0f2b0fae387b1c798174632af84f7e7b064ead1d1e23b144", "sshfp_ecdsa"=>"SSHFP 3 1 263f3632f018d8535aaf8374ff4e8bdfc2eb118a\nSSHFP 3 2 f14b4e61f1569a8181800a082ce91452ce352122bffe4e39314888b280f598a6", "sshfp_rsa"=>"SSHFP 1 1 3f543127df57aceb9be2259918ff9115e507be37\nSSHFP 1 2 90114d6c22d6a759b85f4df1316c567828da41411ae36e8eb09e480bf3cd8ac3", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC8R/CbG0zr75BfoeoCv0GuLcxEIf8Yp5+s2OJKrYRqRmfD9gM6f4J3lVGB/+i5WRiQqJ61Mogstd4CSFmIUhq+opARvDQGxIz1mgV4aHAZDIAGYZ9b1nwS//JWb7nW5mMQqOW3fq59XWxssWjkW6kjJqNSvJtH24kDayxg3jB6Xt2jChz6NLq0t+WmRf24EKCymfnTOdXc4a2sSusAwSb1yl6iHnLpkd5efsUm/ZNCOzHbUtUsnAfDW4MNCUTzq8M/9SpCy2CRid4F29bD1jnJEvyPRrIRAwfPdJTuNZ06pzOWexvS0PcOY6tb0XbdFE78iDdUrVHqTGJiVrFHLoAx", "swapfree"=>"872.00 MiB", "swapfree_mb"=>871.99609375, "swapsize"=>"872.00 MiB", "swapsize_mb"=>871.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>650, "uptime"=>"0:10 hours"}, "timezone"=>"PST", "uptime"=>"0:10 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>650, "uuid"=>"117385F3-E367-4C81-BEE6-78384BAAA1DB", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Debian-7.8-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_RHEL-6.7_spec.rb b/.onceover/spec/classes/role__custom_windows_on_RHEL-6.7_spec.rb new file mode 100644 index 0000000..d5c2d9c --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_RHEL-6.7_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set RHEL-6.7" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"06/02/2017", "bios_vendor"=>"American Megatrends Inc.", "bios_version"=>"090007", "blockdevice_sda_model"=>"Virtual Disk", "blockdevice_sda_size"=>34359738368, "blockdevice_sda_vendor"=>"Msft", "blockdevice_sdb_model"=>"Virtual Disk", "blockdevice_sdb_size"=>53687091200, "blockdevice_sdb_vendor"=>"Msft", "blockdevice_sr0_model"=>"Virtual CD/ROM", "blockdevice_sr0_size"=>643072, "blockdevice_sr0_vendor"=>"Msft", "blockdevices"=>"sr0,sdb,sda", "boardmanufacturer"=>"Microsoft Corporation", "boardproductname"=>"Virtual Machine", "boardserialnumber"=>"0000-0010-9727-3914-2228-1494-64", "chassisassettag"=>"7783-7084-3265-9085-8269-3286-77", "chassistype"=>"Desktop", "dhcp_servers"=>{"eth0"=>"168.63.129.16", "system"=>"168.63.129.16"}, "disks"=>{"sda"=>{"model"=>"Virtual Disk", "size"=>"32.00 GiB", "size_bytes"=>34359738368, "vendor"=>"Msft"}, "sdb"=>{"model"=>"Virtual Disk", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"Msft"}, "sr0"=>{"model"=>"Virtual CD/ROM", "size"=>"628.00 KiB", "size_bytes"=>643072, "vendor"=>"Msft"}}, "dmi"=>{"bios"=>{"release_date"=>"06/02/2017", "vendor"=>"American Megatrends Inc.", "version"=>"090007"}, "board"=>{"manufacturer"=>"Microsoft Corporation", "product"=>"Virtual Machine", "serial_number"=>"0000-0010-9727-3914-2228-1494-64"}, "chassis"=>{"asset_tag"=>"7783-7084-3265-9085-8269-3286-77", "type"=>"Desktop"}, "manufacturer"=>"Microsoft Corporation", "product"=>{"name"=>"Virtual Machine", "serial_number"=>"0000-0016-4348-2410-5386-3288-39", "uuid"=>"723914E4-94CB-0743-9847-001D218884D8"}}, "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "facterversion"=>"3.12.4", "filesystems"=>"ext4,iso9660,udf", "fips_enabled"=>false, "fqdn"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"rhel6box", "hypervisors"=>{"hyperv"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.0.5", "ipaddress6"=>"fe80::20d:3aff:fe96:ed47", "ipaddress6_eth0"=>"fe80::20d:3aff:fe96:ed47", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.0.5", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-573.45.1.el6.x86_64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.06, "1m"=>0.15, "5m"=>0.14}, "lsbdistcodename"=>"Santiago", "lsbdistdescription"=>"Red Hat Enterprise Linux Server release 6.7 (Santiago)", "lsbdistid"=>"RedHatEnterpriseServer", "lsbdistrelease"=>"6.7", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"7", "lsbrelease"=>":base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch", "macaddress"=>"00:0d:3a:96:ed:47", "macaddress_eth0"=>"00:0d:3a:96:ed:47", "manufacturer"=>"Microsoft Corporation", "memory"=>{"swap"=>{"available"=>"2.00 GiB", "available_bytes"=>2147479552, "capacity"=>"0%", "total"=>"2.00 GiB", "total_bytes"=>2147479552, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"7.55 GiB", "available_bytes"=>8103010304, "capacity"=>"3.24%", "total"=>"7.80 GiB", "total_bytes"=>8374747136, "used"=>"259.15 MiB", "used_bytes"=>271736832}}, "memoryfree"=>"7.55 GiB", "memoryfree_mb"=>7727.6328125, "memorysize"=>"7.80 GiB", "memorysize_mb"=>7986.78125, "mountpoints"=>{"/"=>{"available"=>"27.90 GiB", "available_bytes"=>29956210688, "capacity"=>"9.68%", "device"=>"/dev/sda2", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"30.89 GiB", "size_bytes"=>33168420864, "used"=>"2.99 GiB", "used_bytes"=>3212210176}, "/boot"=>{"available"=>"402.87 MiB", "available_bytes"=>422435840, "capacity"=>"15.40%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"73.36 MiB", "used_bytes"=>76919808}, "/dev/shm"=>{"available"=>"3.90 GiB", "available_bytes"=>4187373568, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "rootcontext=\"system_u:object_r:tmpfs_t:s0\""], "size"=>"3.90 GiB", "size_bytes"=>4187373568, "used"=>"0 bytes", "used_bytes"=>0}, "/mnt/resource"=>{"available"=>"47.04 GiB", "available_bytes"=>50506543104, "capacity"=>"4.18%", "device"=>"/dev/sdb1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"49.09 GiB", "size_bytes"=>52708372480, "used"=>"2.05 GiB", "used_bytes"=>2201829376}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"168.63.129.16", "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "fqdn"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "hostname"=>"rhel6box", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.0.5", "netmask"=>"255.255.255.0", "network"=>"10.0.0.0"}], "bindings6"=>[{"address"=>"fe80::20d:3aff:fe96:ed47", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"168.63.129.16", "ip"=>"10.0.0.5", "ip6"=>"fe80::20d:3aff:fe96:ed47", "mac"=>"00:0d:3a:96:ed:47", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.0.5", "ip6"=>"fe80::20d:3aff:fe96:ed47", "mac"=>"00:0d:3a:96:ed:47", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"RedHat", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.7", "os"=>{"architecture"=>"x86_64", "distro"=>{"codename"=>"Santiago", "description"=>"Red Hat Enterprise Linux Server release 6.7 (Santiago)", "id"=>"RedHatEnterpriseServer", "release"=>{"full"=>"6.7", "major"=>"6", "minor"=>"7"}, "specification"=>":base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"RedHat", "release"=>{"full"=>"6.7", "major"=>"6", "minor"=>"7"}, "selinux"=>{"config_mode"=>"enforcing", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>"24"}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"ce2ad98e-bb9f-4603-abce-3db7fd857a6c"}, "/dev/sda2"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"31.51 GiB", "size_bytes"=>33834401792, "uuid"=>"be4cc18d-b110-4914-a6f9-52dc0dc66f68"}, "/dev/sdb1"=>{"filesystem"=>"ext4", "mount"=>"/mnt/resource", "size"=>"50.00 GiB", "size_bytes"=>53684994048, "uuid"=>"aafc7ffe-f0b2-4872-8174-a05f24f6c3d4"}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processor1"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz"], "physicalcount"=>1}, "productname"=>"Virtual Machine", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>true, "selinux_config_mode"=>"enforcing", "selinux_current_mode"=>"enforcing", "selinux_enforced"=>true, "selinux_policyversion"=>"24", "serialnumber"=>"0000-0016-4348-2410-5386-3288-39", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 2e57bf0a973182ca91a3a9da9df2d332e55624ce", "sha256"=>"SSHFP 2 2 e2bbc2a273c58f32c9680300045705133d3efc571bda04798fc67b74463126cd"}, "key"=>"AAAAB3NzaC1kc3MAAACBAL//vXVYQWUZ0FmIEo76fECXpnTXBM5k9XpvJ/hHo+C9AAhkDz8OIPKW/mWjJWkux4nGASNKeHLaya+3Y9vtNZ/MdGw4ivJOR4rCCOfcPzuo3PbBsRE2gKaqc53F6/SwLufGPW2WF8deD6vgTs/OfklbK1evvPBSFAEYrGXlGyJPAAAAFQDY6orVttfPBu50B7OUA5k9ObNLaQAAAIBwX43NbThII85Bv6et0FdeQftDwoLNCTjBI0+DFNqxTVH/LO10fwqcdOMI1jAmmUSe0Dt+PpWQ1ZosK1UKN+hq3jWc84vxyL7l4KYigrvZJoKWvljazNN2unetwLUiPE4X2KL/CmTnXv/N9SeWsSnr86thNVRioQx+znoy8WZHOAAAAIEAkNIj1FhjzCMK4/f2Wg6tJHsW8wRwcGEzAymIj++aBYGPy5BI5Fa6kOcMEyJ+nl+8U3Mps+mJY5EYE/FvsinOrSJzFqowofABd7NgtoRLTGQyohBHP41+RPqXdPGDzPHHvOnuFP/vSKe+sgtJ6j6OqpddLPVybv/7EbylU9n1OpA=", "type"=>"ssh-dss"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3c9465989548635bc20a034f98be3dd917074a7d", "sha256"=>"SSHFP 1 2 22cec87904c8057c2fa6b92e252b95496b678d042fe19d3f58332d67755bbb39"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAuHC1qI3c48QrKuSLHo54im7OIGQyFL/KwoP4jig+LbIdduwmGMlXejZr+E3yb/RKvwQJGkGJ8HCLf8hyz0AmQf2690rXD7M3Ibq8Q3OrpteC46N3JbvnAFockJPLkMt3g/4sWTTmQbMStBAsfhaergAhXHp8x/xmqYnXtYWbKLyY1aFynWiyXx0omJLd3n0zCnDpEDTRlwn/LAwotK/b/lZ58RXJhafA5AbquKYANtg3png+FYX2MAWj75NXwY4h5dQGtMa8dWqWyZYE4Z9bzWFx4A6YAQPwyheKs4GWCU7dCDuiE4z6oZ3BMbfnfO4oX7bnmDtFRoE2GUElBi46Bw==", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAL//vXVYQWUZ0FmIEo76fECXpnTXBM5k9XpvJ/hHo+C9AAhkDz8OIPKW/mWjJWkux4nGASNKeHLaya+3Y9vtNZ/MdGw4ivJOR4rCCOfcPzuo3PbBsRE2gKaqc53F6/SwLufGPW2WF8deD6vgTs/OfklbK1evvPBSFAEYrGXlGyJPAAAAFQDY6orVttfPBu50B7OUA5k9ObNLaQAAAIBwX43NbThII85Bv6et0FdeQftDwoLNCTjBI0+DFNqxTVH/LO10fwqcdOMI1jAmmUSe0Dt+PpWQ1ZosK1UKN+hq3jWc84vxyL7l4KYigrvZJoKWvljazNN2unetwLUiPE4X2KL/CmTnXv/N9SeWsSnr86thNVRioQx+znoy8WZHOAAAAIEAkNIj1FhjzCMK4/f2Wg6tJHsW8wRwcGEzAymIj++aBYGPy5BI5Fa6kOcMEyJ+nl+8U3Mps+mJY5EYE/FvsinOrSJzFqowofABd7NgtoRLTGQyohBHP41+RPqXdPGDzPHHvOnuFP/vSKe+sgtJ6j6OqpddLPVybv/7EbylU9n1OpA=", "sshfp_dsa"=>"SSHFP 2 1 2e57bf0a973182ca91a3a9da9df2d332e55624ce\nSSHFP 2 2 e2bbc2a273c58f32c9680300045705133d3efc571bda04798fc67b74463126cd", "sshfp_rsa"=>"SSHFP 1 1 3c9465989548635bc20a034f98be3dd917074a7d\nSSHFP 1 2 22cec87904c8057c2fa6b92e252b95496b678d042fe19d3f58332d67755bbb39", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAuHC1qI3c48QrKuSLHo54im7OIGQyFL/KwoP4jig+LbIdduwmGMlXejZr+E3yb/RKvwQJGkGJ8HCLf8hyz0AmQf2690rXD7M3Ibq8Q3OrpteC46N3JbvnAFockJPLkMt3g/4sWTTmQbMStBAsfhaergAhXHp8x/xmqYnXtYWbKLyY1aFynWiyXx0omJLd3n0zCnDpEDTRlwn/LAwotK/b/lZ58RXJhafA5AbquKYANtg3png+FYX2MAWj75NXwY4h5dQGtMa8dWqWyZYE4Z9bzWFx4A6YAQPwyheKs4GWCU7dCDuiE4z6oZ3BMbfnfO4oX7bnmDtFRoE2GUElBi46Bw==", "swapfree"=>"2.00 GiB", "swapfree_mb"=>2047.99609375, "swapsize"=>"2.00 GiB", "swapsize_mb"=>2047.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>239, "uptime"=>"0:03 hours"}, "timezone"=>"EDT", "uptime"=>"0:03 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>239, "uuid"=>"723914E4-94CB-0743-9847-001D218884D8", "virtual"=>"hyperv", "clientcert"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'RHEL-6.7' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_RHEL-7.4_spec.rb b/.onceover/spec/classes/role__custom_windows_on_RHEL-7.4_spec.rb new file mode 100644 index 0000000..0b7f25e --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_RHEL-7.4_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set RHEL-7.4" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"06/02/2017", "bios_vendor"=>"American Megatrends Inc.", "bios_version"=>"090007", "blockdevice_fd0_size"=>4096, "blockdevice_sda_model"=>"Virtual Disk", "blockdevice_sda_size"=>34359738368, "blockdevice_sda_vendor"=>"Msft", "blockdevice_sdb_model"=>"Virtual Disk", "blockdevice_sdb_size"=>53687091200, "blockdevice_sdb_vendor"=>"Msft", "blockdevice_sr0_model"=>"Virtual CD/ROM", "blockdevice_sr0_size"=>643072, "blockdevice_sr0_vendor"=>"Msft", "blockdevices"=>"fd0,sda,sdb,sr0", "boardmanufacturer"=>"Microsoft Corporation", "boardproductname"=>"Virtual Machine", "boardserialnumber"=>"0000-0010-6006-7746-5828-7871-43", "chassisassettag"=>"7783-7084-3265-9085-8269-3286-77", "chassistype"=>"Desktop", "dhcp_servers"=>{"eth0"=>"168.63.129.16", "system"=>"168.63.129.16"}, "disks"=>{"fd0"=>{"size"=>"4.00 KiB", "size_bytes"=>4096}, "sda"=>{"model"=>"Virtual Disk", "size"=>"32.00 GiB", "size_bytes"=>34359738368, "vendor"=>"Msft"}, "sdb"=>{"model"=>"Virtual Disk", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"Msft"}, "sr0"=>{"model"=>"Virtual CD/ROM", "size"=>"628.00 KiB", "size_bytes"=>643072, "vendor"=>"Msft"}}, "dmi"=>{"bios"=>{"release_date"=>"06/02/2017", "vendor"=>"American Megatrends Inc.", "version"=>"090007"}, "board"=>{"manufacturer"=>"Microsoft Corporation", "product"=>"Virtual Machine", "serial_number"=>"0000-0010-6006-7746-5828-7871-43"}, "chassis"=>{"asset_tag"=>"7783-7084-3265-9085-8269-3286-77", "type"=>"Desktop"}, "manufacturer"=>"Microsoft Corporation", "product"=>{"name"=>"Virtual Machine", "serial_number"=>"0000-0017-8302-7891-2115-8198-39", "uuid"=>"33E071F7-CDA2-3F45-931D-2BFD893683C7"}}, "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "facterversion"=>"3.12.4", "filesystems"=>"ext2,ext3,ext4,udf,xfs", "fips_enabled"=>false, "fqdn"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"rhel7test", "hypervisors"=>{"hyperv"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.0.6", "ipaddress6"=>"fe80::20d:3aff:fe90:5780", "ipaddress6_eth0"=>"fe80::20d:3aff:fe90:5780", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.0.6", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.10", "kernelrelease"=>"3.10.0-693.46.1.el7.x86_64", "kernelversion"=>"3.10.0", "load_averages"=>{"15m"=>0.08, "1m"=>0.32, "5m"=>0.19}, "macaddress"=>"00:0d:3a:90:57:80", "macaddress_eth0"=>"00:0d:3a:90:57:80", "manufacturer"=>"Microsoft Corporation", "memory"=>{"swap"=>{"available"=>"2.00 GiB", "available_bytes"=>2147479552, "capacity"=>"0%", "total"=>"2.00 GiB", "total_bytes"=>2147479552, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"7.42 GiB", "available_bytes"=>7963906048, "capacity"=>"4.67%", "total"=>"7.78 GiB", "total_bytes"=>8353742848, "used"=>"371.78 MiB", "used_bytes"=>389836800}}, "memoryfree"=>"7.42 GiB", "memoryfree_mb"=>7594.97265625, "memorysize"=>"7.78 GiB", "memorysize_mb"=>7966.75, "mountpoints"=>{"/"=>{"available"=>"29.95 GiB", "available_bytes"=>32156790784, "capacity"=>"4.91%", "device"=>"/dev/sda2", "filesystem"=>"xfs", "options"=>["rw", "seclabel", "relatime", "attr2", "inode64", "noquota"], "size"=>"31.50 GiB", "size_bytes"=>33817882624, "used"=>"1.55 GiB", "used_bytes"=>1661091840}, "/boot"=>{"available"=>"393.75 MiB", "available_bytes"=>412880896, "capacity"=>"20.72%", "device"=>"/dev/sda1", "filesystem"=>"xfs", "options"=>["rw", "seclabel", "relatime", "attr2", "inode64", "noquota"], "size"=>"496.66 MiB", "size_bytes"=>520785920, "used"=>"102.91 MiB", "used_bytes"=>107905024}, "/dev/shm"=>{"available"=>"3.89 GiB", "available_bytes"=>4176871424, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"0 bytes", "used_bytes"=>0}, "/mnt/resource"=>{"available"=>"47.04 GiB", "available_bytes"=>50506170368, "capacity"=>"4.18%", "device"=>"/dev/sdb1", "filesystem"=>"ext4", "options"=>["rw", "seclabel", "relatime", "data=ordered"], "size"=>"49.09 GiB", "size_bytes"=>52708212736, "used"=>"2.05 GiB", "used_bytes"=>2202042368}, "/run"=>{"available"=>"3.88 GiB", "available_bytes"=>4168146944, "capacity"=>"0.21%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev", "mode=755"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"8.32 MiB", "used_bytes"=>8724480}, "/run/user/1000"=>{"available"=>"796.68 MiB", "available_bytes"=>835375104, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev", "relatime", "size=815796k", "mode=700", "uid=1000", "gid=1000"], "size"=>"796.68 MiB", "size_bytes"=>835375104, "used"=>"0 bytes", "used_bytes"=>0}, "/sys/fs/cgroup"=>{"available"=>"3.89 GiB", "available_bytes"=>4176871424, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["ro", "seclabel", "nosuid", "nodev", "noexec", "mode=755"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"168.63.129.16", "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "fqdn"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "hostname"=>"rhel7test", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.0.6", "netmask"=>"255.255.255.0", "network"=>"10.0.0.0"}], "bindings6"=>[{"address"=>"fe80::20d:3aff:fe90:5780", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"168.63.129.16", "ip"=>"10.0.0.6", "ip6"=>"fe80::20d:3aff:fe90:5780", "mac"=>"00:0d:3a:90:57:80", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.0.6", "ip6"=>"fe80::20d:3aff:fe90:5780", "mac"=>"00:0d:3a:90:57:80", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"RedHat", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.4", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"RedHat", "release"=>{"full"=>"7.4", "major"=>"7", "minor"=>"4"}, "selinux"=>{"config_mode"=>"enforcing", "config_policy"=>"targeted", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>"28"}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"xfs", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"b3f65ad5-0571-4ae4-937a-13ef2fda43e3"}, "/dev/sda2"=>{"filesystem"=>"xfs", "mount"=>"/", "size"=>"31.51 GiB", "size_bytes"=>33834401792, "uuid"=>"e9643aa4-b339-43c4-afc5-fcac22af1584"}, "/dev/sdb1"=>{"filesystem"=>"ext4", "mount"=>"/mnt/resource", "size"=>"50.00 GiB", "size_bytes"=>53684994048, "uuid"=>"07908b37-1661-4130-9d5a-e1fdb0a4bdb2"}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processor1"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz"], "physicalcount"=>1}, "productname"=>"Virtual Machine", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>true, "selinux_config_mode"=>"enforcing", "selinux_config_policy"=>"targeted", "selinux_current_mode"=>"enforcing", "selinux_enforced"=>true, "selinux_policyversion"=>"28", "serialnumber"=>"0000-0017-8302-7891-2115-8198-39", "ssh"=>{"ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 8b4b534a70cc57bfbebb88a6d980c397fa9dddf7", "sha256"=>"SSHFP 3 2 ab2e72961bc6515482c34e7c8358f929026fc8af979d5a9fa16bd9a25bf4bcb2"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMYggL8slLxRmDxaMceOJ4c8pVKIVA4uUZ4b4jPo7+s8xUHEZkngmqSfHGJpJ4uaDSwO4rNOYVAyCZVK4sDJBuU=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 559ecc22a9b45200bd56dd86455250e203668929", "sha256"=>"SSHFP 4 2 d005f680bbb24dc3c670c16d4cc87a59a871c4bed2763a17141b03d10d480282"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAINswqLjeLueVwG3UgsjhTNQGUg2Y7zayfIXJd783I44K", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 ec0afe862095855d6ca6174cceec173e241afe6a", "sha256"=>"SSHFP 1 2 af54fb6de7ea67ba7e8b93f99af27d7984dc02224aee7de886d269797ae64b11"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDHfGHvDLYXMARhNOK21bV8ZWnwOSxtAcdenfMP/wVlLshAPtqXMzXiDeaFJKfXrKMuiP3aWEbqtERPQnmu+AGfvOekwM6YoHIHCszhnP4ASSpITEuY3ZgVM6qQLgdClBMSdbEoHQ2f6Lem3Uy/7fekA1ofvofp6BtqO5s/Sk3zQhYhDS/TfSw2wlB6J/VrmOimnqhoMq6JLDFJtbYtBFFPqlpf5CZfzOXwAGBnoAuSRO7rtRzXE7caAHMRAdFWlGX1S5zzCJueUyQm3cVvMfqyjbGWJmxDbtIUaDpE+63jLwMidaSu1ZF0Q3mMRvPP0x/g8EZ+EnATl5rPYvVJqcq1", "type"=>"ssh-rsa"}}, "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMYggL8slLxRmDxaMceOJ4c8pVKIVA4uUZ4b4jPo7+s8xUHEZkngmqSfHGJpJ4uaDSwO4rNOYVAyCZVK4sDJBuU=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAINswqLjeLueVwG3UgsjhTNQGUg2Y7zayfIXJd783I44K", "sshfp_ecdsa"=>"SSHFP 3 1 8b4b534a70cc57bfbebb88a6d980c397fa9dddf7\nSSHFP 3 2 ab2e72961bc6515482c34e7c8358f929026fc8af979d5a9fa16bd9a25bf4bcb2", "sshfp_ed25519"=>"SSHFP 4 1 559ecc22a9b45200bd56dd86455250e203668929\nSSHFP 4 2 d005f680bbb24dc3c670c16d4cc87a59a871c4bed2763a17141b03d10d480282", "sshfp_rsa"=>"SSHFP 1 1 ec0afe862095855d6ca6174cceec173e241afe6a\nSSHFP 1 2 af54fb6de7ea67ba7e8b93f99af27d7984dc02224aee7de886d269797ae64b11", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDHfGHvDLYXMARhNOK21bV8ZWnwOSxtAcdenfMP/wVlLshAPtqXMzXiDeaFJKfXrKMuiP3aWEbqtERPQnmu+AGfvOekwM6YoHIHCszhnP4ASSpITEuY3ZgVM6qQLgdClBMSdbEoHQ2f6Lem3Uy/7fekA1ofvofp6BtqO5s/Sk3zQhYhDS/TfSw2wlB6J/VrmOimnqhoMq6JLDFJtbYtBFFPqlpf5CZfzOXwAGBnoAuSRO7rtRzXE7caAHMRAdFWlGX1S5zzCJueUyQm3cVvMfqyjbGWJmxDbtIUaDpE+63jLwMidaSu1ZF0Q3mMRvPP0x/g8EZ+EnATl5rPYvVJqcq1", "swapfree"=>"2.00 GiB", "swapfree_mb"=>2047.99609375, "swapsize"=>"2.00 GiB", "swapsize_mb"=>2047.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>215, "uptime"=>"0:03 hours"}, "timezone"=>"UTC", "uptime"=>"0:03 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>215, "uuid"=>"33E071F7-CDA2-3F45-931D-2BFD893683C7", "virtual"=>"hyperv", "clientcert"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'RHEL-7.4' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_SLES-11.3-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_SLES-11.3-64_spec.rb new file mode 100644 index 0000000..60b9048 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_SLES-11.3-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set SLES-11.3-64" do + node_facts = {"aio_agent_version"=>"1.8.3", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>53687091200, "blockdevice_sda_vendor"=>"VBOX", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"8B82075A-B071-4035-A96A-3B5D08F6841D"}}, "domain"=>"lan.asio", "facterversion"=>"3.5.1", "filesystems"=>"ext3,iso9660,squashfs", "fqdn"=>"sles11-sp3.lan.asio", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"sles11-sp3", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::216:3eff:fe48:617f", "ipaddress6_eth0"=>"fe80::216:3eff:fe48:617f", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.0", "kernelrelease"=>"3.0.101-0.47.67-default", "kernelversion"=>"3.0.101", "load_averages"=>{"15m"=>0.06, "1m"=>0.18, "5m"=>0.08}, "macaddress"=>"00:16:3e:48:61:7f", "macaddress_eth0"=>"00:16:3e:48:61:7f", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"354.30 MiB", "available_bytes"=>371511296, "capacity"=>"27.78%", "total"=>"490.61 MiB", "total_bytes"=>514437120, "used"=>"136.30 MiB", "used_bytes"=>142925824}}, "memoryfree"=>"354.30 MiB", "memoryfree_mb"=>354.30078125, "memorysize"=>"490.61 MiB", "memorysize_mb"=>490.60546875, "mountpoints"=>{"/"=>{"available"=>"47.14 GiB", "available_bytes"=>50611761152, "capacity"=>"4.22%", "device"=>"/dev/sda1", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=continue", "barrier=1", "data=ordered"], "size"=>"49.21 GiB", "size_bytes"=>52843638784, "used"=>"2.08 GiB", "used_bytes"=>2231877632}, "/dev/shm"=>{"available"=>"245.29 MiB", "available_bytes"=>257208320, "capacity"=>"0.00%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "relatime"], "size"=>"245.30 MiB", "size_bytes"=>257216512, "used"=>"8.00 KiB", "used_bytes"=>8192}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"domain"=>"lan.asio", "fqdn"=>"sles11-sp3.lan.asio", "hostname"=>"sles11-sp3", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::216:3eff:fe48:617f", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe48:617f", "mac"=>"00:16:3e:48:61:7f", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, {"address"=>"127.0.0.2", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe48:617f", "mac"=>"00:16:3e:48:61:7f", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"SLES", "operatingsystemmajrelease"=>"11", "operatingsystemrelease"=>"11.3", "os"=>{"architecture"=>"x86_64", "family"=>"Suse", "hardware"=>"x86_64", "name"=>"SLES", "release"=>{"full"=>"11.3", "major"=>"11", "minor"=>"3"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Suse", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"50.00 GiB", "size_bytes"=>53686042624, "uuid"=>"586adc21-9cfc-4e12-93e6-c711ab2400b1"}}, "path"=>"/usr/bin:/bin:/usr/sbin:/sbin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.8.2", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 2f39a5ddd25d30676bceb1b99faec8330cb80cd5", "sha256"=>"SSHFP 2 2 d17b59f49908df6bd337918a31a4e38f8489a0c46ada06963cb67ab3a4bdfb11"}, "key"=>"AAAAB3NzaC1kc3MAAACBALvEn/P3Kfg/yFWplaqFsrUOk/Kh9aOZTNNCoJX7lsSQkWpLDkjz03IZZ1pUsykZp6HUhzfW1ZCOKme5503MAsflB78fjgsfGaVL2IcWOvPhurC8SXGivanS5+rL3CFqja/+nMJBPFg8oEyjJei6RJZCQtlEFSEJziKMVI368fxLAAAAFQCC8c+IrxPZc4zVe5EF6qsPnZtMiwAAAIEApfv1xS6ECWq1f8J43BXFdiRszBXQecgdPtf6STvabnYdLKScAPyu3JdosrPswlZWEXLz+srkqqai6xISeSxLKrlY570GNVPmgnBFmoz+iJRi6kakroNe5xjGT45aTyZ16cyg9LFHFLL3KadlzZXu+9XwS9kv09SFlvH6+9+XNGMAAACBALLbpqIZKISARdnFviWOWzFbvYzZHiO3ddAYnXVCGfW1ywmGDqc5kUNTZsBFNYVA56YcaHR/kwFHjOij3SJnvy6VxSG9sSZ4wex/FGBmTUmklelZQsywITGps3MWxiyO3TGfIEXJlqgyVxXZhXnIshN//NCCPbq2X7X7VyTyGjhI"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 7fc0ef4bb2d2d14db8fc0bc0b1b97a9d83c6dc17", "sha256"=>"SSHFP 3 2 a0b01ecd2461ed45e0b51ebec48f79957a9710c3ec441cde0e6c4e5d8939c15e"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK9w38lDcCpjkGqrTdhhsZCVzS2XKgC6Q9fTvkZn1RLhvvWjDBHyFg0KyTAqfepMNNjdgHqEBFumKc3w+L5xLuY="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 20cdd84628cfad3edff17edf9ce3c2f7f1756f41", "sha256"=>"SSHFP 1 2 f48e7e96ed7708c6225367ada2a29309f159a12443eeaed6c86efee0660f3f78"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC2nt/gDBidRKDNUmDDThXA+mMWQxq83odOXzx4/3NHMMfIfu3nuvcCaTI+Tp1EiNcbb6Q2ummoGdJpCXT6/W4cjfluuun1rBDeQzzFfthdBAasNKbSCy+cYKwda0zfP9X4Az0SqsbHM5DekNS0w0stCB+L5qqlhaKyunyid2PaeLfSalP5RbcAxGSy5ijLNcAZqbuNOEiq1v0IIySCPplvzvEv//Ht8PhPhXQiRRtKMeq5pAgqjLeUq5zRlXIVqTYfZPfa5tuteaZNxpRxbDvog7h57LWsHKZSjc8ND2ocoehIymNeL4kpFkLg6TMm6BEEOEks5Kue/SXdYUbHkRKN"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALvEn/P3Kfg/yFWplaqFsrUOk/Kh9aOZTNNCoJX7lsSQkWpLDkjz03IZZ1pUsykZp6HUhzfW1ZCOKme5503MAsflB78fjgsfGaVL2IcWOvPhurC8SXGivanS5+rL3CFqja/+nMJBPFg8oEyjJei6RJZCQtlEFSEJziKMVI368fxLAAAAFQCC8c+IrxPZc4zVe5EF6qsPnZtMiwAAAIEApfv1xS6ECWq1f8J43BXFdiRszBXQecgdPtf6STvabnYdLKScAPyu3JdosrPswlZWEXLz+srkqqai6xISeSxLKrlY570GNVPmgnBFmoz+iJRi6kakroNe5xjGT45aTyZ16cyg9LFHFLL3KadlzZXu+9XwS9kv09SFlvH6+9+XNGMAAACBALLbpqIZKISARdnFviWOWzFbvYzZHiO3ddAYnXVCGfW1ywmGDqc5kUNTZsBFNYVA56YcaHR/kwFHjOij3SJnvy6VxSG9sSZ4wex/FGBmTUmklelZQsywITGps3MWxiyO3TGfIEXJlqgyVxXZhXnIshN//NCCPbq2X7X7VyTyGjhI", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK9w38lDcCpjkGqrTdhhsZCVzS2XKgC6Q9fTvkZn1RLhvvWjDBHyFg0KyTAqfepMNNjdgHqEBFumKc3w+L5xLuY=", "sshfp_dsa"=>"SSHFP 2 1 2f39a5ddd25d30676bceb1b99faec8330cb80cd5\nSSHFP 2 2 d17b59f49908df6bd337918a31a4e38f8489a0c46ada06963cb67ab3a4bdfb11", "sshfp_ecdsa"=>"SSHFP 3 1 7fc0ef4bb2d2d14db8fc0bc0b1b97a9d83c6dc17\nSSHFP 3 2 a0b01ecd2461ed45e0b51ebec48f79957a9710c3ec441cde0e6c4e5d8939c15e", "sshfp_rsa"=>"SSHFP 1 1 20cdd84628cfad3edff17edf9ce3c2f7f1756f41\nSSHFP 1 2 f48e7e96ed7708c6225367ada2a29309f159a12443eeaed6c86efee0660f3f78", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC2nt/gDBidRKDNUmDDThXA+mMWQxq83odOXzx4/3NHMMfIfu3nuvcCaTI+Tp1EiNcbb6Q2ummoGdJpCXT6/W4cjfluuun1rBDeQzzFfthdBAasNKbSCy+cYKwda0zfP9X4Az0SqsbHM5DekNS0w0stCB+L5qqlhaKyunyid2PaeLfSalP5RbcAxGSy5ijLNcAZqbuNOEiq1v0IIySCPplvzvEv//Ht8PhPhXQiRRtKMeq5pAgqjLeUq5zRlXIVqTYfZPfa5tuteaZNxpRxbDvog7h57LWsHKZSjc8ND2ocoehIymNeL4kpFkLg6TMm6BEEOEks5Kue/SXdYUbHkRKN", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>524, "uptime"=>"0:08 hours"}, "timezone"=>"UTC", "uptime"=>"0:08 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>524, "uuid"=>"8B82075A-B071-4035-A96A-3B5D08F6841D", "virtual"=>"virtualbox", "clientcert"=>"sles11-sp3.lan.asio", "clientversion"=>"4.8.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'SLES-11.3-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_SLES-12.1-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_SLES-12.1-64_spec.rb new file mode 100644 index 0000000..3570c33 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_SLES-12.1-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set SLES-12.1-64" do + node_facts = {"aio_agent_build"=>"1.7.2", "aio_agent_version"=>"1.7.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>53687091200, "blockdevice_sda_vendor"=>"VBOX", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"7733628A-3D10-4F0B-B6E2-DB6D0CBB8F7E"}}, "domain"=>"openstack.site", "facterversion"=>"3.4.2", "filesystems"=>"ext2,ext3,ext4", "fqdn"=>"sles12-sp1.openstack.site", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"sles12-sp1", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::216:3eff:fe72:f121", "ipaddress6_eth0"=>"fe80::216:3eff:fe72:f121", "ipaddress6_eth1"=>"fe80::a00:27ff:fe60:90e", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"192.168.33.15", "ipaddress_lo"=>"127.0.0.1", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.12", "kernelrelease"=>"3.12.62-60.64.8-default", "kernelversion"=>"3.12.62", "load_averages"=>{"15m"=>0.05, "1m"=>0.0, "5m"=>0.02}, "macaddress"=>"00:16:3e:72:f1:21", "macaddress_eth0"=>"00:16:3e:72:f1:21", "macaddress_eth1"=>"08:00:27:60:09:0e", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"1.78 GiB", "available_bytes"=>1907027968, "capacity"=>"68.84%", "total"=>"5.70 GiB", "total_bytes"=>6119927808, "used"=>"3.92 GiB", "used_bytes"=>4212899840}}, "memoryfree"=>"1.78 GiB", "memoryfree_mb"=>1818.68359375, "memorysize"=>"5.70 GiB", "memorysize_mb"=>5836.41796875, "mountpoints"=>{"/"=>{"available"=>"45.34 GiB", "available_bytes"=>48682504192, "capacity"=>"7.64%", "device"=>"/dev/sda1", "filesystem"=>"ext3", "options"=>["rw", "relatime", "data=ordered"], "size"=>"49.09 GiB", "size_bytes"=>52709421056, "used"=>"3.75 GiB", "used_bytes"=>4026916864}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"192.168.33.0", "network_lo"=>"127.0.0.0", "networking"=>{"domain"=>"openstack.site", "fqdn"=>"sles12-sp1.openstack.site", "hostname"=>"sles12-sp1", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::216:3eff:fe72:f121", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe72:f121", "mac"=>"00:16:3e:72:f1:21", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"bindings"=>[{"address"=>"192.168.33.15", "netmask"=>"255.255.255.0", "network"=>"192.168.33.0"}], "bindings6"=>[{"address"=>"fe80::a00:27ff:fe60:90e", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"192.168.33.15", "ip6"=>"fe80::a00:27ff:fe60:90e", "mac"=>"08:00:27:60:09:0e", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"192.168.33.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe72:f121", "mac"=>"00:16:3e:72:f1:21", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"SLES", "operatingsystemmajrelease"=>"12", "operatingsystemrelease"=>"12.1", "os"=>{"architecture"=>"x86_64", "family"=>"Suse", "hardware"=>"x86_64", "name"=>"SLES", "release"=>{"full"=>"12.1", "major"=>"12", "minor"=>"1"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Suse", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext3", "label"=>"ROOT", "mount"=>"/", "partuuid"=>"3d2745bf-01", "size"=>"50.00 GiB", "size_bytes"=>53686042624, "uuid"=>"dcf2494f-2b02-466b-aa2c-9e7c01bdbdd7"}}, "path"=>"/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin:/usr/games", "pe_build"=>"2016.4.3", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_server_version"=>"2016.4.3", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"sles-12-x86_64", "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor2"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor3"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>4, "processors"=>{"count"=>4, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppetversion"=>"4.7.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 4c29775fbdf4c3c3899d036510ced3a377023cd1", "sha256"=>"SSHFP 2 2 6b21d41b5df2640a9b710884c10d8f87dbc2944e639a5e46273bfb4aa76522c5"}, "key"=>"AAAAB3NzaC1kc3MAAACBAK+haL65A0ALR7nw0X5re26C23ncFgxvedmnE2iUbjbeM7F//EBeA4Gn3mjbtPkTVDu61Tfl45tCHKHa36l2w5rC2mt71yMGJQoHeDtA4ddO2uA+B19fmkfhAICtjrvYc8vj5jwwcVmmP0FUasIunM0/9uAhZ+97E7+I91bPhp/RAAAAFQDNpq248quBrulsV6qkoYv00XODZwAAAIBAe5mwq4iS3DH5ABJSJoGGrWZBrY2ZPYcpzqStDN12I+lNL0HqoZF3dRdXUiiAl0qGpO9vtaTtrJzQuahTpB0k/HkMP042Kqa/hhkobuPlvu5Xuuj5cNzLuditXn5ScKs8BXaoh6mvOAAIS1jY9BZ+dGxZfygvjjtcAWHWCVAxoQAAAIACBpgms8yMLnEd5qY7kF5hqO7DNJ6Q0xyFOB5zWKhj1nbCUmxKBiF2XjXZGZc+6LD0Hg1fs1EiW9ed9g7F7/7LLtlgzeJPIg8vuqsRvCj3JkwFDmGHfA2Z0EYU4sn8dmw1RLeoWY0fCaPM+x00hSa36VMMXAHEd2MCUPYTTiMmaQ=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 d1c37b4313689a7afe74eead74ea53699234505b", "sha256"=>"SSHFP 3 2 60246f4a32257320dc990997d7373eede1667aaead6ea95baa32fa07fec824cd"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGnNFUni4th60YWWMAHbe9fByciHV0mswnuc2CzGSzziVAUbsSKmJktAHNmcYKssztsMpBPsPMLM9j8ceD59jmI="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 37cbc33c742e357446b82735b529cd0d6dd5c459", "sha256"=>"SSHFP 4 2 2228771c3a8436da3436b331f293b2394f8e24f12cf6590d75d5077b37e7cacf"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIB9nMKgF7UeoNyuUwz3ifm0M4QjlEjGNSLxvFm6xXVhx"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1ccfdf4e0afc38d26ab2d3b44f37c1ec7eefe51", "sha256"=>"SSHFP 1 2 f492d7edf7cc14c5e8472aa10aa6e7cf049032f9a52584e07c10101af807fe38"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDjeTmNl1i5lo2aP6quMk+/thACsrOK50twMge6KfZ6J1Q6ncsjjpZNA745pgvUJuQx2STl2vCMT3aTbGIrw+FXGNbfRWRa9pUUTJE82mgcPnYsMqWo+JQwuJOjhdaDlV8r7U197ZIsOM+eo2CBYYUP/ZAFbGzFL4Wb29hld1MiHSACcRC7HozgAxPCUyOZ0mcckofFIW/XO289UmEJj27RSnM3YyaOXxg+xv7tjxjLaq7j4HlFR5HZt4OYdzoHMTSwexcNtyM8TyNu9OKSGSYuQNWxghltrElP+Hg1Zgw8Bxhyf+a9KqF9/Q7Z0zWvwoJE3II9kHij2M73eiadZPj/"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAK+haL65A0ALR7nw0X5re26C23ncFgxvedmnE2iUbjbeM7F//EBeA4Gn3mjbtPkTVDu61Tfl45tCHKHa36l2w5rC2mt71yMGJQoHeDtA4ddO2uA+B19fmkfhAICtjrvYc8vj5jwwcVmmP0FUasIunM0/9uAhZ+97E7+I91bPhp/RAAAAFQDNpq248quBrulsV6qkoYv00XODZwAAAIBAe5mwq4iS3DH5ABJSJoGGrWZBrY2ZPYcpzqStDN12I+lNL0HqoZF3dRdXUiiAl0qGpO9vtaTtrJzQuahTpB0k/HkMP042Kqa/hhkobuPlvu5Xuuj5cNzLuditXn5ScKs8BXaoh6mvOAAIS1jY9BZ+dGxZfygvjjtcAWHWCVAxoQAAAIACBpgms8yMLnEd5qY7kF5hqO7DNJ6Q0xyFOB5zWKhj1nbCUmxKBiF2XjXZGZc+6LD0Hg1fs1EiW9ed9g7F7/7LLtlgzeJPIg8vuqsRvCj3JkwFDmGHfA2Z0EYU4sn8dmw1RLeoWY0fCaPM+x00hSa36VMMXAHEd2MCUPYTTiMmaQ==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGnNFUni4th60YWWMAHbe9fByciHV0mswnuc2CzGSzziVAUbsSKmJktAHNmcYKssztsMpBPsPMLM9j8ceD59jmI=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIB9nMKgF7UeoNyuUwz3ifm0M4QjlEjGNSLxvFm6xXVhx", "sshfp_dsa"=>"SSHFP 2 1 4c29775fbdf4c3c3899d036510ced3a377023cd1\nSSHFP 2 2 6b21d41b5df2640a9b710884c10d8f87dbc2944e639a5e46273bfb4aa76522c5", "sshfp_ecdsa"=>"SSHFP 3 1 d1c37b4313689a7afe74eead74ea53699234505b\nSSHFP 3 2 60246f4a32257320dc990997d7373eede1667aaead6ea95baa32fa07fec824cd", "sshfp_ed25519"=>"SSHFP 4 1 37cbc33c742e357446b82735b529cd0d6dd5c459\nSSHFP 4 2 2228771c3a8436da3436b331f293b2394f8e24f12cf6590d75d5077b37e7cacf", "sshfp_rsa"=>"SSHFP 1 1 d1ccfdf4e0afc38d26ab2d3b44f37c1ec7eefe51\nSSHFP 1 2 f492d7edf7cc14c5e8472aa10aa6e7cf049032f9a52584e07c10101af807fe38", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDjeTmNl1i5lo2aP6quMk+/thACsrOK50twMge6KfZ6J1Q6ncsjjpZNA745pgvUJuQx2STl2vCMT3aTbGIrw+FXGNbfRWRa9pUUTJE82mgcPnYsMqWo+JQwuJOjhdaDlV8r7U197ZIsOM+eo2CBYYUP/ZAFbGzFL4Wb29hld1MiHSACcRC7HozgAxPCUyOZ0mcckofFIW/XO289UmEJj27RSnM3YyaOXxg+xv7tjxjLaq7j4HlFR5HZt4OYdzoHMTSwexcNtyM8TyNu9OKSGSYuQNWxghltrElP+Hg1Zgw8Bxhyf+a9KqF9/Q7Z0zWvwoJE3II9kHij2M73eiadZPj/", "staging_http_get"=>"curl", "system_uptime"=>{"days"=>1, "hours"=>41, "seconds"=>148058, "uptime"=>"1 day"}, "timezone"=>"UTC", "uptime"=>"1 day", "uptime_days"=>1, "uptime_hours"=>41, "uptime_seconds"=>148058, "uuid"=>"7733628A-3D10-4F0B-B6E2-DB6D0CBB8F7E", "virtual"=>"virtualbox", "clientcert"=>"sles12-sp1.openstack.site", "clientversion"=>"4.7.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'SLES-12.1-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Ubuntu-12.04-32_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Ubuntu-12.04-32_spec.rb new file mode 100644 index 0000000..3dbc8d1 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Ubuntu-12.04-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Ubuntu-12.04-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"3A7F9D94-3B88-45AB-99A4-57745C934A08"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe8d:6188", "ipaddress6_eth0"=>"fe80::a00:27ff:fe8d:6188", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.13", "kernelrelease"=>"3.13.0-32-generic", "kernelversion"=>"3.13.0", "load_averages"=>{"15m"=>0.03, "1m"=>0.23, "5m"=>0.09}, "lsbdistcodename"=>"precise", "lsbdistdescription"=>"Ubuntu 12.04.5 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"12.04", "lsbmajdistrelease"=>"12.04", "macaddress"=>"08:00:27:8d:61:88", "macaddress_eth0"=>"08:00:27:8d:61:88", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"407.73 MiB", "available_bytes"=>427540480, "capacity"=>"17.64%", "total"=>"495.05 MiB", "total_bytes"=>519102464, "used"=>"87.32 MiB", "used_bytes"=>91561984}}, "memoryfree"=>"407.73 MiB", "memoryfree_mb"=>407.734375, "memorysize"=>"495.05 MiB", "memorysize_mb"=>495.0546875, "mountpoints"=>{"/"=>{"available"=>"1.81 GiB", "available_bytes"=>1940865024, "capacity"=>"36.14%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"2.83 GiB", "size_bytes"=>-1255694336, "used"=>"1.02 GiB", "used_bytes"=>1098407936}, "/boot"=>{"available"=>"203.56 MiB", "available_bytes"=>213447680, "capacity"=>"13.50%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"31.76 MiB", "used_bytes"=>33307648}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe8d:6188", "mac"=>"08:00:27:8d:61:88", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe8d:6188", "mac"=>"08:00:27:8d:61:88", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"12.04", "operatingsystemrelease"=>"12.04", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"precise", "description"=>"Ubuntu 12.04.5 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"3fff8935-622f-4e9a-944f-38108c71af34"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"185fbdf2-880c-4aa6-ada8-8dade7aa3fc6"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"31f2e84f-0e99-4531-9ecb-2b151fc6ce31"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"S8Vl05-TIfO-rk5Y-gIDu-TIwj-L8Ub-3OjoJb"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 9cb1f6d6a1730dcc9e02dc62be68874f11e5dd6b", "sha256"=>"SSHFP 2 2 6e391d8fc3ab5c57147ba946aafe236972ec89cca3dfb2937f6a874524f1bce0"}, "key"=>"AAAAB3NzaC1kc3MAAACBAOBWnH+OxYCpvG4X6e4AFQNUreLJ3AvvgUUyIirhJ+zhg3IgAoe0LGc1i8t1HPBrmnZDe0jLJJVzQU42jrfQZHlZSlydnkfjoa/Z8R2ruMa+972wODUvSTAtIkuJeYKTMdNQVJCTkiy6DwU2K8UT32uVb6nN/oLHLroM7rQGaZuXAAAAFQC+aaKJlj/9kRyIiQjmYWrMJiry5wAAAIB9Q1hRlr7ZIlDSpmXPk1cVh7e4s0B89NAd4M/49iM5ZXj4FyMtFvsO+tWlRrNhgVJYTK/2agwf9FhBVD0nTqqAKOnisjmRv6QD8jADoVdI7sxxqGRs+HneMjfSXe2sCD8LFQENB3+uY1fIgfvVqAgCRR7QOFA7Xm0xh/iiu2H6+AAAAIEAsnZ59SDy2ISkiaZu9s6TXnt+WrBqtkAqpLMr7Sy+lsV1zWkoEgHKPUrBW1Yfc4tByXCqJk/YrYbkPrVN7ng5E30QACV//YmCaBD76Jm+VDjHFGgaGzh18PhuR/vnhByQ+b+MAE22IE3kqMakxnLpxowWUVVbm0CTG3lFMGvGFnA="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 75fd3452191ff0c693a6e76d75a9a617230e8b21", "sha256"=>"SSHFP 3 2 0ae893992e316dcbed9e14b009a8f00df48a352377da435a4d75a97f7c8e6668"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF5AGWyOlygr7/VMxZepE9A7W5UxuQY9NqxokurV4IR0hWR3K3qZ+ro8ai55HE07W16EGHt5FPLi3ocnzr0U1R0="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 198e8faaf2a7b3c5d0d8071a5fb89d3673baa48f", "sha256"=>"SSHFP 1 2 3c8ba605220954898d29864d617d8e1330d5ac3df2bd73e718fb2ab97098f9ee"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDGzlnmGodUPjwICVkKWpSoIG47EJLT2SYCsCMFjHLUbD6mgXe2vAhgTSwaxxL8lEecc9lZRi1VCG/CaUZFCwirSysADa5pewIA6fFfYNiBqwg56MOEC2cyeQePshi73FRkvPpwQsisAhieW8XCA+93fDPbaQaQpDpc8lIeraVFRkhxSZ2MD2j+4/gMvTH+oIHFa12GidUoRpEryt6qXFrV0dg+L5OKvIGDntssFnBE+zG3lhlFcdm3CwQp34MaVolaDtkCt5klO2GaVLHxtcyG+8wM54urHuW7HK3jxaZwKBeAQJ00rQsuC2dRljOZ9RFFCUWPf/XuCP9nNXEu1hEN"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAOBWnH+OxYCpvG4X6e4AFQNUreLJ3AvvgUUyIirhJ+zhg3IgAoe0LGc1i8t1HPBrmnZDe0jLJJVzQU42jrfQZHlZSlydnkfjoa/Z8R2ruMa+972wODUvSTAtIkuJeYKTMdNQVJCTkiy6DwU2K8UT32uVb6nN/oLHLroM7rQGaZuXAAAAFQC+aaKJlj/9kRyIiQjmYWrMJiry5wAAAIB9Q1hRlr7ZIlDSpmXPk1cVh7e4s0B89NAd4M/49iM5ZXj4FyMtFvsO+tWlRrNhgVJYTK/2agwf9FhBVD0nTqqAKOnisjmRv6QD8jADoVdI7sxxqGRs+HneMjfSXe2sCD8LFQENB3+uY1fIgfvVqAgCRR7QOFA7Xm0xh/iiu2H6+AAAAIEAsnZ59SDy2ISkiaZu9s6TXnt+WrBqtkAqpLMr7Sy+lsV1zWkoEgHKPUrBW1Yfc4tByXCqJk/YrYbkPrVN7ng5E30QACV//YmCaBD76Jm+VDjHFGgaGzh18PhuR/vnhByQ+b+MAE22IE3kqMakxnLpxowWUVVbm0CTG3lFMGvGFnA=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF5AGWyOlygr7/VMxZepE9A7W5UxuQY9NqxokurV4IR0hWR3K3qZ+ro8ai55HE07W16EGHt5FPLi3ocnzr0U1R0=", "sshfp_dsa"=>"SSHFP 2 1 9cb1f6d6a1730dcc9e02dc62be68874f11e5dd6b\nSSHFP 2 2 6e391d8fc3ab5c57147ba946aafe236972ec89cca3dfb2937f6a874524f1bce0", "sshfp_ecdsa"=>"SSHFP 3 1 75fd3452191ff0c693a6e76d75a9a617230e8b21\nSSHFP 3 2 0ae893992e316dcbed9e14b009a8f00df48a352377da435a4d75a97f7c8e6668", "sshfp_rsa"=>"SSHFP 1 1 198e8faaf2a7b3c5d0d8071a5fb89d3673baa48f\nSSHFP 1 2 3c8ba605220954898d29864d617d8e1330d5ac3df2bd73e718fb2ab97098f9ee", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDGzlnmGodUPjwICVkKWpSoIG47EJLT2SYCsCMFjHLUbD6mgXe2vAhgTSwaxxL8lEecc9lZRi1VCG/CaUZFCwirSysADa5pewIA6fFfYNiBqwg56MOEC2cyeQePshi73FRkvPpwQsisAhieW8XCA+93fDPbaQaQpDpc8lIeraVFRkhxSZ2MD2j+4/gMvTH+oIHFa12GidUoRpEryt6qXFrV0dg+L5OKvIGDntssFnBE+zG3lhlFcdm3CwQp34MaVolaDtkCt5klO2GaVLHxtcyG+8wM54urHuW7HK3jxaZwKBeAQJ00rQsuC2dRljOZ9RFFCUWPf/XuCP9nNXEu1hEN", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>60, "uptime"=>"0:01 hours"}, "timezone"=>"PST", "uptime"=>"0:01 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>60, "uuid"=>"3A7F9D94-3B88-45AB-99A4-57745C934A08", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Ubuntu-12.04-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Ubuntu-12.04-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Ubuntu-12.04-64_spec.rb new file mode 100644 index 0000000..e010406 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Ubuntu-12.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Ubuntu-12.04-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"47C86ACE-B882-46AD-8D6D-4260BF97C669"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe5f:df27", "ipaddress6_eth0"=>"fe80::a00:27ff:fe5f:df27", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.13", "kernelrelease"=>"3.13.0-32-generic", "kernelversion"=>"3.13.0", "load_averages"=>{"15m"=>0.01, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"precise", "lsbdistdescription"=>"Ubuntu 12.04.5 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"12.04", "lsbmajdistrelease"=>"12.04", "macaddress"=>"08:00:27:5f:df:27", "macaddress_eth0"=>"08:00:27:5f:df:27", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"350.97 MiB", "available_bytes"=>368017408, "capacity"=>"28.33%", "total"=>"489.72 MiB", "total_bytes"=>513507328, "used"=>"138.75 MiB", "used_bytes"=>145489920}}, "memoryfree"=>"350.97 MiB", "memoryfree_mb"=>350.96875, "memorysize"=>"489.72 MiB", "memorysize_mb"=>489.71875, "mountpoints"=>{"/"=>{"available"=>"17.68 GiB", "available_bytes"=>18981703680, "capacity"=>"6.12%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"18.83 GiB", "size_bytes"=>20219142144, "used"=>"1.15 GiB", "used_bytes"=>1237438464}, "/boot"=>{"available"=>"202.55 MiB", "available_bytes"=>212389888, "capacity"=>"13.93%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"32.77 MiB", "used_bytes"=>34365440}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe5f:df27", "mac"=>"08:00:27:5f:df:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe5f:df27", "mac"=>"08:00:27:5f:df:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"12.04", "operatingsystemrelease"=>"12.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"precise", "description"=>"Ubuntu 12.04.5 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"96092a10-847b-4a55-b5dc-87d2cc56ee5e"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"50695407-158d-4b0e-975a-b575fa5f5359"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"829f03e2-ceb8-4f8d-9f32-e1336456f719"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"P6GCnD-xaHj-APeE-m1Em-fr5a-z3Kk-iFVziN"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 59bc746d9ab774867521d076613863790a696630", "sha256"=>"SSHFP 2 2 8d5bdb7662b7b938beb6517c7d001cc68136d3f1ded5b240cbee1a89dad2d79f"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPHTvj71+XfT0li+zpLYPbY5wKyO36Mij5D4Otl1RMIbZK68No9pDhiPdxMgZrLSq9bHLYs+cxqtSrpZgnNLvT44P+BPZbbQE4HrfcYuv0o2ifa0bqzlyHYl+BT6qSmx8zgBh3iImuhAJhLPnGCzgQ2FkfjAiHKHT1LG4h2knvtTAAAAFQDHa6q8yJo47htrK8LG0D3iAfTT2QAAAIEAtFgO4Qw6K2fQnLSfxL7h98lRopA4tokzKinUjJAoQ86eu9oR4mHDh3FRQlaHJX52RT1GABctV5MyG9LJxUuJLdeyIA7bmJrIPi0TROlHCd3NaS+0r6d1BzmMy+v7cVZsDK+8fqYBjC3b3e+lr3khnUU9uz8GqtrGFrDxjkl8y8QAAACAIKPdIYNLGaoreSz/L0PLSE6xw6+bButDCuuODpGXtD6Q6Cwo+4bjvAwV/yNMVIbrZdic8xjWh1YLxaCx0622XX8wr8GPLr3HViJ74VryCRkvsgXXuZcDl3z5+eEq1YDd5ELzpCcpkW31f64VWYLOIqz3Uo5hXeeCrSEt2vmh+Eo="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 cc6522d24466d3704070e9fda54dc60147978420", "sha256"=>"SSHFP 3 2 9ac8780c7818c208926a847d5f2c3fc274a37a0ed8ae0276f96fb3203e0e0e00"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPZ7/g0ZAcDbNMyMEABW/giY5lPyalZ717tzqmt1baNzEXALYoFN2FMHL/Wid8DUl7oKnXHGSkc4JYYFgpvt11Q="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 0ea50bd46b70a8f9efae23a8bea49388972e9740", "sha256"=>"SSHFP 1 2 0c1c44799be36031d1a8da2d02b9ed4b299ab924c647605afecb1c73063fb307"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCvijE5JYtnXa4uibGq6UEqXn7fboZYCvwZ3RFSkkG6qQ51Q7685OJgayGAZkrbiTeEWOHN6MQPr3TKwSQD2YxoUw3qKQ+hsuTydPK/ZXtNxM0ejFvpIprG1U1NDwj2YVxwo4tQveUewbBQYzEyI1aNQaE2z/fPypQOEj0v9QNAapmGGlV8ab0q0izCM4Aen5pccRZLJuibUUY3nOEfE0QTIM3QmOZoKEmj/Ez3P3+16iGeRNId/+8Bf4R5eVrKhorUUt+H/y/WcCHT5KrbCWkEH6G3eEQ7UA6XCB/sQ5pC6ZKxBbyYjy8N5wySv+5PVpoUHhHjKoSuYy6qQDE2MwRz"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPHTvj71+XfT0li+zpLYPbY5wKyO36Mij5D4Otl1RMIbZK68No9pDhiPdxMgZrLSq9bHLYs+cxqtSrpZgnNLvT44P+BPZbbQE4HrfcYuv0o2ifa0bqzlyHYl+BT6qSmx8zgBh3iImuhAJhLPnGCzgQ2FkfjAiHKHT1LG4h2knvtTAAAAFQDHa6q8yJo47htrK8LG0D3iAfTT2QAAAIEAtFgO4Qw6K2fQnLSfxL7h98lRopA4tokzKinUjJAoQ86eu9oR4mHDh3FRQlaHJX52RT1GABctV5MyG9LJxUuJLdeyIA7bmJrIPi0TROlHCd3NaS+0r6d1BzmMy+v7cVZsDK+8fqYBjC3b3e+lr3khnUU9uz8GqtrGFrDxjkl8y8QAAACAIKPdIYNLGaoreSz/L0PLSE6xw6+bButDCuuODpGXtD6Q6Cwo+4bjvAwV/yNMVIbrZdic8xjWh1YLxaCx0622XX8wr8GPLr3HViJ74VryCRkvsgXXuZcDl3z5+eEq1YDd5ELzpCcpkW31f64VWYLOIqz3Uo5hXeeCrSEt2vmh+Eo=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPZ7/g0ZAcDbNMyMEABW/giY5lPyalZ717tzqmt1baNzEXALYoFN2FMHL/Wid8DUl7oKnXHGSkc4JYYFgpvt11Q=", "sshfp_dsa"=>"SSHFP 2 1 59bc746d9ab774867521d076613863790a696630\nSSHFP 2 2 8d5bdb7662b7b938beb6517c7d001cc68136d3f1ded5b240cbee1a89dad2d79f", "sshfp_ecdsa"=>"SSHFP 3 1 cc6522d24466d3704070e9fda54dc60147978420\nSSHFP 3 2 9ac8780c7818c208926a847d5f2c3fc274a37a0ed8ae0276f96fb3203e0e0e00", "sshfp_rsa"=>"SSHFP 1 1 0ea50bd46b70a8f9efae23a8bea49388972e9740\nSSHFP 1 2 0c1c44799be36031d1a8da2d02b9ed4b299ab924c647605afecb1c73063fb307", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCvijE5JYtnXa4uibGq6UEqXn7fboZYCvwZ3RFSkkG6qQ51Q7685OJgayGAZkrbiTeEWOHN6MQPr3TKwSQD2YxoUw3qKQ+hsuTydPK/ZXtNxM0ejFvpIprG1U1NDwj2YVxwo4tQveUewbBQYzEyI1aNQaE2z/fPypQOEj0v9QNAapmGGlV8ab0q0izCM4Aen5pccRZLJuibUUY3nOEfE0QTIM3QmOZoKEmj/Ez3P3+16iGeRNId/+8Bf4R5eVrKhorUUt+H/y/WcCHT5KrbCWkEH6G3eEQ7UA6XCB/sQ5pC6ZKxBbyYjy8N5wySv+5PVpoUHhHjKoSuYy6qQDE2MwRz", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>368, "uptime"=>"0:06 hours"}, "timezone"=>"PST", "uptime"=>"0:06 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>368, "uuid"=>"47C86ACE-B882-46AD-8D6D-4260BF97C669", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Ubuntu-12.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Ubuntu-14.04-32_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Ubuntu-14.04-32_spec.rb new file mode 100644 index 0000000..c9c6a9a --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Ubuntu-14.04-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Ubuntu-14.04-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"C138B01C-ADF6-4D36-8A3A-D9FCE21FF0C7"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe71:8945", "ipaddress6_eth0"=>"fe80::a00:27ff:fe71:8945", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.16", "kernelrelease"=>"3.16.0-30-generic", "kernelversion"=>"3.16.0", "load_averages"=>{"15m"=>0.05, "1m"=>0.0, "5m"=>0.07}, "lsbdistcodename"=>"trusty", "lsbdistdescription"=>"Ubuntu 14.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"14.04", "lsbmajdistrelease"=>"14.04", "macaddress"=>"08:00:27:71:89:45", "macaddress_eth0"=>"08:00:27:71:89:45", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"414.97 MiB", "available_bytes"=>435126272, "capacity"=>"16.34%", "total"=>"496.04 MiB", "total_bytes"=>520130560, "used"=>"81.07 MiB", "used_bytes"=>85004288}}, "memoryfree"=>"414.97 MiB", "memoryfree_mb"=>414.96875, "memorysize"=>"496.04 MiB", "memorysize_mb"=>496.03515625, "mountpoints"=>{"/"=>{"available"=>"1.72 GiB", "available_bytes"=>1846272000, "capacity"=>"39.25%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"2.83 GiB", "size_bytes"=>-1255694336, "used"=>"1.11 GiB", "used_bytes"=>1193000960}, "/boot"=>{"available"=>"200.06 MiB", "available_bytes"=>209779712, "capacity"=>"14.98%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"35.26 MiB", "used_bytes"=>36975616}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe71:8945", "mac"=>"08:00:27:71:89:45", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe71:8945", "mac"=>"08:00:27:71:89:45", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"14.04", "operatingsystemrelease"=>"14.04", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"trusty", "description"=>"Ubuntu 14.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b31f5de0-8805-43da-b3f2-da9e51c3401b"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"569bc4ac-b4e8-4e62-8503-551a63285383"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"f00f661b-b4b5-4e6f-bba3-3dcacf85fd8e"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"vF1RtV-BHmi-b0UW-QR1z-tJ48-g6Tn-aGgEn7"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1d072f5a62c6f3ecb283ca8a54906665550fb2cf", "sha256"=>"SSHFP 2 2 216358286cef61e3340afe60750513fc6bdbfc96a7190e32929fc11aeefcd375"}, "key"=>"AAAAB3NzaC1kc3MAAACBAKG/fk+L4qOg6yF5DOrNdiTsaSvD7lsYpJAFGR5AJqtmtXZsRckVuydvmsbLVDNi+P+XaO6Sr/dkFfj89vAx6gB+qZxtEbasdoUiddpjzONvjmvfzmGlFZhlptlYTSu3Ci89mY6ZergBMtGqLGh8VmcNPI54eNexasVdG4nbkcxPAAAAFQCaJGszl2tCCa6KY7GYCOisCeGwtwAAAIBDzQlFkAi7IZAQpaUS6V+1frDgnCipxXjDSZD+ObJ4Wgwrj01+vXdeHKj30mIRo7ZatXxZs2dkQHUeL0SJ/bpsdd1jOu4Mf8c+cHqSHcC4Qz2vtlARKNMXAY5vJHh7QBwaPf3/s8tWqX9lnyu1UdTjE/SgF322Nwkz9OFvCHbuuwAAAIBPA32N7qVPwEOsTBG8xVPcUXwguj6ube0n0OUsZB5i8PFjQ99nLbZce9ucLqVzPCYeClgbPrVH1MBtRc67QLKb6Kms8pseuFCtiB78j9A36PfNfTDervnF1Aw/nIb/DQImtmmDKbPhv4uniseqgSdnh2awLVy6UO7haf3Wz6maFA=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 a6f44c1518708b08d997c7a97cc75b0654b098d1", "sha256"=>"SSHFP 3 2 2ccda56b2fb9bd95c2327cceaaf8f868daebb1f7dfc5bd0a9d816fff06f7b474"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCK+3h6/GsmbpRd/xdgTi+vsoh+N6gTB5IZFpZdaJVK6H6cSwmhiEiby/3yqwQFGlSXug8aQiQJ3YZI471wScbU="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 4ca8bd8a83038bc1339ee7037ab2043f41e4b4e7", "sha256"=>"SSHFP 4 2 7326c4dfce373f219025f41f127535f0fb9aacc221adf34e75db8eccc118ab3d"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAICobX2RUot4PEA4s4fTvltDWEWIXFMehgbTwvLezavoq"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 9da876f061d5f203345c99b047a48b24775f77ae", "sha256"=>"SSHFP 1 2 90ca5e6b808b9f47c78e26f9c228dab88b19536d56f6c72443b1d06502646ecf"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC+fl/b51y7U6i6DGQ+FwkYKIzBSVV6DcIZj+Q3BVRLzviOQIQMfNJ0wvLMKKHK96gWaGlknnU0Tn/cvVShuWbaWFBpOTLDsM2cm0usZot8+EmYGnql8D3AFMxhgWBb7pBa5KJOfJidrprXLcSjW82bKhIYbLDDVWMgaoIEVAbufOCobffpwTBYSPS4OdF3WyqNJj2B9tklkUdeUFYKkCFO/mszwSZdY+0xxTyilmyrHr8evbmoA34LREnktKFiu/I5gPXts1CdVLVzvNsMt0VM+ldLEtGPy7qvcddXy34yax538n+A6VOOBg2wpKwEsmqjkCHdq8s/2eWeeu+xGFch"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAKG/fk+L4qOg6yF5DOrNdiTsaSvD7lsYpJAFGR5AJqtmtXZsRckVuydvmsbLVDNi+P+XaO6Sr/dkFfj89vAx6gB+qZxtEbasdoUiddpjzONvjmvfzmGlFZhlptlYTSu3Ci89mY6ZergBMtGqLGh8VmcNPI54eNexasVdG4nbkcxPAAAAFQCaJGszl2tCCa6KY7GYCOisCeGwtwAAAIBDzQlFkAi7IZAQpaUS6V+1frDgnCipxXjDSZD+ObJ4Wgwrj01+vXdeHKj30mIRo7ZatXxZs2dkQHUeL0SJ/bpsdd1jOu4Mf8c+cHqSHcC4Qz2vtlARKNMXAY5vJHh7QBwaPf3/s8tWqX9lnyu1UdTjE/SgF322Nwkz9OFvCHbuuwAAAIBPA32N7qVPwEOsTBG8xVPcUXwguj6ube0n0OUsZB5i8PFjQ99nLbZce9ucLqVzPCYeClgbPrVH1MBtRc67QLKb6Kms8pseuFCtiB78j9A36PfNfTDervnF1Aw/nIb/DQImtmmDKbPhv4uniseqgSdnh2awLVy6UO7haf3Wz6maFA==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCK+3h6/GsmbpRd/xdgTi+vsoh+N6gTB5IZFpZdaJVK6H6cSwmhiEiby/3yqwQFGlSXug8aQiQJ3YZI471wScbU=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAICobX2RUot4PEA4s4fTvltDWEWIXFMehgbTwvLezavoq", "sshfp_dsa"=>"SSHFP 2 1 1d072f5a62c6f3ecb283ca8a54906665550fb2cf\nSSHFP 2 2 216358286cef61e3340afe60750513fc6bdbfc96a7190e32929fc11aeefcd375", "sshfp_ecdsa"=>"SSHFP 3 1 a6f44c1518708b08d997c7a97cc75b0654b098d1\nSSHFP 3 2 2ccda56b2fb9bd95c2327cceaaf8f868daebb1f7dfc5bd0a9d816fff06f7b474", "sshfp_ed25519"=>"SSHFP 4 1 4ca8bd8a83038bc1339ee7037ab2043f41e4b4e7\nSSHFP 4 2 7326c4dfce373f219025f41f127535f0fb9aacc221adf34e75db8eccc118ab3d", "sshfp_rsa"=>"SSHFP 1 1 9da876f061d5f203345c99b047a48b24775f77ae\nSSHFP 1 2 90ca5e6b808b9f47c78e26f9c228dab88b19536d56f6c72443b1d06502646ecf", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC+fl/b51y7U6i6DGQ+FwkYKIzBSVV6DcIZj+Q3BVRLzviOQIQMfNJ0wvLMKKHK96gWaGlknnU0Tn/cvVShuWbaWFBpOTLDsM2cm0usZot8+EmYGnql8D3AFMxhgWBb7pBa5KJOfJidrprXLcSjW82bKhIYbLDDVWMgaoIEVAbufOCobffpwTBYSPS4OdF3WyqNJj2B9tklkUdeUFYKkCFO/mszwSZdY+0xxTyilmyrHr8evbmoA34LREnktKFiu/I5gPXts1CdVLVzvNsMt0VM+ldLEtGPy7qvcddXy34yax538n+A6VOOBg2wpKwEsmqjkCHdq8s/2eWeeu+xGFch", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>354, "uptime"=>"0:05 hours"}, "timezone"=>"PST", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>354, "uuid"=>"C138B01C-ADF6-4D36-8A3A-D9FCE21FF0C7", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Ubuntu-14.04-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Ubuntu-14.04-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Ubuntu-14.04-64_spec.rb new file mode 100644 index 0000000..ba42951 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Ubuntu-14.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Ubuntu-14.04-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"C3C98552-9F17-434C-866B-0E254F5CD115"}}, "domain"=>"pdx.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"ubuntu1404a.pdx.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"ubuntu1404a", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ip6tables_version"=>"1.4.21", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:feea:2027", "ipaddress6_eth0"=>"fe80::a00:27ff:feea:2027", "ipaddress6_eth1"=>"fe80::a00:27ff:fe61:1916", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"10.20.1.93", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.21", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.16", "kernelrelease"=>"3.16.0-30-generic", "kernelversion"=>"3.16.0", "load_averages"=>{"15m"=>0.06, "1m"=>0.49, "5m"=>0.17}, "lsbdistcodename"=>"trusty", "lsbdistdescription"=>"Ubuntu 14.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"14.04", "lsbmajdistrelease"=>"14.04", "macaddress"=>"08:00:27:ea:20:27", "macaddress_eth0"=>"08:00:27:ea:20:27", "macaddress_eth1"=>"08:00:27:61:19:16", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"331.30 MiB", "available_bytes"=>347394048, "capacity"=>"32.35%", "total"=>"489.74 MiB", "total_bytes"=>513531904, "used"=>"158.44 MiB", "used_bytes"=>166137856}}, "memoryfree"=>"331.30 MiB", "memoryfree_mb"=>331.30078125, "memorysize"=>"489.74 MiB", "memorysize_mb"=>489.7421875, "mountpoints"=>{"/"=>{"available"=>"17.58 GiB", "available_bytes"=>18880684032, "capacity"=>"6.62%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"18.83 GiB", "size_bytes"=>20219142144, "used"=>"1.25 GiB", "used_bytes"=>1338458112}, "/boot"=>{"available"=>"198.65 MiB", "available_bytes"=>208301056, "capacity"=>"15.58%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"36.67 MiB", "used_bytes"=>38454272}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8608807, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"pdx.puppetlabs.demo", "fqdn"=>"ubuntu1404a.pdx.puppetlabs.demo", "hostname"=>"ubuntu1404a", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feea:2027", "mac"=>"08:00:27:ea:20:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"ip"=>"10.20.1.93", "ip6"=>"fe80::a00:27ff:fe61:1916", "mac"=>"08:00:27:61:19:16", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feea:2027", "mac"=>"08:00:27:ea:20:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"14.04", "operatingsystemrelease"=>"14.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"trusty", "description"=>"Ubuntu 14.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"c94f234c-f947-450d-aaaf-d32be1b7f27f"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"5501b007-e44b-46cf-b22b-177428cbe5d6"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"3a97a5b0-ebd0-4ce6-ba62-d39b4fd0719e"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"vgfiUo-lVmS-57wx-qv4m-N3fR-efa0-iBI6Cn"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"ubuntu-14.04-amd64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 528b28369558620d8fb12d7bea179e437823154c", "sha256"=>"SSHFP 2 2 5a7688dbb06e4b0c72e6e78ae4ca8b379620ba14b019d5b3ae5670936e1acdf4"}, "key"=>"AAAAB3NzaC1kc3MAAACBAI8c8/RV/kAfEuo71eUt5O1BBbzk34v7b14bi3swzOnzJslJXt2KR/3Dy+8eazzkcw8nbmzZSHvcyo93yQ0LjsExXfG0EkzN7uiE840Fcpg5LFmeCHan0So3Cc1FLavcGu8N+RpWHYYLLmPjlQqPdHSS1rhhXdqKIoiTdlaocXD5AAAAFQCJ0mBV1SSayMNI6tTF4W0o1Y6+cQAAAIBWY05wbeTi/vFgkhH57X0/S7Kr86K3Q/BMz7ZmKF2XCzZW9LJ6Ou0T7tHKAr472DBwUm6IxGHoUXky0Q0+XDCVut9YLYXJK8L/P8SbGwhMfj1YPiv9uorECcrqJMB5W1GCFS+HIo4DvmKYzivcmpE25b/y0V1u5Oas9cQaNZnhxwAAAIBqvLMiEyQPpemji+p+p/9E3sdX6RMUeSHj7n3WSkRTdq09nZ0ewtH12LpbENCjoc4PFh02/qqdub0tjpbgJrMYgwJDADD/AsrdcDBd3gU7mDjyF8PFzWV9nEVYExu447svRt422OW6gkkJ6sn3fovBAvDaWy7OR5YYrg5JLp+/4A=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 505ac6e68fa78305f635f305e11fbb0cc597e8ad", "sha256"=>"SSHFP 3 2 d5840c440b5f52a582589e3b2b583ecea53fd6618851dbcfce2e5cca7624f3c8"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJKYyLqXe/n2LFUbqMkwhLyOpg10LYOx/MpdgFXTxUB67AP4/GoX8zfz5Lb6fOidSJTlrzD5FB584JiRlEGUGLo="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 53784fee8fc968dca5c5d17e731716a012e59234", "sha256"=>"SSHFP 4 2 95b82a785582818106bf403e53667fc559eeabf176f103a929a210a38e9c4e05"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIAAhP8P8zhiQrKmyV/U+e5M7nd5X+ZuIEYCPHDoza0rP"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 4d3d498c7a3377c8f95ac713db4866c32199be51", "sha256"=>"SSHFP 1 2 949c0790f27d5ef7e8b0c35ceabb23bdd50d81611093531c0354330a7234b833"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDIPayGCFe5RUpJ8/UsH6gf+ecMRWo1dc20+HAy0bV4KalYWN5jUB/wrs41rdJRwMKWczgSDi2gFMsJ7q8Vjvpm2hUy+3H3/AEASRij99+37X1T4A6vPpT45EhTpS6JgGROii1Q2+9AJ/6BE6fSawymgR7jDx5QNLbKRy/FiwZAG+A0n29iUALeKqEZMd/1fU0hQCy/V+9V4DgRbHcJz4lKgc6nYrMymj8tUivTd8zm+CQov+YsUAdaXHSxIGVofnFQYXzbPqWGVV8S3fpwvrn/IY6paZ2F/lHoWombHwE271Bw863oWdkKpzP1nhjR3+Q1z++Tl2ZXT+rp6mhS9Pwv"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAI8c8/RV/kAfEuo71eUt5O1BBbzk34v7b14bi3swzOnzJslJXt2KR/3Dy+8eazzkcw8nbmzZSHvcyo93yQ0LjsExXfG0EkzN7uiE840Fcpg5LFmeCHan0So3Cc1FLavcGu8N+RpWHYYLLmPjlQqPdHSS1rhhXdqKIoiTdlaocXD5AAAAFQCJ0mBV1SSayMNI6tTF4W0o1Y6+cQAAAIBWY05wbeTi/vFgkhH57X0/S7Kr86K3Q/BMz7ZmKF2XCzZW9LJ6Ou0T7tHKAr472DBwUm6IxGHoUXky0Q0+XDCVut9YLYXJK8L/P8SbGwhMfj1YPiv9uorECcrqJMB5W1GCFS+HIo4DvmKYzivcmpE25b/y0V1u5Oas9cQaNZnhxwAAAIBqvLMiEyQPpemji+p+p/9E3sdX6RMUeSHj7n3WSkRTdq09nZ0ewtH12LpbENCjoc4PFh02/qqdub0tjpbgJrMYgwJDADD/AsrdcDBd3gU7mDjyF8PFzWV9nEVYExu447svRt422OW6gkkJ6sn3fovBAvDaWy7OR5YYrg5JLp+/4A==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJKYyLqXe/n2LFUbqMkwhLyOpg10LYOx/MpdgFXTxUB67AP4/GoX8zfz5Lb6fOidSJTlrzD5FB584JiRlEGUGLo=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIAAhP8P8zhiQrKmyV/U+e5M7nd5X+ZuIEYCPHDoza0rP", "sshfp_dsa"=>"SSHFP 2 1 528b28369558620d8fb12d7bea179e437823154c\nSSHFP 2 2 5a7688dbb06e4b0c72e6e78ae4ca8b379620ba14b019d5b3ae5670936e1acdf4", "sshfp_ecdsa"=>"SSHFP 3 1 505ac6e68fa78305f635f305e11fbb0cc597e8ad\nSSHFP 3 2 d5840c440b5f52a582589e3b2b583ecea53fd6618851dbcfce2e5cca7624f3c8", "sshfp_ed25519"=>"SSHFP 4 1 53784fee8fc968dca5c5d17e731716a012e59234\nSSHFP 4 2 95b82a785582818106bf403e53667fc559eeabf176f103a929a210a38e9c4e05", "sshfp_rsa"=>"SSHFP 1 1 4d3d498c7a3377c8f95ac713db4866c32199be51\nSSHFP 1 2 949c0790f27d5ef7e8b0c35ceabb23bdd50d81611093531c0354330a7234b833", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDIPayGCFe5RUpJ8/UsH6gf+ecMRWo1dc20+HAy0bV4KalYWN5jUB/wrs41rdJRwMKWczgSDi2gFMsJ7q8Vjvpm2hUy+3H3/AEASRij99+37X1T4A6vPpT45EhTpS6JgGROii1Q2+9AJ/6BE6fSawymgR7jDx5QNLbKRy/FiwZAG+A0n29iUALeKqEZMd/1fU0hQCy/V+9V4DgRbHcJz4lKgc6nYrMymj8tUivTd8zm+CQov+YsUAdaXHSxIGVofnFQYXzbPqWGVV8S3fpwvrn/IY6paZ2F/lHoWombHwE271Bw863oWdkKpzP1nhjR3+Q1z++Tl2ZXT+rp6mhS9Pwv", "staging_http_get"=>"curl", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>47, "uptime"=>"0:00 hours"}, "timezone"=>"PDT", "uptime"=>"0:00 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>47, "uuid"=>"C3C98552-9F17-434C-866B-0E254F5CD115", "virtual"=>"virtualbox", "clientcert"=>"ubuntu1404a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Ubuntu-14.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Ubuntu-18.04-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Ubuntu-18.04-64_spec.rb new file mode 100644 index 0000000..2387372 --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Ubuntu-18.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Ubuntu-18.04-64" do + node_facts = {"aio_agent_version"=>"6.14.0", "architecture"=>"amd64", "augeas"=>{"version"=>"1.12.0"}, "augeasversion"=>"1.12.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>10737418240, "blockdevice_sda_vendor"=>"VBOX", "blockdevice_sdb_model"=>"HARDDISK", "blockdevice_sdb_size"=>10485760, "blockdevice_sdb_vendor"=>"VBOX", "blockdevices"=>"sdb,sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"enp0s3"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"10.00 GiB", "size_bytes"=>10737418240, "vendor"=>"VBOX"}, "sdb"=>{"model"=>"HARDDISK", "size"=>"10.00 MiB", "size_bytes"=>10485760, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"2C7D24ED-FB7D-4B4C-BC4B-B9FC32C8BDC3"}}, "domain"=>"lan.asio", "facterversion"=>"3.14.9", "filesystems"=>"btrfs,ext2,ext3,ext4,iso9660,squashfs,vfat", "fips_enabled"=>false, "fqdn"=>"ubuntu-bionic.lan.asio", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"ubuntu-bionic", "hypervisors"=>{"virtualbox"=>{"revision"=>"133895", "version"=>"6.0.14"}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"enp0s3,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::bb:7dff:fee8:e923", "ipaddress6_enp0s3"=>"fe80::bb:7dff:fee8:e923", "ipaddress6_lo"=>"::1", "ipaddress_enp0s3"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"4.15", "kernelrelease"=>"4.15.0-54-generic", "kernelversion"=>"4.15.0", "load_averages"=>{"15m"=>0.1, "1m"=>0.31, "5m"=>0.23}, "lsbdistcodename"=>"bionic", "lsbdistdescription"=>"Ubuntu 18.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"18.04", "lsbmajdistrelease"=>"18.04", "macaddress"=>"02:bb:7d:e8:e9:23", "macaddress_enp0s3"=>"02:bb:7d:e8:e9:23", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"776.53 MiB", "available_bytes"=>814247936, "capacity"=>"21.19%", "total"=>"985.26 MiB", "total_bytes"=>1033121792, "used"=>"208.73 MiB", "used_bytes"=>218873856}}, "memoryfree"=>"776.53 MiB", "memoryfree_mb"=>776.52734375, "memorysize"=>"985.26 MiB", "memorysize_mb"=>985.26171875, "mountpoints"=>{"/"=>{"available"=>"8.14 GiB", "available_bytes"=>8742756352, "capacity"=>"15.32%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw", "relatime", "data=ordered"], "size"=>"9.63 GiB", "size_bytes"=>10340794368, "used"=>"1.47 GiB", "used_bytes"=>1581260800}, "/dev"=>{"available"=>"480.22 MiB", "available_bytes"=>503545856, "capacity"=>"0%", "device"=>"udev", "filesystem"=>"devtmpfs", "options"=>["rw", "nosuid", "relatime", "size=491744k", "nr_inodes=122936", "mode=755"], "size"=>"480.22 MiB", "size_bytes"=>503545856, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/hugepages"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"hugetlbfs", "filesystem"=>"hugetlbfs", "options"=>["rw", "relatime", "pagesize=2M"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/mqueue"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mqueue", "filesystem"=>"mqueue", "options"=>["rw", "relatime"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/pts"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"devpts", "filesystem"=>"devpts", "options"=>["rw", "nosuid", "noexec", "relatime", "gid=5", "mode=620", "ptmxmode=000"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/shm"=>{"available"=>"492.63 MiB", "available_bytes"=>516558848, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev"], "size"=>"492.63 MiB", "size_bytes"=>516558848, "used"=>"0 bytes", "used_bytes"=>0}, "/run"=>{"available"=>"97.93 MiB", "available_bytes"=>102690816, "capacity"=>"0.60%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "noexec", "relatime", "size=100892k", "mode=755"], "size"=>"98.53 MiB", "size_bytes"=>103313408, "used"=>"608.00 KiB", "used_bytes"=>622592}, "/run/lock"=>{"available"=>"5.00 MiB", "available_bytes"=>5242880, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev", "noexec", "relatime", "size=5120k"], "size"=>"5.00 MiB", "size_bytes"=>5242880, "used"=>"0 bytes", "used_bytes"=>0}, "/run/user/1000"=>{"available"=>"98.52 MiB", "available_bytes"=>103309312, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev", "relatime", "size=100888k", "mode=700", "uid=1000", "gid=1000"], "size"=>"98.52 MiB", "size_bytes"=>103309312, "used"=>"0 bytes", "used_bytes"=>0}, "/sys/fs/cgroup"=>{"available"=>"492.63 MiB", "available_bytes"=>516558848, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["ro", "nosuid", "nodev", "noexec", "mode=755"], "size"=>"492.63 MiB", "size_bytes"=>516558848, "used"=>"0 bytes", "used_bytes"=>0}, "/vagrant"=>{"available"=>"122.93 GiB", "available_bytes"=>131996221440, "capacity"=>"85.01%", "device"=>"vagrant", "filesystem"=>"vboxsf", "options"=>["rw", "nodev", "relatime", "iocharset=utf8", "uid=1000", "gid=1000"], "size"=>"820.33 GiB", "size_bytes"=>880824786944, "used"=>"697.40 GiB", "used_bytes"=>748828565504}, "/var/lib/lxcfs"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"lxcfs", "filesystem"=>"fuse.lxcfs", "options"=>["rw", "nosuid", "nodev", "relatime", "user_id=0", "group_id=0", "allow_other"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_enp0s3"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s3"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_enp0s3"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_enp0s3"=>"fe80::", "network6_lo"=>"::1", "network_enp0s3"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"lan.asio", "fqdn"=>"ubuntu-bionic.lan.asio", "hostname"=>"ubuntu-bionic", "interfaces"=>{"enp0s3"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::bb:7dff:fee8:e923", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::bb:7dff:fee8:e923", "mac"=>"02:bb:7d:e8:e9:23", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "scope6"=>"link"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1", "scope6"=>"host"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::bb:7dff:fee8:e923", "mac"=>"02:bb:7d:e8:e9:23", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"enp0s3", "scope6"=>"link"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"18.04", "operatingsystemrelease"=>"18.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"bionic", "description"=>"Ubuntu 18.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"18.04", "major"=>"18.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"18.04", "major"=>"18.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext4", "label"=>"cloudimg-rootfs", "mount"=>"/", "partuuid"=>"654c6dc7-01", "size"=>"10.00 GiB", "size_bytes"=>10736352768, "uuid"=>"8de716dd-d9b2-477f-b818-bb0b1eb036ce"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"6.14.0", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.7"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.7", "scope6"=>"link", "scope6_enp0s3"=>"link", "scope6_lo"=>"host", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 7024118ae71eead4750a74d458472e89e38c7e7c", "sha256"=>"SSHFP 2 2 e5606c7ee1cf32f5591b42c98a9bc87d27cef4bc75c7802cd3f22bcb39333656"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPemHtx92WDon/zDA0oaO5wWOXCUx45+6X9QxJugdryqG3RV0J/ZkKhayANq7NO1GeC3/3EC8celhsHyZFILEEJpFPzW32053dVnOZ6JyQCGb4JKFaCH7DjVnZLlTPyqvraykF3beEhp7dArSpsgsIURJLDRvE3PJdd9DDNtOapXAAAAFQC27/RqfyRjrjSOjNrfsqLm6GoT0QAAAIAJm6rGXMlZ+xNfPfVHsugGNP7BdcFLSWnUGaBQ+51FGkRdVesun6HF5A9/TNBfQ6U2k1BE8Qtc3H8uHrwenIQKyWuhVejvpYVD3NA6hztMWYiidiQ7Ji0O3qkPv4CY5QhlmyPit1gR4aly/fG1H8p+J/XbwrJXMtfR6ND3OXbeYwAAAIEAzDOkrJJgq5f+oPSVaOOmvbNdJ0B003fTyJEH+2yCm3q41O7vakoWv9Qt9mH7T/ivqwMK3yzk1eIpozx8TPU1aOQC3OyehoEXXFY6U5Jcgp0K8WUvVgnC47hAKBkf562aGdWftWNu4GkjI6wcNtZqkeVN/wyazilHRF9GyPdsvHg=", "type"=>"ssh-dss"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 aa6b8ac4bccb5afded59e2bf680cc151bbb27ef9", "sha256"=>"SSHFP 3 2 4ee2dc2ded938a37ef44de4fd3f3add478abfe272f0a50dc7dbb1f9a4839ca99"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF02SaI3oPW6CVWEvzDuf/XqaUF+OAr4RKNW3hAR8RRBSDEjQGdoejQEYP8lEFa1KeVlkJYnvgrPYwxVSUI6hUA=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 a20e01cf434a802607e1aff21e621dd3ada6499f", "sha256"=>"SSHFP 4 2 569917b95c5299fe3cdd1cc4a37166d1e81106a22bb75a15b99bb8694b2ac8c4"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHmh1Z/od2mbHDUkAL2bXswdwp43dPXQOKo9DA8AUDO1", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3bc833bc8e3e259da03d37aa0c0244ae98f30622", "sha256"=>"SSHFP 1 2 f27f0e09326c1c8abc2b0691bc6444b77781c0a21e9d99933492f269e5163346"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+QuEhOY+IrmAaG1/PgO0nyxYY0VYilhjcM5daSKb61z+XBmBuAsgVxWaQ815OxlwYQunPJZlKnaXZ8yTlnjk8eekxvWnoSLtqKZWW1+RfMyy6n6MyXdno1mwez+5HG3tThC63xE4EWbmKH+fsWuNT2ZpQ49fuWnG8sObv/66QLyCjt+KHMpy9ClHjpYli+0hFhdHTwxGo9H/r4I2En9rBcTy3nQZhZGm1FFh6xnHxnSGm02r2fhsk2x0kw9K1pA7IFtr31hBOu5Po5CJBVJQBd1TEozmNELl2ZISmT0HK3sIV4AG/FmFEsd9+63ST5BbeurlcOEzvxudDJmuroZX", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPemHtx92WDon/zDA0oaO5wWOXCUx45+6X9QxJugdryqG3RV0J/ZkKhayANq7NO1GeC3/3EC8celhsHyZFILEEJpFPzW32053dVnOZ6JyQCGb4JKFaCH7DjVnZLlTPyqvraykF3beEhp7dArSpsgsIURJLDRvE3PJdd9DDNtOapXAAAAFQC27/RqfyRjrjSOjNrfsqLm6GoT0QAAAIAJm6rGXMlZ+xNfPfVHsugGNP7BdcFLSWnUGaBQ+51FGkRdVesun6HF5A9/TNBfQ6U2k1BE8Qtc3H8uHrwenIQKyWuhVejvpYVD3NA6hztMWYiidiQ7Ji0O3qkPv4CY5QhlmyPit1gR4aly/fG1H8p+J/XbwrJXMtfR6ND3OXbeYwAAAIEAzDOkrJJgq5f+oPSVaOOmvbNdJ0B003fTyJEH+2yCm3q41O7vakoWv9Qt9mH7T/ivqwMK3yzk1eIpozx8TPU1aOQC3OyehoEXXFY6U5Jcgp0K8WUvVgnC47hAKBkf562aGdWftWNu4GkjI6wcNtZqkeVN/wyazilHRF9GyPdsvHg=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF02SaI3oPW6CVWEvzDuf/XqaUF+OAr4RKNW3hAR8RRBSDEjQGdoejQEYP8lEFa1KeVlkJYnvgrPYwxVSUI6hUA=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHmh1Z/od2mbHDUkAL2bXswdwp43dPXQOKo9DA8AUDO1", "sshfp_dsa"=>"SSHFP 2 1 7024118ae71eead4750a74d458472e89e38c7e7c\nSSHFP 2 2 e5606c7ee1cf32f5591b42c98a9bc87d27cef4bc75c7802cd3f22bcb39333656", "sshfp_ecdsa"=>"SSHFP 3 1 aa6b8ac4bccb5afded59e2bf680cc151bbb27ef9\nSSHFP 3 2 4ee2dc2ded938a37ef44de4fd3f3add478abfe272f0a50dc7dbb1f9a4839ca99", "sshfp_ed25519"=>"SSHFP 4 1 a20e01cf434a802607e1aff21e621dd3ada6499f\nSSHFP 4 2 569917b95c5299fe3cdd1cc4a37166d1e81106a22bb75a15b99bb8694b2ac8c4", "sshfp_rsa"=>"SSHFP 1 1 3bc833bc8e3e259da03d37aa0c0244ae98f30622\nSSHFP 1 2 f27f0e09326c1c8abc2b0691bc6444b77781c0a21e9d99933492f269e5163346", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+QuEhOY+IrmAaG1/PgO0nyxYY0VYilhjcM5daSKb61z+XBmBuAsgVxWaQ815OxlwYQunPJZlKnaXZ8yTlnjk8eekxvWnoSLtqKZWW1+RfMyy6n6MyXdno1mwez+5HG3tThC63xE4EWbmKH+fsWuNT2ZpQ49fuWnG8sObv/66QLyCjt+KHMpy9ClHjpYli+0hFhdHTwxGo9H/r4I2En9rBcTy3nQZhZGm1FFh6xnHxnSGm02r2fhsk2x0kw9K1pA7IFtr31hBOu5Po5CJBVJQBd1TEozmNELl2ZISmT0HK3sIV4AG/FmFEsd9+63ST5BbeurlcOEzvxudDJmuroZX", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>336, "uptime"=>"0:05 hours"}, "timezone"=>"UTC", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>336, "uuid"=>"2C7D24ED-FB7D-4B4C-BC4B-B9FC32C8BDC3", "virtual"=>"virtualbox", "clientcert"=>"ubuntu-bionic.lan.asio", "clientversion"=>"6.14.0", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Ubuntu-18.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Windows_Server-2008r2-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Windows_Server-2008r2-64_spec.rb new file mode 100644 index 0000000..c4ebfab --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Windows_Server-2008r2-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Windows_Server-2008r2-64" do + node_facts = {"agent_specified_environment"=>"production", "aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x64", "common_appdata"=>"C:\\ProgramData", "concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"Local Area Connection"=>"10.0.2.2"}, "dmi"=>{"manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0"}}, "domain"=>"pdx.puppetlabs.demo", "env_windows_installdir"=>"C:\\Program Files\\Puppet Labs\\Puppet", "facterversion"=>"3.0.2", "fqdn"=>"server2008r2a.pdx.puppetlabs.demo", "hardwareisa"=>"x64", "hardwaremodel"=>"x86_64", "hostname"=>"server2008r2a", "id"=>"SERVER2008R2A\\vagrant", "identity"=>{"user"=>"SERVER2008R2A\\vagrant"}, "iis_version"=>"Get-ItemProperty : Cannot find path 'HKLM:\\SOFTWARE\\Microsoft\\InetStp\\' because it does not exist.\nAt line:1 char:18\n+ (Get-ItemProperty <<<< HKLM:\\SOFTWARE\\Microsoft\\InetStp\\ -Name VersionString).VersionString.SubString(8,3)\n + CategoryInfo : ObjectNotFound: (HKLM:\\SOFTWARE\\Microsoft\\InetStp\\:String) [Get-ItemProperty], ItemNotFo \n undException\n + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetItemPropertyCommand\n \nYou cannot call a method on a null-valued expression.\nAt line:1 char:97\n+ (Get-ItemProperty HKLM:\\SOFTWARE\\Microsoft\\InetStp\\ -Name VersionString).VersionString.SubString <<<< (8,3)\n + CategoryInfo : InvalidOperation: (SubString:String) [], RuntimeException\n + FullyQualifiedErrorId : InvokeMethodOnNull\n \n", "interfaces"=>"Local Area Connection 2,Local Area Connection", "ipaddress"=>"10.20.1.101", "ipaddress6"=>"fe80::2c34:c353:1aaa:a872%13", "ipaddress6_Local Area Connection"=>"fe80::50f8:86eb:f103:75b%12", "ipaddress6_Local Area Connection 2"=>"fe80::2c34:c353:1aaa:a872%13", "ipaddress_Local Area Connection"=>"10.0.2.15", "ipaddress_Local Area Connection 2"=>"10.20.1.101", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"windows", "kernelmajversion"=>"6.1", "kernelrelease"=>"6.1.7600", "kernelversion"=>"6.1.7600", "macaddress"=>"08:00:27:7B:C7:40", "macaddress_Local Area Connection"=>"08:00:27:AB:52:FB", "macaddress_Local Area Connection 2"=>"08:00:27:7B:C7:40", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"448.14 MiB", "available_bytes"=>469909504, "capacity"=>"56.22%", "total"=>"1023.55 MiB", "total_bytes"=>1073274880, "used"=>"575.41 MiB", "used_bytes"=>603365376}}, "memoryfree"=>"448.14 MiB", "memoryfree_mb"=>448.140625, "memorysize"=>"1023.55 MiB", "memorysize_mb"=>1023.5546875, "mtu_Local Area Connection"=>1500, "mtu_Local Area Connection 2"=>1500, "mysql_server_id"=>8583088, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_Local Area Connection"=>"ffff:ffff:ffff:ffff::", "netmask6_Local Area Connection 2"=>"ffff:ffff:ffff:ffff::", "netmask_Local Area Connection"=>"255.255.255.0", "netmask_Local Area Connection 2"=>"255.255.255.0", "network"=>"10.20.1.0", "network6"=>"fe80::%13", "network6_Local Area Connection"=>"fe80::%12", "network6_Local Area Connection 2"=>"fe80::%13", "network_Local Area Connection"=>"10.0.2.0", "network_Local Area Connection 2"=>"10.20.1.0", "networking"=>{"domain"=>"pdx.puppetlabs.demo", "fqdn"=>"server2008r2a.pdx.puppetlabs.demo", "hostname"=>"server2008r2a", "interfaces"=>{"Local Area Connection"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::50f8:86eb:f103:75b%12", "mac"=>"08:00:27:AB:52:FB", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12"}, "Local Area Connection 2"=>{"ip"=>"10.20.1.101", "ip6"=>"fe80::2c34:c353:1aaa:a872%13", "mac"=>"08:00:27:7B:C7:40", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::%13"}}, "ip"=>"10.20.1.101", "ip6"=>"fe80::2c34:c353:1aaa:a872%13", "mac"=>"08:00:27:7B:C7:40", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::%13"}, "operatingsystem"=>"windows", "operatingsystemmajrelease"=>"2008 R2", "operatingsystemrelease"=>"2008 R2", "os"=>{"architecture"=>"x64", "family"=>"windows", "hardware"=>"x86_64", "name"=>"windows", "release"=>{"full"=>"2008 R2", "major"=>"2008 R2"}, "windows"=>{"system32"=>"C:\\Windows\\system32"}}, "osfamily"=>"windows", "path"=>"C:/Program Files/Puppet Labs/Puppet/facter/bin;C:\\Program Files\\Puppet Labs\\Puppet\\puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\facter\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\hiera\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\mcollective\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\ruby\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\tools\\bin;%SystemRoot%\\system32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\ProgramData\\chocolatey\\bin;", "pe_concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>false, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"C:/ProgramData/PuppetLabs/puppet/cache", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x64-mingw32", "sitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "serialnumber"=>"0", "staging_http_get"=>"powershell", "staging_windir"=>"C:\\ProgramData\\staging", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>266, "uptime"=>"0:04 hours"}, "timezone"=>"Pacific Daylight Time", "uptime"=>"0:04 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>266, "virtual"=>"virtualbox", "clientcert"=>"server2008r2a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Windows_Server-2008r2-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_Windows_Server-2012r2-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_Windows_Server-2012r2-64_spec.rb new file mode 100644 index 0000000..f326e3b --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_Windows_Server-2012r2-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set Windows_Server-2012r2-64" do + node_facts = {"agent_specified_environment"=>"production", "architecture"=>"x64", "dhcp_servers"=>{"Ethernet"=>"10.0.2.2", "system"=>"10.0.2.2"}, "dmi"=>{"manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0"}}, "env_windows_installdir"=>"C:\\Program Files\\Puppet Labs\\Puppet", "facterversion"=>"3.1.1", "fqdn"=>"WIN-E5K8TM30719", "hardwareisa"=>"x64", "hardwaremodel"=>"x86_64", "hostname"=>"WIN-E5K8TM30719", "id"=>"WIN-E5K8TM30719\\vagrant", "identity"=>{"user"=>"WIN-E5K8TM30719\\vagrant"}, "interfaces"=>"Ethernet", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a180:36e0:3a6e:1005%12", "ipaddress6_Ethernet"=>"fe80::a180:36e0:3a6e:1005%12", "ipaddress_Ethernet"=>"10.0.2.15", "is_virtual"=>true, "kernel"=>"windows", "kernelmajversion"=>"6.3", "kernelrelease"=>"6.3.9600", "kernelversion"=>"6.3.9600", "macaddress"=>"08:00:27:81:38:FA", "macaddress_Ethernet"=>"08:00:27:81:38:FA", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"1.42 GiB", "available_bytes"=>1521610752, "capacity"=>"29.13%", "total"=>"2.00 GiB", "total_bytes"=>2147012608, "used"=>"596.43 MiB", "used_bytes"=>625401856}}, "memoryfree"=>"1.42 GiB", "memoryfree_mb"=>1451.12109375, "memorysize"=>"2.00 GiB", "memorysize_mb"=>2047.55078125, "mtu_Ethernet"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_Ethernet"=>"ffff:ffff:ffff:ffff::", "netmask_Ethernet"=>"255.255.255.0", "network"=>"10.0.2.0", "network6"=>"fe80::%12", "network6_Ethernet"=>"fe80::%12", "network_Ethernet"=>"10.0.2.0", "networking"=>{"dhcp"=>"10.0.2.2", "fqdn"=>"WIN-E5K8TM30719", "hostname"=>"WIN-E5K8TM30719", "interfaces"=>{"Ethernet"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::a180:36e0:3a6e:1005%12", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::%12"}], "dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a180:36e0:3a6e:1005%12", "mac"=>"08:00:27:81:38:FA", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a180:36e0:3a6e:1005%12", "mac"=>"08:00:27:81:38:FA", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12", "primary"=>"Ethernet"}, "operatingsystem"=>"windows", "operatingsystemmajrelease"=>"2012 R2", "operatingsystemrelease"=>"2012 R2", "os"=>{"architecture"=>"x64", "family"=>"windows", "hardware"=>"x86_64", "name"=>"windows", "release"=>{"full"=>"2012 R2", "major"=>"2012 R2"}, "windows"=>{"system32"=>"C:\\Windows\\system32"}}, "osfamily"=>"windows", "path"=>"C:/Program Files/Puppet Labs/Puppet/facter/bin;C:\\Program Files\\Puppet Labs\\Puppet\\puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\facter\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\hiera\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\mcollective\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\ruby\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\tools\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files (x86)\\Git\\cmd;C:\\Program Files (x86)\\Git\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.3", "ruby"=>{"platform"=>"x64-mingw32", "sitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.7"}, "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.7", "serialnumber"=>"0", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>287, "uptime"=>"0:04 hours"}, "timezone"=>"Coordinated Universal Time", "uptime"=>"0:04 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>287, "virtual"=>"virtualbox", "clientcert"=>"win-e5k8tm30719", "clientversion"=>"4.2.3", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'Windows_Server-2012r2-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_solaris-10_u9-sparc-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_solaris-10_u9-sparc-64_spec.rb new file mode 100644 index 0000000..da431ba --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_solaris-10_u9-sparc-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set solaris-10_u9-sparc-64" do + node_facts = {"aio_agent_build"=>"1.4.2", "aio_agent_version"=>"1.4.2", "architecture"=>"sun4v", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_sd4_size"=>-1168154624, "blockdevice_sd4_vendor"=>"HITACHI", "blockdevice_sd5_size"=>-647710720, "blockdevice_sd5_vendor"=>"HITACHI", "blockdevice_sd6_size"=>0, "blockdevice_sd6_vendor"=>"AMI", "blockdevice_sd7_size"=>0, "blockdevice_sd7_vendor"=>"TEAC", "blockdevice_sd8_size"=>-1168154624, "blockdevice_sd8_vendor"=>"HITACHI", "blockdevice_sd9_size"=>-647710720, "blockdevice_sd9_vendor"=>"HITACHI", "blockdevices"=>"sd4,sd5,sd8,sd9,sd7,sd6", "custom_auth_conf"=>false, "disks"=>{"sd4"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd5"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}, "sd6"=>{"product"=>"Virtual CDROM Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"AMI"}, "sd7"=>{"product"=>"DV-W28SS-W Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"TEAC"}, "sd8"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd9"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}}, "dmi"=>{"manufacturer"=>"Oracle Corporation"}, "domain"=>"puppet.example", "facterversion"=>"3.1.6", "fqdn"=>"solaris-10_u9-sparc-t4-64.puppet.example", "gid"=>"root", "hardwareisa"=>"sparc", "hardwaremodel"=>"sun4v", "hostname"=>"solaris-10_u9-sparc-t4-64", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,net0", "ipaddress"=>"10.32.77.42", "ipaddress_lo0"=>"127.0.0.1", "ipaddress_net0"=>"10.32.77.42", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"SunOS", "kernelmajversion"=>"Generic_Virtual", "kernelrelease"=>"5.10", "kernelversion"=>"Generic_Virtual", "load_averages"=>{"15m"=>1.015625, "1m"=>1.89453125, "5m"=>1.25390625}, "macaddress"=>"02:08:20:f1:97:4b", "macaddress_net0"=>"02:08:20:f1:97:4b", "manufacturer"=>"Oracle Corporation", "memory"=>{"swap"=>{"available"=>"4.00 GiB", "available_bytes"=>-8192, "capacity"=>"0%", "total"=>"4.00 GiB", "total_bytes"=>-8192, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"3.25 GiB", "available_bytes"=>-806297600, "capacity"=>"78.94%", "total"=>"15.43 GiB", "total_bytes"=>-611737600, "used"=>"12.18 GiB", "used_bytes"=>194560000}}, "memoryfree"=>"3.25 GiB", "memoryfree_mb"=>3327.0546875, "memorysize"=>"15.43 GiB", "memorysize_mb"=>15800.6015625, "mountpoints"=>{"/"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"1.14%", "device"=>"rpool/ROOT/zbe-0", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc10/root/", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950161"], "size"=>"480.01 GiB", "size_bytes"=>13566464, "used"=>"5.49 GiB", "used_bytes"=>1602503680}, "/.SUNWnative/lib"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/lib", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/platform"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/platform", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/sbin"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/sbin", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/usr"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/usr", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/dev"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"/dev", "filesystem"=>"dev", "options"=>["zone=cisparc10", "nozonemod", "sharezone=36", "dev=8e0001b"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/fd"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"fd", "filesystem"=>"fd", "options"=>["rw", "nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=9040025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/mnttab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mnttab", "filesystem"=>"mntfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8e80025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/svc/volatile"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.01%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc10", "sharezone=36", "dev=8ec0049"], "size"=>"5.48 GiB", "size_bytes"=>1591631872, "used"=>"448.00 KiB", "used_bytes"=>458752}, "/export"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool/export", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950163"], "size"=>"474.52 GiB", "size_bytes"=>-1588904448, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/export/home"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool/export/home", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950164"], "size"=>"474.52 GiB", "size_bytes"=>-1588905472, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/proc"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"proc", "filesystem"=>"proc", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8dc0024"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/rpool"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950165"], "size"=>"474.52 GiB", "size_bytes"=>-1588905472, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/system/contract"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"ctfs", "filesystem"=>"ctfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8e40025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/object"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"objfs", "filesystem"=>"objfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8f00025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/tmp"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.70%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc10", "sharezone=36", "dev=8ec004a"], "size"=>"5.52 GiB", "size_bytes"=>1632608256, "used"=>"39.52 MiB", "used_bytes"=>41435136}, "/var"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.03%", "device"=>"rpool/ROOT/zbe-0/var", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc10/root/var", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950162"], "size"=>"474.66 GiB", "size_bytes"=>-1436724224, "used"=>"145.16 MiB", "used_bytes"=>152212992}, "/var/run"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.01%", "device"=>"/etc/svc/volatile/", "filesystem"=>"lofs", "options"=>["rstchown", "zone=cisparc10", "sharezone=36", "dev=8ec0049"], "size"=>"5.48 GiB", "size_bytes"=>1591631872, "used"=>"448.00 KiB", "used_bytes"=>458752}}, "mtu_lo0"=>8232, "mtu_net0"=>1500, "netmask"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "netmask_net0"=>"255.255.255.0", "network"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "network_net0"=>"10.32.77.0", "networking"=>{"domain"=>"puppet.example", "fqdn"=>"solaris-10_u9-sparc-t4-64.puppet.example", "hostname"=>"solaris-10_u9-sparc-t4-64", "interfaces"=>{"lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "ip"=>"127.0.0.1", "mtu"=>8232, "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, "net0"=>{"bindings"=>[{"address"=>"10.32.77.42", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.42", "mac"=>"02:08:20:f1:97:4b", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}}, "ip"=>"10.32.77.42", "mac"=>"02:08:20:f1:97:4b", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"net0"}, "operatingsystem"=>"Solaris", "operatingsystemmajrelease"=>"10", "operatingsystemrelease"=>"10_u9", "os"=>{"architecture"=>"sun4v", "family"=>"Solaris", "hardware"=>"sun4v", "name"=>"Solaris", "release"=>{"full"=>"10_u9", "major"=>"10", "minor"=>"9"}}, "osfamily"=>"Solaris", "path"=>"/usr/local/bin:/usr/local/sbin:/opt/csw/bin:PATH:/opt/puppetlabs/bin:/usr/local/bin:/usr/local/sbin:/opt/csw/bin:/usr/sbin:/usr/bin:/sbin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"solaris-10-sparc", "processor0"=>"SPARC-T4", "processor1"=>"SPARC-T4", "processor10"=>"SPARC-T4", "processor11"=>"SPARC-T4", "processor12"=>"SPARC-T4", "processor13"=>"SPARC-T4", "processor14"=>"SPARC-T4", "processor15"=>"SPARC-T4", "processor16"=>"SPARC-T4", "processor17"=>"SPARC-T4", "processor18"=>"SPARC-T4", "processor19"=>"SPARC-T4", "processor2"=>"SPARC-T4", "processor20"=>"SPARC-T4", "processor21"=>"SPARC-T4", "processor22"=>"SPARC-T4", "processor23"=>"SPARC-T4", "processor24"=>"SPARC-T4", "processor25"=>"SPARC-T4", "processor26"=>"SPARC-T4", "processor27"=>"SPARC-T4", "processor28"=>"SPARC-T4", "processor29"=>"SPARC-T4", "processor3"=>"SPARC-T4", "processor30"=>"SPARC-T4", "processor31"=>"SPARC-T4", "processor32"=>"SPARC-T4", "processor33"=>"SPARC-T4", "processor34"=>"SPARC-T4", "processor35"=>"SPARC-T4", "processor36"=>"SPARC-T4", "processor37"=>"SPARC-T4", "processor38"=>"SPARC-T4", "processor39"=>"SPARC-T4", "processor4"=>"SPARC-T4", "processor40"=>"SPARC-T4", "processor41"=>"SPARC-T4", "processor42"=>"SPARC-T4", "processor43"=>"SPARC-T4", "processor44"=>"SPARC-T4", "processor45"=>"SPARC-T4", "processor46"=>"SPARC-T4", "processor47"=>"SPARC-T4", "processor48"=>"SPARC-T4", "processor49"=>"SPARC-T4", "processor5"=>"SPARC-T4", "processor50"=>"SPARC-T4", "processor51"=>"SPARC-T4", "processor52"=>"SPARC-T4", "processor53"=>"SPARC-T4", "processor54"=>"SPARC-T4", "processor55"=>"SPARC-T4", "processor56"=>"SPARC-T4", "processor57"=>"SPARC-T4", "processor58"=>"SPARC-T4", "processor59"=>"SPARC-T4", "processor6"=>"SPARC-T4", "processor60"=>"SPARC-T4", "processor61"=>"SPARC-T4", "processor62"=>"SPARC-T4", "processor63"=>"SPARC-T4", "processor7"=>" SPARC-T4", "processor8"=>"SPARC-T4", "processor9"=>"SPARC-T4", "processorcount"=>64, "processors"=>{"count"=>64, "isa"=>"sparc", "models"=>["SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4"], "physicalcount"=>1, "speed"=>"2.85 GHz"}, "puppet_files_dir_present"=>false, "puppetversion"=>"4.4.2", "ruby"=>{"platform"=>"sparc-solaris2.10", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.8"}, "rubyplatform"=>"sparc-solaris2.10", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.8", "solaris_zones"=>{"current"=>"solaris-10_u9-sparc-t4-64", "zones"=>{"solaris-10_u9-sparc-t4-64"=>{"brand"=>"solaris10", "id"=>"36", "ip_type"=>"excl", "path"=>"/", "status"=>"running"}}}, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 c9a8316e12052c89f9c8eea38c433c50950d5798", "sha256"=>"SSHFP 2 2 26773f31bd38b64224ee474eec7659dc05f23f8cb43e8352c1b58545bf5bbb15"}, "key"=>"AAAAB3NzaC1kc3MAAACBAIBt3ynjIBp7/uKbi9RdcO5DiIA0l7y4BmHsfm9042jYtMvIZkMF9cqwvxHjgoHW9JZGGNgIxUK/q0vjuGzctspVUovGBfL+m7F9Lp0rAHZVRkRm1wzGtjCPcdq35J9uVVj0YiHKvuuRvpooVtF55fe9ZfvwPBW41n9+eCX+yjY9AAAAFQC79jdm/KtE/8yXT6r1dMs63sF70wAAAIBC1yGHJcpRJt5NPi0t+eFQu6sDxxUeaaChW4u8BFLT4NXQ6SgBGW7FpT/zEaYEn2UZeQ8Mk3jAycUckyq5qSmWpunTHWdz8iKuuzPSyMgAYXwv0nGL+soRwGcjFdHIhCi2LGloN8JZpE/Kz2ry7yThwL7qMq3i8FFlovWDesAyzAAAAIATGYMDBcEnIY8+CvG3qFtsX4oM//ExuislYawqmChhp7A8IaMLeBoXmc3AdvvuZ/7CS/Kq/XwJApIPy9apRtqJp5zG5R9TvqEmCtCqtemvAmT0n9WsvDWev4YCIWj9wMiRlmT7HemL+5qFiKOmvo9lTd4NPRL3+gIPHCqXHyxacg=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 ea3ecdaaf4d5112fe3148cb52385f928a3cc53f4", "sha256"=>"SSHFP 1 2 961dddd0fb580a5c0d1db74c16560fa37529cf4d162c13de99a880b1e91fd424"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAIEAz60kx84oy4edq6Nt2/SMQfQVVXoic/64JQ45EnwGKlMYvU3Okp3pT7uqyl+I5mXFjTB7wzLfIxzK5beofKDUbXNM5BwVeFQuZLR/hRusuvR5ntOce2kFMnyFteuvBue7Tg8YMGHAEM7fjfcqvuQgxWMELMJFwq0yUcl/aOL/o+U="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAIBt3ynjIBp7/uKbi9RdcO5DiIA0l7y4BmHsfm9042jYtMvIZkMF9cqwvxHjgoHW9JZGGNgIxUK/q0vjuGzctspVUovGBfL+m7F9Lp0rAHZVRkRm1wzGtjCPcdq35J9uVVj0YiHKvuuRvpooVtF55fe9ZfvwPBW41n9+eCX+yjY9AAAAFQC79jdm/KtE/8yXT6r1dMs63sF70wAAAIBC1yGHJcpRJt5NPi0t+eFQu6sDxxUeaaChW4u8BFLT4NXQ6SgBGW7FpT/zEaYEn2UZeQ8Mk3jAycUckyq5qSmWpunTHWdz8iKuuzPSyMgAYXwv0nGL+soRwGcjFdHIhCi2LGloN8JZpE/Kz2ry7yThwL7qMq3i8FFlovWDesAyzAAAAIATGYMDBcEnIY8+CvG3qFtsX4oM//ExuislYawqmChhp7A8IaMLeBoXmc3AdvvuZ/7CS/Kq/XwJApIPy9apRtqJp5zG5R9TvqEmCtCqtemvAmT0n9WsvDWev4YCIWj9wMiRlmT7HemL+5qFiKOmvo9lTd4NPRL3+gIPHCqXHyxacg==", "sshfp_dsa"=>"SSHFP 2 1 c9a8316e12052c89f9c8eea38c433c50950d5798\nSSHFP 2 2 26773f31bd38b64224ee474eec7659dc05f23f8cb43e8352c1b58545bf5bbb15", "sshfp_rsa"=>"SSHFP 1 1 ea3ecdaaf4d5112fe3148cb52385f928a3cc53f4\nSSHFP 1 2 961dddd0fb580a5c0d1db74c16560fa37529cf4d162c13de99a880b1e91fd424", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAIEAz60kx84oy4edq6Nt2/SMQfQVVXoic/64JQ45EnwGKlMYvU3Okp3pT7uqyl+I5mXFjTB7wzLfIxzK5beofKDUbXNM5BwVeFQuZLR/hRusuvR5ntOce2kFMnyFteuvBue7Tg8YMGHAEM7fjfcqvuQgxWMELMJFwq0yUcl/aOL/o+U=", "staging_http_get"=>"curl", "swapfree"=>"4.00 GiB", "swapfree_mb"=>4095.9921875, "swapsize"=>"4.00 GiB", "swapsize_mb"=>4095.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1860, "uptime"=>"0:31 hours"}, "timezone"=>"PDT", "uptime"=>"0:31 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1860, "virtual"=>"zone", "zfs_featurenumbers"=>"1,2,3,4,5,6", "zfs_version"=>"6", "zone_cisparc10_brand"=>"solaris10", "zone_cisparc10_id"=>"36", "zone_cisparc10_iptype"=>"excl", "zone_cisparc10_name"=>"solaris-10_u9-sparc-t4-64", "zone_cisparc10_path"=>"/", "zone_cisparc10_status"=>"running", "zonename"=>"solaris-10_u9-sparc-t4-64", "zones"=>1, "zpool_featurenumbers"=>"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35", "zpool_version"=>"35", "clientcert"=>"solaris-10_u9-sparc-t4-64.puppet.example", "clientversion"=>"4.4.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'solaris-10_u9-sparc-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_solaris-11.2-sparc-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_solaris-11.2-sparc-64_spec.rb new file mode 100644 index 0000000..8b25e9a --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_solaris-11.2-sparc-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set solaris-11.2-sparc-64" do + node_facts = {"aio_agent_build"=>"1.4.2", "aio_agent_version"=>"1.4.2", "architecture"=>"sun4v", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_sd4_size"=>-1168154624, "blockdevice_sd4_vendor"=>"HITACHI", "blockdevice_sd5_size"=>-647710720, "blockdevice_sd5_vendor"=>"HITACHI", "blockdevice_sd6_size"=>0, "blockdevice_sd6_vendor"=>"AMI", "blockdevice_sd7_size"=>0, "blockdevice_sd7_vendor"=>"TEAC", "blockdevice_sd8_size"=>-1168154624, "blockdevice_sd8_vendor"=>"HITACHI", "blockdevice_sd9_size"=>-647710720, "blockdevice_sd9_vendor"=>"HITACHI", "blockdevices"=>"sd4,sd5,sd8,sd9,sd7,sd6", "custom_auth_conf"=>false, "dhcp_servers"=>{"net0"=>"10.32.22.10", "system"=>"10.32.22.10"}, "disks"=>{"sd4"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd5"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}, "sd6"=>{"product"=>"Virtual CDROM Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"AMI"}, "sd7"=>{"product"=>"DV-W28SS-W Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"TEAC"}, "sd8"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd9"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}}, "dmi"=>{"manufacturer"=>"Oracle Corporation"}, "domain"=>"puppet.example", "facterversion"=>"3.1.6", "fqdn"=>"solaris-11_2-sparc-t4-64.puppet.example", "gid"=>"root", "hardwareisa"=>"sparc", "hardwaremodel"=>"sun4v", "hostname"=>"solaris-11_2-sparc-t4-64", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,net0", "ipaddress"=>"10.32.77.68", "ipaddress_lo0"=>"127.0.0.1", "ipaddress_net0"=>"10.32.77.68", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"SunOS", "kernelmajversion"=>"11", "kernelrelease"=>"5.11", "kernelversion"=>"11.2", "load_averages"=>{"15m"=>1.0234375, "1m"=>1.21875, "5m"=>1.28125}, "macaddress"=>"02:08:20:41:26:8c", "macaddress_net0"=>"02:08:20:41:26:8c", "manufacturer"=>"Oracle Corporation", "memory"=>{"swap"=>{"available"=>"4.00 GiB", "available_bytes"=>-8192, "capacity"=>"0%", "total"=>"4.00 GiB", "total_bytes"=>-8192, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"2.34 GiB", "available_bytes"=>-1777401856, "capacity"=>"84.80%", "total"=>"15.43 GiB", "total_bytes"=>-611737600, "used"=>"13.09 GiB", "used_bytes"=>1165664256}}, "memoryfree"=>"2.34 GiB", "memoryfree_mb"=>2400.9375, "memorysize"=>"15.43 GiB", "memorysize_mb"=>15800.6015625, "mountpoints"=>{"/"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.18%", "device"=>"rpool/ROOT/solaris-0", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc/root/", "zone=cisparc", "nozonemod", "sharezone=38", "dev=495017b"], "size"=>"476.16 GiB", "size_bytes"=>175171072, "used"=>"889.53 MiB", "used_bytes"=>932736000}, "/dev"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"/dev", "filesystem"=>"dev", "options"=>["zone=cisparc", "nozonemod", "sharezone=38", "dev=8e0001c"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/fd"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"fd", "filesystem"=>"fd", "options"=>["rw", "nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=9040027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/dfs/sharetab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"sharefs", "filesystem"=>"sharefs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8f40016"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/mnttab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mnttab", "filesystem"=>"mntfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8e80027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/export"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/export", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=495017f"], "size"=>"475.29 GiB", "size_bytes"=>-757532160, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/export/home"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/export/home", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950180"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/proc"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"proc", "filesystem"=>"proc", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8dc0026"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/rpool"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950181"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/system/contract"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"ctfs", "filesystem"=>"ctfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8e40027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/object"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"objfs", "filesystem"=>"objfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8f00027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/volatile"=>{"available"=>"4.53 GiB", "available_bytes"=>571752448, "capacity"=>"0.01%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc", "sharezone=38", "dev=8ec004d"], "size"=>"4.53 GiB", "size_bytes"=>572342272, "used"=>"576.00 KiB", "used_bytes"=>589824}, "/tmp"=>{"available"=>"4.53 GiB", "available_bytes"=>571752448, "capacity"=>"0.95%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc", "sharezone=38", "dev=8ec004e"], "size"=>"4.58 GiB", "size_bytes"=>618414080, "used"=>"44.50 MiB", "used_bytes"=>46661632}, "/var"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.05%", "device"=>"rpool/ROOT/solaris-0/var", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc/root/var", "zone=cisparc", "nozonemod", "sharezone=38", "dev=495017d"], "size"=>"475.51 GiB", "size_bytes"=>-521269760, "used"=>"225.35 MiB", "used_bytes"=>236295168}, "/var/share"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=495017e"], "size"=>"475.30 GiB", "size_bytes"=>-756610048, "used"=>"932.50 KiB", "used_bytes"=>954880}, "/var/share/pkg"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE/pkg", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950182"], "size"=>"475.29 GiB", "size_bytes"=>-757532160, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/var/share/pkg/repositories"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE/pkg/repositories", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950183"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}}, "mtu_lo0"=>8232, "mtu_net0"=>1500, "netmask"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "netmask_net0"=>"255.255.255.0", "network"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "network_net0"=>"10.32.77.0", "networking"=>{"dhcp"=>"10.32.22.10", "domain"=>"puppet.example", "fqdn"=>"solaris-11_2-sparc-t4-64.puppet.example", "hostname"=>"solaris-11_2-sparc-t4-64", "interfaces"=>{"lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "ip"=>"127.0.0.1", "mtu"=>8232, "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, "net0"=>{"bindings"=>[{"address"=>"10.32.77.68", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "dhcp"=>"10.32.22.10", "ip"=>"10.32.77.68", "mac"=>"02:08:20:41:26:8c", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}}, "ip"=>"10.32.77.68", "mac"=>"02:08:20:41:26:8c", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"net0"}, "operatingsystem"=>"Solaris", "operatingsystemmajrelease"=>"11", "operatingsystemrelease"=>"11.2", "os"=>{"architecture"=>"sun4v", "family"=>"Solaris", "hardware"=>"sun4v", "name"=>"Solaris", "release"=>{"full"=>"11.2", "major"=>"11", "minor"=>"2"}}, "osfamily"=>"Solaris", "path"=>"PATH:/opt/puppetlabs/bin:/usr/sbin:/usr/bin:/sbin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"solaris-11-sparc", "processor0"=>"SPARC-T4", "processor1"=>"SPARC-T4", "processor10"=>"SPARC-T4", "processor11"=>"SPARC-T4", "processor12"=>"SPARC-T4", "processor13"=>"SPARC-T4", "processor14"=>"SPARC-T4", "processor15"=>"SPARC-T4", "processor16"=>"SPARC-T4", "processor17"=>"SPARC-T4", "processor18"=>"SPARC-T4", "processor19"=>"SPARC-T4", "processor2"=>"SPARC-T4", "processor20"=>"SPARC-T4", "processor21"=>"SPARC-T4", "processor22"=>"SPARC-T4", "processor23"=>"SPARC-T4", "processor24"=>"SPARC-T4", "processor25"=>"SPARC-T4", "processor26"=>"SPARC-T4", "processor27"=>"SPARC-T4", "processor28"=>"SPARC-T4", "processor29"=>"SPARC-T4", "processor3"=>"SPARC-T4", "processor30"=>"SPARC-T4", "processor31"=>"SPARC-T4", "processor32"=>"SPARC-T4", "processor33"=>"SPARC-T4", "processor34"=>"SPARC-T4", "processor35"=>"SPARC-T4", "processor36"=>"SPARC-T4", "processor37"=>"SPARC-T4", "processor38"=>"SPARC-T4", "processor39"=>"SPARC-T4", "processor4"=>"SPARC-T4", "processor40"=>"SPARC-T4", "processor41"=>"SPARC-T4", "processor42"=>"SPARC-T4", "processor43"=>"SPARC-T4", "processor44"=>"SPARC-T4", "processor45"=>"SPARC-T4", "processor46"=>"SPARC-T4", "processor47"=>"SPARC-T4", "processor48"=>"SPARC-T4", "processor49"=>"SPARC-T4", "processor5"=>"SPARC-T4", "processor50"=>"SPARC-T4", "processor51"=>"SPARC-T4", "processor52"=>"SPARC-T4", "processor53"=>"SPARC-T4", "processor54"=>"SPARC-T4", "processor55"=>"SPARC-T4", "processor56"=>"SPARC-T4", "processor57"=>"SPARC-T4", "processor58"=>"SPARC-T4", "processor59"=>"SPARC-T4", "processor6"=>"SPARC-T4", "processor60"=>"SPARC-T4", "processor61"=>"SPARC-T4", "processor62"=>"SPARC-T4", "processor63"=>"SPARC-T4", "processor7"=>"SPARC-T4", "processor8"=>"SPARC-T4", "processor9"=>"SPARC-T4", "processorcount"=>64, "processors"=>{"count"=>64, "isa"=>"sparc", "models"=>["SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4"], "physicalcount"=>1, "speed"=>"2.85 GHz"}, "puppet_files_dir_present"=>false, "puppetversion"=>"4.4.2", "ruby"=>{"platform"=>"sparc-solaris2.11", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.8"}, "rubyplatform"=>"sparc-solaris2.11", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.8", "solaris_zones"=>{"current"=>"cisparc", "zones"=>{"cisparc"=>{"brand"=>"solaris", "id"=>"38", "ip_type"=>"excl", "path"=>"/", "status"=>"running", "uuid"=>"9903e75b-f048-4e38-83b3-977cde7b3782"}}}, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 db349d276f0d3465ddf320d4f39d91349f1b576f", "sha256"=>"SSHFP 2 2 b8e58d26d36f2ce088034a1ce3be70b03ef404671f0c6ed3256152af9c9ad607"}, "key"=>"AAAAB3NzaC1kc3MAAACBAMVAhiKM1nrem5tlbgwagi6NKV1e6RIpLxXj+vovBAb/vWf6+in2lBrxLqljbxYWq1XTOJoXUTybb24gpnDwZC2v/5TytqJ35P4ptOH1fY2zthRnkgyYUMfF7nLslOgoy24A19uwmR3lhFpklhCUe1xkMHOXkToujrfym+nwpFZ5AAAAFQDRqOSYA1u47UtVMg4zXL0txwFHIwAAAIBNxcSYfeOSQrkFawbG0GQpSNs2Z/iqFDbJFz/Ha1xkitkpmBBNizRva5tqNR8uaK/VHoIdaK7Rn1qS/D2Sl3w4Ps4UhEN9qOOylQplUmqb4JAFtAFInDMIHz/69SYMyBJ9eXQHh8mOeLX8s2lQow+Z/iOVpAlGIB0PxrHClqSN5AAAAIEAqHqE/Ry0hL98YpXRvMw0kpMl439iXQjzfx3IgJzSScNpNx3G5QDDysSu8dzanOvqXxJ0ynwc1LxuXhuvq4hJ990snyYLOgNOOJ5v86G1TkXTq3Ny0gb+7efiwI7u4xIY6WrQeXt32hbRY0kF/MswmKjz3NSBK6jozSNwHlP6jeA="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 865be76b66792c0d98006a6ed5227f19f8241cf3", "sha256"=>"SSHFP 1 2 c74d9f97237b06070909f30fbb68afbe0943450a8ea3d1b85fb16db53441a824"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA8bZpHkHvgZEBhn7qlupS61DjwXYOnTVFuaOaDI6eesXxU1yDJfEqO1eHp6YF6x5gmM/mDyfFU9hixMmH9yLRgi2/QUhoYa44z8NB3EBaHxFtLQLnoFTGq/VR5xZ+pyBcbwUswvDel3OfXTcepmT6lWLCBRLOfYTc6hzwRCfyrWgdVc3kruu9hh9pKIWFEyUUztHWuR7+akNH3nD+EcqsmuMowEzzssWC8msWnAX89geFPuhilAgz7Qcc1bJZUaWGgOzyaZKn3IVNNa3grOWzgKDE6gdLMefnk0dgndtIbB1E9iY1syosQCrBIiEfMMGEBjrDstcNKs+Ge8stRljjMw=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAMVAhiKM1nrem5tlbgwagi6NKV1e6RIpLxXj+vovBAb/vWf6+in2lBrxLqljbxYWq1XTOJoXUTybb24gpnDwZC2v/5TytqJ35P4ptOH1fY2zthRnkgyYUMfF7nLslOgoy24A19uwmR3lhFpklhCUe1xkMHOXkToujrfym+nwpFZ5AAAAFQDRqOSYA1u47UtVMg4zXL0txwFHIwAAAIBNxcSYfeOSQrkFawbG0GQpSNs2Z/iqFDbJFz/Ha1xkitkpmBBNizRva5tqNR8uaK/VHoIdaK7Rn1qS/D2Sl3w4Ps4UhEN9qOOylQplUmqb4JAFtAFInDMIHz/69SYMyBJ9eXQHh8mOeLX8s2lQow+Z/iOVpAlGIB0PxrHClqSN5AAAAIEAqHqE/Ry0hL98YpXRvMw0kpMl439iXQjzfx3IgJzSScNpNx3G5QDDysSu8dzanOvqXxJ0ynwc1LxuXhuvq4hJ990snyYLOgNOOJ5v86G1TkXTq3Ny0gb+7efiwI7u4xIY6WrQeXt32hbRY0kF/MswmKjz3NSBK6jozSNwHlP6jeA=", "sshfp_dsa"=>"SSHFP 2 1 db349d276f0d3465ddf320d4f39d91349f1b576f\nSSHFP 2 2 b8e58d26d36f2ce088034a1ce3be70b03ef404671f0c6ed3256152af9c9ad607", "sshfp_rsa"=>"SSHFP 1 1 865be76b66792c0d98006a6ed5227f19f8241cf3\nSSHFP 1 2 c74d9f97237b06070909f30fbb68afbe0943450a8ea3d1b85fb16db53441a824", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA8bZpHkHvgZEBhn7qlupS61DjwXYOnTVFuaOaDI6eesXxU1yDJfEqO1eHp6YF6x5gmM/mDyfFU9hixMmH9yLRgi2/QUhoYa44z8NB3EBaHxFtLQLnoFTGq/VR5xZ+pyBcbwUswvDel3OfXTcepmT6lWLCBRLOfYTc6hzwRCfyrWgdVc3kruu9hh9pKIWFEyUUztHWuR7+akNH3nD+EcqsmuMowEzzssWC8msWnAX89geFPuhilAgz7Qcc1bJZUaWGgOzyaZKn3IVNNa3grOWzgKDE6gdLMefnk0dgndtIbB1E9iY1syosQCrBIiEfMMGEBjrDstcNKs+Ge8stRljjMw==", "staging_http_get"=>"curl", "swapfree"=>"4.00 GiB", "swapfree_mb"=>4095.9921875, "swapsize"=>"4.00 GiB", "swapsize_mb"=>4095.9921875, "system_uptime"=>{"days"=>2, "hours"=>62, "seconds"=>225780, "uptime"=>"2 days"}, "timezone"=>"PDT", "uptime"=>"2 days", "uptime_days"=>2, "uptime_hours"=>62, "uptime_seconds"=>225780, "virtual"=>"zone", "zfs_featurenumbers"=>"1,2,3,4,5,6", "zfs_version"=>"6", "zone_cisparc_brand"=>"solaris", "zone_cisparc_id"=>"38", "zone_cisparc_iptype"=>"excl", "zone_cisparc_name"=>"cisparc", "zone_cisparc_path"=>"/", "zone_cisparc_status"=>"running", "zone_cisparc_uuid"=>"9903e75b-f048-4e38-83b3-977cde7b3782", "zonename"=>"cisparc", "zones"=>1, "zpool_featurenumbers"=>"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35", "zpool_version"=>"35", "clientcert"=>"solaris-11_2-sparc-t4-64.puppet.example", "clientversion"=>"4.4.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'solaris-11.2-sparc-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__custom_windows_on_windows-10-64_spec.rb b/.onceover/spec/classes/role__custom_windows_on_windows-10-64_spec.rb new file mode 100644 index 0000000..8c0914f --- /dev/null +++ b/.onceover/spec/classes/role__custom_windows_on_windows-10-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::custom_windows" do + + context "using fact set windows-10-64" do + node_facts = {"puppetversion"=>"6.0.2", "puppet_inventory_metadata"=>{"packages"=>{"collection_enabled"=>false, "last_collection_time"=>"0.0s"}}, "package_provider"=>"windows", "pe_concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/pe_concat", "is_pe"=>false, "platform_symlink_writable"=>false, "puppet_files_dir_present"=>false, "puppet_vardir"=>"C:/ProgramData/PuppetLabs/puppet/cache", "puppet_environmentpath"=>"C:/ProgramData/PuppetLabs/code/environments", "puppet_server"=>"pe-puppet.localdomain", "service_provider"=>"windows", "staging_http_get"=>"curl", "common_appdata"=>"C:\\ProgramData", "architecture"=>"x64", "kernel"=>"windows", "virtual"=>"vmware", "is_virtual"=>true, "hardwaremodel"=>"x64", "operatingsystem"=>"windows", "os"=>{"name"=>"windows", "family"=>"windows", "release"=>{"major"=>"10", "full"=>"10"}}, "facterversion"=>"2.5.1", "fqdn"=>"VAGRANT-HB9G3RD", "hostname"=>"VAGRANT-HB9G3RD", "id"=>"vagrant-hb9g3rd\\vagrant", "interfaces"=>"Ethernet0_2", "ipaddress_ethernet0_2"=>"192.168.43.174", "ipaddress6_ethernet0_2"=>"fd72:b3ab:b8dd:0:f563:fac2:928c:6aa", "macaddress_ethernet0_2"=>"00:0C:29:A3:53:54", "netmask_ethernet0_2"=>"255.255.255.0", "mtu_ethernet0_2"=>0, "ipaddress"=>"192.168.43.174", "ipaddress6"=>"fd72:b3ab:b8dd:0:f563:fac2:928c:6aa", "kernelmajversion"=>"10.0", "kernelrelease"=>"10.0.17134", "kernelversion"=>"10.0.17134", "macaddress"=>"00:0C:29:A3:53:54", "manufacturer"=>"Phoenix Technologies LTD", "serialnumber"=>"VMware-56 4d 36 2e 2e a4 81 f9-0d 05 ae d0 e5 a3 53 54", "productname"=>"VMware Virtual Platform", "memorysize"=>"4.00 GB", "memoryfree"=>"2.30 GB", "memorysize_mb"=>"4095.49", "memoryfree_mb"=>"2360.00", "netmask"=>"255.255.255.0", "network_ethernet0_2"=>"192.168.43.0", "operatingsystemmajrelease"=>"10", "operatingsystemrelease"=>"10", "osfamily"=>"windows", "path"=>"C:\\tools\\ruby24\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;C:\\ProgramData\\chocolatey\\bin;C:\\Program Files (x86)\\vim\\vim80;C:\\Program Files\\Git\\cmd;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Users\\vagrant\\AppData\\Local\\Microsoft\\WindowsApps;", "physicalprocessorcount"=>4, "processors"=>{"models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "count"=>4, "physicalcount"=>4}, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor2"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor3"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>4, "ps"=>"tasklist.exe", "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/tools/ruby24/lib/ruby/site_ruby/2.4.0", "rubyversion"=>"2.4.3", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"seconds"=>1113359, "hours"=>309, "days"=>12, "uptime"=>"12 days"}, "timezone"=>"GMT Standard Time", "uptime"=>"12 days", "uptime_days"=>12, "uptime_hours"=>309, "uptime_seconds"=>1113359, "clientcert"=>"vagrant-hb9g3rd.lan.asio", "clientversion"=>"6.0.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::custom_windows' +$onceover_node = 'windows-10-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_AIX-6.1-powerpc_spec.rb b/.onceover/spec/classes/role__metrics_on_AIX-6.1-powerpc_spec.rb new file mode 100644 index 0000000..207aec7 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_AIX-6.1-powerpc_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set AIX-6.1-powerpc" do + node_facts = {"aio_agent_version"=>"1.8.2", "architecture"=>"PowerPC_POWER7", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "domain"=>"delivery.puppetlabs.net", "facterversion"=>"3.5.0", "fqdn"=>"pe-aix-61-se.delivery.puppetlabs.net", "gid"=>"system", "hardwareisa"=>"powerpc", "hardwaremodel"=>"IBM,8231-E1D", "hostname"=>"pe-aix-61-se", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"system", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,en0", "ipaddress"=>"10.32.77.35", "ipaddress6_lo0"=>"::1", "ipaddress_en0"=>"10.32.77.35", "ipaddress_lo0"=>"127.0.0.1", "kernel"=>"AIX", "kernelmajversion"=>"6100", "kernelrelease"=>"6100-07-04-1216", "kernelversion"=>"6100", "macaddress"=>"66:a4:d9:f8:4a:04", "macaddress_en0"=>"66:a4:d9:f8:4a:04", "memory"=>{"swap"=>{"available"=>"410.43 MiB", "available_bytes"=>430366720, "capacity"=>"19.84%", "total"=>"512.00 MiB", "total_bytes"=>536870912, "used"=>"101.57 MiB", "used_bytes"=>106504192}, "system"=>{"available"=>"10.88 MiB", "available_bytes"=>11403264, "capacity"=>"98.94%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"1013.13 MiB", "used_bytes"=>1062338560}}, "memoryfree"=>"10.88 MiB", "memoryfree_mb"=>10.875, "memorysize"=>"1.00 GiB", "memorysize_mb"=>1024.0, "mtu_en0"=>1500, "mtu_lo0"=>16896, "netmask"=>"255.255.255.0", "netmask6_lo0"=>"::", "netmask_en0"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "network"=>"10.32.77.0", "network6_lo0"=>"::", "network_en0"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "networking"=>{"domain"=>"delivery.puppetlabs.net", "fqdn"=>"pe-aix-61-se.delivery.puppetlabs.net", "hostname"=>"pe-aix-61-se", "interfaces"=>{"en0"=>{"bindings"=>[{"address"=>"10.32.77.35", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.35", "mac"=>"66:a4:d9:f8:4a:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}, "lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"::", "network"=>"::"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16896, "netmask"=>"255.0.0.0", "netmask6"=>"::", "network"=>"127.0.0.0", "network6"=>"::"}}, "ip"=>"10.32.77.35", "mac"=>"66:a4:d9:f8:4a:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"en0"}, "operatingsystem"=>"AIX", "operatingsystemmajrelease"=>"6100", "operatingsystemrelease"=>"6100-07-04-1216", "os"=>{"architecture"=>"PowerPC_POWER7", "family"=>"AIX", "hardware"=>"IBM,8231-E1D", "name"=>"AIX", "release"=>{"full"=>"6100-07-04-1216", "major"=>"6100"}}, "osfamily"=>"AIX", "path"=>"::/usr/bin:/etc:/usr/sbin:/sbin", "processor0"=>"PowerPC_POWER7", "processor1"=>"PowerPC_POWER7", "processor2"=>"PowerPC_POWER7", "processor3"=>"PowerPC_POWER7", "processor4"=>"PowerPC_POWER7", "processor5"=>"PowerPC_POWER7", "processor6"=>"PowerPC_POWER7", "processor7"=>"PowerPC_POWER7", "processorcount"=>8, "processors"=>{"count"=>8, "isa"=>"powerpc", "models"=>["PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7"], "speed"=>"4.23 GHz"}, "puppetversion"=>"4.8.1", "ruby"=>{"platform"=>"powerpc-aix6.1.0.0", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"powerpc-aix6.1.0.0", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "serialnumber"=>"21280CV", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 571109ba578ea17c854dcefad0e667bbbe4232c2", "sha256"=>"SSHFP 2 2 acd6ea2ff8cc0a0a8be88e6dada2688a17b7adb2a52312745208696f99dce945"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPJEJEzFa4YmVyS17c4Cs8ZWFJIg+igYRWiG/oJ4KMAu9R+cq3TuokGp0h5/T69yNeOn32h1WPYPIjnr14FyOr5Bb6+h+ej3WKnS1IpAGSy2H8Z21r4Cz0qX+madm/dGrtN1TI+6OV1xXXICZB0F0Lg4xilzix431nGunqbm1XXLAAAAFQDjxidL5XtudVMcTUzGFQ33cVwdTwAAAIBUjvKhMQP1304lW+Fr7A35ypaQrCVbsJFQD4egb9fGKY5WKIlQo7UGS/jvDtPS7iRDaLdiC2K5D4MYM9EUHgkprIO1d/o0i2UsYgec8WCJSBja/I4n0slEl7XEwM3SmnYNT0xfZM01Caj9+AyJFtRoF7l00QjSoxyOGMlEfvbCDAAAAIEA8MTmNjwDneigJnnxK9ZL4cvW4zQ+PQDglCdjJ2sB/IcpSvVyu6R9jbHSnfKhergRmmNJzKNA1Oc/INvNr4i9FFAuXEKkafmUyMavgd19uMxdpTAcvOJxwhG8TCrLQtJbm8Rn1e5wFM+4wnpc2y7HsBYGonmK9O5p9Fd3qkUx4BY="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 2faed3b06ba31bcbf069dcdb759d36730a2c649d", "sha256"=>"SSHFP 1 2 51fbfd79200a8667eeb1a8a4eee2487bbdee663189a9ca86a07069f5d95f9826"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDP+DHJRMbR8a4WvTwUGnz9rq+hHDVcP26xG+WIvIC5vlBk/N2lcrD7qs45Ht1kpZo4k4td+PQmi2k6I3BSVEeR9FTwbHEtjv8op1F7VTPXSSdY+90/CiQ4MA5s7d2Lbm5jipMV6dCneYZWsEkHKHzcp/Qst3w+0JSAHpx1wEOAlk/uJuLHHvAFYPZtdwzxTOW8/di5CpBIz/Pl1gcO8vQrFygvkFdYKPL44/zS3MZbmi7Hi6Q0PdcarFlWn6IodAlVSrJ/hcBbMkXJWV2L3zCt5nX4tJkYoOU9IIjGQEh+1cmIcWGdXpyvyaUnbSXJsFP9yAzi+MszYLJq9mUKIYch"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPJEJEzFa4YmVyS17c4Cs8ZWFJIg+igYRWiG/oJ4KMAu9R+cq3TuokGp0h5/T69yNeOn32h1WPYPIjnr14FyOr5Bb6+h+ej3WKnS1IpAGSy2H8Z21r4Cz0qX+madm/dGrtN1TI+6OV1xXXICZB0F0Lg4xilzix431nGunqbm1XXLAAAAFQDjxidL5XtudVMcTUzGFQ33cVwdTwAAAIBUjvKhMQP1304lW+Fr7A35ypaQrCVbsJFQD4egb9fGKY5WKIlQo7UGS/jvDtPS7iRDaLdiC2K5D4MYM9EUHgkprIO1d/o0i2UsYgec8WCJSBja/I4n0slEl7XEwM3SmnYNT0xfZM01Caj9+AyJFtRoF7l00QjSoxyOGMlEfvbCDAAAAIEA8MTmNjwDneigJnnxK9ZL4cvW4zQ+PQDglCdjJ2sB/IcpSvVyu6R9jbHSnfKhergRmmNJzKNA1Oc/INvNr4i9FFAuXEKkafmUyMavgd19uMxdpTAcvOJxwhG8TCrLQtJbm8Rn1e5wFM+4wnpc2y7HsBYGonmK9O5p9Fd3qkUx4BY=", "sshfp_dsa"=>"SSHFP 2 1 571109ba578ea17c854dcefad0e667bbbe4232c2\nSSHFP 2 2 acd6ea2ff8cc0a0a8be88e6dada2688a17b7adb2a52312745208696f99dce945", "sshfp_rsa"=>"SSHFP 1 1 2faed3b06ba31bcbf069dcdb759d36730a2c649d\nSSHFP 1 2 51fbfd79200a8667eeb1a8a4eee2487bbdee663189a9ca86a07069f5d95f9826", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDP+DHJRMbR8a4WvTwUGnz9rq+hHDVcP26xG+WIvIC5vlBk/N2lcrD7qs45Ht1kpZo4k4td+PQmi2k6I3BSVEeR9FTwbHEtjv8op1F7VTPXSSdY+90/CiQ4MA5s7d2Lbm5jipMV6dCneYZWsEkHKHzcp/Qst3w+0JSAHpx1wEOAlk/uJuLHHvAFYPZtdwzxTOW8/di5CpBIz/Pl1gcO8vQrFygvkFdYKPL44/zS3MZbmi7Hi6Q0PdcarFlWn6IodAlVSrJ/hcBbMkXJWV2L3zCt5nX4tJkYoOU9IIjGQEh+1cmIcWGdXpyvyaUnbSXJsFP9yAzi+MszYLJq9mUKIYch", "swapfree"=>"410.43 MiB", "swapfree_mb"=>410.4296875, "swapsize"=>"512.00 MiB", "swapsize_mb"=>512.0, "system_uptime"=>{"days"=>418, "hours"=>10035, "seconds"=>36127200, "uptime"=>"418 days"}, "timezone"=>"PST", "uptime"=>"418 days", "uptime_days"=>418, "uptime_hours"=>10035, "uptime_seconds"=>36127200, "clientcert"=>"pe-aix-61-se.delivery.puppetlabs.net", "clientversion"=>"4.8.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'AIX-6.1-powerpc' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_AIX-7.1-powerpc_spec.rb b/.onceover/spec/classes/role__metrics_on_AIX-7.1-powerpc_spec.rb new file mode 100644 index 0000000..d7c7c76 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_AIX-7.1-powerpc_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set AIX-7.1-powerpc" do + node_facts = {"aio_agent_version"=>"1.5.2", "architecture"=>"PowerPC_POWER7", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "domain"=>"delivery.puppetlabs.net", "facterversion"=>"3.2.0", "fqdn"=>"pe-aix-71-se.delivery.puppetlabs.net", "gid"=>"system", "hardwareisa"=>"powerpc", "hardwaremodel"=>"IBM,8231-E1D", "hostname"=>"pe-aix-71-se", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"system", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,en0", "ipaddress"=>"10.32.77.36", "ipaddress6_lo0"=>"::1", "ipaddress_en0"=>"10.32.77.36", "ipaddress_lo0"=>"127.0.0.1", "is_pe"=>false, "kernel"=>"AIX", "kernelmajversion"=>"7100", "kernelrelease"=>"7100-01-05-1228", "kernelversion"=>"7100", "macaddress"=>"66:a4:dc:28:bf:04", "macaddress_en0"=>"66:a4:dc:28:bf:04", "memory"=>{"swap"=>{"available"=>"1007.14 MiB", "available_bytes"=>1056063488, "capacity"=>"1.65%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"16.86 MiB", "used_bytes"=>17678336}, "system"=>{"available"=>"16.84 MiB", "available_bytes"=>17653760, "capacity"=>"98.36%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"1007.16 MiB", "used_bytes"=>1056088064}}, "memoryfree"=>"16.84 MiB", "memoryfree_mb"=>16.8359375, "memorysize"=>"1.00 GiB", "memorysize_mb"=>1024.0, "mtu_en0"=>1500, "mtu_lo0"=>16896, "netmask"=>"255.255.255.0", "netmask6_lo0"=>"::", "netmask_en0"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "network"=>"10.32.77.0", "network6_lo0"=>"::", "network_en0"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "networking"=>{"domain"=>"delivery.puppetlabs.net", "fqdn"=>"pe-aix-71-se.delivery.puppetlabs.net", "hostname"=>"pe-aix-71-se", "interfaces"=>{"en0"=>{"bindings"=>[{"address"=>"10.32.77.36", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.36", "mac"=>"66:a4:dc:28:bf:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}, "lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"::", "network"=>"::"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16896, "netmask"=>"255.0.0.0", "netmask6"=>"::", "network"=>"127.0.0.0", "network6"=>"::"}}, "ip"=>"10.32.77.36", "mac"=>"66:a4:dc:28:bf:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"en0"}, "operatingsystem"=>"AIX", "operatingsystemmajrelease"=>"7100", "operatingsystemrelease"=>"7100-01-05-1228", "os"=>{"architecture"=>"PowerPC_POWER7", "family"=>"AIX", "hardware"=>"IBM,8231-E1D", "name"=>"AIX", "release"=>{"full"=>"7100-01-05-1228", "major"=>"7100"}}, "osfamily"=>"AIX", "package_provider"=>"aix", "path"=>"::/usr/bin:/etc:/usr/sbin:/sbin", "processor0"=>"PowerPC_POWER7", "processor1"=>"PowerPC_POWER7", "processor2"=>"PowerPC_POWER7", "processor3"=>"PowerPC_POWER7", "processor4"=>"PowerPC_POWER7", "processor5"=>"PowerPC_POWER7", "processor6"=>"PowerPC_POWER7", "processor7"=>"PowerPC_POWER7", "processorcount"=>8, "processors"=>{"count"=>8, "isa"=>"powerpc", "models"=>["PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7"], "speed"=>"4.23 GHz"}, "puppet_environmentpath"=>"/etc/puppetlabs/code/environments", "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.5.2", "root_home"=>"/root", "ruby"=>{"platform"=>"powerpc-aix7.1.0.0", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"powerpc-aix7.1.0.0", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "serialnumber"=>"21280CV", "service_provider"=>"src", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1bbfbd9caff8924d4584cbb2a748f1be2690d04c", "sha256"=>"SSHFP 2 2 73ec4c25ea880adfbb7f66c60e92fec0ff130c4988765b5799e4707a7cdde68a"}, "key"=>"AAAAB3NzaC1kc3MAAACBAI5I6MVkSh3bO0WVTWIxbB0VyoFrpIXjAtBBveHKQDiB5I9OmCGkzytyR7ERBG/yqFS04hcEX8JV//3DoJeLJ0vupRCDLr4HoTYDGS3Dkvb3wqLn8aaaadz4Ca8IgRbx0vr8ANQbu/XT0/eTv5fRs3YWeijPe4Zgto2x55Ap7UDlAAAAFQDtb/7QYsDVPUt0dVWhOehzBNvybwAAAIBTxxfl95ZRcFG7b2cWljphohnZGzZCJortjE76JBIhnXRlVnlXQFT98hrjkPwedjsj9KWM0RpiKOdas3QAM6iTWLoAv/4GcvAWDa7TuJ5fs3eeQO0yCsTzRzpPwkOv6dcHK6OWWLiGybf/kPxIb546COFONVekdyIdksfZzwJ41QAAAIEAgj+4V9gdRBZcOX7XchaNUPaezTc3pNG1HG8iYTiCTV28EkpkQgzMtW7pPU1Nzqv5CX0LnFS+QN4lTWtuqtADYWSu3soz+7GuL8u3vximAAp6RcmWYSRpIdIQkHGvcyAzT5LlNRhGc/bBPM6RNoCkPzjEDHJDOgTdPx+tRNWXb8Y="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 8957e5a6df12f351fd768ee9615b3906861ff4e5", "sha256"=>"SSHFP 1 2 5a2dddf4df75bc8f4f352d30a8192824e01386b4720708d249edec6f05c5eb81"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC38I+hMQxC/++t3XvgXPtpVglDV2Qp5Xqqp/ZmdJrW7gh3ylKWlOrJOlx72p9Qa2fTAU+eJpYeI8vAAKxtBqqoxVNfn9rGt8wR3eubcwm6CRLTCOqf2OoDJzyJw3RcgidhHuT2KPVYtNOpNEkFyTjtpru3RWrO08PLpT0simATc5XJrvSH9ODQCqzVi5Fhe58Kn1kyAmH9gr0vz/9zrhllBjxVhc3YFz2TKqnZD+zIYlYhoI1vm5zQSzUWA+8B9XBEGs3TUaSDKPANEwof2lt+auTHySlGRXTPL4D9mYw2BhrxRBESgLsbba23SVCMGPILDvb4JwI4vYc7E6AvrFIB"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAI5I6MVkSh3bO0WVTWIxbB0VyoFrpIXjAtBBveHKQDiB5I9OmCGkzytyR7ERBG/yqFS04hcEX8JV//3DoJeLJ0vupRCDLr4HoTYDGS3Dkvb3wqLn8aaaadz4Ca8IgRbx0vr8ANQbu/XT0/eTv5fRs3YWeijPe4Zgto2x55Ap7UDlAAAAFQDtb/7QYsDVPUt0dVWhOehzBNvybwAAAIBTxxfl95ZRcFG7b2cWljphohnZGzZCJortjE76JBIhnXRlVnlXQFT98hrjkPwedjsj9KWM0RpiKOdas3QAM6iTWLoAv/4GcvAWDa7TuJ5fs3eeQO0yCsTzRzpPwkOv6dcHK6OWWLiGybf/kPxIb546COFONVekdyIdksfZzwJ41QAAAIEAgj+4V9gdRBZcOX7XchaNUPaezTc3pNG1HG8iYTiCTV28EkpkQgzMtW7pPU1Nzqv5CX0LnFS+QN4lTWtuqtADYWSu3soz+7GuL8u3vximAAp6RcmWYSRpIdIQkHGvcyAzT5LlNRhGc/bBPM6RNoCkPzjEDHJDOgTdPx+tRNWXb8Y=", "sshfp_dsa"=>"SSHFP 2 1 1bbfbd9caff8924d4584cbb2a748f1be2690d04c\nSSHFP 2 2 73ec4c25ea880adfbb7f66c60e92fec0ff130c4988765b5799e4707a7cdde68a", "sshfp_rsa"=>"SSHFP 1 1 8957e5a6df12f351fd768ee9615b3906861ff4e5\nSSHFP 1 2 5a2dddf4df75bc8f4f352d30a8192824e01386b4720708d249edec6f05c5eb81", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC38I+hMQxC/++t3XvgXPtpVglDV2Qp5Xqqp/ZmdJrW7gh3ylKWlOrJOlx72p9Qa2fTAU+eJpYeI8vAAKxtBqqoxVNfn9rGt8wR3eubcwm6CRLTCOqf2OoDJzyJw3RcgidhHuT2KPVYtNOpNEkFyTjtpru3RWrO08PLpT0simATc5XJrvSH9ODQCqzVi5Fhe58Kn1kyAmH9gr0vz/9zrhllBjxVhc3YFz2TKqnZD+zIYlYhoI1vm5zQSzUWA+8B9XBEGs3TUaSDKPANEwof2lt+auTHySlGRXTPL4D9mYw2BhrxRBESgLsbba23SVCMGPILDvb4JwI4vYc7E6AvrFIB", "swapfree"=>"1007.14 MiB", "swapfree_mb"=>1007.140625, "swapsize"=>"1.00 GiB", "swapsize_mb"=>1024.0, "system_uptime"=>{"days"=>160, "hours"=>3847, "seconds"=>13852500, "uptime"=>"160 days"}, "timezone"=>"PST", "uptime"=>"160 days", "uptime_days"=>160, "uptime_hours"=>3847, "uptime_seconds"=>13852500, "clientcert"=>"pe-aix-71-se.delivery.puppetlabs.net", "clientversion"=>"4.5.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'AIX-7.1-powerpc' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Amazon-2018.03_spec.rb b/.onceover/spec/classes/role__metrics_on_Amazon-2018.03_spec.rb new file mode 100644 index 0000000..d87e477 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Amazon-2018.03_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Amazon-2018.03" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"10/16/2017", "bios_vendor"=>"Amazon EC2", "bios_version"=>"1.0", "blockdevice_nvme0n1_model"=>"Amazon Elastic Block Store", "blockdevice_nvme0n1_size"=>8589934592, "blockdevices"=>"nvme0n1", "boardassettag"=>"i-0816d4c53ff8dc6a2", "boardmanufacturer"=>"Amazon EC2", "chassisassettag"=>"Amazon EC2", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"172.31.0.1", "system"=>"172.31.0.1"}, "disks"=>{"nvme0n1"=>{"model"=>"Amazon Elastic Block Store", "size"=>"8.00 GiB", "size_bytes"=>8589934592}}, "dmi"=>{"bios"=>{"release_date"=>"10/16/2017", "vendor"=>"Amazon EC2", "version"=>"1.0"}, "board"=>{"asset_tag"=>"i-0816d4c53ff8dc6a2", "manufacturer"=>"Amazon EC2"}, "chassis"=>{"asset_tag"=>"Amazon EC2", "type"=>"Other"}, "manufacturer"=>"Amazon EC2", "product"=>{"name"=>"t3a.xlarge", "serial_number"=>"ec21b37d-28ce-a3c2-956e-527e2857aeda", "uuid"=>"EC21B37D-28CE-A3C2-956E-527E2857AEDA"}}, "domain"=>"us-west-2.compute.internal", "ec2_metadata"=>{"ami-id"=>"ami-01e24be29428c15b2", "ami-launch-index"=>"0", "ami-manifest-path"=>"(unknown)", "block-device-mapping"=>{"ami"=>"xvda", "root"=>"/dev/xvda"}, "events"=>{"maintenance"=>{"history"=>"[]", "scheduled"=>"[]"}}, "hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "identity-credentials"=>{"ec2"=>{"info"=>"{\n \"Code\" : \"Success\",\n \"LastUpdated\" : \"2019-05-07T01:03:28Z\",\n \"AccountId\" : \"581165678935\"\n}"}}, "instance-action"=>"none", "instance-id"=>"i-0816d4c53ff8dc6a2", "instance-type"=>"t3a.xlarge", "local-hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "local-ipv4"=>"172.31.3.153", "mac"=>"0a:ca:e0:39:c1:f6", "metrics"=>{"vhostmd"=>""}, "network"=>{"interfaces"=>{"macs"=>{"0a:ca:e0:39:c1:f6"=>{"device-number"=>"0", "interface-id"=>"eni-04e7710af3cf1699c", "ipv4-associations"=>{"34.209.204.164"=>"172.31.3.153"}, "local-hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "local-ipv4s"=>"172.31.3.153", "mac"=>"0a:ca:e0:39:c1:f6", "owner-id"=>"581165678935", "public-hostname"=>"ec2-34-209-204-164.us-west-2.compute.amazonaws.com", "public-ipv4s"=>"34.209.204.164", "security-group-ids"=>"sg-05a2c52388c24f3ae", "security-groups"=>"launch-wizard-2", "subnet-id"=>"subnet-3bafc660", "subnet-ipv4-cidr-block"=>"172.31.0.0/20", "vpc-id"=>"vpc-287af44e", "vpc-ipv4-cidr-block"=>"172.31.0.0/16", "vpc-ipv4-cidr-blocks"=>"172.31.0.0/16"}}}}, "placement"=>{"availability-zone"=>"us-west-2c"}, "profile"=>"default-hvm", "public-hostname"=>"ec2-34-209-204-164.us-west-2.compute.amazonaws.com", "public-ipv4"=>"34.209.204.164", "public-keys"=>{"0"=>{"openssh-key"=>"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDk1QR+MwLPRohIOiWbCC8xjJKFYeCjIh2g2wAKnZFCkPjCG9BD3L4URnszJXdv+5XylfWO1y9O1Z95etjWfObApRZ5Ej22Dz1EExWWRNOKl9QdrEfCACSlc5gbT5rflHd/He9eD5OFRHlMY8fNIApEKdQrlxZgr1/NOusVQggoS/MiszxCl0dob3kz86XX6PrAmMyGfv7j/mPeeEUzP3bGxtjJyaZGcwukjPvlgq1yI4AzZlveY8fnokRsh9uDHXUEVB2hLNaBBZB/Evw261J/+QsnKopAuqQpwct/n/ulbg+w1h/2ZBiDXDBK8DQ8kOC4zuum6qwri1KNKdX9zIif thinkpad"}}, "reservation-id"=>"r-0b89c0e198506ec1f", "security-groups"=>"launch-wizard-2", "services"=>{"domain"=>"amazonaws.com", "partition"=>"aws"}}, "facterversion"=>"3.12.4", "filesystems"=>"ext3,ext4", "fips_enabled"=>false, "fqdn"=>"ip-172-31-3-153.us-west-2.compute.internal", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"ip-172-31-3-153", "hypervisors"=>{"kvm"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"172.31.3.153", "ipaddress6"=>"fe80::8ca:e0ff:fe39:c1f6", "ipaddress6_eth0"=>"fe80::8ca:e0ff:fe39:c1f6", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"172.31.3.153", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"4.14", "kernelrelease"=>"4.14.77-70.59.amzn1.x86_64", "kernelversion"=>"4.14.77", "load_averages"=>{"15m"=>0.02, "1m"=>0.12, "5m"=>0.06}, "macaddress"=>"0a:ca:e0:39:c1:f6", "macaddress_eth0"=>"0a:ca:e0:39:c1:f6", "manufacturer"=>"Amazon EC2", "memory"=>{"system"=>{"available"=>"15.36 GiB", "available_bytes"=>16489611264, "capacity"=>"1.10%", "total"=>"15.53 GiB", "total_bytes"=>16673153024, "used"=>"175.04 MiB", "used_bytes"=>183541760}}, "memoryfree"=>"15.36 GiB", "memoryfree_mb"=>15725.71875, "memorysize"=>"15.53 GiB", "memorysize_mb"=>15900.7578125, "mountpoints"=>{"/"=>{"available"=>"6.55 GiB", "available_bytes"=>7033344000, "capacity"=>"15.45%", "device"=>"/dev/nvme0n1p1", "filesystem"=>"ext4", "options"=>["rw", "noatime", "data=ordered"], "size"=>"7.75 GiB", "size_bytes"=>8318783488, "used"=>"1.20 GiB", "used_bytes"=>1285439488}, "/dev/shm"=>{"available"=>"7.76 GiB", "available_bytes"=>8336576512, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "relatime"], "size"=>"7.76 GiB", "size_bytes"=>8336576512, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_eth0"=>9001, "mtu_lo"=>65536, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.240.0", "netmask_lo"=>"255.0.0.0", "network"=>"172.31.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"172.31.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"172.31.0.1", "domain"=>"us-west-2.compute.internal", "fqdn"=>"ip-172-31-3-153.us-west-2.compute.internal", "hostname"=>"ip-172-31-3-153", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"172.31.3.153", "netmask"=>"255.255.240.0", "network"=>"172.31.0.0"}], "bindings6"=>[{"address"=>"fe80::8ca:e0ff:fe39:c1f6", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"172.31.0.1", "ip"=>"172.31.3.153", "ip6"=>"fe80::8ca:e0ff:fe39:c1f6", "mac"=>"0a:ca:e0:39:c1:f6", "mtu"=>9001, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"172.31.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"172.31.3.153", "ip6"=>"fe80::8ca:e0ff:fe39:c1f6", "mac"=>"0a:ca:e0:39:c1:f6", "mtu"=>9001, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"172.31.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"Amazon", "operatingsystemmajrelease"=>"2018", "operatingsystemrelease"=>"2018.03", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"Amazon", "release"=>{"full"=>"2018.03", "major"=>"2018", "minor"=>"03"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/nvme0n1p1"=>{"filesystem"=>"ext4", "label"=>"/", "mount"=>"/", "partlabel"=>"Linux", "partuuid"=>"893c59db-bd86-4d67-b40f-221bc82c14c8", "size"=>"8.00 GiB", "size_bytes"=>8587820544, "uuid"=>"f25f5092-0401-4edb-9fac-c57f3c673803"}, "/dev/nvme0n1p128"=>{"partlabel"=>"BIOS Boot Partition", "partuuid"=>"9d1c14c8-e25b-4405-9171-de3c756f61b2", "size"=>"1.00 MiB", "size_bytes"=>1048576}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin", "physicalprocessorcount"=>1, "processor0"=>"AMD EPYC 7571", "processor1"=>"AMD EPYC 7571", "processor2"=>"AMD EPYC 7571", "processor3"=>"AMD EPYC 7571", "processorcount"=>4, "processors"=>{"count"=>4, "isa"=>"x86_64", "models"=>["AMD EPYC 7571", "AMD EPYC 7571", "AMD EPYC 7571", "AMD EPYC 7571"], "physicalcount"=>1}, "productname"=>"t3a.xlarge", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>false, "serialnumber"=>"ec21b37d-28ce-a3c2-956e-527e2857aeda", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 0b8e09e2fe5c820230d717a8f1c4bfd4bcb11dfd", "sha256"=>"SSHFP 2 2 956e88a3dd192f4a401c05deccf92985b16542027b7a77d36172a3c014c8491f"}, "key"=>"AAAAB3NzaC1kc3MAAACBALzgFDQ4Hu4sjtB0gYwh2uv/00U15avjHKLuffc1+rDmjnoW99OlbeijOb9nPBTDR/+OkAJuVzFdfP/EmPAajAMSE2bOPn5jgNBoKdw7g4LMhtRGomJ8ZxJ9kphYbFaq1JdX6a06HSJHn8RlkV6MV9WYnGQiE89e/7kf3krFssXJAAAAFQDuL8oufyAzYtkWvApZlOX+UlFvxwAAAIEAhibNA8agHCpQIrswmMj9PUOhEVx3OqS/F+0TB/vOqWdubFK97zlt56biu+2R2gHNCiqyiGorBA83xonkHrdjn44Nw2KsZVE9xR4BCbqIyrkwQkWbTHfGYwq0QCo9UyuTdrhen2FnFdZXsQw4b4mcedNDxSPzgLy9Pl/EAVINm6EAAACBAJOfk9MzOocneM35ROEMKRZV5oWFwkglRg/qT3Xcvc3PabEUKlTWQs65fVlVkyipri/0cIuPEo8NKUFJ614FHYGedgja2lFz4xEAonJX3wG3c4GSdbv9uMJT0K1p3zbfCuBoZ9my2nJvWBYPYrXvZgXMt48ewJHMy3HlTnhNSklI", "type"=>"ssh-dss"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 8fc1a45df472f27fd3fa19cd5e6df68434fa60d4", "sha256"=>"SSHFP 3 2 c4b4bb4362c47a3d0feaf030779e1bf06e2fd95911b1f8636ad2032b57cf087b"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL2ZVP/li7lMY6UrniJHcWOjBvTs1xdw2NQlmzLtuyaPhnolyh2uwoZctB5tOnlG97NlGqkBKV9pl7+fplDWip0=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 10e0fcb0020748f776ff7178310be3e8e1c788bc", "sha256"=>"SSHFP 4 2 ef9e38c12ab7fa4e4eb82e26d6707110352d82a5beae30887f3de96e7a83fb8f"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHtcpSu4oquHdhVu57O9BP/sHvy1vgMuEWZ2Aoq1elFP", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 70e536ec33e8312c25b6c606546d7acb2f471e28", "sha256"=>"SSHFP 1 2 ee810f2ab351653e9c2ca93270f9c73eb31dd824318b50af72d0afbe31d5d462"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDT/8RUum1jt8FZg8GJRvjjOQyU1VLn1199yjI4xr4aSx7yAmm3eHb5bsSPsxxPUMnlWcd8bq0hWQ5VI2G2WQfUpM4Tyx+wRnGdU1SB7xY8Flzg7w0JOIIIKf1ulxcscacCnGR2y/6rJUkdYVsiCKMADuQ6MUpqA6jLbWHAv8dJlvfq/vtCxBtTOzbhlWmmuvo0WPGXEmHW8Hvj94wcPkvRbf/Pohn+A5NrGs1SlIetn+N6tnK6CPK/g1dNMomPTwU+1+yAIUdTMedJPEeiB8pX5ydDhmO0X76KcXmaqIGvPWWMPEBoPKH8f/IFauOqkoaSAycdKBLYEUbb0iDIlXG1", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALzgFDQ4Hu4sjtB0gYwh2uv/00U15avjHKLuffc1+rDmjnoW99OlbeijOb9nPBTDR/+OkAJuVzFdfP/EmPAajAMSE2bOPn5jgNBoKdw7g4LMhtRGomJ8ZxJ9kphYbFaq1JdX6a06HSJHn8RlkV6MV9WYnGQiE89e/7kf3krFssXJAAAAFQDuL8oufyAzYtkWvApZlOX+UlFvxwAAAIEAhibNA8agHCpQIrswmMj9PUOhEVx3OqS/F+0TB/vOqWdubFK97zlt56biu+2R2gHNCiqyiGorBA83xonkHrdjn44Nw2KsZVE9xR4BCbqIyrkwQkWbTHfGYwq0QCo9UyuTdrhen2FnFdZXsQw4b4mcedNDxSPzgLy9Pl/EAVINm6EAAACBAJOfk9MzOocneM35ROEMKRZV5oWFwkglRg/qT3Xcvc3PabEUKlTWQs65fVlVkyipri/0cIuPEo8NKUFJ614FHYGedgja2lFz4xEAonJX3wG3c4GSdbv9uMJT0K1p3zbfCuBoZ9my2nJvWBYPYrXvZgXMt48ewJHMy3HlTnhNSklI", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL2ZVP/li7lMY6UrniJHcWOjBvTs1xdw2NQlmzLtuyaPhnolyh2uwoZctB5tOnlG97NlGqkBKV9pl7+fplDWip0=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHtcpSu4oquHdhVu57O9BP/sHvy1vgMuEWZ2Aoq1elFP", "sshfp_dsa"=>"SSHFP 2 1 0b8e09e2fe5c820230d717a8f1c4bfd4bcb11dfd\nSSHFP 2 2 956e88a3dd192f4a401c05deccf92985b16542027b7a77d36172a3c014c8491f", "sshfp_ecdsa"=>"SSHFP 3 1 8fc1a45df472f27fd3fa19cd5e6df68434fa60d4\nSSHFP 3 2 c4b4bb4362c47a3d0feaf030779e1bf06e2fd95911b1f8636ad2032b57cf087b", "sshfp_ed25519"=>"SSHFP 4 1 10e0fcb0020748f776ff7178310be3e8e1c788bc\nSSHFP 4 2 ef9e38c12ab7fa4e4eb82e26d6707110352d82a5beae30887f3de96e7a83fb8f", "sshfp_rsa"=>"SSHFP 1 1 70e536ec33e8312c25b6c606546d7acb2f471e28\nSSHFP 1 2 ee810f2ab351653e9c2ca93270f9c73eb31dd824318b50af72d0afbe31d5d462", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDT/8RUum1jt8FZg8GJRvjjOQyU1VLn1199yjI4xr4aSx7yAmm3eHb5bsSPsxxPUMnlWcd8bq0hWQ5VI2G2WQfUpM4Tyx+wRnGdU1SB7xY8Flzg7w0JOIIIKf1ulxcscacCnGR2y/6rJUkdYVsiCKMADuQ6MUpqA6jLbWHAv8dJlvfq/vtCxBtTOzbhlWmmuvo0WPGXEmHW8Hvj94wcPkvRbf/Pohn+A5NrGs1SlIetn+N6tnK6CPK/g1dNMomPTwU+1+yAIUdTMedJPEeiB8pX5ydDhmO0X76KcXmaqIGvPWWMPEBoPKH8f/IFauOqkoaSAycdKBLYEUbb0iDIlXG1", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>136, "uptime"=>"0:02 hours"}, "timezone"=>"UTC", "uptime"=>"0:02 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>136, "uuid"=>"EC21B37D-28CE-A3C2-956E-527E2857AEDA", "virtual"=>"kvm", "clientcert"=>"ip-172-31-3-153.us-west-2.compute.internal", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Amazon-2018.03' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_CentOS-5.11-32_spec.rb b/.onceover/spec/classes/role__metrics_on_CentOS-5.11-32_spec.rb new file mode 100644 index 0000000..87463ba --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_CentOS-5.11-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set CentOS-5.11-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_hda_size"=>0, "blockdevices"=>"hda", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"hda"=>{"size"=>"20.00 GiB", "size_bytes"=>0}}, "domain"=>"localdomain", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,iso9660", "fqdn"=>"localhost.localdomain", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo,sit0", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:febf:56", "ipaddress6_eth0"=>"fe80::a00:27ff:febf:56", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.18-398.el5", "kernelversion"=>"2.6.18", "load_averages"=>{"15m"=>0.11, "1m"=>0.28, "5m"=>0.22}, "lsbdistcodename"=>"Final", "lsbdistdescription"=>"CentOS release 5.11 (Final)", "lsbdistid"=>"CentOS", "lsbdistrelease"=>"5.11", "lsbmajdistrelease"=>"5", "lsbminordistrelease"=>"11", "lsbrelease"=>":core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch", "macaddress"=>"08:00:27:bf:00:56", "macaddress_eth0"=>"08:00:27:bf:00:56", "memory"=>{"swap"=>{"available"=>"1023.99 MiB", "available_bytes"=>1073733632, "capacity"=>"0%", "total"=>"1023.99 MiB", "total_bytes"=>1073733632, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"429.48 MiB", "available_bytes"=>450342912, "capacity"=>"14.58%", "total"=>"502.80 MiB", "total_bytes"=>527220736, "used"=>"73.32 MiB", "used_bytes"=>76877824}}, "memoryfree"=>"429.48 MiB", "memoryfree_mb"=>429.48046875, "memorysize"=>"502.80 MiB", "memorysize_mb"=>502.796875, "mountpoints"=>{"/"=>{"available"=>"1.09 GiB", "available_bytes"=>1171632128, "capacity"=>"52.22%", "device"=>"/dev/mapper/VolGroup00-LogVol00", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"2.28 GiB", "size_bytes"=>-1842671616, "used"=>"1.19 GiB", "used_bytes"=>1280663552}, "/boot"=>{"available"=>"86.58 MiB", "available_bytes"=>90790912, "capacity"=>"12.29%", "device"=>"/dev/hda1", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"98.72 MiB", "size_bytes"=>103512064, "used"=>"12.13 MiB", "used_bytes"=>12721152}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "mtu_sit0"=>1480, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"localdomain", "fqdn"=>"localhost.localdomain", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:febf:56", "mac"=>"08:00:27:bf:00:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}, "sit0"=>{"mtu"=>1480}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:febf:56", "mac"=>"08:00:27:bf:00:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"5", "operatingsystemrelease"=>"5.11", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"Final", "description"=>"CentOS release 5.11 (Final)", "id"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "specification"=>":core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"i686", "name"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "path"=>"/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 3a63a36b70f2d9a56a9dc3a1159a64ff9f89536f", "sha256"=>"SSHFP 2 2 610f5aaa0dc46e30df3fb0ecac0eb3e00e7cac79d610c8c9a2a1eac341244940"}, "key"=>"AAAAB3NzaC1kc3MAAACBANIQgUl4dqCF84m1riBm7rlb5j6v6Dco/P7w0+AE0by81oHLA/i2V89okSrenm2scb4/u57ZpR/GeyVaLzicLyUjBICBwPOsv/+eLnVUtL/+vXwnVleBqaZn+2FUswdkz+J4QiDRSyl78kAkLMAFqEfNimMUB12DirtvgYIFqKaZAAAAFQDTiJhQ0rCPN0ax1rHbjLAMYYoCLwAAAIBWYAzgNYnG5TCzHWSdQZHeJPItH3MUrLFgggb3H9kFZBKCLSBW/EWV1s27G8a1Hd9JAsGEwDGBHn2VLz4uMSssEbJpdJY4jeRmeqeyqZ7My+83XLu0stm2xu6Tt7dwH//DPTTS1XmFXYdx/3tR5JWBIUm6yTb1WS43WUTSyxyPCQAAAIEAzyoULrHnqiBjuJeLB/2OF1vnRT58D53Vd3cQW1xZwyzsPSralv2lMGW0rGaduGrFQjCrDQk0k1fajZnjFX3qfdxaflFCgz2I1W46AcrGXeFy7AlRlCIE1LZtYGd04l3ERiqcUQT+vk2Jv54qMUwSQeyYWY67XcAnglf5GLqwqMo="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 6b3dbcd02fe71fb6106ad074454f8f16917327b5", "sha256"=>"SSHFP 1 2 913a32e7a0b2c81b5419903654c1dc42680df07f4fe04c82d7d70892b77b824b"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAsNcmWEvgjOkr4XA4uYa9aAfcxv1IygDmFnM/zIFbcMUmCxoza/WWZwm/mDO319xq71YqpVtvhgpSTHLGek6Iwb1rZukQvbwZnlzrIe0G8Bc4JpSAmyZkZceve1cau6nOXEI8eDrlbRLtrUNeptaIVHaa85KJqv7Ksc+NxGIRS/xBTWus3rxx3cQaurcyIK1rBHLiL5VpN+ove3Nl3zsHyyOym6FjbqIQuVMStr5j0+lQ3B+AqZpJixwbGKaxSIKZUcQla1pGCchBt7BuAq+A4XE+XIdsi2gRks2IjPGMkOXh0IiYud1ph7JaO7iLjSalylvF9qZSO/70J3w7nKLJYQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBANIQgUl4dqCF84m1riBm7rlb5j6v6Dco/P7w0+AE0by81oHLA/i2V89okSrenm2scb4/u57ZpR/GeyVaLzicLyUjBICBwPOsv/+eLnVUtL/+vXwnVleBqaZn+2FUswdkz+J4QiDRSyl78kAkLMAFqEfNimMUB12DirtvgYIFqKaZAAAAFQDTiJhQ0rCPN0ax1rHbjLAMYYoCLwAAAIBWYAzgNYnG5TCzHWSdQZHeJPItH3MUrLFgggb3H9kFZBKCLSBW/EWV1s27G8a1Hd9JAsGEwDGBHn2VLz4uMSssEbJpdJY4jeRmeqeyqZ7My+83XLu0stm2xu6Tt7dwH//DPTTS1XmFXYdx/3tR5JWBIUm6yTb1WS43WUTSyxyPCQAAAIEAzyoULrHnqiBjuJeLB/2OF1vnRT58D53Vd3cQW1xZwyzsPSralv2lMGW0rGaduGrFQjCrDQk0k1fajZnjFX3qfdxaflFCgz2I1W46AcrGXeFy7AlRlCIE1LZtYGd04l3ERiqcUQT+vk2Jv54qMUwSQeyYWY67XcAnglf5GLqwqMo=", "sshfp_dsa"=>"SSHFP 2 1 3a63a36b70f2d9a56a9dc3a1159a64ff9f89536f\nSSHFP 2 2 610f5aaa0dc46e30df3fb0ecac0eb3e00e7cac79d610c8c9a2a1eac341244940", "sshfp_rsa"=>"SSHFP 1 1 6b3dbcd02fe71fb6106ad074454f8f16917327b5\nSSHFP 1 2 913a32e7a0b2c81b5419903654c1dc42680df07f4fe04c82d7d70892b77b824b", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAsNcmWEvgjOkr4XA4uYa9aAfcxv1IygDmFnM/zIFbcMUmCxoza/WWZwm/mDO319xq71YqpVtvhgpSTHLGek6Iwb1rZukQvbwZnlzrIe0G8Bc4JpSAmyZkZceve1cau6nOXEI8eDrlbRLtrUNeptaIVHaa85KJqv7Ksc+NxGIRS/xBTWus3rxx3cQaurcyIK1rBHLiL5VpN+ove3Nl3zsHyyOym6FjbqIQuVMStr5j0+lQ3B+AqZpJixwbGKaxSIKZUcQla1pGCchBt7BuAq+A4XE+XIdsi2gRks2IjPGMkOXh0IiYud1ph7JaO7iLjSalylvF9qZSO/70J3w7nKLJYQ==", "swapfree"=>"1023.99 MiB", "swapfree_mb"=>1023.9921875, "swapsize"=>"1023.99 MiB", "swapsize_mb"=>1023.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1067, "uptime"=>"0:17 hours"}, "timezone"=>"UTC", "uptime"=>"0:17 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1067, "virtual"=>"virtualbox", "clientcert"=>"localhost.localdomain", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'CentOS-5.11-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_CentOS-5.11-64_spec.rb b/.onceover/spec/classes/role__metrics_on_CentOS-5.11-64_spec.rb new file mode 100644 index 0000000..bcf819c --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_CentOS-5.11-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set CentOS-5.11-64" do + node_facts = {"architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_hda_size"=>21474836480, "blockdevices"=>"hda", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"hda"=>{"size"=>"20.00 GiB", "size_bytes"=>21474836480}}, "domain"=>"localdomain", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,iso9660", "fqdn"=>"localhost.localdomain", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo,sit0", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe3e:4987", "ipaddress6_eth0"=>"fe80::a00:27ff:fe3e:4987", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.18-398.el5", "kernelversion"=>"2.6.18", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"Final", "lsbdistdescription"=>"CentOS release 5.11 (Final)", "lsbdistid"=>"CentOS", "lsbdistrelease"=>"5.11", "lsbmajdistrelease"=>"5", "lsbminordistrelease"=>"11", "lsbrelease"=>":core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch", "macaddress"=>"08:00:27:3e:49:87", "macaddress_eth0"=>"08:00:27:3e:49:87", "memory"=>{"swap"=>{"available"=>"1023.99 MiB", "available_bytes"=>1073733632, "capacity"=>"0%", "total"=>"1023.99 MiB", "total_bytes"=>1073733632, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"389.45 MiB", "available_bytes"=>408363008, "capacity"=>"21.76%", "total"=>"497.78 MiB", "total_bytes"=>521961472, "used"=>"108.34 MiB", "used_bytes"=>113598464}}, "memoryfree"=>"389.45 MiB", "memoryfree_mb"=>389.4453125, "memorysize"=>"497.78 MiB", "memorysize_mb"=>497.78125, "mountpoints"=>{"/"=>{"available"=>"16.96 GiB", "available_bytes"=>18212638720, "capacity"=>"7.23%", "device"=>"/dev/mapper/VolGroup00-LogVol00", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"18.28 GiB", "size_bytes"=>19632164864, "used"=>"1.32 GiB", "used_bytes"=>1419526144}, "/boot"=>{"available"=>"86.04 MiB", "available_bytes"=>90215424, "capacity"=>"12.85%", "device"=>"/dev/hda1", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"98.72 MiB", "size_bytes"=>103512064, "used"=>"12.68 MiB", "used_bytes"=>13296640}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "mtu_sit0"=>1480, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"localdomain", "fqdn"=>"localhost.localdomain", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe3e:4987", "mac"=>"08:00:27:3e:49:87", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}, "sit0"=>{"mtu"=>1480}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe3e:4987", "mac"=>"08:00:27:3e:49:87", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"5", "operatingsystemrelease"=>"5.11", "os"=>{"architecture"=>"x86_64", "distro"=>{"codename"=>"Final", "description"=>"CentOS release 5.11 (Final)", "id"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "specification"=>":core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "path"=>"/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1139f2967264a610088812d1ed3ea8db448c417d", "sha256"=>"SSHFP 2 2 ddb6064607ac29a8c83978d33e46ed56e677f27ed727341142a08156906bc9bb"}, "key"=>"AAAAB3NzaC1kc3MAAACBAK4mrAWHX3BUGyimNDl6+rtP3BXx8hvZ8UCfySeFw3vliSb5uzCLSdbcLmNZxqVrYv9skhO7wIaRFo4xwLSBPbwMffwuO8/2kIXGxkkVKnucsYmsNNaaLAgrfTR+d2lj089fs/PBDGUiJThPPsbNLMVxDEy1SOuby5FAZvNGQTlxAAAAFQCivnpYKhk5wFrpmn1mZv7ayD8HLwAAAIBQ64m92s3WWK+tdChTH2rEvfn3lJlatruRDeZaXrTuuzA7K9uJhtfqg3KAs9gtZup6vOGNJbJWZVxTG+I3jLXgA2Mfd/lAcbtA1RXnqgUITgg2/sd/TkEkCrke/NVjBaiiXVhsly63OIv/JAvq4ulmNxvUT7Pj6Fz9dKvV1elbJQAAAIBqHveIC7RZnN4bGEc+rZZ63aOYI7Pm/9OE2soVjjvGYgk9Iew9S7xwDmcrDKICqSCwzE3ISalkGAkqXKBJnKx/gKziLWdj1VOoNv16X4nVTwxaL7u9nAg1cQ+H5whnWQ+KDoLJPtc8bCpnamGMY4W89a08Qv0U5RECNhv92AQcqQ=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 29e63bdd87c88c24251d791b474a8f3b56d581f7", "sha256"=>"SSHFP 1 2 cfc171e3db64806593cd26571556b360882507938c9a71e477478837cfa6ea9c"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA7Z6GmWepCT3oXq1qGkIq736GM5oXr4ISMuJtGF2+8yOyM+qqvM83zgnZVkCSkNwtiLOODfzbFmmfKKdLoN30xE6oRP+hu9LH7dzRnnIwsx2DBgaX6QPdbcsIG1dnfH34PO1/AvZGRU4YRwrBSVsURR5wow6BYTs56qznYUd6VALvDg0iOLde7eniqQlVbzfLsR+GFeQ9zp9qMI4JjL17RJYBeVam0wP3cYXglE5PsMYuJwVLP6aOIFx3nQPem76bh5fyTVFsav+jsdamw+dZ7uZn6lkRlCtqyxQzFyyT3RgCUW1qVwdus42xsJm8GPojfIcqhQ3HUEDZ61D5dgZjIQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAK4mrAWHX3BUGyimNDl6+rtP3BXx8hvZ8UCfySeFw3vliSb5uzCLSdbcLmNZxqVrYv9skhO7wIaRFo4xwLSBPbwMffwuO8/2kIXGxkkVKnucsYmsNNaaLAgrfTR+d2lj089fs/PBDGUiJThPPsbNLMVxDEy1SOuby5FAZvNGQTlxAAAAFQCivnpYKhk5wFrpmn1mZv7ayD8HLwAAAIBQ64m92s3WWK+tdChTH2rEvfn3lJlatruRDeZaXrTuuzA7K9uJhtfqg3KAs9gtZup6vOGNJbJWZVxTG+I3jLXgA2Mfd/lAcbtA1RXnqgUITgg2/sd/TkEkCrke/NVjBaiiXVhsly63OIv/JAvq4ulmNxvUT7Pj6Fz9dKvV1elbJQAAAIBqHveIC7RZnN4bGEc+rZZ63aOYI7Pm/9OE2soVjjvGYgk9Iew9S7xwDmcrDKICqSCwzE3ISalkGAkqXKBJnKx/gKziLWdj1VOoNv16X4nVTwxaL7u9nAg1cQ+H5whnWQ+KDoLJPtc8bCpnamGMY4W89a08Qv0U5RECNhv92AQcqQ==", "sshfp_dsa"=>"SSHFP 2 1 1139f2967264a610088812d1ed3ea8db448c417d\nSSHFP 2 2 ddb6064607ac29a8c83978d33e46ed56e677f27ed727341142a08156906bc9bb", "sshfp_rsa"=>"SSHFP 1 1 29e63bdd87c88c24251d791b474a8f3b56d581f7\nSSHFP 1 2 cfc171e3db64806593cd26571556b360882507938c9a71e477478837cfa6ea9c", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA7Z6GmWepCT3oXq1qGkIq736GM5oXr4ISMuJtGF2+8yOyM+qqvM83zgnZVkCSkNwtiLOODfzbFmmfKKdLoN30xE6oRP+hu9LH7dzRnnIwsx2DBgaX6QPdbcsIG1dnfH34PO1/AvZGRU4YRwrBSVsURR5wow6BYTs56qznYUd6VALvDg0iOLde7eniqQlVbzfLsR+GFeQ9zp9qMI4JjL17RJYBeVam0wP3cYXglE5PsMYuJwVLP6aOIFx3nQPem76bh5fyTVFsav+jsdamw+dZ7uZn6lkRlCtqyxQzFyyT3RgCUW1qVwdus42xsJm8GPojfIcqhQ3HUEDZ61D5dgZjIQ==", "swapfree"=>"1023.99 MiB", "swapfree_mb"=>1023.9921875, "swapsize"=>"1023.99 MiB", "swapsize_mb"=>1023.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>847, "uptime"=>"0:14 hours"}, "timezone"=>"UTC", "uptime"=>"0:14 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>847, "virtual"=>"virtualbox", "clientcert"=>"localhost.localdomain", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'CentOS-5.11-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_CentOS-6.6-32_spec.rb b/.onceover/spec/classes/role__metrics_on_CentOS-6.6-32_spec.rb new file mode 100644 index 0000000..f5316a1 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_CentOS-6.6-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set CentOS-6.6-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"6C33275E-3132-4167-9318-9BDE31E82035"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext4,iso9660", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:feff:42e5", "ipaddress6_eth0"=>"fe80::a00:27ff:feff:42e5", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-504.el6.i686", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "macaddress"=>"08:00:27:ff:42:e5", "macaddress_eth0"=>"08:00:27:ff:42:e5", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"1.00 GiB", "available_bytes"=>1073737728, "capacity"=>"0%", "total"=>"1.00 GiB", "total_bytes"=>1073737728, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"451.91 MiB", "available_bytes"=>473862144, "capacity"=>"9.40%", "total"=>"498.82 MiB", "total_bytes"=>523051008, "used"=>"46.91 MiB", "used_bytes"=>49188864}}, "memoryfree"=>"451.91 MiB", "memoryfree_mb"=>451.91015625, "memorysize"=>"498.82 MiB", "memorysize_mb"=>498.8203125, "mountpoints"=>{"/"=>{"available"=>"1.02 GiB", "available_bytes"=>1099689984, "capacity"=>"51.05%", "device"=>"/dev/mapper/VolGroup-lv_root", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"2.09 GiB", "size_bytes"=>-2048442368, "used"=>"1.07 GiB", "used_bytes"=>1146834944}, "/boot"=>{"available"=>"450.39 MiB", "available_bytes"=>472266752, "capacity"=>"5.42%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"25.83 MiB", "used_bytes"=>27088896}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feff:42e5", "mac"=>"08:00:27:ff:42:e5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feff:42e5", "mac"=>"08:00:27:ff:42:e5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.6", "os"=>{"architecture"=>"i386", "family"=>"RedHat", "hardware"=>"i686", "name"=>"CentOS", "release"=>{"full"=>"6.6", "major"=>"6", "minor"=>"6"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/VolGroup-lv_root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"bc353fb2-82b1-4d41-a43e-6512030a2a28"}, "/dev/mapper/VolGroup-lv_swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"eb19f39e-a1cc-4e43-bf33-809fa7f52044"}, "/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"51727e98-6cd5-4fba-8a1f-7d4dfb575e1f"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>-525336576, "uuid"=>"vkG7sJ-bfu3-Cko3-YJ7v-jPys-3uHe-vki0jZ"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 5c44d0a9f52668fbaaf05e6957f058d90264adfe", "sha256"=>"SSHFP 2 2 de1d70753fc8dcce901b997fca065a08cdfcc9d7ba44f630e0e16be7a54df877"}, "key"=>"AAAAB3NzaC1kc3MAAACBAME6dtbuRJGNiBgp3QqD50a8LmJLduCTsifX5ST6RA5l+LHIx/UpCo66dsSY29mXVsMIK6tlZyu0MDR4iOz/4oFcKwkgHvbZ33WFY7G526IDrszdLdWnEqxPw7pUC+izWmD337K0gcZnDMJGZk1PVEjK6i5MeFYI4SwYkdd/m7DTAAAAFQCzZLb3M4+Y0TBLUVImfxc31+KXiQAAAIAbk33qNmIiB4+iHJ0coB4MfSdwoPnhU+vG7XpqiA0W/68U6lGIFFFHW0R1utZUQ28E8jUhSwzM0EGXtiSyFpTzjAnS44UiIWvulTkbpa9RnTn1gVzR2Tpbc24LMiKqiz/ZrvKmp8jLUO1/BPCmD80yNXXo+v59wXnVD8Yak4u07QAAAIB0lpeV5gShABSEIBXBuAPGW67mjCdUqbj6Ry1ZV3XTPtUXWVhCehWQrPh9yYCItpepKWp55t7neSqVjaxFo7W8O2gBkYwv24eQiqaqI8vgV3fJf4mdb10cdAb6IzM46WVhSxo1al2XPLBDVtx1z/4RH/7agKpbfmP6QrDgKkMKow=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1002ff7e5e42c3c9c9681d65afe0f195277d2a8", "sha256"=>"SSHFP 1 2 ac639861032637e9c24f0af7126242086540c3d1f41640576c011d6eb9f4bf24"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEArd8ro8164ykLYynBWxSiPBNUy1hLeh2S284vuYCbJwNC/naFBmcXORUFIsegfJpRxFKg3YsCbQUrHfZ6cfAc/xKUdoORUkF+8ixsVl4YzHg6vybxnRlaanBvS0eiR/wzxsVepqC/S3gd7YF3/Lca5sHNixNuqgxsd9iy9VEz7XMZ32mMxBqgTabR1KorBSufGMRADq/jauXpd2QRul+bih5uAL/Ilb2bZutcHUohnWi3UQnR10bO9MS1wr6c42VJBOHW6fZXvGjRvjd94AhNB7RTKvmRCucPCMvkgaDsr+z0cCjmpmptsdy119UpKmv4uCHalPbtHOWMYk2QVnqoQw=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAME6dtbuRJGNiBgp3QqD50a8LmJLduCTsifX5ST6RA5l+LHIx/UpCo66dsSY29mXVsMIK6tlZyu0MDR4iOz/4oFcKwkgHvbZ33WFY7G526IDrszdLdWnEqxPw7pUC+izWmD337K0gcZnDMJGZk1PVEjK6i5MeFYI4SwYkdd/m7DTAAAAFQCzZLb3M4+Y0TBLUVImfxc31+KXiQAAAIAbk33qNmIiB4+iHJ0coB4MfSdwoPnhU+vG7XpqiA0W/68U6lGIFFFHW0R1utZUQ28E8jUhSwzM0EGXtiSyFpTzjAnS44UiIWvulTkbpa9RnTn1gVzR2Tpbc24LMiKqiz/ZrvKmp8jLUO1/BPCmD80yNXXo+v59wXnVD8Yak4u07QAAAIB0lpeV5gShABSEIBXBuAPGW67mjCdUqbj6Ry1ZV3XTPtUXWVhCehWQrPh9yYCItpepKWp55t7neSqVjaxFo7W8O2gBkYwv24eQiqaqI8vgV3fJf4mdb10cdAb6IzM46WVhSxo1al2XPLBDVtx1z/4RH/7agKpbfmP6QrDgKkMKow==", "sshfp_dsa"=>"SSHFP 2 1 5c44d0a9f52668fbaaf05e6957f058d90264adfe\nSSHFP 2 2 de1d70753fc8dcce901b997fca065a08cdfcc9d7ba44f630e0e16be7a54df877", "sshfp_rsa"=>"SSHFP 1 1 d1002ff7e5e42c3c9c9681d65afe0f195277d2a8\nSSHFP 1 2 ac639861032637e9c24f0af7126242086540c3d1f41640576c011d6eb9f4bf24", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEArd8ro8164ykLYynBWxSiPBNUy1hLeh2S284vuYCbJwNC/naFBmcXORUFIsegfJpRxFKg3YsCbQUrHfZ6cfAc/xKUdoORUkF+8ixsVl4YzHg6vybxnRlaanBvS0eiR/wzxsVepqC/S3gd7YF3/Lca5sHNixNuqgxsd9iy9VEz7XMZ32mMxBqgTabR1KorBSufGMRADq/jauXpd2QRul+bih5uAL/Ilb2bZutcHUohnWi3UQnR10bO9MS1wr6c42VJBOHW6fZXvGjRvjd94AhNB7RTKvmRCucPCMvkgaDsr+z0cCjmpmptsdy119UpKmv4uCHalPbtHOWMYk2QVnqoQw==", "swapfree"=>"1.00 GiB", "swapfree_mb"=>1023.99609375, "swapsize"=>"1.00 GiB", "swapsize_mb"=>1023.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>430, "uptime"=>"0:07 hours"}, "timezone"=>"UTC", "uptime"=>"0:07 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>430, "uuid"=>"6C33275E-3132-4167-9318-9BDE31E82035", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'CentOS-6.6-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_CentOS-6.6-64_spec.rb b/.onceover/spec/classes/role__metrics_on_CentOS-6.6-64_spec.rb new file mode 100644 index 0000000..4b3d155 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_CentOS-6.6-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set CentOS-6.6-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"DA4CD203-2C23-4E21-B169-293D1749C38C"}}, "domain"=>"pdx.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"ext4,iso9660", "fqdn"=>"centos6a.pdx.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"centos6a", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ip6tables_version"=>"1.4.7", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe0f:d276", "ipaddress6_eth0"=>"fe80::a00:27ff:fe0f:d276", "ipaddress6_eth1"=>"fe80::a00:27ff:fe66:988a", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"10.20.1.88", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.7", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-504.8.1.el6.x86_64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "macaddress"=>"08:00:27:0f:d2:76", "macaddress_eth0"=>"08:00:27:0f:d2:76", "macaddress_eth1"=>"08:00:27:66:98:8a", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"992.00 MiB", "available_bytes"=>1040183296, "capacity"=>"0%", "total"=>"992.00 MiB", "total_bytes"=>1040183296, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"348.41 MiB", "available_bytes"=>365338624, "capacity"=>"28.95%", "total"=>"490.39 MiB", "total_bytes"=>514215936, "used"=>"141.98 MiB", "used_bytes"=>148877312}}, "memoryfree"=>"348.41 MiB", "memoryfree_mb"=>348.4140625, "memorysize"=>"490.39 MiB", "memorysize_mb"=>490.39453125, "mountpoints"=>{"/"=>{"available"=>"16.94 GiB", "available_bytes"=>18193268736, "capacity"=>"6.51%", "device"=>"/dev/mapper/VolGroup-lv_root", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"18.12 GiB", "size_bytes"=>19459338240, "used"=>"1.18 GiB", "used_bytes"=>1266069504}, "/boot"=>{"available"=>"448.35 MiB", "available_bytes"=>470125568, "capacity"=>"5.85%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"27.88 MiB", "used_bytes"=>29230080}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8555670, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"pdx.puppetlabs.demo", "fqdn"=>"centos6a.pdx.puppetlabs.demo", "hostname"=>"centos6a", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe0f:d276", "mac"=>"08:00:27:0f:d2:76", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"ip"=>"10.20.1.88", "ip6"=>"fe80::a00:27ff:fe66:988a", "mac"=>"08:00:27:66:98:8a", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe0f:d276", "mac"=>"08:00:27:0f:d2:76", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.6", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"6.6", "major"=>"6", "minor"=>"6"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/VolGroup-lv_root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"a29409f8-0b58-4271-a348-032caefec8b8"}, "/dev/mapper/VolGroup-lv_swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b30b464a-8ac9-492a-a1c5-2da75bb7488a"}, "/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"da946872-1406-4ac1-9a4d-f7ce5f7be47e"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>20949499904, "uuid"=>"nRdWPh-INkA-aHPs-TNtk-HjJG-SxBU-DdqI8a"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_razor_server_version"=>"package pe-razor-server is not installed", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"el-6-x86_64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 5dad11db93cde6e3b1d5ce5a5fe5ad02825037e8", "sha256"=>"SSHFP 2 2 576fe2b6a8412ada50cb776e6f1da5dd4bc301f2aa682be2ff82c70558c14745"}, "key"=>"AAAAB3NzaC1kc3MAAACBAJSFgQJi2VfgHnp2MQsV2wNpONevQuhi1Jb/nX0EjHtrAgc8MNRXLQTmjunh5q4+mjcYMHXDIx6F0Oc4XCnR5g6uQwBOGg70oXJmUkmwCw/mdgu3ppepOQJssBKnKFCR7QsbrBL+U1YmYmV8eGYDB76eXWRBOd9LewcGkjhHYbpzAAAAFQCShhFDlgHvmj6kcr6XRUuYPNziNwAAAIBBjLzEbwqoedlUKXRGuKc7nU71qWAkahN8rI4lU7d6PrVS7XziNX3OTCXbRCF3wT/dlYBU+grjmOIF4dbOrjBCHmmYVzlntXsefyR6XIbJw/H08L2LdDT6aye+MDWdYGK0PqgV6AZ5pWUzu7wS+qJduOaNMts5YrzqvlhiFDO8EAAAAIAJoqYk2bkNTPnjYi4qhIP3o+7Lhpxh5akAkjPMpM4tf/BedBqzKimvWhtDNVTcNCOZwJuSkHL4SSafvPCoxbKY4YhFWYykS/Vdle9ixNtH+wMU5d8DsSsvZpfa4lvj9FpzgfcM+NT1aYHis/pIRpBblPfHHnFBsxGKX66v6webHg=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 e1e2811771eb093d9b74333a111e089bc8e434ef", "sha256"=>"SSHFP 1 2 4513b7ba6b47b22319ea40fe9e0f12e9ac200b367b78508364a80a2a9b92409c"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA3Gn072MPvlL1R0RpTGod7BxiCvm4Wp6p8gRYJgEba9FLtYTWYhx18ueLnuFWKnK6WMpwe24732ZGGCsagjBkEo8DFJZABZbfSHxW1gsmU6smUM9o2wt9ZEeYJ036DqIkg4DzsBLc206NKStuKCTOINFSwBtHAWkZCeGdon8ssEoery//yZchbHBXQB1f312Re42W4eLNpWm0T93eEwRRMOpnLtNFrVa9kvHv71eQx2crvDG2xd6BfN0PkU0tx0TBzDS2xUqBg5m1MdNbarxWH1Km8JUEH40jl3YKgh5g0lrfEE36xIItPtW2mFawsMBpMK0iPerqs60or9SjM1LwXQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAJSFgQJi2VfgHnp2MQsV2wNpONevQuhi1Jb/nX0EjHtrAgc8MNRXLQTmjunh5q4+mjcYMHXDIx6F0Oc4XCnR5g6uQwBOGg70oXJmUkmwCw/mdgu3ppepOQJssBKnKFCR7QsbrBL+U1YmYmV8eGYDB76eXWRBOd9LewcGkjhHYbpzAAAAFQCShhFDlgHvmj6kcr6XRUuYPNziNwAAAIBBjLzEbwqoedlUKXRGuKc7nU71qWAkahN8rI4lU7d6PrVS7XziNX3OTCXbRCF3wT/dlYBU+grjmOIF4dbOrjBCHmmYVzlntXsefyR6XIbJw/H08L2LdDT6aye+MDWdYGK0PqgV6AZ5pWUzu7wS+qJduOaNMts5YrzqvlhiFDO8EAAAAIAJoqYk2bkNTPnjYi4qhIP3o+7Lhpxh5akAkjPMpM4tf/BedBqzKimvWhtDNVTcNCOZwJuSkHL4SSafvPCoxbKY4YhFWYykS/Vdle9ixNtH+wMU5d8DsSsvZpfa4lvj9FpzgfcM+NT1aYHis/pIRpBblPfHHnFBsxGKX66v6webHg==", "sshfp_dsa"=>"SSHFP 2 1 5dad11db93cde6e3b1d5ce5a5fe5ad02825037e8\nSSHFP 2 2 576fe2b6a8412ada50cb776e6f1da5dd4bc301f2aa682be2ff82c70558c14745", "sshfp_rsa"=>"SSHFP 1 1 e1e2811771eb093d9b74333a111e089bc8e434ef\nSSHFP 1 2 4513b7ba6b47b22319ea40fe9e0f12e9ac200b367b78508364a80a2a9b92409c", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA3Gn072MPvlL1R0RpTGod7BxiCvm4Wp6p8gRYJgEba9FLtYTWYhx18ueLnuFWKnK6WMpwe24732ZGGCsagjBkEo8DFJZABZbfSHxW1gsmU6smUM9o2wt9ZEeYJ036DqIkg4DzsBLc206NKStuKCTOINFSwBtHAWkZCeGdon8ssEoery//yZchbHBXQB1f312Re42W4eLNpWm0T93eEwRRMOpnLtNFrVa9kvHv71eQx2crvDG2xd6BfN0PkU0tx0TBzDS2xUqBg5m1MdNbarxWH1Km8JUEH40jl3YKgh5g0lrfEE36xIItPtW2mFawsMBpMK0iPerqs60or9SjM1LwXQ==", "staging_http_get"=>"curl", "swapfree"=>"992.00 MiB", "swapfree_mb"=>991.99609375, "swapsize"=>"992.00 MiB", "swapsize_mb"=>991.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>352, "uptime"=>"0:05 hours"}, "timezone"=>"UTC", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>352, "uuid"=>"DA4CD203-2C23-4E21-B169-293D1749C38C", "virtual"=>"virtualbox", "clientcert"=>"centos6a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'CentOS-6.6-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_CentOS-7.0-64_spec.rb b/.onceover/spec/classes/role__metrics_on_CentOS-7.0-64_spec.rb new file mode 100644 index 0000000..21e9570 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_CentOS-7.0-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set CentOS-7.0-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"sydney", "dhcp_servers"=>{"enp0s3"=>"10.0.2.2", "enp0s8"=>"192.168.56.100", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"9D7BE471-F3DA-47EE-B023-F659129270EF"}}, "domain"=>"syd.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"xfs", "fqdn"=>"centos7b.syd.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"centos7b", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"enp0s3,enp0s8,lo", "ip6tables_version"=>"1.4.21", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe39:183c", "ipaddress6_enp0s3"=>"fe80::a00:27ff:fe39:183c", "ipaddress6_enp0s8"=>"fe80::a00:27ff:fe39:832c", "ipaddress6_lo"=>"::1", "ipaddress_enp0s3"=>"10.0.2.15", "ipaddress_enp0s8"=>"10.20.1.92", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.21", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.10", "kernelrelease"=>"3.10.0-123.el7.x86_64", "kernelversion"=>"3.10.0", "load_averages"=>{"15m"=>0.05, "1m"=>0.26, "5m"=>0.12}, "macaddress"=>"08:00:27:39:18:3c", "macaddress_enp0s3"=>"08:00:27:39:18:3c", "macaddress_enp0s8"=>"08:00:27:39:83:2c", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"1.03 GiB", "available_bytes"=>1107292160, "capacity"=>"0%", "total"=>"1.03 GiB", "total_bytes"=>1107292160, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"297.76 MiB", "available_bytes"=>312225792, "capacity"=>"39.28%", "total"=>"490.41 MiB", "total_bytes"=>514228224, "used"=>"192.64 MiB", "used_bytes"=>202002432}}, "memoryfree"=>"297.76 MiB", "memoryfree_mb"=>297.76171875, "memorysize"=>"490.41 MiB", "memorysize_mb"=>490.40625, "mountpoints"=>{"/"=>{"available"=>"17.30 GiB", "available_bytes"=>18574749696, "capacity"=>"6.32%", "device"=>"/dev/mapper/centos-root", "filesystem"=>"xfs", "options"=>["rw", "relatime", "attr2", "inode64", "noquota"], "size"=>"18.47 GiB", "size_bytes"=>19828572160, "used"=>"1.17 GiB", "used_bytes"=>1253822464}, "/boot"=>{"available"=>"393.11 MiB", "available_bytes"=>412209152, "capacity"=>"20.85%", "device"=>"/dev/sda1", "filesystem"=>"xfs", "options"=>["rw", "relatime", "attr2", "inode64", "noquota"], "size"=>"496.67 MiB", "size_bytes"=>520794112, "used"=>"103.55 MiB", "used_bytes"=>108584960}}, "mtu_enp0s3"=>1500, "mtu_enp0s8"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8563388, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s3"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s8"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_enp0s3"=>"255.255.255.0", "netmask_enp0s8"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_enp0s3"=>"fe80::", "network6_enp0s8"=>"fe80::", "network6_lo"=>"::1", "network_enp0s3"=>"10.0.2.0", "network_enp0s8"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"syd.puppetlabs.demo", "fqdn"=>"centos7b.syd.puppetlabs.demo", "hostname"=>"centos7b", "interfaces"=>{"enp0s3"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe39:183c", "mac"=>"08:00:27:39:18:3c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "enp0s8"=>{"dhcp"=>"192.168.56.100", "ip"=>"10.20.1.92", "ip6"=>"fe80::a00:27ff:fe39:832c", "mac"=>"08:00:27:39:83:2c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe39:183c", "mac"=>"08:00:27:39:18:3c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.0.1406", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"7.0.1406", "major"=>"7", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/centos-root"=>{"filesystem"=>"xfs", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"db651e5f-a2c2-4236-9570-6226f63e1fcd"}, "/dev/mapper/centos-swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"ff4ec16c-28c0-4715-846d-11e7c9b4e53b"}, "/dev/sda1"=>{"filesystem"=>"xfs", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"39ce4ad1-4e9d-49a4-bce0-8a30b459490a"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>20949499904, "uuid"=>"pg7zVv-M3hI-zpjY-eYlZ-06aD-ZRO2-J30GLd"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_razor_server_version"=>"package pe-razor-server is not installed", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"el-7-x86_64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 91edfdf5e7e098f4392606865c017dabc26804bb", "sha256"=>"SSHFP 3 2 f00c65a1884bfec52db11de89254f0bfd46baf9e759546654c94371a05ee0dba"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcSUcHQOfBDZElr6PBmxc/4ZDaIhsugXM7OE2SQj35iOMCN/I3XfINMo8SvBIQ6CsBqPnzgbKRBs7e1FPFnsT4="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 f25e9ad2faddbe75263cfee4fa97dc965bc1d581", "sha256"=>"SSHFP 1 2 0173e386031a134e4cbfb7f6971788761a5aa3d9e39dafcf163f003de2537199"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMo35gwbuqQvRq1gy6L8vddeyMNBYr5WPVcftMKSJR1jmwzxcZ+h0AEb3KPfoMHkqe9Xy+3oN981qe5ZCE780HO884AaXzXry9zdWQjGysrI+zHQbqbpOkYAGsVbJiQ7VnH7lMVZo2jCbABj4OdsbeCOeP3oDXTNCTaWWdQChzqvYgNBvb0mg/na1l0naQ1nsJYD85O8ZRQ9U/JOADMaOjummfOb2z7MgskZ9abm5eFCCQl+wUUNXKqQx+uyVM4lyyoTHpW3M2IV0P9wxhWJF6eovwyREGuMgJCs6kbHCFty7HtAYbzziabgQav8pMe68aBqjshbpU6ll/+aXWhD1"}}, "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcSUcHQOfBDZElr6PBmxc/4ZDaIhsugXM7OE2SQj35iOMCN/I3XfINMo8SvBIQ6CsBqPnzgbKRBs7e1FPFnsT4=", "sshfp_ecdsa"=>"SSHFP 3 1 91edfdf5e7e098f4392606865c017dabc26804bb\nSSHFP 3 2 f00c65a1884bfec52db11de89254f0bfd46baf9e759546654c94371a05ee0dba", "sshfp_rsa"=>"SSHFP 1 1 f25e9ad2faddbe75263cfee4fa97dc965bc1d581\nSSHFP 1 2 0173e386031a134e4cbfb7f6971788761a5aa3d9e39dafcf163f003de2537199", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMo35gwbuqQvRq1gy6L8vddeyMNBYr5WPVcftMKSJR1jmwzxcZ+h0AEb3KPfoMHkqe9Xy+3oN981qe5ZCE780HO884AaXzXry9zdWQjGysrI+zHQbqbpOkYAGsVbJiQ7VnH7lMVZo2jCbABj4OdsbeCOeP3oDXTNCTaWWdQChzqvYgNBvb0mg/na1l0naQ1nsJYD85O8ZRQ9U/JOADMaOjummfOb2z7MgskZ9abm5eFCCQl+wUUNXKqQx+uyVM4lyyoTHpW3M2IV0P9wxhWJF6eovwyREGuMgJCs6kbHCFty7HtAYbzziabgQav8pMe68aBqjshbpU6ll/+aXWhD1", "staging_http_get"=>"curl", "swapfree"=>"1.03 GiB", "swapfree_mb"=>1055.99609375, "swapsize"=>"1.03 GiB", "swapsize_mb"=>1055.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>78, "uptime"=>"0:01 hours"}, "timezone"=>"UTC", "uptime"=>"0:01 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>78, "uuid"=>"9D7BE471-F3DA-47EE-B023-F659129270EF", "virtual"=>"virtualbox", "clientcert"=>"centos7b.syd.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'CentOS-7.0-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Debian-6.0.10-32_spec.rb b/.onceover/spec/classes/role__metrics_on_Debian-6.0.10-32_spec.rb new file mode 100644 index 0000000..21f66ba --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Debian-6.0.10-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Debian-6.0.10-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"6E39B0C5-08BD-4595-AC3D-576DAA677DED"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fead:dc1c", "ipaddress6_eth0"=>"fe80::a00:27ff:fead:dc1c", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-5-686", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"squeeze", "lsbdistdescription"=>"Debian GNU/Linux 6.0.10 (squeeze)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"6.0.10", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"0", "macaddress"=>"08:00:27:ad:dc:1c", "macaddress_eth0"=>"08:00:27:ad:dc:1c", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"871.99 MiB", "available_bytes"=>914350080, "capacity"=>"0%", "total"=>"871.99 MiB", "total_bytes"=>914350080, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"434.46 MiB", "available_bytes"=>455565312, "capacity"=>"13.56%", "total"=>"502.63 MiB", "total_bytes"=>527040512, "used"=>"68.16 MiB", "used_bytes"=>71475200}}, "memoryfree"=>"434.46 MiB", "memoryfree_mb"=>434.4609375, "memorysize"=>"502.63 MiB", "memorysize_mb"=>502.625, "mountpoints"=>{"/"=>{"available"=>"1.69 GiB", "available_bytes"=>1819041792, "capacity"=>"35.07%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "errors=remount-ro"], "size"=>"2.61 GiB", "size_bytes"=>-1493307392, "used"=>"937.10 MiB", "used_bytes"=>982618112}, "/boot"=>{"available"=>"213.27 MiB", "available_bytes"=>223632384, "capacity"=>"6.35%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"14.45 MiB", "used_bytes"=>15155200}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fead:dc1c", "mac"=>"08:00:27:ad:dc:1c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fead:dc1c", "mac"=>"08:00:27:ad:dc:1c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.0.10", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"squeeze", "description"=>"Debian GNU/Linux 6.0.10 (squeeze)", "id"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"092d5625-eb03-443c-953f-006bec7d5476"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"f9e1cf7c-ab54-4949-8e55-290adc8d853f"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"2c798378-1738-426f-a847-c929a507fc73"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"cG2Syv-bT1d-2TyA-Wqgz-33I2-RnTz-jA2LxS"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 3e0f92fe3eb7ee9737cead81e7465b5903d6ce57", "sha256"=>"SSHFP 2 2 c67d0777eb694d679a1d24335e76dd0475ca92077ff8d02c91f26a4b9cf56b09"}, "key"=>"AAAAB3NzaC1kc3MAAACBAInFvAyGI1vy23JgBDC4/AZeO2jhNRqlX0kdL9utKPaMgrIzIiEN0aqdlSJY4uTFcYAdfYxMuIkYaMh0FM3EMDB0ZL/1k9W2dCVFYpSHgIa/zJwSEqY7sFHdXjRsD3mjOzEZwpjV+dFq8sHoIouIhMcTC4nejrDRno994JoJSyP3AAAAFQCjjYeNB9geUQHIrcE/nY90aiI9pQAAAIBDoY90WppP0db2EyCgnAsl9J70YQg6bCPHHxl61ktEwStzGu7eEZxXVBDCPtFDYKL2gtmIlF0lAbt5KoC9NnVCb0n9vV4qY+xdwxWAjQI3CtrOfEZTaSlsn7lbgcnjXCODnALL92/nS6ahcVRt1KfmWTjCYnP1We+9QBSz/mRD8wAAAIBT+9TbXOqhlfNP/J3X3rEzZ1HsYh7DoLGbh3krSO0vpdC0crj6vx6NTDfJhwye6axWAgQOXF8g87FFTFERgmxEHhZE/QH7YxueNllJxKPtC77uiDBfaHsGtpIhISirr1fPSRTOVeVN3aCqHMualyCCH2xaYC8yGYwvL8W+mgqG6g=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1795dbe0b42f87f01a7a9f822b8ceb40bd6420b", "sha256"=>"SSHFP 1 2 7a4b0b01598345e44894393168d2e803b2dfbae8795a844b02e7ac16a999417a"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCyhapWpsFVIKdKwjNSiqZQYx6m5w7k3+bsmaNs7YU6qg+HrmBXBR/HwckXTPDMAHPVmmDYwi80N89Gp8NPZvnYJnhZwyQPmMUfORWO0aW8SE/TQKgbpbatZOzKb7pYtLT7g7ZbaWBPJBEqU0aCKAl3AW8FX8Hfja7+GD4DBLUi+rPyGPCr+uxa//NL9PE5nO1mQGLsn0Sy1Z7ChECrFVL7mXZ4xVSfTM3v0HI/SNUuq8qCpw8ysZFmUEbRzVEwTFm5zff8IaTZPQi7e/RofgELzn4+cuXiYHYKyiZDSJVDoHnc61OGmPWVxRHzcxNZDJS4dnc1mO48wyKpaM9xZF7B"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAInFvAyGI1vy23JgBDC4/AZeO2jhNRqlX0kdL9utKPaMgrIzIiEN0aqdlSJY4uTFcYAdfYxMuIkYaMh0FM3EMDB0ZL/1k9W2dCVFYpSHgIa/zJwSEqY7sFHdXjRsD3mjOzEZwpjV+dFq8sHoIouIhMcTC4nejrDRno994JoJSyP3AAAAFQCjjYeNB9geUQHIrcE/nY90aiI9pQAAAIBDoY90WppP0db2EyCgnAsl9J70YQg6bCPHHxl61ktEwStzGu7eEZxXVBDCPtFDYKL2gtmIlF0lAbt5KoC9NnVCb0n9vV4qY+xdwxWAjQI3CtrOfEZTaSlsn7lbgcnjXCODnALL92/nS6ahcVRt1KfmWTjCYnP1We+9QBSz/mRD8wAAAIBT+9TbXOqhlfNP/J3X3rEzZ1HsYh7DoLGbh3krSO0vpdC0crj6vx6NTDfJhwye6axWAgQOXF8g87FFTFERgmxEHhZE/QH7YxueNllJxKPtC77uiDBfaHsGtpIhISirr1fPSRTOVeVN3aCqHMualyCCH2xaYC8yGYwvL8W+mgqG6g==", "sshfp_dsa"=>"SSHFP 2 1 3e0f92fe3eb7ee9737cead81e7465b5903d6ce57\nSSHFP 2 2 c67d0777eb694d679a1d24335e76dd0475ca92077ff8d02c91f26a4b9cf56b09", "sshfp_rsa"=>"SSHFP 1 1 d1795dbe0b42f87f01a7a9f822b8ceb40bd6420b\nSSHFP 1 2 7a4b0b01598345e44894393168d2e803b2dfbae8795a844b02e7ac16a999417a", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCyhapWpsFVIKdKwjNSiqZQYx6m5w7k3+bsmaNs7YU6qg+HrmBXBR/HwckXTPDMAHPVmmDYwi80N89Gp8NPZvnYJnhZwyQPmMUfORWO0aW8SE/TQKgbpbatZOzKb7pYtLT7g7ZbaWBPJBEqU0aCKAl3AW8FX8Hfja7+GD4DBLUi+rPyGPCr+uxa//NL9PE5nO1mQGLsn0Sy1Z7ChECrFVL7mXZ4xVSfTM3v0HI/SNUuq8qCpw8ysZFmUEbRzVEwTFm5zff8IaTZPQi7e/RofgELzn4+cuXiYHYKyiZDSJVDoHnc61OGmPWVxRHzcxNZDJS4dnc1mO48wyKpaM9xZF7B", "swapfree"=>"871.99 MiB", "swapfree_mb"=>871.9921875, "swapsize"=>"871.99 MiB", "swapsize_mb"=>871.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1441, "uptime"=>"0:24 hours"}, "timezone"=>"PST", "uptime"=>"0:24 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1441, "uuid"=>"6E39B0C5-08BD-4595-AC3D-576DAA677DED", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Debian-6.0.10-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Debian-6.0.10-64_spec.rb b/.onceover/spec/classes/role__metrics_on_Debian-6.0.10-64_spec.rb new file mode 100644 index 0000000..e914842 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Debian-6.0.10-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Debian-6.0.10-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"8AFC52E0-2A7C-42BA-BAFA-62B8413FB7C2"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe62:fa69", "ipaddress6_eth0"=>"fe80::a00:27ff:fe62:fa69", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-5-amd64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"squeeze", "lsbdistdescription"=>"Debian GNU/Linux 6.0.10 (squeeze)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"6.0.10", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"0", "macaddress"=>"08:00:27:62:fa:69", "macaddress_eth0"=>"08:00:27:62:fa:69", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"871.99 MiB", "available_bytes"=>914350080, "capacity"=>"0%", "total"=>"871.99 MiB", "total_bytes"=>914350080, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"382.43 MiB", "available_bytes"=>401010688, "capacity"=>"23.04%", "total"=>"496.90 MiB", "total_bytes"=>521035776, "used"=>"114.46 MiB", "used_bytes"=>120025088}}, "memoryfree"=>"382.43 MiB", "memoryfree_mb"=>382.43359375, "memorysize"=>"496.90 MiB", "memorysize_mb"=>496.8984375, "mountpoints"=>{"/"=>{"available"=>"17.65 GiB", "available_bytes"=>18949697536, "capacity"=>"5.16%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "errors=remount-ro"], "size"=>"18.61 GiB", "size_bytes"=>19981529088, "used"=>"984.03 MiB", "used_bytes"=>1031831552}, "/boot"=>{"available"=>"212.24 MiB", "available_bytes"=>222552064, "capacity"=>"6.80%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"15.48 MiB", "used_bytes"=>16235520}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe62:fa69", "mac"=>"08:00:27:62:fa:69", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe62:fa69", "mac"=>"08:00:27:62:fa:69", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.0.10", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"squeeze", "description"=>"Debian GNU/Linux 6.0.10 (squeeze)", "id"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"d2763d16-5203-4625-8733-a6f2ecc94f5a"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b5661448-0339-4ba3-8593-21cc6a049d33"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"415531d6-6955-433f-921e-8f266ab56649"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"vGb2LM-M1SP-IynO-OZJV-sYKl-Pcfo-fAFbiz"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 c9683f8ef6dc226d83a014be6349f496b65d329f", "sha256"=>"SSHFP 2 2 23aa109e68ed1d1b6766259c72d5168a93df3b0818fc975727b203aa6c4eb6ad"}, "key"=>"AAAAB3NzaC1kc3MAAACBALw6MnSlMUiVwDHFe5OUWDLBt0OooRutGu9pH1L3Ir6oZRNCbeFf3qoi+WWBU0cradbi0H1vlwtApdxVwymseyn9OqzfSt8urWkZS0o87vrJ1Hrz8RJe/B0TrWqgI1lm8h3zVBYsR7OXVFlSQC4ljK/3yZXfkIWEDBn8yXAsVMv5AAAAFQDuMctG71BY6fTAWG754jypFIJ/QwAAAIEAkqkhJdtDwZKty47LzSKIPne0t4TfbY8zHRN6atEtEFuOjgSBJoeYY7ILJL8zK8G7YO6nNdY0gVJv5x/R2ac1mfn06cq7xR2I/rD+BICmRt69kyFNi9newk2C7cLG8Mi6JvIHMduU8DegYeqz0kjh8WPUZWPakY5nqbYob6NE6vMAAACBAKh42Jooiu2+P1yrHjuYmjB9Wq8CoDSUwyNslY47HcEvzCuMcEZ8sVutpP0gjvO72bvFUPDzLP4HwqzphLVbGvBCc2N9RPTgJzijnHryB/LFXWS6evePwo4LMLhUMgzPOyIyxXxhG4bTTLR2jBmQe75EDqz3ibKJgb3CKz+hf6SZ"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 8e4b010ef208a5d1ecbbef4999ddb1a20ec0b6d2", "sha256"=>"SSHFP 1 2 1819579b1d40afe00107ef9d153e916f443fbddbefdf7f77583e84f32a3503b3"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCx/7sL2SPCsd/gcIPPvJhhOwYZdZSboDWqbIyUzzothrO7aKGHf7bxRdn+zu4vWUwBMoueGB1lf3xnDbrbDMxdh5sTpKYHWGKvBdgat+sWlEH3YiRd9vkji28R0+GEWdvmRTKfUxGEoJ7/NVZ0RroCMKlWO7tsDIUPhWn2NDZ3z4V3FAv4WvaE0YF1g0+71kF263+9IJCoxx6ztWBQfdJvEdu/k9cvCIJ6IMxscZ48vAqLRali6QCKRNHUqZFOLattqKFvGHdU/WvX+xpEj2QLTD+Tuat2uImblM4wge44oS8nlhN+reO1Cjafjf6lh3cCfUWphndK3Wvv7a18l2av"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALw6MnSlMUiVwDHFe5OUWDLBt0OooRutGu9pH1L3Ir6oZRNCbeFf3qoi+WWBU0cradbi0H1vlwtApdxVwymseyn9OqzfSt8urWkZS0o87vrJ1Hrz8RJe/B0TrWqgI1lm8h3zVBYsR7OXVFlSQC4ljK/3yZXfkIWEDBn8yXAsVMv5AAAAFQDuMctG71BY6fTAWG754jypFIJ/QwAAAIEAkqkhJdtDwZKty47LzSKIPne0t4TfbY8zHRN6atEtEFuOjgSBJoeYY7ILJL8zK8G7YO6nNdY0gVJv5x/R2ac1mfn06cq7xR2I/rD+BICmRt69kyFNi9newk2C7cLG8Mi6JvIHMduU8DegYeqz0kjh8WPUZWPakY5nqbYob6NE6vMAAACBAKh42Jooiu2+P1yrHjuYmjB9Wq8CoDSUwyNslY47HcEvzCuMcEZ8sVutpP0gjvO72bvFUPDzLP4HwqzphLVbGvBCc2N9RPTgJzijnHryB/LFXWS6evePwo4LMLhUMgzPOyIyxXxhG4bTTLR2jBmQe75EDqz3ibKJgb3CKz+hf6SZ", "sshfp_dsa"=>"SSHFP 2 1 c9683f8ef6dc226d83a014be6349f496b65d329f\nSSHFP 2 2 23aa109e68ed1d1b6766259c72d5168a93df3b0818fc975727b203aa6c4eb6ad", "sshfp_rsa"=>"SSHFP 1 1 8e4b010ef208a5d1ecbbef4999ddb1a20ec0b6d2\nSSHFP 1 2 1819579b1d40afe00107ef9d153e916f443fbddbefdf7f77583e84f32a3503b3", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCx/7sL2SPCsd/gcIPPvJhhOwYZdZSboDWqbIyUzzothrO7aKGHf7bxRdn+zu4vWUwBMoueGB1lf3xnDbrbDMxdh5sTpKYHWGKvBdgat+sWlEH3YiRd9vkji28R0+GEWdvmRTKfUxGEoJ7/NVZ0RroCMKlWO7tsDIUPhWn2NDZ3z4V3FAv4WvaE0YF1g0+71kF263+9IJCoxx6ztWBQfdJvEdu/k9cvCIJ6IMxscZ48vAqLRali6QCKRNHUqZFOLattqKFvGHdU/WvX+xpEj2QLTD+Tuat2uImblM4wge44oS8nlhN+reO1Cjafjf6lh3cCfUWphndK3Wvv7a18l2av", "swapfree"=>"871.99 MiB", "swapfree_mb"=>871.9921875, "swapsize"=>"871.99 MiB", "swapsize_mb"=>871.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1211, "uptime"=>"0:20 hours"}, "timezone"=>"PST", "uptime"=>"0:20 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1211, "uuid"=>"8AFC52E0-2A7C-42BA-BAFA-62B8413FB7C2", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Debian-6.0.10-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Debian-7.8-32_spec.rb b/.onceover/spec/classes/role__metrics_on_Debian-7.8-32_spec.rb new file mode 100644 index 0000000..27ff6a2 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Debian-7.8-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Debian-7.8-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"75AFEC9A-DECD-40F4-B25F-A737EE8BA7CA"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe18:59a5", "ipaddress6_eth0"=>"fe80::a00:27ff:fe18:59a5", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.2", "kernelrelease"=>"3.2.0-4-686-pae", "kernelversion"=>"3.2.0", "load_averages"=>{"15m"=>0.03, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"wheezy", "lsbdistdescription"=>"Debian GNU/Linux 7.8 (wheezy)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"7.8", "lsbmajdistrelease"=>"7", "lsbminordistrelease"=>"8", "macaddress"=>"08:00:27:18:59:a5", "macaddress_eth0"=>"08:00:27:18:59:a5", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"872.00 MiB", "available_bytes"=>914354176, "capacity"=>"0%", "total"=>"872.00 MiB", "total_bytes"=>914354176, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"432.02 MiB", "available_bytes"=>453001216, "capacity"=>"14.00%", "total"=>"502.32 MiB", "total_bytes"=>526725120, "used"=>"70.31 MiB", "used_bytes"=>73723904}}, "memoryfree"=>"432.02 MiB", "memoryfree_mb"=>432.015625, "memorysize"=>"502.32 MiB", "memorysize_mb"=>502.32421875, "mountpoints"=>{"/"=>{"available"=>"1.52 GiB", "available_bytes"=>1633996800, "capacity"=>"41.68%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=remount-ro", "user_xattr", "acl", "barrier=1", "data=ordered"], "size"=>"2.61 GiB", "size_bytes"=>-1493307392, "used"=>"1.09 GiB", "used_bytes"=>1167663104}, "/boot"=>{"available"=>"211.24 MiB", "available_bytes"=>221499392, "capacity"=>"7.24%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw", "relatime", "errors=continue"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"16.49 MiB", "used_bytes"=>17288192}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe18:59a5", "mac"=>"08:00:27:18:59:a5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe18:59a5", "mac"=>"08:00:27:18:59:a5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.8", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"wheezy", "description"=>"Debian GNU/Linux 7.8 (wheezy)", "id"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"c87cb2c9-ffb8-48d1-bc31-024a57d3e44e"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"864df30a-fc50-4a93-8cfd-4624251c1589"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"b8ab8500-a238-4554-8d11-9c194ebba70c"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"NvdPwA-esP3-xUuv-n9OR-Ep7r-kQAr-qyUAzr"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 ffc65c9d4e1956519935d902798fc58cbafde1fa", "sha256"=>"SSHFP 2 2 3a59447b36760803f33fdda5c1f58681b271a8a5e6fb4997ee7241cb29a59906"}, "key"=>"AAAAB3NzaC1kc3MAAACBANJna2zK1ufiBINsA3RgaBhVXUFlya5rxD6A2KkeYr1yWcDECATGcsSh6KDEC4asOEtoyIogsZx/5ygefXeR+0R1XYQghrFsZWSwIdVV+jrt6IWddub3KXp8UvfWYUUXKAm0fiGXzTJ7sodap1ep/FBM0cyyaWYXvQCgiBr/T+lLAAAAFQCGGv9dGnuyKCMssoWebZ7PRd41cQAAAIEAsmFTg56Q5KwsFyYrtUR+fZlL983DI4m+/PPWI/pZ4sgvRjA7NWfr+gfJrSObH88ZAccu7edbVSfOyRVcOqCjBYU3nybG9vuelacqm4qdTnZbUWlMZJ1clJ4GlRVPO9zEhuODBleyxQW13XiwgNe9h9vOXlu/xu8aogaIyLfXGZgAAACAMe0yNEoADrHDE8rXr6nvytfibxofPnCtZj7L54OY7HuaBv1I0OqdJVjLw7SjJQ3vIiiR2pMMFVioROgVWUokdskTT/M3RvEcoNG55iYFVe8p43Z1HY4NNLgHIoPZ4C3EDDxiwCxiFK0kmhbg9boyV0Dyra/rbEAyZH6xNZYBR/c="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 5222b070970562793c4df0db8916f7828334bad4", "sha256"=>"SSHFP 3 2 920d4e5ef5dc8064271df26a5cda37211772a9133537d4520addef0e2dc0a480"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOkAfihhbn6Ht/z9rqOPlshRbi8MFhg12kUUf9PBVvKOBA3wgmHzOlcwSdhpO9olPla92uplSlntiE+bqR7eZhA="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 5bd78bebc725f3afc34cff576f09eaa052ef6c3d", "sha256"=>"SSHFP 1 2 c9e8b904a928e59d86e90e84d972b95bc3eabbfcf465ce0bb9569547ac5c2aa6"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQD4eO7mc/0jHFMbrPCrT6ktvNPzIqceRoIo6Kf/E845UlOO0eX425jMKVLqmnQCorZnN168LyyRfBoKXCmC/EEe18BlTcosCBseh/RytFcOpaUcX5etnmaqf8yBg4Hcp2zkRQx4HsHJMK5/52Dha7ZU7FvgJBMfCJULaEL9t+eRp1bOLN7GnFsMkXAaLmUqI3d6cVI8rc10ocQMu1nhzzNX4FDjoSvRH/AKGTzcIm8LBXUAR3v1ubFf+8Qc8vYF/sGcyJAJ0Bhcmg9/KH9NQMT01u0cgCOsxzBXu56CF5zeKERrbi8k6OJzz0t+rT8/7mwJOgKx4QhHt69jqt4KVeJv"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBANJna2zK1ufiBINsA3RgaBhVXUFlya5rxD6A2KkeYr1yWcDECATGcsSh6KDEC4asOEtoyIogsZx/5ygefXeR+0R1XYQghrFsZWSwIdVV+jrt6IWddub3KXp8UvfWYUUXKAm0fiGXzTJ7sodap1ep/FBM0cyyaWYXvQCgiBr/T+lLAAAAFQCGGv9dGnuyKCMssoWebZ7PRd41cQAAAIEAsmFTg56Q5KwsFyYrtUR+fZlL983DI4m+/PPWI/pZ4sgvRjA7NWfr+gfJrSObH88ZAccu7edbVSfOyRVcOqCjBYU3nybG9vuelacqm4qdTnZbUWlMZJ1clJ4GlRVPO9zEhuODBleyxQW13XiwgNe9h9vOXlu/xu8aogaIyLfXGZgAAACAMe0yNEoADrHDE8rXr6nvytfibxofPnCtZj7L54OY7HuaBv1I0OqdJVjLw7SjJQ3vIiiR2pMMFVioROgVWUokdskTT/M3RvEcoNG55iYFVe8p43Z1HY4NNLgHIoPZ4C3EDDxiwCxiFK0kmhbg9boyV0Dyra/rbEAyZH6xNZYBR/c=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOkAfihhbn6Ht/z9rqOPlshRbi8MFhg12kUUf9PBVvKOBA3wgmHzOlcwSdhpO9olPla92uplSlntiE+bqR7eZhA=", "sshfp_dsa"=>"SSHFP 2 1 ffc65c9d4e1956519935d902798fc58cbafde1fa\nSSHFP 2 2 3a59447b36760803f33fdda5c1f58681b271a8a5e6fb4997ee7241cb29a59906", "sshfp_ecdsa"=>"SSHFP 3 1 5222b070970562793c4df0db8916f7828334bad4\nSSHFP 3 2 920d4e5ef5dc8064271df26a5cda37211772a9133537d4520addef0e2dc0a480", "sshfp_rsa"=>"SSHFP 1 1 5bd78bebc725f3afc34cff576f09eaa052ef6c3d\nSSHFP 1 2 c9e8b904a928e59d86e90e84d972b95bc3eabbfcf465ce0bb9569547ac5c2aa6", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQD4eO7mc/0jHFMbrPCrT6ktvNPzIqceRoIo6Kf/E845UlOO0eX425jMKVLqmnQCorZnN168LyyRfBoKXCmC/EEe18BlTcosCBseh/RytFcOpaUcX5etnmaqf8yBg4Hcp2zkRQx4HsHJMK5/52Dha7ZU7FvgJBMfCJULaEL9t+eRp1bOLN7GnFsMkXAaLmUqI3d6cVI8rc10ocQMu1nhzzNX4FDjoSvRH/AKGTzcIm8LBXUAR3v1ubFf+8Qc8vYF/sGcyJAJ0Bhcmg9/KH9NQMT01u0cgCOsxzBXu56CF5zeKERrbi8k6OJzz0t+rT8/7mwJOgKx4QhHt69jqt4KVeJv", "swapfree"=>"872.00 MiB", "swapfree_mb"=>871.99609375, "swapsize"=>"872.00 MiB", "swapsize_mb"=>871.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>800, "uptime"=>"0:13 hours"}, "timezone"=>"PST", "uptime"=>"0:13 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>800, "uuid"=>"75AFEC9A-DECD-40F4-B25F-A737EE8BA7CA", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Debian-7.8-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Debian-7.8-64_spec.rb b/.onceover/spec/classes/role__metrics_on_Debian-7.8-64_spec.rb new file mode 100644 index 0000000..5eb653a --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Debian-7.8-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Debian-7.8-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"117385F3-E367-4C81-BEE6-78384BAAA1DB"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe83:ad56", "ipaddress6_eth0"=>"fe80::a00:27ff:fe83:ad56", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.2", "kernelrelease"=>"3.2.0-4-amd64", "kernelversion"=>"3.2.0", "load_averages"=>{"15m"=>0.01, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"wheezy", "lsbdistdescription"=>"Debian GNU/Linux 7.8 (wheezy)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"7.8", "lsbmajdistrelease"=>"7", "lsbminordistrelease"=>"8", "macaddress"=>"08:00:27:83:ad:56", "macaddress_eth0"=>"08:00:27:83:ad:56", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"872.00 MiB", "available_bytes"=>914354176, "capacity"=>"0%", "total"=>"872.00 MiB", "total_bytes"=>914354176, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"382.02 MiB", "available_bytes"=>400576512, "capacity"=>"23.13%", "total"=>"496.96 MiB", "total_bytes"=>521101312, "used"=>"114.94 MiB", "used_bytes"=>120524800}}, "memoryfree"=>"382.02 MiB", "memoryfree_mb"=>382.01953125, "memorysize"=>"496.96 MiB", "memorysize_mb"=>496.9609375, "mountpoints"=>{"/"=>{"available"=>"17.49 GiB", "available_bytes"=>18781380608, "capacity"=>"6.01%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=remount-ro", "user_xattr", "acl", "barrier=1", "data=ordered"], "size"=>"18.61 GiB", "size_bytes"=>19981529088, "used"=>"1.12 GiB", "used_bytes"=>1200148480}, "/boot"=>{"available"=>"210.36 MiB", "available_bytes"=>220575744, "capacity"=>"7.63%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw", "relatime", "errors=continue"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"17.37 MiB", "used_bytes"=>18211840}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe83:ad56", "mac"=>"08:00:27:83:ad:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe83:ad56", "mac"=>"08:00:27:83:ad:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.8", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"wheezy", "description"=>"Debian GNU/Linux 7.8 (wheezy)", "id"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"7b853135-fb91-48ff-a25c-8d34ada8d549"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"486756ce-bdd1-45f4-864d-e4b6fce59b9d"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"8aa50802-2811-43ec-9686-a30f6a1c3ade"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"eGBBBU-DZw3-wy0f-OMxw-Sf5d-jDyA-ctqcpx"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 36d929686c60f981438c3e708f76eaa8aea811ac", "sha256"=>"SSHFP 2 2 f509f25d24c474bf0f2b0fae387b1c798174632af84f7e7b064ead1d1e23b144"}, "key"=>"AAAAB3NzaC1kc3MAAACBAKo52UJRnjkvuOvraymZ2bDiTUEUexIZ50eR2hx47JpOCUW0OMFH443axvl4TeCpPwqTbf0MH3RdkdSqpGOSAAcBmDfOyI5o9dgzWwSIiplNTxO29tUB9YinkduLEe4pXL5FwZ20owYnvcbrlc8t+LNl8Vku3zWWMrng6mf620MVAAAAFQC5KtOLXLxKD3hk3ATXQbnli4wMRwAAAIAy3bLl4X5yk+WYssTadam8ScUdvzVBCXsrfK9o8HNHfdHCAQqYRYYlC7muDATZxhyw72IhZsFzw/Wswr+5K35hElvrH8j3pFXafe+5dp18CP3V+vXTAzVBiiOnA+AG1tvudBRsrh7bhD9oq1LnXqijLRiI9nD0Faem4uGcT7/jqgAAAIBudV2Q2VYl/N+pRv4/JTgsNLtNz3X12dMjeNXwbpM9LJZUVZDq/KsT1vdDTYOy42g/v14ucRU50QyyAxx78prRgyTIfyKFDEiff9i5uok0c/YN0t2w9ayYkYl6xBWVj+q2SiUM6WdqJdb7sltOLGwsjkroqAV0xdBpbiN6ZWvzKA=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 263f3632f018d8535aaf8374ff4e8bdfc2eb118a", "sha256"=>"SSHFP 3 2 f14b4e61f1569a8181800a082ce91452ce352122bffe4e39314888b280f598a6"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEspGa8fuYvtfy2pnBhKV/d/xfmUmvAVUhCJLOlwRURmszRQBW/+GwvhPIT1avptddqTUF2HeA1XKLkbabnxoHI="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3f543127df57aceb9be2259918ff9115e507be37", "sha256"=>"SSHFP 1 2 90114d6c22d6a759b85f4df1316c567828da41411ae36e8eb09e480bf3cd8ac3"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC8R/CbG0zr75BfoeoCv0GuLcxEIf8Yp5+s2OJKrYRqRmfD9gM6f4J3lVGB/+i5WRiQqJ61Mogstd4CSFmIUhq+opARvDQGxIz1mgV4aHAZDIAGYZ9b1nwS//JWb7nW5mMQqOW3fq59XWxssWjkW6kjJqNSvJtH24kDayxg3jB6Xt2jChz6NLq0t+WmRf24EKCymfnTOdXc4a2sSusAwSb1yl6iHnLpkd5efsUm/ZNCOzHbUtUsnAfDW4MNCUTzq8M/9SpCy2CRid4F29bD1jnJEvyPRrIRAwfPdJTuNZ06pzOWexvS0PcOY6tb0XbdFE78iDdUrVHqTGJiVrFHLoAx"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAKo52UJRnjkvuOvraymZ2bDiTUEUexIZ50eR2hx47JpOCUW0OMFH443axvl4TeCpPwqTbf0MH3RdkdSqpGOSAAcBmDfOyI5o9dgzWwSIiplNTxO29tUB9YinkduLEe4pXL5FwZ20owYnvcbrlc8t+LNl8Vku3zWWMrng6mf620MVAAAAFQC5KtOLXLxKD3hk3ATXQbnli4wMRwAAAIAy3bLl4X5yk+WYssTadam8ScUdvzVBCXsrfK9o8HNHfdHCAQqYRYYlC7muDATZxhyw72IhZsFzw/Wswr+5K35hElvrH8j3pFXafe+5dp18CP3V+vXTAzVBiiOnA+AG1tvudBRsrh7bhD9oq1LnXqijLRiI9nD0Faem4uGcT7/jqgAAAIBudV2Q2VYl/N+pRv4/JTgsNLtNz3X12dMjeNXwbpM9LJZUVZDq/KsT1vdDTYOy42g/v14ucRU50QyyAxx78prRgyTIfyKFDEiff9i5uok0c/YN0t2w9ayYkYl6xBWVj+q2SiUM6WdqJdb7sltOLGwsjkroqAV0xdBpbiN6ZWvzKA==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEspGa8fuYvtfy2pnBhKV/d/xfmUmvAVUhCJLOlwRURmszRQBW/+GwvhPIT1avptddqTUF2HeA1XKLkbabnxoHI=", "sshfp_dsa"=>"SSHFP 2 1 36d929686c60f981438c3e708f76eaa8aea811ac\nSSHFP 2 2 f509f25d24c474bf0f2b0fae387b1c798174632af84f7e7b064ead1d1e23b144", "sshfp_ecdsa"=>"SSHFP 3 1 263f3632f018d8535aaf8374ff4e8bdfc2eb118a\nSSHFP 3 2 f14b4e61f1569a8181800a082ce91452ce352122bffe4e39314888b280f598a6", "sshfp_rsa"=>"SSHFP 1 1 3f543127df57aceb9be2259918ff9115e507be37\nSSHFP 1 2 90114d6c22d6a759b85f4df1316c567828da41411ae36e8eb09e480bf3cd8ac3", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC8R/CbG0zr75BfoeoCv0GuLcxEIf8Yp5+s2OJKrYRqRmfD9gM6f4J3lVGB/+i5WRiQqJ61Mogstd4CSFmIUhq+opARvDQGxIz1mgV4aHAZDIAGYZ9b1nwS//JWb7nW5mMQqOW3fq59XWxssWjkW6kjJqNSvJtH24kDayxg3jB6Xt2jChz6NLq0t+WmRf24EKCymfnTOdXc4a2sSusAwSb1yl6iHnLpkd5efsUm/ZNCOzHbUtUsnAfDW4MNCUTzq8M/9SpCy2CRid4F29bD1jnJEvyPRrIRAwfPdJTuNZ06pzOWexvS0PcOY6tb0XbdFE78iDdUrVHqTGJiVrFHLoAx", "swapfree"=>"872.00 MiB", "swapfree_mb"=>871.99609375, "swapsize"=>"872.00 MiB", "swapsize_mb"=>871.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>650, "uptime"=>"0:10 hours"}, "timezone"=>"PST", "uptime"=>"0:10 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>650, "uuid"=>"117385F3-E367-4C81-BEE6-78384BAAA1DB", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Debian-7.8-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_RHEL-6.7_spec.rb b/.onceover/spec/classes/role__metrics_on_RHEL-6.7_spec.rb new file mode 100644 index 0000000..68a3b33 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_RHEL-6.7_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set RHEL-6.7" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"06/02/2017", "bios_vendor"=>"American Megatrends Inc.", "bios_version"=>"090007", "blockdevice_sda_model"=>"Virtual Disk", "blockdevice_sda_size"=>34359738368, "blockdevice_sda_vendor"=>"Msft", "blockdevice_sdb_model"=>"Virtual Disk", "blockdevice_sdb_size"=>53687091200, "blockdevice_sdb_vendor"=>"Msft", "blockdevice_sr0_model"=>"Virtual CD/ROM", "blockdevice_sr0_size"=>643072, "blockdevice_sr0_vendor"=>"Msft", "blockdevices"=>"sr0,sdb,sda", "boardmanufacturer"=>"Microsoft Corporation", "boardproductname"=>"Virtual Machine", "boardserialnumber"=>"0000-0010-9727-3914-2228-1494-64", "chassisassettag"=>"7783-7084-3265-9085-8269-3286-77", "chassistype"=>"Desktop", "dhcp_servers"=>{"eth0"=>"168.63.129.16", "system"=>"168.63.129.16"}, "disks"=>{"sda"=>{"model"=>"Virtual Disk", "size"=>"32.00 GiB", "size_bytes"=>34359738368, "vendor"=>"Msft"}, "sdb"=>{"model"=>"Virtual Disk", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"Msft"}, "sr0"=>{"model"=>"Virtual CD/ROM", "size"=>"628.00 KiB", "size_bytes"=>643072, "vendor"=>"Msft"}}, "dmi"=>{"bios"=>{"release_date"=>"06/02/2017", "vendor"=>"American Megatrends Inc.", "version"=>"090007"}, "board"=>{"manufacturer"=>"Microsoft Corporation", "product"=>"Virtual Machine", "serial_number"=>"0000-0010-9727-3914-2228-1494-64"}, "chassis"=>{"asset_tag"=>"7783-7084-3265-9085-8269-3286-77", "type"=>"Desktop"}, "manufacturer"=>"Microsoft Corporation", "product"=>{"name"=>"Virtual Machine", "serial_number"=>"0000-0016-4348-2410-5386-3288-39", "uuid"=>"723914E4-94CB-0743-9847-001D218884D8"}}, "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "facterversion"=>"3.12.4", "filesystems"=>"ext4,iso9660,udf", "fips_enabled"=>false, "fqdn"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"rhel6box", "hypervisors"=>{"hyperv"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.0.5", "ipaddress6"=>"fe80::20d:3aff:fe96:ed47", "ipaddress6_eth0"=>"fe80::20d:3aff:fe96:ed47", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.0.5", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-573.45.1.el6.x86_64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.06, "1m"=>0.15, "5m"=>0.14}, "lsbdistcodename"=>"Santiago", "lsbdistdescription"=>"Red Hat Enterprise Linux Server release 6.7 (Santiago)", "lsbdistid"=>"RedHatEnterpriseServer", "lsbdistrelease"=>"6.7", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"7", "lsbrelease"=>":base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch", "macaddress"=>"00:0d:3a:96:ed:47", "macaddress_eth0"=>"00:0d:3a:96:ed:47", "manufacturer"=>"Microsoft Corporation", "memory"=>{"swap"=>{"available"=>"2.00 GiB", "available_bytes"=>2147479552, "capacity"=>"0%", "total"=>"2.00 GiB", "total_bytes"=>2147479552, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"7.55 GiB", "available_bytes"=>8103010304, "capacity"=>"3.24%", "total"=>"7.80 GiB", "total_bytes"=>8374747136, "used"=>"259.15 MiB", "used_bytes"=>271736832}}, "memoryfree"=>"7.55 GiB", "memoryfree_mb"=>7727.6328125, "memorysize"=>"7.80 GiB", "memorysize_mb"=>7986.78125, "mountpoints"=>{"/"=>{"available"=>"27.90 GiB", "available_bytes"=>29956210688, "capacity"=>"9.68%", "device"=>"/dev/sda2", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"30.89 GiB", "size_bytes"=>33168420864, "used"=>"2.99 GiB", "used_bytes"=>3212210176}, "/boot"=>{"available"=>"402.87 MiB", "available_bytes"=>422435840, "capacity"=>"15.40%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"73.36 MiB", "used_bytes"=>76919808}, "/dev/shm"=>{"available"=>"3.90 GiB", "available_bytes"=>4187373568, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "rootcontext=\"system_u:object_r:tmpfs_t:s0\""], "size"=>"3.90 GiB", "size_bytes"=>4187373568, "used"=>"0 bytes", "used_bytes"=>0}, "/mnt/resource"=>{"available"=>"47.04 GiB", "available_bytes"=>50506543104, "capacity"=>"4.18%", "device"=>"/dev/sdb1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"49.09 GiB", "size_bytes"=>52708372480, "used"=>"2.05 GiB", "used_bytes"=>2201829376}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"168.63.129.16", "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "fqdn"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "hostname"=>"rhel6box", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.0.5", "netmask"=>"255.255.255.0", "network"=>"10.0.0.0"}], "bindings6"=>[{"address"=>"fe80::20d:3aff:fe96:ed47", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"168.63.129.16", "ip"=>"10.0.0.5", "ip6"=>"fe80::20d:3aff:fe96:ed47", "mac"=>"00:0d:3a:96:ed:47", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.0.5", "ip6"=>"fe80::20d:3aff:fe96:ed47", "mac"=>"00:0d:3a:96:ed:47", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"RedHat", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.7", "os"=>{"architecture"=>"x86_64", "distro"=>{"codename"=>"Santiago", "description"=>"Red Hat Enterprise Linux Server release 6.7 (Santiago)", "id"=>"RedHatEnterpriseServer", "release"=>{"full"=>"6.7", "major"=>"6", "minor"=>"7"}, "specification"=>":base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"RedHat", "release"=>{"full"=>"6.7", "major"=>"6", "minor"=>"7"}, "selinux"=>{"config_mode"=>"enforcing", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>"24"}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"ce2ad98e-bb9f-4603-abce-3db7fd857a6c"}, "/dev/sda2"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"31.51 GiB", "size_bytes"=>33834401792, "uuid"=>"be4cc18d-b110-4914-a6f9-52dc0dc66f68"}, "/dev/sdb1"=>{"filesystem"=>"ext4", "mount"=>"/mnt/resource", "size"=>"50.00 GiB", "size_bytes"=>53684994048, "uuid"=>"aafc7ffe-f0b2-4872-8174-a05f24f6c3d4"}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processor1"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz"], "physicalcount"=>1}, "productname"=>"Virtual Machine", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>true, "selinux_config_mode"=>"enforcing", "selinux_current_mode"=>"enforcing", "selinux_enforced"=>true, "selinux_policyversion"=>"24", "serialnumber"=>"0000-0016-4348-2410-5386-3288-39", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 2e57bf0a973182ca91a3a9da9df2d332e55624ce", "sha256"=>"SSHFP 2 2 e2bbc2a273c58f32c9680300045705133d3efc571bda04798fc67b74463126cd"}, "key"=>"AAAAB3NzaC1kc3MAAACBAL//vXVYQWUZ0FmIEo76fECXpnTXBM5k9XpvJ/hHo+C9AAhkDz8OIPKW/mWjJWkux4nGASNKeHLaya+3Y9vtNZ/MdGw4ivJOR4rCCOfcPzuo3PbBsRE2gKaqc53F6/SwLufGPW2WF8deD6vgTs/OfklbK1evvPBSFAEYrGXlGyJPAAAAFQDY6orVttfPBu50B7OUA5k9ObNLaQAAAIBwX43NbThII85Bv6et0FdeQftDwoLNCTjBI0+DFNqxTVH/LO10fwqcdOMI1jAmmUSe0Dt+PpWQ1ZosK1UKN+hq3jWc84vxyL7l4KYigrvZJoKWvljazNN2unetwLUiPE4X2KL/CmTnXv/N9SeWsSnr86thNVRioQx+znoy8WZHOAAAAIEAkNIj1FhjzCMK4/f2Wg6tJHsW8wRwcGEzAymIj++aBYGPy5BI5Fa6kOcMEyJ+nl+8U3Mps+mJY5EYE/FvsinOrSJzFqowofABd7NgtoRLTGQyohBHP41+RPqXdPGDzPHHvOnuFP/vSKe+sgtJ6j6OqpddLPVybv/7EbylU9n1OpA=", "type"=>"ssh-dss"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3c9465989548635bc20a034f98be3dd917074a7d", "sha256"=>"SSHFP 1 2 22cec87904c8057c2fa6b92e252b95496b678d042fe19d3f58332d67755bbb39"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAuHC1qI3c48QrKuSLHo54im7OIGQyFL/KwoP4jig+LbIdduwmGMlXejZr+E3yb/RKvwQJGkGJ8HCLf8hyz0AmQf2690rXD7M3Ibq8Q3OrpteC46N3JbvnAFockJPLkMt3g/4sWTTmQbMStBAsfhaergAhXHp8x/xmqYnXtYWbKLyY1aFynWiyXx0omJLd3n0zCnDpEDTRlwn/LAwotK/b/lZ58RXJhafA5AbquKYANtg3png+FYX2MAWj75NXwY4h5dQGtMa8dWqWyZYE4Z9bzWFx4A6YAQPwyheKs4GWCU7dCDuiE4z6oZ3BMbfnfO4oX7bnmDtFRoE2GUElBi46Bw==", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAL//vXVYQWUZ0FmIEo76fECXpnTXBM5k9XpvJ/hHo+C9AAhkDz8OIPKW/mWjJWkux4nGASNKeHLaya+3Y9vtNZ/MdGw4ivJOR4rCCOfcPzuo3PbBsRE2gKaqc53F6/SwLufGPW2WF8deD6vgTs/OfklbK1evvPBSFAEYrGXlGyJPAAAAFQDY6orVttfPBu50B7OUA5k9ObNLaQAAAIBwX43NbThII85Bv6et0FdeQftDwoLNCTjBI0+DFNqxTVH/LO10fwqcdOMI1jAmmUSe0Dt+PpWQ1ZosK1UKN+hq3jWc84vxyL7l4KYigrvZJoKWvljazNN2unetwLUiPE4X2KL/CmTnXv/N9SeWsSnr86thNVRioQx+znoy8WZHOAAAAIEAkNIj1FhjzCMK4/f2Wg6tJHsW8wRwcGEzAymIj++aBYGPy5BI5Fa6kOcMEyJ+nl+8U3Mps+mJY5EYE/FvsinOrSJzFqowofABd7NgtoRLTGQyohBHP41+RPqXdPGDzPHHvOnuFP/vSKe+sgtJ6j6OqpddLPVybv/7EbylU9n1OpA=", "sshfp_dsa"=>"SSHFP 2 1 2e57bf0a973182ca91a3a9da9df2d332e55624ce\nSSHFP 2 2 e2bbc2a273c58f32c9680300045705133d3efc571bda04798fc67b74463126cd", "sshfp_rsa"=>"SSHFP 1 1 3c9465989548635bc20a034f98be3dd917074a7d\nSSHFP 1 2 22cec87904c8057c2fa6b92e252b95496b678d042fe19d3f58332d67755bbb39", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAuHC1qI3c48QrKuSLHo54im7OIGQyFL/KwoP4jig+LbIdduwmGMlXejZr+E3yb/RKvwQJGkGJ8HCLf8hyz0AmQf2690rXD7M3Ibq8Q3OrpteC46N3JbvnAFockJPLkMt3g/4sWTTmQbMStBAsfhaergAhXHp8x/xmqYnXtYWbKLyY1aFynWiyXx0omJLd3n0zCnDpEDTRlwn/LAwotK/b/lZ58RXJhafA5AbquKYANtg3png+FYX2MAWj75NXwY4h5dQGtMa8dWqWyZYE4Z9bzWFx4A6YAQPwyheKs4GWCU7dCDuiE4z6oZ3BMbfnfO4oX7bnmDtFRoE2GUElBi46Bw==", "swapfree"=>"2.00 GiB", "swapfree_mb"=>2047.99609375, "swapsize"=>"2.00 GiB", "swapsize_mb"=>2047.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>239, "uptime"=>"0:03 hours"}, "timezone"=>"EDT", "uptime"=>"0:03 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>239, "uuid"=>"723914E4-94CB-0743-9847-001D218884D8", "virtual"=>"hyperv", "clientcert"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'RHEL-6.7' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_RHEL-7.4_spec.rb b/.onceover/spec/classes/role__metrics_on_RHEL-7.4_spec.rb new file mode 100644 index 0000000..70752da --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_RHEL-7.4_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set RHEL-7.4" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"06/02/2017", "bios_vendor"=>"American Megatrends Inc.", "bios_version"=>"090007", "blockdevice_fd0_size"=>4096, "blockdevice_sda_model"=>"Virtual Disk", "blockdevice_sda_size"=>34359738368, "blockdevice_sda_vendor"=>"Msft", "blockdevice_sdb_model"=>"Virtual Disk", "blockdevice_sdb_size"=>53687091200, "blockdevice_sdb_vendor"=>"Msft", "blockdevice_sr0_model"=>"Virtual CD/ROM", "blockdevice_sr0_size"=>643072, "blockdevice_sr0_vendor"=>"Msft", "blockdevices"=>"fd0,sda,sdb,sr0", "boardmanufacturer"=>"Microsoft Corporation", "boardproductname"=>"Virtual Machine", "boardserialnumber"=>"0000-0010-6006-7746-5828-7871-43", "chassisassettag"=>"7783-7084-3265-9085-8269-3286-77", "chassistype"=>"Desktop", "dhcp_servers"=>{"eth0"=>"168.63.129.16", "system"=>"168.63.129.16"}, "disks"=>{"fd0"=>{"size"=>"4.00 KiB", "size_bytes"=>4096}, "sda"=>{"model"=>"Virtual Disk", "size"=>"32.00 GiB", "size_bytes"=>34359738368, "vendor"=>"Msft"}, "sdb"=>{"model"=>"Virtual Disk", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"Msft"}, "sr0"=>{"model"=>"Virtual CD/ROM", "size"=>"628.00 KiB", "size_bytes"=>643072, "vendor"=>"Msft"}}, "dmi"=>{"bios"=>{"release_date"=>"06/02/2017", "vendor"=>"American Megatrends Inc.", "version"=>"090007"}, "board"=>{"manufacturer"=>"Microsoft Corporation", "product"=>"Virtual Machine", "serial_number"=>"0000-0010-6006-7746-5828-7871-43"}, "chassis"=>{"asset_tag"=>"7783-7084-3265-9085-8269-3286-77", "type"=>"Desktop"}, "manufacturer"=>"Microsoft Corporation", "product"=>{"name"=>"Virtual Machine", "serial_number"=>"0000-0017-8302-7891-2115-8198-39", "uuid"=>"33E071F7-CDA2-3F45-931D-2BFD893683C7"}}, "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "facterversion"=>"3.12.4", "filesystems"=>"ext2,ext3,ext4,udf,xfs", "fips_enabled"=>false, "fqdn"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"rhel7test", "hypervisors"=>{"hyperv"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.0.6", "ipaddress6"=>"fe80::20d:3aff:fe90:5780", "ipaddress6_eth0"=>"fe80::20d:3aff:fe90:5780", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.0.6", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.10", "kernelrelease"=>"3.10.0-693.46.1.el7.x86_64", "kernelversion"=>"3.10.0", "load_averages"=>{"15m"=>0.08, "1m"=>0.32, "5m"=>0.19}, "macaddress"=>"00:0d:3a:90:57:80", "macaddress_eth0"=>"00:0d:3a:90:57:80", "manufacturer"=>"Microsoft Corporation", "memory"=>{"swap"=>{"available"=>"2.00 GiB", "available_bytes"=>2147479552, "capacity"=>"0%", "total"=>"2.00 GiB", "total_bytes"=>2147479552, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"7.42 GiB", "available_bytes"=>7963906048, "capacity"=>"4.67%", "total"=>"7.78 GiB", "total_bytes"=>8353742848, "used"=>"371.78 MiB", "used_bytes"=>389836800}}, "memoryfree"=>"7.42 GiB", "memoryfree_mb"=>7594.97265625, "memorysize"=>"7.78 GiB", "memorysize_mb"=>7966.75, "mountpoints"=>{"/"=>{"available"=>"29.95 GiB", "available_bytes"=>32156790784, "capacity"=>"4.91%", "device"=>"/dev/sda2", "filesystem"=>"xfs", "options"=>["rw", "seclabel", "relatime", "attr2", "inode64", "noquota"], "size"=>"31.50 GiB", "size_bytes"=>33817882624, "used"=>"1.55 GiB", "used_bytes"=>1661091840}, "/boot"=>{"available"=>"393.75 MiB", "available_bytes"=>412880896, "capacity"=>"20.72%", "device"=>"/dev/sda1", "filesystem"=>"xfs", "options"=>["rw", "seclabel", "relatime", "attr2", "inode64", "noquota"], "size"=>"496.66 MiB", "size_bytes"=>520785920, "used"=>"102.91 MiB", "used_bytes"=>107905024}, "/dev/shm"=>{"available"=>"3.89 GiB", "available_bytes"=>4176871424, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"0 bytes", "used_bytes"=>0}, "/mnt/resource"=>{"available"=>"47.04 GiB", "available_bytes"=>50506170368, "capacity"=>"4.18%", "device"=>"/dev/sdb1", "filesystem"=>"ext4", "options"=>["rw", "seclabel", "relatime", "data=ordered"], "size"=>"49.09 GiB", "size_bytes"=>52708212736, "used"=>"2.05 GiB", "used_bytes"=>2202042368}, "/run"=>{"available"=>"3.88 GiB", "available_bytes"=>4168146944, "capacity"=>"0.21%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev", "mode=755"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"8.32 MiB", "used_bytes"=>8724480}, "/run/user/1000"=>{"available"=>"796.68 MiB", "available_bytes"=>835375104, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev", "relatime", "size=815796k", "mode=700", "uid=1000", "gid=1000"], "size"=>"796.68 MiB", "size_bytes"=>835375104, "used"=>"0 bytes", "used_bytes"=>0}, "/sys/fs/cgroup"=>{"available"=>"3.89 GiB", "available_bytes"=>4176871424, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["ro", "seclabel", "nosuid", "nodev", "noexec", "mode=755"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"168.63.129.16", "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "fqdn"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "hostname"=>"rhel7test", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.0.6", "netmask"=>"255.255.255.0", "network"=>"10.0.0.0"}], "bindings6"=>[{"address"=>"fe80::20d:3aff:fe90:5780", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"168.63.129.16", "ip"=>"10.0.0.6", "ip6"=>"fe80::20d:3aff:fe90:5780", "mac"=>"00:0d:3a:90:57:80", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.0.6", "ip6"=>"fe80::20d:3aff:fe90:5780", "mac"=>"00:0d:3a:90:57:80", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"RedHat", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.4", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"RedHat", "release"=>{"full"=>"7.4", "major"=>"7", "minor"=>"4"}, "selinux"=>{"config_mode"=>"enforcing", "config_policy"=>"targeted", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>"28"}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"xfs", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"b3f65ad5-0571-4ae4-937a-13ef2fda43e3"}, "/dev/sda2"=>{"filesystem"=>"xfs", "mount"=>"/", "size"=>"31.51 GiB", "size_bytes"=>33834401792, "uuid"=>"e9643aa4-b339-43c4-afc5-fcac22af1584"}, "/dev/sdb1"=>{"filesystem"=>"ext4", "mount"=>"/mnt/resource", "size"=>"50.00 GiB", "size_bytes"=>53684994048, "uuid"=>"07908b37-1661-4130-9d5a-e1fdb0a4bdb2"}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processor1"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz"], "physicalcount"=>1}, "productname"=>"Virtual Machine", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>true, "selinux_config_mode"=>"enforcing", "selinux_config_policy"=>"targeted", "selinux_current_mode"=>"enforcing", "selinux_enforced"=>true, "selinux_policyversion"=>"28", "serialnumber"=>"0000-0017-8302-7891-2115-8198-39", "ssh"=>{"ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 8b4b534a70cc57bfbebb88a6d980c397fa9dddf7", "sha256"=>"SSHFP 3 2 ab2e72961bc6515482c34e7c8358f929026fc8af979d5a9fa16bd9a25bf4bcb2"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMYggL8slLxRmDxaMceOJ4c8pVKIVA4uUZ4b4jPo7+s8xUHEZkngmqSfHGJpJ4uaDSwO4rNOYVAyCZVK4sDJBuU=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 559ecc22a9b45200bd56dd86455250e203668929", "sha256"=>"SSHFP 4 2 d005f680bbb24dc3c670c16d4cc87a59a871c4bed2763a17141b03d10d480282"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAINswqLjeLueVwG3UgsjhTNQGUg2Y7zayfIXJd783I44K", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 ec0afe862095855d6ca6174cceec173e241afe6a", "sha256"=>"SSHFP 1 2 af54fb6de7ea67ba7e8b93f99af27d7984dc02224aee7de886d269797ae64b11"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDHfGHvDLYXMARhNOK21bV8ZWnwOSxtAcdenfMP/wVlLshAPtqXMzXiDeaFJKfXrKMuiP3aWEbqtERPQnmu+AGfvOekwM6YoHIHCszhnP4ASSpITEuY3ZgVM6qQLgdClBMSdbEoHQ2f6Lem3Uy/7fekA1ofvofp6BtqO5s/Sk3zQhYhDS/TfSw2wlB6J/VrmOimnqhoMq6JLDFJtbYtBFFPqlpf5CZfzOXwAGBnoAuSRO7rtRzXE7caAHMRAdFWlGX1S5zzCJueUyQm3cVvMfqyjbGWJmxDbtIUaDpE+63jLwMidaSu1ZF0Q3mMRvPP0x/g8EZ+EnATl5rPYvVJqcq1", "type"=>"ssh-rsa"}}, "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMYggL8slLxRmDxaMceOJ4c8pVKIVA4uUZ4b4jPo7+s8xUHEZkngmqSfHGJpJ4uaDSwO4rNOYVAyCZVK4sDJBuU=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAINswqLjeLueVwG3UgsjhTNQGUg2Y7zayfIXJd783I44K", "sshfp_ecdsa"=>"SSHFP 3 1 8b4b534a70cc57bfbebb88a6d980c397fa9dddf7\nSSHFP 3 2 ab2e72961bc6515482c34e7c8358f929026fc8af979d5a9fa16bd9a25bf4bcb2", "sshfp_ed25519"=>"SSHFP 4 1 559ecc22a9b45200bd56dd86455250e203668929\nSSHFP 4 2 d005f680bbb24dc3c670c16d4cc87a59a871c4bed2763a17141b03d10d480282", "sshfp_rsa"=>"SSHFP 1 1 ec0afe862095855d6ca6174cceec173e241afe6a\nSSHFP 1 2 af54fb6de7ea67ba7e8b93f99af27d7984dc02224aee7de886d269797ae64b11", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDHfGHvDLYXMARhNOK21bV8ZWnwOSxtAcdenfMP/wVlLshAPtqXMzXiDeaFJKfXrKMuiP3aWEbqtERPQnmu+AGfvOekwM6YoHIHCszhnP4ASSpITEuY3ZgVM6qQLgdClBMSdbEoHQ2f6Lem3Uy/7fekA1ofvofp6BtqO5s/Sk3zQhYhDS/TfSw2wlB6J/VrmOimnqhoMq6JLDFJtbYtBFFPqlpf5CZfzOXwAGBnoAuSRO7rtRzXE7caAHMRAdFWlGX1S5zzCJueUyQm3cVvMfqyjbGWJmxDbtIUaDpE+63jLwMidaSu1ZF0Q3mMRvPP0x/g8EZ+EnATl5rPYvVJqcq1", "swapfree"=>"2.00 GiB", "swapfree_mb"=>2047.99609375, "swapsize"=>"2.00 GiB", "swapsize_mb"=>2047.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>215, "uptime"=>"0:03 hours"}, "timezone"=>"UTC", "uptime"=>"0:03 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>215, "uuid"=>"33E071F7-CDA2-3F45-931D-2BFD893683C7", "virtual"=>"hyperv", "clientcert"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'RHEL-7.4' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_SLES-11.3-64_spec.rb b/.onceover/spec/classes/role__metrics_on_SLES-11.3-64_spec.rb new file mode 100644 index 0000000..c7c1b21 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_SLES-11.3-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set SLES-11.3-64" do + node_facts = {"aio_agent_version"=>"1.8.3", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>53687091200, "blockdevice_sda_vendor"=>"VBOX", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"8B82075A-B071-4035-A96A-3B5D08F6841D"}}, "domain"=>"lan.asio", "facterversion"=>"3.5.1", "filesystems"=>"ext3,iso9660,squashfs", "fqdn"=>"sles11-sp3.lan.asio", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"sles11-sp3", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::216:3eff:fe48:617f", "ipaddress6_eth0"=>"fe80::216:3eff:fe48:617f", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.0", "kernelrelease"=>"3.0.101-0.47.67-default", "kernelversion"=>"3.0.101", "load_averages"=>{"15m"=>0.06, "1m"=>0.18, "5m"=>0.08}, "macaddress"=>"00:16:3e:48:61:7f", "macaddress_eth0"=>"00:16:3e:48:61:7f", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"354.30 MiB", "available_bytes"=>371511296, "capacity"=>"27.78%", "total"=>"490.61 MiB", "total_bytes"=>514437120, "used"=>"136.30 MiB", "used_bytes"=>142925824}}, "memoryfree"=>"354.30 MiB", "memoryfree_mb"=>354.30078125, "memorysize"=>"490.61 MiB", "memorysize_mb"=>490.60546875, "mountpoints"=>{"/"=>{"available"=>"47.14 GiB", "available_bytes"=>50611761152, "capacity"=>"4.22%", "device"=>"/dev/sda1", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=continue", "barrier=1", "data=ordered"], "size"=>"49.21 GiB", "size_bytes"=>52843638784, "used"=>"2.08 GiB", "used_bytes"=>2231877632}, "/dev/shm"=>{"available"=>"245.29 MiB", "available_bytes"=>257208320, "capacity"=>"0.00%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "relatime"], "size"=>"245.30 MiB", "size_bytes"=>257216512, "used"=>"8.00 KiB", "used_bytes"=>8192}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"domain"=>"lan.asio", "fqdn"=>"sles11-sp3.lan.asio", "hostname"=>"sles11-sp3", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::216:3eff:fe48:617f", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe48:617f", "mac"=>"00:16:3e:48:61:7f", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, {"address"=>"127.0.0.2", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe48:617f", "mac"=>"00:16:3e:48:61:7f", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"SLES", "operatingsystemmajrelease"=>"11", "operatingsystemrelease"=>"11.3", "os"=>{"architecture"=>"x86_64", "family"=>"Suse", "hardware"=>"x86_64", "name"=>"SLES", "release"=>{"full"=>"11.3", "major"=>"11", "minor"=>"3"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Suse", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"50.00 GiB", "size_bytes"=>53686042624, "uuid"=>"586adc21-9cfc-4e12-93e6-c711ab2400b1"}}, "path"=>"/usr/bin:/bin:/usr/sbin:/sbin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.8.2", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 2f39a5ddd25d30676bceb1b99faec8330cb80cd5", "sha256"=>"SSHFP 2 2 d17b59f49908df6bd337918a31a4e38f8489a0c46ada06963cb67ab3a4bdfb11"}, "key"=>"AAAAB3NzaC1kc3MAAACBALvEn/P3Kfg/yFWplaqFsrUOk/Kh9aOZTNNCoJX7lsSQkWpLDkjz03IZZ1pUsykZp6HUhzfW1ZCOKme5503MAsflB78fjgsfGaVL2IcWOvPhurC8SXGivanS5+rL3CFqja/+nMJBPFg8oEyjJei6RJZCQtlEFSEJziKMVI368fxLAAAAFQCC8c+IrxPZc4zVe5EF6qsPnZtMiwAAAIEApfv1xS6ECWq1f8J43BXFdiRszBXQecgdPtf6STvabnYdLKScAPyu3JdosrPswlZWEXLz+srkqqai6xISeSxLKrlY570GNVPmgnBFmoz+iJRi6kakroNe5xjGT45aTyZ16cyg9LFHFLL3KadlzZXu+9XwS9kv09SFlvH6+9+XNGMAAACBALLbpqIZKISARdnFviWOWzFbvYzZHiO3ddAYnXVCGfW1ywmGDqc5kUNTZsBFNYVA56YcaHR/kwFHjOij3SJnvy6VxSG9sSZ4wex/FGBmTUmklelZQsywITGps3MWxiyO3TGfIEXJlqgyVxXZhXnIshN//NCCPbq2X7X7VyTyGjhI"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 7fc0ef4bb2d2d14db8fc0bc0b1b97a9d83c6dc17", "sha256"=>"SSHFP 3 2 a0b01ecd2461ed45e0b51ebec48f79957a9710c3ec441cde0e6c4e5d8939c15e"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK9w38lDcCpjkGqrTdhhsZCVzS2XKgC6Q9fTvkZn1RLhvvWjDBHyFg0KyTAqfepMNNjdgHqEBFumKc3w+L5xLuY="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 20cdd84628cfad3edff17edf9ce3c2f7f1756f41", "sha256"=>"SSHFP 1 2 f48e7e96ed7708c6225367ada2a29309f159a12443eeaed6c86efee0660f3f78"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC2nt/gDBidRKDNUmDDThXA+mMWQxq83odOXzx4/3NHMMfIfu3nuvcCaTI+Tp1EiNcbb6Q2ummoGdJpCXT6/W4cjfluuun1rBDeQzzFfthdBAasNKbSCy+cYKwda0zfP9X4Az0SqsbHM5DekNS0w0stCB+L5qqlhaKyunyid2PaeLfSalP5RbcAxGSy5ijLNcAZqbuNOEiq1v0IIySCPplvzvEv//Ht8PhPhXQiRRtKMeq5pAgqjLeUq5zRlXIVqTYfZPfa5tuteaZNxpRxbDvog7h57LWsHKZSjc8ND2ocoehIymNeL4kpFkLg6TMm6BEEOEks5Kue/SXdYUbHkRKN"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALvEn/P3Kfg/yFWplaqFsrUOk/Kh9aOZTNNCoJX7lsSQkWpLDkjz03IZZ1pUsykZp6HUhzfW1ZCOKme5503MAsflB78fjgsfGaVL2IcWOvPhurC8SXGivanS5+rL3CFqja/+nMJBPFg8oEyjJei6RJZCQtlEFSEJziKMVI368fxLAAAAFQCC8c+IrxPZc4zVe5EF6qsPnZtMiwAAAIEApfv1xS6ECWq1f8J43BXFdiRszBXQecgdPtf6STvabnYdLKScAPyu3JdosrPswlZWEXLz+srkqqai6xISeSxLKrlY570GNVPmgnBFmoz+iJRi6kakroNe5xjGT45aTyZ16cyg9LFHFLL3KadlzZXu+9XwS9kv09SFlvH6+9+XNGMAAACBALLbpqIZKISARdnFviWOWzFbvYzZHiO3ddAYnXVCGfW1ywmGDqc5kUNTZsBFNYVA56YcaHR/kwFHjOij3SJnvy6VxSG9sSZ4wex/FGBmTUmklelZQsywITGps3MWxiyO3TGfIEXJlqgyVxXZhXnIshN//NCCPbq2X7X7VyTyGjhI", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK9w38lDcCpjkGqrTdhhsZCVzS2XKgC6Q9fTvkZn1RLhvvWjDBHyFg0KyTAqfepMNNjdgHqEBFumKc3w+L5xLuY=", "sshfp_dsa"=>"SSHFP 2 1 2f39a5ddd25d30676bceb1b99faec8330cb80cd5\nSSHFP 2 2 d17b59f49908df6bd337918a31a4e38f8489a0c46ada06963cb67ab3a4bdfb11", "sshfp_ecdsa"=>"SSHFP 3 1 7fc0ef4bb2d2d14db8fc0bc0b1b97a9d83c6dc17\nSSHFP 3 2 a0b01ecd2461ed45e0b51ebec48f79957a9710c3ec441cde0e6c4e5d8939c15e", "sshfp_rsa"=>"SSHFP 1 1 20cdd84628cfad3edff17edf9ce3c2f7f1756f41\nSSHFP 1 2 f48e7e96ed7708c6225367ada2a29309f159a12443eeaed6c86efee0660f3f78", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC2nt/gDBidRKDNUmDDThXA+mMWQxq83odOXzx4/3NHMMfIfu3nuvcCaTI+Tp1EiNcbb6Q2ummoGdJpCXT6/W4cjfluuun1rBDeQzzFfthdBAasNKbSCy+cYKwda0zfP9X4Az0SqsbHM5DekNS0w0stCB+L5qqlhaKyunyid2PaeLfSalP5RbcAxGSy5ijLNcAZqbuNOEiq1v0IIySCPplvzvEv//Ht8PhPhXQiRRtKMeq5pAgqjLeUq5zRlXIVqTYfZPfa5tuteaZNxpRxbDvog7h57LWsHKZSjc8ND2ocoehIymNeL4kpFkLg6TMm6BEEOEks5Kue/SXdYUbHkRKN", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>524, "uptime"=>"0:08 hours"}, "timezone"=>"UTC", "uptime"=>"0:08 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>524, "uuid"=>"8B82075A-B071-4035-A96A-3B5D08F6841D", "virtual"=>"virtualbox", "clientcert"=>"sles11-sp3.lan.asio", "clientversion"=>"4.8.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'SLES-11.3-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_SLES-12.1-64_spec.rb b/.onceover/spec/classes/role__metrics_on_SLES-12.1-64_spec.rb new file mode 100644 index 0000000..efe8bde --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_SLES-12.1-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set SLES-12.1-64" do + node_facts = {"aio_agent_build"=>"1.7.2", "aio_agent_version"=>"1.7.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>53687091200, "blockdevice_sda_vendor"=>"VBOX", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"7733628A-3D10-4F0B-B6E2-DB6D0CBB8F7E"}}, "domain"=>"openstack.site", "facterversion"=>"3.4.2", "filesystems"=>"ext2,ext3,ext4", "fqdn"=>"sles12-sp1.openstack.site", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"sles12-sp1", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::216:3eff:fe72:f121", "ipaddress6_eth0"=>"fe80::216:3eff:fe72:f121", "ipaddress6_eth1"=>"fe80::a00:27ff:fe60:90e", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"192.168.33.15", "ipaddress_lo"=>"127.0.0.1", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.12", "kernelrelease"=>"3.12.62-60.64.8-default", "kernelversion"=>"3.12.62", "load_averages"=>{"15m"=>0.05, "1m"=>0.0, "5m"=>0.02}, "macaddress"=>"00:16:3e:72:f1:21", "macaddress_eth0"=>"00:16:3e:72:f1:21", "macaddress_eth1"=>"08:00:27:60:09:0e", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"1.78 GiB", "available_bytes"=>1907027968, "capacity"=>"68.84%", "total"=>"5.70 GiB", "total_bytes"=>6119927808, "used"=>"3.92 GiB", "used_bytes"=>4212899840}}, "memoryfree"=>"1.78 GiB", "memoryfree_mb"=>1818.68359375, "memorysize"=>"5.70 GiB", "memorysize_mb"=>5836.41796875, "mountpoints"=>{"/"=>{"available"=>"45.34 GiB", "available_bytes"=>48682504192, "capacity"=>"7.64%", "device"=>"/dev/sda1", "filesystem"=>"ext3", "options"=>["rw", "relatime", "data=ordered"], "size"=>"49.09 GiB", "size_bytes"=>52709421056, "used"=>"3.75 GiB", "used_bytes"=>4026916864}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"192.168.33.0", "network_lo"=>"127.0.0.0", "networking"=>{"domain"=>"openstack.site", "fqdn"=>"sles12-sp1.openstack.site", "hostname"=>"sles12-sp1", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::216:3eff:fe72:f121", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe72:f121", "mac"=>"00:16:3e:72:f1:21", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"bindings"=>[{"address"=>"192.168.33.15", "netmask"=>"255.255.255.0", "network"=>"192.168.33.0"}], "bindings6"=>[{"address"=>"fe80::a00:27ff:fe60:90e", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"192.168.33.15", "ip6"=>"fe80::a00:27ff:fe60:90e", "mac"=>"08:00:27:60:09:0e", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"192.168.33.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe72:f121", "mac"=>"00:16:3e:72:f1:21", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"SLES", "operatingsystemmajrelease"=>"12", "operatingsystemrelease"=>"12.1", "os"=>{"architecture"=>"x86_64", "family"=>"Suse", "hardware"=>"x86_64", "name"=>"SLES", "release"=>{"full"=>"12.1", "major"=>"12", "minor"=>"1"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Suse", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext3", "label"=>"ROOT", "mount"=>"/", "partuuid"=>"3d2745bf-01", "size"=>"50.00 GiB", "size_bytes"=>53686042624, "uuid"=>"dcf2494f-2b02-466b-aa2c-9e7c01bdbdd7"}}, "path"=>"/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin:/usr/games", "pe_build"=>"2016.4.3", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_server_version"=>"2016.4.3", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"sles-12-x86_64", "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor2"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor3"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>4, "processors"=>{"count"=>4, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppetversion"=>"4.7.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 4c29775fbdf4c3c3899d036510ced3a377023cd1", "sha256"=>"SSHFP 2 2 6b21d41b5df2640a9b710884c10d8f87dbc2944e639a5e46273bfb4aa76522c5"}, "key"=>"AAAAB3NzaC1kc3MAAACBAK+haL65A0ALR7nw0X5re26C23ncFgxvedmnE2iUbjbeM7F//EBeA4Gn3mjbtPkTVDu61Tfl45tCHKHa36l2w5rC2mt71yMGJQoHeDtA4ddO2uA+B19fmkfhAICtjrvYc8vj5jwwcVmmP0FUasIunM0/9uAhZ+97E7+I91bPhp/RAAAAFQDNpq248quBrulsV6qkoYv00XODZwAAAIBAe5mwq4iS3DH5ABJSJoGGrWZBrY2ZPYcpzqStDN12I+lNL0HqoZF3dRdXUiiAl0qGpO9vtaTtrJzQuahTpB0k/HkMP042Kqa/hhkobuPlvu5Xuuj5cNzLuditXn5ScKs8BXaoh6mvOAAIS1jY9BZ+dGxZfygvjjtcAWHWCVAxoQAAAIACBpgms8yMLnEd5qY7kF5hqO7DNJ6Q0xyFOB5zWKhj1nbCUmxKBiF2XjXZGZc+6LD0Hg1fs1EiW9ed9g7F7/7LLtlgzeJPIg8vuqsRvCj3JkwFDmGHfA2Z0EYU4sn8dmw1RLeoWY0fCaPM+x00hSa36VMMXAHEd2MCUPYTTiMmaQ=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 d1c37b4313689a7afe74eead74ea53699234505b", "sha256"=>"SSHFP 3 2 60246f4a32257320dc990997d7373eede1667aaead6ea95baa32fa07fec824cd"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGnNFUni4th60YWWMAHbe9fByciHV0mswnuc2CzGSzziVAUbsSKmJktAHNmcYKssztsMpBPsPMLM9j8ceD59jmI="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 37cbc33c742e357446b82735b529cd0d6dd5c459", "sha256"=>"SSHFP 4 2 2228771c3a8436da3436b331f293b2394f8e24f12cf6590d75d5077b37e7cacf"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIB9nMKgF7UeoNyuUwz3ifm0M4QjlEjGNSLxvFm6xXVhx"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1ccfdf4e0afc38d26ab2d3b44f37c1ec7eefe51", "sha256"=>"SSHFP 1 2 f492d7edf7cc14c5e8472aa10aa6e7cf049032f9a52584e07c10101af807fe38"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDjeTmNl1i5lo2aP6quMk+/thACsrOK50twMge6KfZ6J1Q6ncsjjpZNA745pgvUJuQx2STl2vCMT3aTbGIrw+FXGNbfRWRa9pUUTJE82mgcPnYsMqWo+JQwuJOjhdaDlV8r7U197ZIsOM+eo2CBYYUP/ZAFbGzFL4Wb29hld1MiHSACcRC7HozgAxPCUyOZ0mcckofFIW/XO289UmEJj27RSnM3YyaOXxg+xv7tjxjLaq7j4HlFR5HZt4OYdzoHMTSwexcNtyM8TyNu9OKSGSYuQNWxghltrElP+Hg1Zgw8Bxhyf+a9KqF9/Q7Z0zWvwoJE3II9kHij2M73eiadZPj/"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAK+haL65A0ALR7nw0X5re26C23ncFgxvedmnE2iUbjbeM7F//EBeA4Gn3mjbtPkTVDu61Tfl45tCHKHa36l2w5rC2mt71yMGJQoHeDtA4ddO2uA+B19fmkfhAICtjrvYc8vj5jwwcVmmP0FUasIunM0/9uAhZ+97E7+I91bPhp/RAAAAFQDNpq248quBrulsV6qkoYv00XODZwAAAIBAe5mwq4iS3DH5ABJSJoGGrWZBrY2ZPYcpzqStDN12I+lNL0HqoZF3dRdXUiiAl0qGpO9vtaTtrJzQuahTpB0k/HkMP042Kqa/hhkobuPlvu5Xuuj5cNzLuditXn5ScKs8BXaoh6mvOAAIS1jY9BZ+dGxZfygvjjtcAWHWCVAxoQAAAIACBpgms8yMLnEd5qY7kF5hqO7DNJ6Q0xyFOB5zWKhj1nbCUmxKBiF2XjXZGZc+6LD0Hg1fs1EiW9ed9g7F7/7LLtlgzeJPIg8vuqsRvCj3JkwFDmGHfA2Z0EYU4sn8dmw1RLeoWY0fCaPM+x00hSa36VMMXAHEd2MCUPYTTiMmaQ==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGnNFUni4th60YWWMAHbe9fByciHV0mswnuc2CzGSzziVAUbsSKmJktAHNmcYKssztsMpBPsPMLM9j8ceD59jmI=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIB9nMKgF7UeoNyuUwz3ifm0M4QjlEjGNSLxvFm6xXVhx", "sshfp_dsa"=>"SSHFP 2 1 4c29775fbdf4c3c3899d036510ced3a377023cd1\nSSHFP 2 2 6b21d41b5df2640a9b710884c10d8f87dbc2944e639a5e46273bfb4aa76522c5", "sshfp_ecdsa"=>"SSHFP 3 1 d1c37b4313689a7afe74eead74ea53699234505b\nSSHFP 3 2 60246f4a32257320dc990997d7373eede1667aaead6ea95baa32fa07fec824cd", "sshfp_ed25519"=>"SSHFP 4 1 37cbc33c742e357446b82735b529cd0d6dd5c459\nSSHFP 4 2 2228771c3a8436da3436b331f293b2394f8e24f12cf6590d75d5077b37e7cacf", "sshfp_rsa"=>"SSHFP 1 1 d1ccfdf4e0afc38d26ab2d3b44f37c1ec7eefe51\nSSHFP 1 2 f492d7edf7cc14c5e8472aa10aa6e7cf049032f9a52584e07c10101af807fe38", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDjeTmNl1i5lo2aP6quMk+/thACsrOK50twMge6KfZ6J1Q6ncsjjpZNA745pgvUJuQx2STl2vCMT3aTbGIrw+FXGNbfRWRa9pUUTJE82mgcPnYsMqWo+JQwuJOjhdaDlV8r7U197ZIsOM+eo2CBYYUP/ZAFbGzFL4Wb29hld1MiHSACcRC7HozgAxPCUyOZ0mcckofFIW/XO289UmEJj27RSnM3YyaOXxg+xv7tjxjLaq7j4HlFR5HZt4OYdzoHMTSwexcNtyM8TyNu9OKSGSYuQNWxghltrElP+Hg1Zgw8Bxhyf+a9KqF9/Q7Z0zWvwoJE3II9kHij2M73eiadZPj/", "staging_http_get"=>"curl", "system_uptime"=>{"days"=>1, "hours"=>41, "seconds"=>148058, "uptime"=>"1 day"}, "timezone"=>"UTC", "uptime"=>"1 day", "uptime_days"=>1, "uptime_hours"=>41, "uptime_seconds"=>148058, "uuid"=>"7733628A-3D10-4F0B-B6E2-DB6D0CBB8F7E", "virtual"=>"virtualbox", "clientcert"=>"sles12-sp1.openstack.site", "clientversion"=>"4.7.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'SLES-12.1-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Ubuntu-12.04-32_spec.rb b/.onceover/spec/classes/role__metrics_on_Ubuntu-12.04-32_spec.rb new file mode 100644 index 0000000..e47bef4 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Ubuntu-12.04-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Ubuntu-12.04-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"3A7F9D94-3B88-45AB-99A4-57745C934A08"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe8d:6188", "ipaddress6_eth0"=>"fe80::a00:27ff:fe8d:6188", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.13", "kernelrelease"=>"3.13.0-32-generic", "kernelversion"=>"3.13.0", "load_averages"=>{"15m"=>0.03, "1m"=>0.23, "5m"=>0.09}, "lsbdistcodename"=>"precise", "lsbdistdescription"=>"Ubuntu 12.04.5 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"12.04", "lsbmajdistrelease"=>"12.04", "macaddress"=>"08:00:27:8d:61:88", "macaddress_eth0"=>"08:00:27:8d:61:88", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"407.73 MiB", "available_bytes"=>427540480, "capacity"=>"17.64%", "total"=>"495.05 MiB", "total_bytes"=>519102464, "used"=>"87.32 MiB", "used_bytes"=>91561984}}, "memoryfree"=>"407.73 MiB", "memoryfree_mb"=>407.734375, "memorysize"=>"495.05 MiB", "memorysize_mb"=>495.0546875, "mountpoints"=>{"/"=>{"available"=>"1.81 GiB", "available_bytes"=>1940865024, "capacity"=>"36.14%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"2.83 GiB", "size_bytes"=>-1255694336, "used"=>"1.02 GiB", "used_bytes"=>1098407936}, "/boot"=>{"available"=>"203.56 MiB", "available_bytes"=>213447680, "capacity"=>"13.50%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"31.76 MiB", "used_bytes"=>33307648}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe8d:6188", "mac"=>"08:00:27:8d:61:88", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe8d:6188", "mac"=>"08:00:27:8d:61:88", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"12.04", "operatingsystemrelease"=>"12.04", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"precise", "description"=>"Ubuntu 12.04.5 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"3fff8935-622f-4e9a-944f-38108c71af34"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"185fbdf2-880c-4aa6-ada8-8dade7aa3fc6"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"31f2e84f-0e99-4531-9ecb-2b151fc6ce31"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"S8Vl05-TIfO-rk5Y-gIDu-TIwj-L8Ub-3OjoJb"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 9cb1f6d6a1730dcc9e02dc62be68874f11e5dd6b", "sha256"=>"SSHFP 2 2 6e391d8fc3ab5c57147ba946aafe236972ec89cca3dfb2937f6a874524f1bce0"}, "key"=>"AAAAB3NzaC1kc3MAAACBAOBWnH+OxYCpvG4X6e4AFQNUreLJ3AvvgUUyIirhJ+zhg3IgAoe0LGc1i8t1HPBrmnZDe0jLJJVzQU42jrfQZHlZSlydnkfjoa/Z8R2ruMa+972wODUvSTAtIkuJeYKTMdNQVJCTkiy6DwU2K8UT32uVb6nN/oLHLroM7rQGaZuXAAAAFQC+aaKJlj/9kRyIiQjmYWrMJiry5wAAAIB9Q1hRlr7ZIlDSpmXPk1cVh7e4s0B89NAd4M/49iM5ZXj4FyMtFvsO+tWlRrNhgVJYTK/2agwf9FhBVD0nTqqAKOnisjmRv6QD8jADoVdI7sxxqGRs+HneMjfSXe2sCD8LFQENB3+uY1fIgfvVqAgCRR7QOFA7Xm0xh/iiu2H6+AAAAIEAsnZ59SDy2ISkiaZu9s6TXnt+WrBqtkAqpLMr7Sy+lsV1zWkoEgHKPUrBW1Yfc4tByXCqJk/YrYbkPrVN7ng5E30QACV//YmCaBD76Jm+VDjHFGgaGzh18PhuR/vnhByQ+b+MAE22IE3kqMakxnLpxowWUVVbm0CTG3lFMGvGFnA="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 75fd3452191ff0c693a6e76d75a9a617230e8b21", "sha256"=>"SSHFP 3 2 0ae893992e316dcbed9e14b009a8f00df48a352377da435a4d75a97f7c8e6668"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF5AGWyOlygr7/VMxZepE9A7W5UxuQY9NqxokurV4IR0hWR3K3qZ+ro8ai55HE07W16EGHt5FPLi3ocnzr0U1R0="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 198e8faaf2a7b3c5d0d8071a5fb89d3673baa48f", "sha256"=>"SSHFP 1 2 3c8ba605220954898d29864d617d8e1330d5ac3df2bd73e718fb2ab97098f9ee"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDGzlnmGodUPjwICVkKWpSoIG47EJLT2SYCsCMFjHLUbD6mgXe2vAhgTSwaxxL8lEecc9lZRi1VCG/CaUZFCwirSysADa5pewIA6fFfYNiBqwg56MOEC2cyeQePshi73FRkvPpwQsisAhieW8XCA+93fDPbaQaQpDpc8lIeraVFRkhxSZ2MD2j+4/gMvTH+oIHFa12GidUoRpEryt6qXFrV0dg+L5OKvIGDntssFnBE+zG3lhlFcdm3CwQp34MaVolaDtkCt5klO2GaVLHxtcyG+8wM54urHuW7HK3jxaZwKBeAQJ00rQsuC2dRljOZ9RFFCUWPf/XuCP9nNXEu1hEN"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAOBWnH+OxYCpvG4X6e4AFQNUreLJ3AvvgUUyIirhJ+zhg3IgAoe0LGc1i8t1HPBrmnZDe0jLJJVzQU42jrfQZHlZSlydnkfjoa/Z8R2ruMa+972wODUvSTAtIkuJeYKTMdNQVJCTkiy6DwU2K8UT32uVb6nN/oLHLroM7rQGaZuXAAAAFQC+aaKJlj/9kRyIiQjmYWrMJiry5wAAAIB9Q1hRlr7ZIlDSpmXPk1cVh7e4s0B89NAd4M/49iM5ZXj4FyMtFvsO+tWlRrNhgVJYTK/2agwf9FhBVD0nTqqAKOnisjmRv6QD8jADoVdI7sxxqGRs+HneMjfSXe2sCD8LFQENB3+uY1fIgfvVqAgCRR7QOFA7Xm0xh/iiu2H6+AAAAIEAsnZ59SDy2ISkiaZu9s6TXnt+WrBqtkAqpLMr7Sy+lsV1zWkoEgHKPUrBW1Yfc4tByXCqJk/YrYbkPrVN7ng5E30QACV//YmCaBD76Jm+VDjHFGgaGzh18PhuR/vnhByQ+b+MAE22IE3kqMakxnLpxowWUVVbm0CTG3lFMGvGFnA=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF5AGWyOlygr7/VMxZepE9A7W5UxuQY9NqxokurV4IR0hWR3K3qZ+ro8ai55HE07W16EGHt5FPLi3ocnzr0U1R0=", "sshfp_dsa"=>"SSHFP 2 1 9cb1f6d6a1730dcc9e02dc62be68874f11e5dd6b\nSSHFP 2 2 6e391d8fc3ab5c57147ba946aafe236972ec89cca3dfb2937f6a874524f1bce0", "sshfp_ecdsa"=>"SSHFP 3 1 75fd3452191ff0c693a6e76d75a9a617230e8b21\nSSHFP 3 2 0ae893992e316dcbed9e14b009a8f00df48a352377da435a4d75a97f7c8e6668", "sshfp_rsa"=>"SSHFP 1 1 198e8faaf2a7b3c5d0d8071a5fb89d3673baa48f\nSSHFP 1 2 3c8ba605220954898d29864d617d8e1330d5ac3df2bd73e718fb2ab97098f9ee", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDGzlnmGodUPjwICVkKWpSoIG47EJLT2SYCsCMFjHLUbD6mgXe2vAhgTSwaxxL8lEecc9lZRi1VCG/CaUZFCwirSysADa5pewIA6fFfYNiBqwg56MOEC2cyeQePshi73FRkvPpwQsisAhieW8XCA+93fDPbaQaQpDpc8lIeraVFRkhxSZ2MD2j+4/gMvTH+oIHFa12GidUoRpEryt6qXFrV0dg+L5OKvIGDntssFnBE+zG3lhlFcdm3CwQp34MaVolaDtkCt5klO2GaVLHxtcyG+8wM54urHuW7HK3jxaZwKBeAQJ00rQsuC2dRljOZ9RFFCUWPf/XuCP9nNXEu1hEN", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>60, "uptime"=>"0:01 hours"}, "timezone"=>"PST", "uptime"=>"0:01 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>60, "uuid"=>"3A7F9D94-3B88-45AB-99A4-57745C934A08", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Ubuntu-12.04-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Ubuntu-12.04-64_spec.rb b/.onceover/spec/classes/role__metrics_on_Ubuntu-12.04-64_spec.rb new file mode 100644 index 0000000..fed1900 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Ubuntu-12.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Ubuntu-12.04-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"47C86ACE-B882-46AD-8D6D-4260BF97C669"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe5f:df27", "ipaddress6_eth0"=>"fe80::a00:27ff:fe5f:df27", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.13", "kernelrelease"=>"3.13.0-32-generic", "kernelversion"=>"3.13.0", "load_averages"=>{"15m"=>0.01, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"precise", "lsbdistdescription"=>"Ubuntu 12.04.5 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"12.04", "lsbmajdistrelease"=>"12.04", "macaddress"=>"08:00:27:5f:df:27", "macaddress_eth0"=>"08:00:27:5f:df:27", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"350.97 MiB", "available_bytes"=>368017408, "capacity"=>"28.33%", "total"=>"489.72 MiB", "total_bytes"=>513507328, "used"=>"138.75 MiB", "used_bytes"=>145489920}}, "memoryfree"=>"350.97 MiB", "memoryfree_mb"=>350.96875, "memorysize"=>"489.72 MiB", "memorysize_mb"=>489.71875, "mountpoints"=>{"/"=>{"available"=>"17.68 GiB", "available_bytes"=>18981703680, "capacity"=>"6.12%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"18.83 GiB", "size_bytes"=>20219142144, "used"=>"1.15 GiB", "used_bytes"=>1237438464}, "/boot"=>{"available"=>"202.55 MiB", "available_bytes"=>212389888, "capacity"=>"13.93%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"32.77 MiB", "used_bytes"=>34365440}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe5f:df27", "mac"=>"08:00:27:5f:df:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe5f:df27", "mac"=>"08:00:27:5f:df:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"12.04", "operatingsystemrelease"=>"12.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"precise", "description"=>"Ubuntu 12.04.5 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"96092a10-847b-4a55-b5dc-87d2cc56ee5e"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"50695407-158d-4b0e-975a-b575fa5f5359"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"829f03e2-ceb8-4f8d-9f32-e1336456f719"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"P6GCnD-xaHj-APeE-m1Em-fr5a-z3Kk-iFVziN"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 59bc746d9ab774867521d076613863790a696630", "sha256"=>"SSHFP 2 2 8d5bdb7662b7b938beb6517c7d001cc68136d3f1ded5b240cbee1a89dad2d79f"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPHTvj71+XfT0li+zpLYPbY5wKyO36Mij5D4Otl1RMIbZK68No9pDhiPdxMgZrLSq9bHLYs+cxqtSrpZgnNLvT44P+BPZbbQE4HrfcYuv0o2ifa0bqzlyHYl+BT6qSmx8zgBh3iImuhAJhLPnGCzgQ2FkfjAiHKHT1LG4h2knvtTAAAAFQDHa6q8yJo47htrK8LG0D3iAfTT2QAAAIEAtFgO4Qw6K2fQnLSfxL7h98lRopA4tokzKinUjJAoQ86eu9oR4mHDh3FRQlaHJX52RT1GABctV5MyG9LJxUuJLdeyIA7bmJrIPi0TROlHCd3NaS+0r6d1BzmMy+v7cVZsDK+8fqYBjC3b3e+lr3khnUU9uz8GqtrGFrDxjkl8y8QAAACAIKPdIYNLGaoreSz/L0PLSE6xw6+bButDCuuODpGXtD6Q6Cwo+4bjvAwV/yNMVIbrZdic8xjWh1YLxaCx0622XX8wr8GPLr3HViJ74VryCRkvsgXXuZcDl3z5+eEq1YDd5ELzpCcpkW31f64VWYLOIqz3Uo5hXeeCrSEt2vmh+Eo="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 cc6522d24466d3704070e9fda54dc60147978420", "sha256"=>"SSHFP 3 2 9ac8780c7818c208926a847d5f2c3fc274a37a0ed8ae0276f96fb3203e0e0e00"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPZ7/g0ZAcDbNMyMEABW/giY5lPyalZ717tzqmt1baNzEXALYoFN2FMHL/Wid8DUl7oKnXHGSkc4JYYFgpvt11Q="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 0ea50bd46b70a8f9efae23a8bea49388972e9740", "sha256"=>"SSHFP 1 2 0c1c44799be36031d1a8da2d02b9ed4b299ab924c647605afecb1c73063fb307"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCvijE5JYtnXa4uibGq6UEqXn7fboZYCvwZ3RFSkkG6qQ51Q7685OJgayGAZkrbiTeEWOHN6MQPr3TKwSQD2YxoUw3qKQ+hsuTydPK/ZXtNxM0ejFvpIprG1U1NDwj2YVxwo4tQveUewbBQYzEyI1aNQaE2z/fPypQOEj0v9QNAapmGGlV8ab0q0izCM4Aen5pccRZLJuibUUY3nOEfE0QTIM3QmOZoKEmj/Ez3P3+16iGeRNId/+8Bf4R5eVrKhorUUt+H/y/WcCHT5KrbCWkEH6G3eEQ7UA6XCB/sQ5pC6ZKxBbyYjy8N5wySv+5PVpoUHhHjKoSuYy6qQDE2MwRz"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPHTvj71+XfT0li+zpLYPbY5wKyO36Mij5D4Otl1RMIbZK68No9pDhiPdxMgZrLSq9bHLYs+cxqtSrpZgnNLvT44P+BPZbbQE4HrfcYuv0o2ifa0bqzlyHYl+BT6qSmx8zgBh3iImuhAJhLPnGCzgQ2FkfjAiHKHT1LG4h2knvtTAAAAFQDHa6q8yJo47htrK8LG0D3iAfTT2QAAAIEAtFgO4Qw6K2fQnLSfxL7h98lRopA4tokzKinUjJAoQ86eu9oR4mHDh3FRQlaHJX52RT1GABctV5MyG9LJxUuJLdeyIA7bmJrIPi0TROlHCd3NaS+0r6d1BzmMy+v7cVZsDK+8fqYBjC3b3e+lr3khnUU9uz8GqtrGFrDxjkl8y8QAAACAIKPdIYNLGaoreSz/L0PLSE6xw6+bButDCuuODpGXtD6Q6Cwo+4bjvAwV/yNMVIbrZdic8xjWh1YLxaCx0622XX8wr8GPLr3HViJ74VryCRkvsgXXuZcDl3z5+eEq1YDd5ELzpCcpkW31f64VWYLOIqz3Uo5hXeeCrSEt2vmh+Eo=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPZ7/g0ZAcDbNMyMEABW/giY5lPyalZ717tzqmt1baNzEXALYoFN2FMHL/Wid8DUl7oKnXHGSkc4JYYFgpvt11Q=", "sshfp_dsa"=>"SSHFP 2 1 59bc746d9ab774867521d076613863790a696630\nSSHFP 2 2 8d5bdb7662b7b938beb6517c7d001cc68136d3f1ded5b240cbee1a89dad2d79f", "sshfp_ecdsa"=>"SSHFP 3 1 cc6522d24466d3704070e9fda54dc60147978420\nSSHFP 3 2 9ac8780c7818c208926a847d5f2c3fc274a37a0ed8ae0276f96fb3203e0e0e00", "sshfp_rsa"=>"SSHFP 1 1 0ea50bd46b70a8f9efae23a8bea49388972e9740\nSSHFP 1 2 0c1c44799be36031d1a8da2d02b9ed4b299ab924c647605afecb1c73063fb307", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCvijE5JYtnXa4uibGq6UEqXn7fboZYCvwZ3RFSkkG6qQ51Q7685OJgayGAZkrbiTeEWOHN6MQPr3TKwSQD2YxoUw3qKQ+hsuTydPK/ZXtNxM0ejFvpIprG1U1NDwj2YVxwo4tQveUewbBQYzEyI1aNQaE2z/fPypQOEj0v9QNAapmGGlV8ab0q0izCM4Aen5pccRZLJuibUUY3nOEfE0QTIM3QmOZoKEmj/Ez3P3+16iGeRNId/+8Bf4R5eVrKhorUUt+H/y/WcCHT5KrbCWkEH6G3eEQ7UA6XCB/sQ5pC6ZKxBbyYjy8N5wySv+5PVpoUHhHjKoSuYy6qQDE2MwRz", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>368, "uptime"=>"0:06 hours"}, "timezone"=>"PST", "uptime"=>"0:06 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>368, "uuid"=>"47C86ACE-B882-46AD-8D6D-4260BF97C669", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Ubuntu-12.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Ubuntu-14.04-32_spec.rb b/.onceover/spec/classes/role__metrics_on_Ubuntu-14.04-32_spec.rb new file mode 100644 index 0000000..d73b1c7 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Ubuntu-14.04-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Ubuntu-14.04-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"C138B01C-ADF6-4D36-8A3A-D9FCE21FF0C7"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe71:8945", "ipaddress6_eth0"=>"fe80::a00:27ff:fe71:8945", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.16", "kernelrelease"=>"3.16.0-30-generic", "kernelversion"=>"3.16.0", "load_averages"=>{"15m"=>0.05, "1m"=>0.0, "5m"=>0.07}, "lsbdistcodename"=>"trusty", "lsbdistdescription"=>"Ubuntu 14.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"14.04", "lsbmajdistrelease"=>"14.04", "macaddress"=>"08:00:27:71:89:45", "macaddress_eth0"=>"08:00:27:71:89:45", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"414.97 MiB", "available_bytes"=>435126272, "capacity"=>"16.34%", "total"=>"496.04 MiB", "total_bytes"=>520130560, "used"=>"81.07 MiB", "used_bytes"=>85004288}}, "memoryfree"=>"414.97 MiB", "memoryfree_mb"=>414.96875, "memorysize"=>"496.04 MiB", "memorysize_mb"=>496.03515625, "mountpoints"=>{"/"=>{"available"=>"1.72 GiB", "available_bytes"=>1846272000, "capacity"=>"39.25%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"2.83 GiB", "size_bytes"=>-1255694336, "used"=>"1.11 GiB", "used_bytes"=>1193000960}, "/boot"=>{"available"=>"200.06 MiB", "available_bytes"=>209779712, "capacity"=>"14.98%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"35.26 MiB", "used_bytes"=>36975616}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe71:8945", "mac"=>"08:00:27:71:89:45", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe71:8945", "mac"=>"08:00:27:71:89:45", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"14.04", "operatingsystemrelease"=>"14.04", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"trusty", "description"=>"Ubuntu 14.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b31f5de0-8805-43da-b3f2-da9e51c3401b"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"569bc4ac-b4e8-4e62-8503-551a63285383"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"f00f661b-b4b5-4e6f-bba3-3dcacf85fd8e"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"vF1RtV-BHmi-b0UW-QR1z-tJ48-g6Tn-aGgEn7"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1d072f5a62c6f3ecb283ca8a54906665550fb2cf", "sha256"=>"SSHFP 2 2 216358286cef61e3340afe60750513fc6bdbfc96a7190e32929fc11aeefcd375"}, "key"=>"AAAAB3NzaC1kc3MAAACBAKG/fk+L4qOg6yF5DOrNdiTsaSvD7lsYpJAFGR5AJqtmtXZsRckVuydvmsbLVDNi+P+XaO6Sr/dkFfj89vAx6gB+qZxtEbasdoUiddpjzONvjmvfzmGlFZhlptlYTSu3Ci89mY6ZergBMtGqLGh8VmcNPI54eNexasVdG4nbkcxPAAAAFQCaJGszl2tCCa6KY7GYCOisCeGwtwAAAIBDzQlFkAi7IZAQpaUS6V+1frDgnCipxXjDSZD+ObJ4Wgwrj01+vXdeHKj30mIRo7ZatXxZs2dkQHUeL0SJ/bpsdd1jOu4Mf8c+cHqSHcC4Qz2vtlARKNMXAY5vJHh7QBwaPf3/s8tWqX9lnyu1UdTjE/SgF322Nwkz9OFvCHbuuwAAAIBPA32N7qVPwEOsTBG8xVPcUXwguj6ube0n0OUsZB5i8PFjQ99nLbZce9ucLqVzPCYeClgbPrVH1MBtRc67QLKb6Kms8pseuFCtiB78j9A36PfNfTDervnF1Aw/nIb/DQImtmmDKbPhv4uniseqgSdnh2awLVy6UO7haf3Wz6maFA=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 a6f44c1518708b08d997c7a97cc75b0654b098d1", "sha256"=>"SSHFP 3 2 2ccda56b2fb9bd95c2327cceaaf8f868daebb1f7dfc5bd0a9d816fff06f7b474"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCK+3h6/GsmbpRd/xdgTi+vsoh+N6gTB5IZFpZdaJVK6H6cSwmhiEiby/3yqwQFGlSXug8aQiQJ3YZI471wScbU="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 4ca8bd8a83038bc1339ee7037ab2043f41e4b4e7", "sha256"=>"SSHFP 4 2 7326c4dfce373f219025f41f127535f0fb9aacc221adf34e75db8eccc118ab3d"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAICobX2RUot4PEA4s4fTvltDWEWIXFMehgbTwvLezavoq"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 9da876f061d5f203345c99b047a48b24775f77ae", "sha256"=>"SSHFP 1 2 90ca5e6b808b9f47c78e26f9c228dab88b19536d56f6c72443b1d06502646ecf"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC+fl/b51y7U6i6DGQ+FwkYKIzBSVV6DcIZj+Q3BVRLzviOQIQMfNJ0wvLMKKHK96gWaGlknnU0Tn/cvVShuWbaWFBpOTLDsM2cm0usZot8+EmYGnql8D3AFMxhgWBb7pBa5KJOfJidrprXLcSjW82bKhIYbLDDVWMgaoIEVAbufOCobffpwTBYSPS4OdF3WyqNJj2B9tklkUdeUFYKkCFO/mszwSZdY+0xxTyilmyrHr8evbmoA34LREnktKFiu/I5gPXts1CdVLVzvNsMt0VM+ldLEtGPy7qvcddXy34yax538n+A6VOOBg2wpKwEsmqjkCHdq8s/2eWeeu+xGFch"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAKG/fk+L4qOg6yF5DOrNdiTsaSvD7lsYpJAFGR5AJqtmtXZsRckVuydvmsbLVDNi+P+XaO6Sr/dkFfj89vAx6gB+qZxtEbasdoUiddpjzONvjmvfzmGlFZhlptlYTSu3Ci89mY6ZergBMtGqLGh8VmcNPI54eNexasVdG4nbkcxPAAAAFQCaJGszl2tCCa6KY7GYCOisCeGwtwAAAIBDzQlFkAi7IZAQpaUS6V+1frDgnCipxXjDSZD+ObJ4Wgwrj01+vXdeHKj30mIRo7ZatXxZs2dkQHUeL0SJ/bpsdd1jOu4Mf8c+cHqSHcC4Qz2vtlARKNMXAY5vJHh7QBwaPf3/s8tWqX9lnyu1UdTjE/SgF322Nwkz9OFvCHbuuwAAAIBPA32N7qVPwEOsTBG8xVPcUXwguj6ube0n0OUsZB5i8PFjQ99nLbZce9ucLqVzPCYeClgbPrVH1MBtRc67QLKb6Kms8pseuFCtiB78j9A36PfNfTDervnF1Aw/nIb/DQImtmmDKbPhv4uniseqgSdnh2awLVy6UO7haf3Wz6maFA==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCK+3h6/GsmbpRd/xdgTi+vsoh+N6gTB5IZFpZdaJVK6H6cSwmhiEiby/3yqwQFGlSXug8aQiQJ3YZI471wScbU=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAICobX2RUot4PEA4s4fTvltDWEWIXFMehgbTwvLezavoq", "sshfp_dsa"=>"SSHFP 2 1 1d072f5a62c6f3ecb283ca8a54906665550fb2cf\nSSHFP 2 2 216358286cef61e3340afe60750513fc6bdbfc96a7190e32929fc11aeefcd375", "sshfp_ecdsa"=>"SSHFP 3 1 a6f44c1518708b08d997c7a97cc75b0654b098d1\nSSHFP 3 2 2ccda56b2fb9bd95c2327cceaaf8f868daebb1f7dfc5bd0a9d816fff06f7b474", "sshfp_ed25519"=>"SSHFP 4 1 4ca8bd8a83038bc1339ee7037ab2043f41e4b4e7\nSSHFP 4 2 7326c4dfce373f219025f41f127535f0fb9aacc221adf34e75db8eccc118ab3d", "sshfp_rsa"=>"SSHFP 1 1 9da876f061d5f203345c99b047a48b24775f77ae\nSSHFP 1 2 90ca5e6b808b9f47c78e26f9c228dab88b19536d56f6c72443b1d06502646ecf", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC+fl/b51y7U6i6DGQ+FwkYKIzBSVV6DcIZj+Q3BVRLzviOQIQMfNJ0wvLMKKHK96gWaGlknnU0Tn/cvVShuWbaWFBpOTLDsM2cm0usZot8+EmYGnql8D3AFMxhgWBb7pBa5KJOfJidrprXLcSjW82bKhIYbLDDVWMgaoIEVAbufOCobffpwTBYSPS4OdF3WyqNJj2B9tklkUdeUFYKkCFO/mszwSZdY+0xxTyilmyrHr8evbmoA34LREnktKFiu/I5gPXts1CdVLVzvNsMt0VM+ldLEtGPy7qvcddXy34yax538n+A6VOOBg2wpKwEsmqjkCHdq8s/2eWeeu+xGFch", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>354, "uptime"=>"0:05 hours"}, "timezone"=>"PST", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>354, "uuid"=>"C138B01C-ADF6-4D36-8A3A-D9FCE21FF0C7", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Ubuntu-14.04-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Ubuntu-14.04-64_spec.rb b/.onceover/spec/classes/role__metrics_on_Ubuntu-14.04-64_spec.rb new file mode 100644 index 0000000..76d261c --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Ubuntu-14.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Ubuntu-14.04-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"C3C98552-9F17-434C-866B-0E254F5CD115"}}, "domain"=>"pdx.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"ubuntu1404a.pdx.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"ubuntu1404a", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ip6tables_version"=>"1.4.21", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:feea:2027", "ipaddress6_eth0"=>"fe80::a00:27ff:feea:2027", "ipaddress6_eth1"=>"fe80::a00:27ff:fe61:1916", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"10.20.1.93", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.21", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.16", "kernelrelease"=>"3.16.0-30-generic", "kernelversion"=>"3.16.0", "load_averages"=>{"15m"=>0.06, "1m"=>0.49, "5m"=>0.17}, "lsbdistcodename"=>"trusty", "lsbdistdescription"=>"Ubuntu 14.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"14.04", "lsbmajdistrelease"=>"14.04", "macaddress"=>"08:00:27:ea:20:27", "macaddress_eth0"=>"08:00:27:ea:20:27", "macaddress_eth1"=>"08:00:27:61:19:16", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"331.30 MiB", "available_bytes"=>347394048, "capacity"=>"32.35%", "total"=>"489.74 MiB", "total_bytes"=>513531904, "used"=>"158.44 MiB", "used_bytes"=>166137856}}, "memoryfree"=>"331.30 MiB", "memoryfree_mb"=>331.30078125, "memorysize"=>"489.74 MiB", "memorysize_mb"=>489.7421875, "mountpoints"=>{"/"=>{"available"=>"17.58 GiB", "available_bytes"=>18880684032, "capacity"=>"6.62%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"18.83 GiB", "size_bytes"=>20219142144, "used"=>"1.25 GiB", "used_bytes"=>1338458112}, "/boot"=>{"available"=>"198.65 MiB", "available_bytes"=>208301056, "capacity"=>"15.58%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"36.67 MiB", "used_bytes"=>38454272}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8608807, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"pdx.puppetlabs.demo", "fqdn"=>"ubuntu1404a.pdx.puppetlabs.demo", "hostname"=>"ubuntu1404a", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feea:2027", "mac"=>"08:00:27:ea:20:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"ip"=>"10.20.1.93", "ip6"=>"fe80::a00:27ff:fe61:1916", "mac"=>"08:00:27:61:19:16", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feea:2027", "mac"=>"08:00:27:ea:20:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"14.04", "operatingsystemrelease"=>"14.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"trusty", "description"=>"Ubuntu 14.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"c94f234c-f947-450d-aaaf-d32be1b7f27f"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"5501b007-e44b-46cf-b22b-177428cbe5d6"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"3a97a5b0-ebd0-4ce6-ba62-d39b4fd0719e"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"vgfiUo-lVmS-57wx-qv4m-N3fR-efa0-iBI6Cn"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"ubuntu-14.04-amd64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 528b28369558620d8fb12d7bea179e437823154c", "sha256"=>"SSHFP 2 2 5a7688dbb06e4b0c72e6e78ae4ca8b379620ba14b019d5b3ae5670936e1acdf4"}, "key"=>"AAAAB3NzaC1kc3MAAACBAI8c8/RV/kAfEuo71eUt5O1BBbzk34v7b14bi3swzOnzJslJXt2KR/3Dy+8eazzkcw8nbmzZSHvcyo93yQ0LjsExXfG0EkzN7uiE840Fcpg5LFmeCHan0So3Cc1FLavcGu8N+RpWHYYLLmPjlQqPdHSS1rhhXdqKIoiTdlaocXD5AAAAFQCJ0mBV1SSayMNI6tTF4W0o1Y6+cQAAAIBWY05wbeTi/vFgkhH57X0/S7Kr86K3Q/BMz7ZmKF2XCzZW9LJ6Ou0T7tHKAr472DBwUm6IxGHoUXky0Q0+XDCVut9YLYXJK8L/P8SbGwhMfj1YPiv9uorECcrqJMB5W1GCFS+HIo4DvmKYzivcmpE25b/y0V1u5Oas9cQaNZnhxwAAAIBqvLMiEyQPpemji+p+p/9E3sdX6RMUeSHj7n3WSkRTdq09nZ0ewtH12LpbENCjoc4PFh02/qqdub0tjpbgJrMYgwJDADD/AsrdcDBd3gU7mDjyF8PFzWV9nEVYExu447svRt422OW6gkkJ6sn3fovBAvDaWy7OR5YYrg5JLp+/4A=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 505ac6e68fa78305f635f305e11fbb0cc597e8ad", "sha256"=>"SSHFP 3 2 d5840c440b5f52a582589e3b2b583ecea53fd6618851dbcfce2e5cca7624f3c8"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJKYyLqXe/n2LFUbqMkwhLyOpg10LYOx/MpdgFXTxUB67AP4/GoX8zfz5Lb6fOidSJTlrzD5FB584JiRlEGUGLo="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 53784fee8fc968dca5c5d17e731716a012e59234", "sha256"=>"SSHFP 4 2 95b82a785582818106bf403e53667fc559eeabf176f103a929a210a38e9c4e05"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIAAhP8P8zhiQrKmyV/U+e5M7nd5X+ZuIEYCPHDoza0rP"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 4d3d498c7a3377c8f95ac713db4866c32199be51", "sha256"=>"SSHFP 1 2 949c0790f27d5ef7e8b0c35ceabb23bdd50d81611093531c0354330a7234b833"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDIPayGCFe5RUpJ8/UsH6gf+ecMRWo1dc20+HAy0bV4KalYWN5jUB/wrs41rdJRwMKWczgSDi2gFMsJ7q8Vjvpm2hUy+3H3/AEASRij99+37X1T4A6vPpT45EhTpS6JgGROii1Q2+9AJ/6BE6fSawymgR7jDx5QNLbKRy/FiwZAG+A0n29iUALeKqEZMd/1fU0hQCy/V+9V4DgRbHcJz4lKgc6nYrMymj8tUivTd8zm+CQov+YsUAdaXHSxIGVofnFQYXzbPqWGVV8S3fpwvrn/IY6paZ2F/lHoWombHwE271Bw863oWdkKpzP1nhjR3+Q1z++Tl2ZXT+rp6mhS9Pwv"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAI8c8/RV/kAfEuo71eUt5O1BBbzk34v7b14bi3swzOnzJslJXt2KR/3Dy+8eazzkcw8nbmzZSHvcyo93yQ0LjsExXfG0EkzN7uiE840Fcpg5LFmeCHan0So3Cc1FLavcGu8N+RpWHYYLLmPjlQqPdHSS1rhhXdqKIoiTdlaocXD5AAAAFQCJ0mBV1SSayMNI6tTF4W0o1Y6+cQAAAIBWY05wbeTi/vFgkhH57X0/S7Kr86K3Q/BMz7ZmKF2XCzZW9LJ6Ou0T7tHKAr472DBwUm6IxGHoUXky0Q0+XDCVut9YLYXJK8L/P8SbGwhMfj1YPiv9uorECcrqJMB5W1GCFS+HIo4DvmKYzivcmpE25b/y0V1u5Oas9cQaNZnhxwAAAIBqvLMiEyQPpemji+p+p/9E3sdX6RMUeSHj7n3WSkRTdq09nZ0ewtH12LpbENCjoc4PFh02/qqdub0tjpbgJrMYgwJDADD/AsrdcDBd3gU7mDjyF8PFzWV9nEVYExu447svRt422OW6gkkJ6sn3fovBAvDaWy7OR5YYrg5JLp+/4A==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJKYyLqXe/n2LFUbqMkwhLyOpg10LYOx/MpdgFXTxUB67AP4/GoX8zfz5Lb6fOidSJTlrzD5FB584JiRlEGUGLo=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIAAhP8P8zhiQrKmyV/U+e5M7nd5X+ZuIEYCPHDoza0rP", "sshfp_dsa"=>"SSHFP 2 1 528b28369558620d8fb12d7bea179e437823154c\nSSHFP 2 2 5a7688dbb06e4b0c72e6e78ae4ca8b379620ba14b019d5b3ae5670936e1acdf4", "sshfp_ecdsa"=>"SSHFP 3 1 505ac6e68fa78305f635f305e11fbb0cc597e8ad\nSSHFP 3 2 d5840c440b5f52a582589e3b2b583ecea53fd6618851dbcfce2e5cca7624f3c8", "sshfp_ed25519"=>"SSHFP 4 1 53784fee8fc968dca5c5d17e731716a012e59234\nSSHFP 4 2 95b82a785582818106bf403e53667fc559eeabf176f103a929a210a38e9c4e05", "sshfp_rsa"=>"SSHFP 1 1 4d3d498c7a3377c8f95ac713db4866c32199be51\nSSHFP 1 2 949c0790f27d5ef7e8b0c35ceabb23bdd50d81611093531c0354330a7234b833", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDIPayGCFe5RUpJ8/UsH6gf+ecMRWo1dc20+HAy0bV4KalYWN5jUB/wrs41rdJRwMKWczgSDi2gFMsJ7q8Vjvpm2hUy+3H3/AEASRij99+37X1T4A6vPpT45EhTpS6JgGROii1Q2+9AJ/6BE6fSawymgR7jDx5QNLbKRy/FiwZAG+A0n29iUALeKqEZMd/1fU0hQCy/V+9V4DgRbHcJz4lKgc6nYrMymj8tUivTd8zm+CQov+YsUAdaXHSxIGVofnFQYXzbPqWGVV8S3fpwvrn/IY6paZ2F/lHoWombHwE271Bw863oWdkKpzP1nhjR3+Q1z++Tl2ZXT+rp6mhS9Pwv", "staging_http_get"=>"curl", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>47, "uptime"=>"0:00 hours"}, "timezone"=>"PDT", "uptime"=>"0:00 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>47, "uuid"=>"C3C98552-9F17-434C-866B-0E254F5CD115", "virtual"=>"virtualbox", "clientcert"=>"ubuntu1404a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Ubuntu-14.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Ubuntu-18.04-64_spec.rb b/.onceover/spec/classes/role__metrics_on_Ubuntu-18.04-64_spec.rb new file mode 100644 index 0000000..da88c7f --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Ubuntu-18.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Ubuntu-18.04-64" do + node_facts = {"aio_agent_version"=>"6.14.0", "architecture"=>"amd64", "augeas"=>{"version"=>"1.12.0"}, "augeasversion"=>"1.12.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>10737418240, "blockdevice_sda_vendor"=>"VBOX", "blockdevice_sdb_model"=>"HARDDISK", "blockdevice_sdb_size"=>10485760, "blockdevice_sdb_vendor"=>"VBOX", "blockdevices"=>"sdb,sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"enp0s3"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"10.00 GiB", "size_bytes"=>10737418240, "vendor"=>"VBOX"}, "sdb"=>{"model"=>"HARDDISK", "size"=>"10.00 MiB", "size_bytes"=>10485760, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"2C7D24ED-FB7D-4B4C-BC4B-B9FC32C8BDC3"}}, "domain"=>"lan.asio", "facterversion"=>"3.14.9", "filesystems"=>"btrfs,ext2,ext3,ext4,iso9660,squashfs,vfat", "fips_enabled"=>false, "fqdn"=>"ubuntu-bionic.lan.asio", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"ubuntu-bionic", "hypervisors"=>{"virtualbox"=>{"revision"=>"133895", "version"=>"6.0.14"}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"enp0s3,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::bb:7dff:fee8:e923", "ipaddress6_enp0s3"=>"fe80::bb:7dff:fee8:e923", "ipaddress6_lo"=>"::1", "ipaddress_enp0s3"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"4.15", "kernelrelease"=>"4.15.0-54-generic", "kernelversion"=>"4.15.0", "load_averages"=>{"15m"=>0.1, "1m"=>0.31, "5m"=>0.23}, "lsbdistcodename"=>"bionic", "lsbdistdescription"=>"Ubuntu 18.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"18.04", "lsbmajdistrelease"=>"18.04", "macaddress"=>"02:bb:7d:e8:e9:23", "macaddress_enp0s3"=>"02:bb:7d:e8:e9:23", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"776.53 MiB", "available_bytes"=>814247936, "capacity"=>"21.19%", "total"=>"985.26 MiB", "total_bytes"=>1033121792, "used"=>"208.73 MiB", "used_bytes"=>218873856}}, "memoryfree"=>"776.53 MiB", "memoryfree_mb"=>776.52734375, "memorysize"=>"985.26 MiB", "memorysize_mb"=>985.26171875, "mountpoints"=>{"/"=>{"available"=>"8.14 GiB", "available_bytes"=>8742756352, "capacity"=>"15.32%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw", "relatime", "data=ordered"], "size"=>"9.63 GiB", "size_bytes"=>10340794368, "used"=>"1.47 GiB", "used_bytes"=>1581260800}, "/dev"=>{"available"=>"480.22 MiB", "available_bytes"=>503545856, "capacity"=>"0%", "device"=>"udev", "filesystem"=>"devtmpfs", "options"=>["rw", "nosuid", "relatime", "size=491744k", "nr_inodes=122936", "mode=755"], "size"=>"480.22 MiB", "size_bytes"=>503545856, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/hugepages"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"hugetlbfs", "filesystem"=>"hugetlbfs", "options"=>["rw", "relatime", "pagesize=2M"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/mqueue"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mqueue", "filesystem"=>"mqueue", "options"=>["rw", "relatime"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/pts"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"devpts", "filesystem"=>"devpts", "options"=>["rw", "nosuid", "noexec", "relatime", "gid=5", "mode=620", "ptmxmode=000"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/shm"=>{"available"=>"492.63 MiB", "available_bytes"=>516558848, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev"], "size"=>"492.63 MiB", "size_bytes"=>516558848, "used"=>"0 bytes", "used_bytes"=>0}, "/run"=>{"available"=>"97.93 MiB", "available_bytes"=>102690816, "capacity"=>"0.60%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "noexec", "relatime", "size=100892k", "mode=755"], "size"=>"98.53 MiB", "size_bytes"=>103313408, "used"=>"608.00 KiB", "used_bytes"=>622592}, "/run/lock"=>{"available"=>"5.00 MiB", "available_bytes"=>5242880, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev", "noexec", "relatime", "size=5120k"], "size"=>"5.00 MiB", "size_bytes"=>5242880, "used"=>"0 bytes", "used_bytes"=>0}, "/run/user/1000"=>{"available"=>"98.52 MiB", "available_bytes"=>103309312, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev", "relatime", "size=100888k", "mode=700", "uid=1000", "gid=1000"], "size"=>"98.52 MiB", "size_bytes"=>103309312, "used"=>"0 bytes", "used_bytes"=>0}, "/sys/fs/cgroup"=>{"available"=>"492.63 MiB", "available_bytes"=>516558848, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["ro", "nosuid", "nodev", "noexec", "mode=755"], "size"=>"492.63 MiB", "size_bytes"=>516558848, "used"=>"0 bytes", "used_bytes"=>0}, "/vagrant"=>{"available"=>"122.93 GiB", "available_bytes"=>131996221440, "capacity"=>"85.01%", "device"=>"vagrant", "filesystem"=>"vboxsf", "options"=>["rw", "nodev", "relatime", "iocharset=utf8", "uid=1000", "gid=1000"], "size"=>"820.33 GiB", "size_bytes"=>880824786944, "used"=>"697.40 GiB", "used_bytes"=>748828565504}, "/var/lib/lxcfs"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"lxcfs", "filesystem"=>"fuse.lxcfs", "options"=>["rw", "nosuid", "nodev", "relatime", "user_id=0", "group_id=0", "allow_other"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_enp0s3"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s3"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_enp0s3"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_enp0s3"=>"fe80::", "network6_lo"=>"::1", "network_enp0s3"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"lan.asio", "fqdn"=>"ubuntu-bionic.lan.asio", "hostname"=>"ubuntu-bionic", "interfaces"=>{"enp0s3"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::bb:7dff:fee8:e923", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::bb:7dff:fee8:e923", "mac"=>"02:bb:7d:e8:e9:23", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "scope6"=>"link"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1", "scope6"=>"host"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::bb:7dff:fee8:e923", "mac"=>"02:bb:7d:e8:e9:23", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"enp0s3", "scope6"=>"link"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"18.04", "operatingsystemrelease"=>"18.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"bionic", "description"=>"Ubuntu 18.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"18.04", "major"=>"18.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"18.04", "major"=>"18.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext4", "label"=>"cloudimg-rootfs", "mount"=>"/", "partuuid"=>"654c6dc7-01", "size"=>"10.00 GiB", "size_bytes"=>10736352768, "uuid"=>"8de716dd-d9b2-477f-b818-bb0b1eb036ce"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"6.14.0", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.7"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.7", "scope6"=>"link", "scope6_enp0s3"=>"link", "scope6_lo"=>"host", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 7024118ae71eead4750a74d458472e89e38c7e7c", "sha256"=>"SSHFP 2 2 e5606c7ee1cf32f5591b42c98a9bc87d27cef4bc75c7802cd3f22bcb39333656"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPemHtx92WDon/zDA0oaO5wWOXCUx45+6X9QxJugdryqG3RV0J/ZkKhayANq7NO1GeC3/3EC8celhsHyZFILEEJpFPzW32053dVnOZ6JyQCGb4JKFaCH7DjVnZLlTPyqvraykF3beEhp7dArSpsgsIURJLDRvE3PJdd9DDNtOapXAAAAFQC27/RqfyRjrjSOjNrfsqLm6GoT0QAAAIAJm6rGXMlZ+xNfPfVHsugGNP7BdcFLSWnUGaBQ+51FGkRdVesun6HF5A9/TNBfQ6U2k1BE8Qtc3H8uHrwenIQKyWuhVejvpYVD3NA6hztMWYiidiQ7Ji0O3qkPv4CY5QhlmyPit1gR4aly/fG1H8p+J/XbwrJXMtfR6ND3OXbeYwAAAIEAzDOkrJJgq5f+oPSVaOOmvbNdJ0B003fTyJEH+2yCm3q41O7vakoWv9Qt9mH7T/ivqwMK3yzk1eIpozx8TPU1aOQC3OyehoEXXFY6U5Jcgp0K8WUvVgnC47hAKBkf562aGdWftWNu4GkjI6wcNtZqkeVN/wyazilHRF9GyPdsvHg=", "type"=>"ssh-dss"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 aa6b8ac4bccb5afded59e2bf680cc151bbb27ef9", "sha256"=>"SSHFP 3 2 4ee2dc2ded938a37ef44de4fd3f3add478abfe272f0a50dc7dbb1f9a4839ca99"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF02SaI3oPW6CVWEvzDuf/XqaUF+OAr4RKNW3hAR8RRBSDEjQGdoejQEYP8lEFa1KeVlkJYnvgrPYwxVSUI6hUA=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 a20e01cf434a802607e1aff21e621dd3ada6499f", "sha256"=>"SSHFP 4 2 569917b95c5299fe3cdd1cc4a37166d1e81106a22bb75a15b99bb8694b2ac8c4"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHmh1Z/od2mbHDUkAL2bXswdwp43dPXQOKo9DA8AUDO1", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3bc833bc8e3e259da03d37aa0c0244ae98f30622", "sha256"=>"SSHFP 1 2 f27f0e09326c1c8abc2b0691bc6444b77781c0a21e9d99933492f269e5163346"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+QuEhOY+IrmAaG1/PgO0nyxYY0VYilhjcM5daSKb61z+XBmBuAsgVxWaQ815OxlwYQunPJZlKnaXZ8yTlnjk8eekxvWnoSLtqKZWW1+RfMyy6n6MyXdno1mwez+5HG3tThC63xE4EWbmKH+fsWuNT2ZpQ49fuWnG8sObv/66QLyCjt+KHMpy9ClHjpYli+0hFhdHTwxGo9H/r4I2En9rBcTy3nQZhZGm1FFh6xnHxnSGm02r2fhsk2x0kw9K1pA7IFtr31hBOu5Po5CJBVJQBd1TEozmNELl2ZISmT0HK3sIV4AG/FmFEsd9+63ST5BbeurlcOEzvxudDJmuroZX", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPemHtx92WDon/zDA0oaO5wWOXCUx45+6X9QxJugdryqG3RV0J/ZkKhayANq7NO1GeC3/3EC8celhsHyZFILEEJpFPzW32053dVnOZ6JyQCGb4JKFaCH7DjVnZLlTPyqvraykF3beEhp7dArSpsgsIURJLDRvE3PJdd9DDNtOapXAAAAFQC27/RqfyRjrjSOjNrfsqLm6GoT0QAAAIAJm6rGXMlZ+xNfPfVHsugGNP7BdcFLSWnUGaBQ+51FGkRdVesun6HF5A9/TNBfQ6U2k1BE8Qtc3H8uHrwenIQKyWuhVejvpYVD3NA6hztMWYiidiQ7Ji0O3qkPv4CY5QhlmyPit1gR4aly/fG1H8p+J/XbwrJXMtfR6ND3OXbeYwAAAIEAzDOkrJJgq5f+oPSVaOOmvbNdJ0B003fTyJEH+2yCm3q41O7vakoWv9Qt9mH7T/ivqwMK3yzk1eIpozx8TPU1aOQC3OyehoEXXFY6U5Jcgp0K8WUvVgnC47hAKBkf562aGdWftWNu4GkjI6wcNtZqkeVN/wyazilHRF9GyPdsvHg=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF02SaI3oPW6CVWEvzDuf/XqaUF+OAr4RKNW3hAR8RRBSDEjQGdoejQEYP8lEFa1KeVlkJYnvgrPYwxVSUI6hUA=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHmh1Z/od2mbHDUkAL2bXswdwp43dPXQOKo9DA8AUDO1", "sshfp_dsa"=>"SSHFP 2 1 7024118ae71eead4750a74d458472e89e38c7e7c\nSSHFP 2 2 e5606c7ee1cf32f5591b42c98a9bc87d27cef4bc75c7802cd3f22bcb39333656", "sshfp_ecdsa"=>"SSHFP 3 1 aa6b8ac4bccb5afded59e2bf680cc151bbb27ef9\nSSHFP 3 2 4ee2dc2ded938a37ef44de4fd3f3add478abfe272f0a50dc7dbb1f9a4839ca99", "sshfp_ed25519"=>"SSHFP 4 1 a20e01cf434a802607e1aff21e621dd3ada6499f\nSSHFP 4 2 569917b95c5299fe3cdd1cc4a37166d1e81106a22bb75a15b99bb8694b2ac8c4", "sshfp_rsa"=>"SSHFP 1 1 3bc833bc8e3e259da03d37aa0c0244ae98f30622\nSSHFP 1 2 f27f0e09326c1c8abc2b0691bc6444b77781c0a21e9d99933492f269e5163346", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+QuEhOY+IrmAaG1/PgO0nyxYY0VYilhjcM5daSKb61z+XBmBuAsgVxWaQ815OxlwYQunPJZlKnaXZ8yTlnjk8eekxvWnoSLtqKZWW1+RfMyy6n6MyXdno1mwez+5HG3tThC63xE4EWbmKH+fsWuNT2ZpQ49fuWnG8sObv/66QLyCjt+KHMpy9ClHjpYli+0hFhdHTwxGo9H/r4I2En9rBcTy3nQZhZGm1FFh6xnHxnSGm02r2fhsk2x0kw9K1pA7IFtr31hBOu5Po5CJBVJQBd1TEozmNELl2ZISmT0HK3sIV4AG/FmFEsd9+63ST5BbeurlcOEzvxudDJmuroZX", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>336, "uptime"=>"0:05 hours"}, "timezone"=>"UTC", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>336, "uuid"=>"2C7D24ED-FB7D-4B4C-BC4B-B9FC32C8BDC3", "virtual"=>"virtualbox", "clientcert"=>"ubuntu-bionic.lan.asio", "clientversion"=>"6.14.0", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Ubuntu-18.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Windows_Server-2008r2-64_spec.rb b/.onceover/spec/classes/role__metrics_on_Windows_Server-2008r2-64_spec.rb new file mode 100644 index 0000000..81c50cf --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Windows_Server-2008r2-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Windows_Server-2008r2-64" do + node_facts = {"agent_specified_environment"=>"production", "aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x64", "common_appdata"=>"C:\\ProgramData", "concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"Local Area Connection"=>"10.0.2.2"}, "dmi"=>{"manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0"}}, "domain"=>"pdx.puppetlabs.demo", "env_windows_installdir"=>"C:\\Program Files\\Puppet Labs\\Puppet", "facterversion"=>"3.0.2", "fqdn"=>"server2008r2a.pdx.puppetlabs.demo", "hardwareisa"=>"x64", "hardwaremodel"=>"x86_64", "hostname"=>"server2008r2a", "id"=>"SERVER2008R2A\\vagrant", "identity"=>{"user"=>"SERVER2008R2A\\vagrant"}, "iis_version"=>"Get-ItemProperty : Cannot find path 'HKLM:\\SOFTWARE\\Microsoft\\InetStp\\' because it does not exist.\nAt line:1 char:18\n+ (Get-ItemProperty <<<< HKLM:\\SOFTWARE\\Microsoft\\InetStp\\ -Name VersionString).VersionString.SubString(8,3)\n + CategoryInfo : ObjectNotFound: (HKLM:\\SOFTWARE\\Microsoft\\InetStp\\:String) [Get-ItemProperty], ItemNotFo \n undException\n + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetItemPropertyCommand\n \nYou cannot call a method on a null-valued expression.\nAt line:1 char:97\n+ (Get-ItemProperty HKLM:\\SOFTWARE\\Microsoft\\InetStp\\ -Name VersionString).VersionString.SubString <<<< (8,3)\n + CategoryInfo : InvalidOperation: (SubString:String) [], RuntimeException\n + FullyQualifiedErrorId : InvokeMethodOnNull\n \n", "interfaces"=>"Local Area Connection 2,Local Area Connection", "ipaddress"=>"10.20.1.101", "ipaddress6"=>"fe80::2c34:c353:1aaa:a872%13", "ipaddress6_Local Area Connection"=>"fe80::50f8:86eb:f103:75b%12", "ipaddress6_Local Area Connection 2"=>"fe80::2c34:c353:1aaa:a872%13", "ipaddress_Local Area Connection"=>"10.0.2.15", "ipaddress_Local Area Connection 2"=>"10.20.1.101", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"windows", "kernelmajversion"=>"6.1", "kernelrelease"=>"6.1.7600", "kernelversion"=>"6.1.7600", "macaddress"=>"08:00:27:7B:C7:40", "macaddress_Local Area Connection"=>"08:00:27:AB:52:FB", "macaddress_Local Area Connection 2"=>"08:00:27:7B:C7:40", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"448.14 MiB", "available_bytes"=>469909504, "capacity"=>"56.22%", "total"=>"1023.55 MiB", "total_bytes"=>1073274880, "used"=>"575.41 MiB", "used_bytes"=>603365376}}, "memoryfree"=>"448.14 MiB", "memoryfree_mb"=>448.140625, "memorysize"=>"1023.55 MiB", "memorysize_mb"=>1023.5546875, "mtu_Local Area Connection"=>1500, "mtu_Local Area Connection 2"=>1500, "mysql_server_id"=>8583088, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_Local Area Connection"=>"ffff:ffff:ffff:ffff::", "netmask6_Local Area Connection 2"=>"ffff:ffff:ffff:ffff::", "netmask_Local Area Connection"=>"255.255.255.0", "netmask_Local Area Connection 2"=>"255.255.255.0", "network"=>"10.20.1.0", "network6"=>"fe80::%13", "network6_Local Area Connection"=>"fe80::%12", "network6_Local Area Connection 2"=>"fe80::%13", "network_Local Area Connection"=>"10.0.2.0", "network_Local Area Connection 2"=>"10.20.1.0", "networking"=>{"domain"=>"pdx.puppetlabs.demo", "fqdn"=>"server2008r2a.pdx.puppetlabs.demo", "hostname"=>"server2008r2a", "interfaces"=>{"Local Area Connection"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::50f8:86eb:f103:75b%12", "mac"=>"08:00:27:AB:52:FB", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12"}, "Local Area Connection 2"=>{"ip"=>"10.20.1.101", "ip6"=>"fe80::2c34:c353:1aaa:a872%13", "mac"=>"08:00:27:7B:C7:40", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::%13"}}, "ip"=>"10.20.1.101", "ip6"=>"fe80::2c34:c353:1aaa:a872%13", "mac"=>"08:00:27:7B:C7:40", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::%13"}, "operatingsystem"=>"windows", "operatingsystemmajrelease"=>"2008 R2", "operatingsystemrelease"=>"2008 R2", "os"=>{"architecture"=>"x64", "family"=>"windows", "hardware"=>"x86_64", "name"=>"windows", "release"=>{"full"=>"2008 R2", "major"=>"2008 R2"}, "windows"=>{"system32"=>"C:\\Windows\\system32"}}, "osfamily"=>"windows", "path"=>"C:/Program Files/Puppet Labs/Puppet/facter/bin;C:\\Program Files\\Puppet Labs\\Puppet\\puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\facter\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\hiera\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\mcollective\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\ruby\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\tools\\bin;%SystemRoot%\\system32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\ProgramData\\chocolatey\\bin;", "pe_concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>false, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"C:/ProgramData/PuppetLabs/puppet/cache", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x64-mingw32", "sitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "serialnumber"=>"0", "staging_http_get"=>"powershell", "staging_windir"=>"C:\\ProgramData\\staging", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>266, "uptime"=>"0:04 hours"}, "timezone"=>"Pacific Daylight Time", "uptime"=>"0:04 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>266, "virtual"=>"virtualbox", "clientcert"=>"server2008r2a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Windows_Server-2008r2-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_Windows_Server-2012r2-64_spec.rb b/.onceover/spec/classes/role__metrics_on_Windows_Server-2012r2-64_spec.rb new file mode 100644 index 0000000..57f4e39 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_Windows_Server-2012r2-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set Windows_Server-2012r2-64" do + node_facts = {"agent_specified_environment"=>"production", "architecture"=>"x64", "dhcp_servers"=>{"Ethernet"=>"10.0.2.2", "system"=>"10.0.2.2"}, "dmi"=>{"manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0"}}, "env_windows_installdir"=>"C:\\Program Files\\Puppet Labs\\Puppet", "facterversion"=>"3.1.1", "fqdn"=>"WIN-E5K8TM30719", "hardwareisa"=>"x64", "hardwaremodel"=>"x86_64", "hostname"=>"WIN-E5K8TM30719", "id"=>"WIN-E5K8TM30719\\vagrant", "identity"=>{"user"=>"WIN-E5K8TM30719\\vagrant"}, "interfaces"=>"Ethernet", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a180:36e0:3a6e:1005%12", "ipaddress6_Ethernet"=>"fe80::a180:36e0:3a6e:1005%12", "ipaddress_Ethernet"=>"10.0.2.15", "is_virtual"=>true, "kernel"=>"windows", "kernelmajversion"=>"6.3", "kernelrelease"=>"6.3.9600", "kernelversion"=>"6.3.9600", "macaddress"=>"08:00:27:81:38:FA", "macaddress_Ethernet"=>"08:00:27:81:38:FA", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"1.42 GiB", "available_bytes"=>1521610752, "capacity"=>"29.13%", "total"=>"2.00 GiB", "total_bytes"=>2147012608, "used"=>"596.43 MiB", "used_bytes"=>625401856}}, "memoryfree"=>"1.42 GiB", "memoryfree_mb"=>1451.12109375, "memorysize"=>"2.00 GiB", "memorysize_mb"=>2047.55078125, "mtu_Ethernet"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_Ethernet"=>"ffff:ffff:ffff:ffff::", "netmask_Ethernet"=>"255.255.255.0", "network"=>"10.0.2.0", "network6"=>"fe80::%12", "network6_Ethernet"=>"fe80::%12", "network_Ethernet"=>"10.0.2.0", "networking"=>{"dhcp"=>"10.0.2.2", "fqdn"=>"WIN-E5K8TM30719", "hostname"=>"WIN-E5K8TM30719", "interfaces"=>{"Ethernet"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::a180:36e0:3a6e:1005%12", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::%12"}], "dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a180:36e0:3a6e:1005%12", "mac"=>"08:00:27:81:38:FA", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a180:36e0:3a6e:1005%12", "mac"=>"08:00:27:81:38:FA", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12", "primary"=>"Ethernet"}, "operatingsystem"=>"windows", "operatingsystemmajrelease"=>"2012 R2", "operatingsystemrelease"=>"2012 R2", "os"=>{"architecture"=>"x64", "family"=>"windows", "hardware"=>"x86_64", "name"=>"windows", "release"=>{"full"=>"2012 R2", "major"=>"2012 R2"}, "windows"=>{"system32"=>"C:\\Windows\\system32"}}, "osfamily"=>"windows", "path"=>"C:/Program Files/Puppet Labs/Puppet/facter/bin;C:\\Program Files\\Puppet Labs\\Puppet\\puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\facter\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\hiera\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\mcollective\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\ruby\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\tools\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files (x86)\\Git\\cmd;C:\\Program Files (x86)\\Git\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.3", "ruby"=>{"platform"=>"x64-mingw32", "sitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.7"}, "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.7", "serialnumber"=>"0", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>287, "uptime"=>"0:04 hours"}, "timezone"=>"Coordinated Universal Time", "uptime"=>"0:04 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>287, "virtual"=>"virtualbox", "clientcert"=>"win-e5k8tm30719", "clientversion"=>"4.2.3", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'Windows_Server-2012r2-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_solaris-10_u9-sparc-64_spec.rb b/.onceover/spec/classes/role__metrics_on_solaris-10_u9-sparc-64_spec.rb new file mode 100644 index 0000000..617ecfd --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_solaris-10_u9-sparc-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set solaris-10_u9-sparc-64" do + node_facts = {"aio_agent_build"=>"1.4.2", "aio_agent_version"=>"1.4.2", "architecture"=>"sun4v", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_sd4_size"=>-1168154624, "blockdevice_sd4_vendor"=>"HITACHI", "blockdevice_sd5_size"=>-647710720, "blockdevice_sd5_vendor"=>"HITACHI", "blockdevice_sd6_size"=>0, "blockdevice_sd6_vendor"=>"AMI", "blockdevice_sd7_size"=>0, "blockdevice_sd7_vendor"=>"TEAC", "blockdevice_sd8_size"=>-1168154624, "blockdevice_sd8_vendor"=>"HITACHI", "blockdevice_sd9_size"=>-647710720, "blockdevice_sd9_vendor"=>"HITACHI", "blockdevices"=>"sd4,sd5,sd8,sd9,sd7,sd6", "custom_auth_conf"=>false, "disks"=>{"sd4"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd5"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}, "sd6"=>{"product"=>"Virtual CDROM Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"AMI"}, "sd7"=>{"product"=>"DV-W28SS-W Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"TEAC"}, "sd8"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd9"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}}, "dmi"=>{"manufacturer"=>"Oracle Corporation"}, "domain"=>"puppet.example", "facterversion"=>"3.1.6", "fqdn"=>"solaris-10_u9-sparc-t4-64.puppet.example", "gid"=>"root", "hardwareisa"=>"sparc", "hardwaremodel"=>"sun4v", "hostname"=>"solaris-10_u9-sparc-t4-64", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,net0", "ipaddress"=>"10.32.77.42", "ipaddress_lo0"=>"127.0.0.1", "ipaddress_net0"=>"10.32.77.42", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"SunOS", "kernelmajversion"=>"Generic_Virtual", "kernelrelease"=>"5.10", "kernelversion"=>"Generic_Virtual", "load_averages"=>{"15m"=>1.015625, "1m"=>1.89453125, "5m"=>1.25390625}, "macaddress"=>"02:08:20:f1:97:4b", "macaddress_net0"=>"02:08:20:f1:97:4b", "manufacturer"=>"Oracle Corporation", "memory"=>{"swap"=>{"available"=>"4.00 GiB", "available_bytes"=>-8192, "capacity"=>"0%", "total"=>"4.00 GiB", "total_bytes"=>-8192, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"3.25 GiB", "available_bytes"=>-806297600, "capacity"=>"78.94%", "total"=>"15.43 GiB", "total_bytes"=>-611737600, "used"=>"12.18 GiB", "used_bytes"=>194560000}}, "memoryfree"=>"3.25 GiB", "memoryfree_mb"=>3327.0546875, "memorysize"=>"15.43 GiB", "memorysize_mb"=>15800.6015625, "mountpoints"=>{"/"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"1.14%", "device"=>"rpool/ROOT/zbe-0", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc10/root/", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950161"], "size"=>"480.01 GiB", "size_bytes"=>13566464, "used"=>"5.49 GiB", "used_bytes"=>1602503680}, "/.SUNWnative/lib"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/lib", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/platform"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/platform", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/sbin"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/sbin", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/usr"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/usr", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/dev"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"/dev", "filesystem"=>"dev", "options"=>["zone=cisparc10", "nozonemod", "sharezone=36", "dev=8e0001b"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/fd"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"fd", "filesystem"=>"fd", "options"=>["rw", "nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=9040025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/mnttab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mnttab", "filesystem"=>"mntfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8e80025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/svc/volatile"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.01%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc10", "sharezone=36", "dev=8ec0049"], "size"=>"5.48 GiB", "size_bytes"=>1591631872, "used"=>"448.00 KiB", "used_bytes"=>458752}, "/export"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool/export", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950163"], "size"=>"474.52 GiB", "size_bytes"=>-1588904448, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/export/home"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool/export/home", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950164"], "size"=>"474.52 GiB", "size_bytes"=>-1588905472, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/proc"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"proc", "filesystem"=>"proc", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8dc0024"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/rpool"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950165"], "size"=>"474.52 GiB", "size_bytes"=>-1588905472, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/system/contract"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"ctfs", "filesystem"=>"ctfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8e40025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/object"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"objfs", "filesystem"=>"objfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8f00025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/tmp"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.70%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc10", "sharezone=36", "dev=8ec004a"], "size"=>"5.52 GiB", "size_bytes"=>1632608256, "used"=>"39.52 MiB", "used_bytes"=>41435136}, "/var"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.03%", "device"=>"rpool/ROOT/zbe-0/var", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc10/root/var", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950162"], "size"=>"474.66 GiB", "size_bytes"=>-1436724224, "used"=>"145.16 MiB", "used_bytes"=>152212992}, "/var/run"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.01%", "device"=>"/etc/svc/volatile/", "filesystem"=>"lofs", "options"=>["rstchown", "zone=cisparc10", "sharezone=36", "dev=8ec0049"], "size"=>"5.48 GiB", "size_bytes"=>1591631872, "used"=>"448.00 KiB", "used_bytes"=>458752}}, "mtu_lo0"=>8232, "mtu_net0"=>1500, "netmask"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "netmask_net0"=>"255.255.255.0", "network"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "network_net0"=>"10.32.77.0", "networking"=>{"domain"=>"puppet.example", "fqdn"=>"solaris-10_u9-sparc-t4-64.puppet.example", "hostname"=>"solaris-10_u9-sparc-t4-64", "interfaces"=>{"lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "ip"=>"127.0.0.1", "mtu"=>8232, "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, "net0"=>{"bindings"=>[{"address"=>"10.32.77.42", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.42", "mac"=>"02:08:20:f1:97:4b", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}}, "ip"=>"10.32.77.42", "mac"=>"02:08:20:f1:97:4b", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"net0"}, "operatingsystem"=>"Solaris", "operatingsystemmajrelease"=>"10", "operatingsystemrelease"=>"10_u9", "os"=>{"architecture"=>"sun4v", "family"=>"Solaris", "hardware"=>"sun4v", "name"=>"Solaris", "release"=>{"full"=>"10_u9", "major"=>"10", "minor"=>"9"}}, "osfamily"=>"Solaris", "path"=>"/usr/local/bin:/usr/local/sbin:/opt/csw/bin:PATH:/opt/puppetlabs/bin:/usr/local/bin:/usr/local/sbin:/opt/csw/bin:/usr/sbin:/usr/bin:/sbin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"solaris-10-sparc", "processor0"=>"SPARC-T4", "processor1"=>"SPARC-T4", "processor10"=>"SPARC-T4", "processor11"=>"SPARC-T4", "processor12"=>"SPARC-T4", "processor13"=>"SPARC-T4", "processor14"=>"SPARC-T4", "processor15"=>"SPARC-T4", "processor16"=>"SPARC-T4", "processor17"=>"SPARC-T4", "processor18"=>"SPARC-T4", "processor19"=>"SPARC-T4", "processor2"=>"SPARC-T4", "processor20"=>"SPARC-T4", "processor21"=>"SPARC-T4", "processor22"=>"SPARC-T4", "processor23"=>"SPARC-T4", "processor24"=>"SPARC-T4", "processor25"=>"SPARC-T4", "processor26"=>"SPARC-T4", "processor27"=>"SPARC-T4", "processor28"=>"SPARC-T4", "processor29"=>"SPARC-T4", "processor3"=>"SPARC-T4", "processor30"=>"SPARC-T4", "processor31"=>"SPARC-T4", "processor32"=>"SPARC-T4", "processor33"=>"SPARC-T4", "processor34"=>"SPARC-T4", "processor35"=>"SPARC-T4", "processor36"=>"SPARC-T4", "processor37"=>"SPARC-T4", "processor38"=>"SPARC-T4", "processor39"=>"SPARC-T4", "processor4"=>"SPARC-T4", "processor40"=>"SPARC-T4", "processor41"=>"SPARC-T4", "processor42"=>"SPARC-T4", "processor43"=>"SPARC-T4", "processor44"=>"SPARC-T4", "processor45"=>"SPARC-T4", "processor46"=>"SPARC-T4", "processor47"=>"SPARC-T4", "processor48"=>"SPARC-T4", "processor49"=>"SPARC-T4", "processor5"=>"SPARC-T4", "processor50"=>"SPARC-T4", "processor51"=>"SPARC-T4", "processor52"=>"SPARC-T4", "processor53"=>"SPARC-T4", "processor54"=>"SPARC-T4", "processor55"=>"SPARC-T4", "processor56"=>"SPARC-T4", "processor57"=>"SPARC-T4", "processor58"=>"SPARC-T4", "processor59"=>"SPARC-T4", "processor6"=>"SPARC-T4", "processor60"=>"SPARC-T4", "processor61"=>"SPARC-T4", "processor62"=>"SPARC-T4", "processor63"=>"SPARC-T4", "processor7"=>" SPARC-T4", "processor8"=>"SPARC-T4", "processor9"=>"SPARC-T4", "processorcount"=>64, "processors"=>{"count"=>64, "isa"=>"sparc", "models"=>["SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4"], "physicalcount"=>1, "speed"=>"2.85 GHz"}, "puppet_files_dir_present"=>false, "puppetversion"=>"4.4.2", "ruby"=>{"platform"=>"sparc-solaris2.10", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.8"}, "rubyplatform"=>"sparc-solaris2.10", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.8", "solaris_zones"=>{"current"=>"solaris-10_u9-sparc-t4-64", "zones"=>{"solaris-10_u9-sparc-t4-64"=>{"brand"=>"solaris10", "id"=>"36", "ip_type"=>"excl", "path"=>"/", "status"=>"running"}}}, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 c9a8316e12052c89f9c8eea38c433c50950d5798", "sha256"=>"SSHFP 2 2 26773f31bd38b64224ee474eec7659dc05f23f8cb43e8352c1b58545bf5bbb15"}, "key"=>"AAAAB3NzaC1kc3MAAACBAIBt3ynjIBp7/uKbi9RdcO5DiIA0l7y4BmHsfm9042jYtMvIZkMF9cqwvxHjgoHW9JZGGNgIxUK/q0vjuGzctspVUovGBfL+m7F9Lp0rAHZVRkRm1wzGtjCPcdq35J9uVVj0YiHKvuuRvpooVtF55fe9ZfvwPBW41n9+eCX+yjY9AAAAFQC79jdm/KtE/8yXT6r1dMs63sF70wAAAIBC1yGHJcpRJt5NPi0t+eFQu6sDxxUeaaChW4u8BFLT4NXQ6SgBGW7FpT/zEaYEn2UZeQ8Mk3jAycUckyq5qSmWpunTHWdz8iKuuzPSyMgAYXwv0nGL+soRwGcjFdHIhCi2LGloN8JZpE/Kz2ry7yThwL7qMq3i8FFlovWDesAyzAAAAIATGYMDBcEnIY8+CvG3qFtsX4oM//ExuislYawqmChhp7A8IaMLeBoXmc3AdvvuZ/7CS/Kq/XwJApIPy9apRtqJp5zG5R9TvqEmCtCqtemvAmT0n9WsvDWev4YCIWj9wMiRlmT7HemL+5qFiKOmvo9lTd4NPRL3+gIPHCqXHyxacg=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 ea3ecdaaf4d5112fe3148cb52385f928a3cc53f4", "sha256"=>"SSHFP 1 2 961dddd0fb580a5c0d1db74c16560fa37529cf4d162c13de99a880b1e91fd424"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAIEAz60kx84oy4edq6Nt2/SMQfQVVXoic/64JQ45EnwGKlMYvU3Okp3pT7uqyl+I5mXFjTB7wzLfIxzK5beofKDUbXNM5BwVeFQuZLR/hRusuvR5ntOce2kFMnyFteuvBue7Tg8YMGHAEM7fjfcqvuQgxWMELMJFwq0yUcl/aOL/o+U="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAIBt3ynjIBp7/uKbi9RdcO5DiIA0l7y4BmHsfm9042jYtMvIZkMF9cqwvxHjgoHW9JZGGNgIxUK/q0vjuGzctspVUovGBfL+m7F9Lp0rAHZVRkRm1wzGtjCPcdq35J9uVVj0YiHKvuuRvpooVtF55fe9ZfvwPBW41n9+eCX+yjY9AAAAFQC79jdm/KtE/8yXT6r1dMs63sF70wAAAIBC1yGHJcpRJt5NPi0t+eFQu6sDxxUeaaChW4u8BFLT4NXQ6SgBGW7FpT/zEaYEn2UZeQ8Mk3jAycUckyq5qSmWpunTHWdz8iKuuzPSyMgAYXwv0nGL+soRwGcjFdHIhCi2LGloN8JZpE/Kz2ry7yThwL7qMq3i8FFlovWDesAyzAAAAIATGYMDBcEnIY8+CvG3qFtsX4oM//ExuislYawqmChhp7A8IaMLeBoXmc3AdvvuZ/7CS/Kq/XwJApIPy9apRtqJp5zG5R9TvqEmCtCqtemvAmT0n9WsvDWev4YCIWj9wMiRlmT7HemL+5qFiKOmvo9lTd4NPRL3+gIPHCqXHyxacg==", "sshfp_dsa"=>"SSHFP 2 1 c9a8316e12052c89f9c8eea38c433c50950d5798\nSSHFP 2 2 26773f31bd38b64224ee474eec7659dc05f23f8cb43e8352c1b58545bf5bbb15", "sshfp_rsa"=>"SSHFP 1 1 ea3ecdaaf4d5112fe3148cb52385f928a3cc53f4\nSSHFP 1 2 961dddd0fb580a5c0d1db74c16560fa37529cf4d162c13de99a880b1e91fd424", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAIEAz60kx84oy4edq6Nt2/SMQfQVVXoic/64JQ45EnwGKlMYvU3Okp3pT7uqyl+I5mXFjTB7wzLfIxzK5beofKDUbXNM5BwVeFQuZLR/hRusuvR5ntOce2kFMnyFteuvBue7Tg8YMGHAEM7fjfcqvuQgxWMELMJFwq0yUcl/aOL/o+U=", "staging_http_get"=>"curl", "swapfree"=>"4.00 GiB", "swapfree_mb"=>4095.9921875, "swapsize"=>"4.00 GiB", "swapsize_mb"=>4095.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1860, "uptime"=>"0:31 hours"}, "timezone"=>"PDT", "uptime"=>"0:31 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1860, "virtual"=>"zone", "zfs_featurenumbers"=>"1,2,3,4,5,6", "zfs_version"=>"6", "zone_cisparc10_brand"=>"solaris10", "zone_cisparc10_id"=>"36", "zone_cisparc10_iptype"=>"excl", "zone_cisparc10_name"=>"solaris-10_u9-sparc-t4-64", "zone_cisparc10_path"=>"/", "zone_cisparc10_status"=>"running", "zonename"=>"solaris-10_u9-sparc-t4-64", "zones"=>1, "zpool_featurenumbers"=>"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35", "zpool_version"=>"35", "clientcert"=>"solaris-10_u9-sparc-t4-64.puppet.example", "clientversion"=>"4.4.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'solaris-10_u9-sparc-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_solaris-11.2-sparc-64_spec.rb b/.onceover/spec/classes/role__metrics_on_solaris-11.2-sparc-64_spec.rb new file mode 100644 index 0000000..d6d4851 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_solaris-11.2-sparc-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set solaris-11.2-sparc-64" do + node_facts = {"aio_agent_build"=>"1.4.2", "aio_agent_version"=>"1.4.2", "architecture"=>"sun4v", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_sd4_size"=>-1168154624, "blockdevice_sd4_vendor"=>"HITACHI", "blockdevice_sd5_size"=>-647710720, "blockdevice_sd5_vendor"=>"HITACHI", "blockdevice_sd6_size"=>0, "blockdevice_sd6_vendor"=>"AMI", "blockdevice_sd7_size"=>0, "blockdevice_sd7_vendor"=>"TEAC", "blockdevice_sd8_size"=>-1168154624, "blockdevice_sd8_vendor"=>"HITACHI", "blockdevice_sd9_size"=>-647710720, "blockdevice_sd9_vendor"=>"HITACHI", "blockdevices"=>"sd4,sd5,sd8,sd9,sd7,sd6", "custom_auth_conf"=>false, "dhcp_servers"=>{"net0"=>"10.32.22.10", "system"=>"10.32.22.10"}, "disks"=>{"sd4"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd5"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}, "sd6"=>{"product"=>"Virtual CDROM Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"AMI"}, "sd7"=>{"product"=>"DV-W28SS-W Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"TEAC"}, "sd8"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd9"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}}, "dmi"=>{"manufacturer"=>"Oracle Corporation"}, "domain"=>"puppet.example", "facterversion"=>"3.1.6", "fqdn"=>"solaris-11_2-sparc-t4-64.puppet.example", "gid"=>"root", "hardwareisa"=>"sparc", "hardwaremodel"=>"sun4v", "hostname"=>"solaris-11_2-sparc-t4-64", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,net0", "ipaddress"=>"10.32.77.68", "ipaddress_lo0"=>"127.0.0.1", "ipaddress_net0"=>"10.32.77.68", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"SunOS", "kernelmajversion"=>"11", "kernelrelease"=>"5.11", "kernelversion"=>"11.2", "load_averages"=>{"15m"=>1.0234375, "1m"=>1.21875, "5m"=>1.28125}, "macaddress"=>"02:08:20:41:26:8c", "macaddress_net0"=>"02:08:20:41:26:8c", "manufacturer"=>"Oracle Corporation", "memory"=>{"swap"=>{"available"=>"4.00 GiB", "available_bytes"=>-8192, "capacity"=>"0%", "total"=>"4.00 GiB", "total_bytes"=>-8192, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"2.34 GiB", "available_bytes"=>-1777401856, "capacity"=>"84.80%", "total"=>"15.43 GiB", "total_bytes"=>-611737600, "used"=>"13.09 GiB", "used_bytes"=>1165664256}}, "memoryfree"=>"2.34 GiB", "memoryfree_mb"=>2400.9375, "memorysize"=>"15.43 GiB", "memorysize_mb"=>15800.6015625, "mountpoints"=>{"/"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.18%", "device"=>"rpool/ROOT/solaris-0", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc/root/", "zone=cisparc", "nozonemod", "sharezone=38", "dev=495017b"], "size"=>"476.16 GiB", "size_bytes"=>175171072, "used"=>"889.53 MiB", "used_bytes"=>932736000}, "/dev"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"/dev", "filesystem"=>"dev", "options"=>["zone=cisparc", "nozonemod", "sharezone=38", "dev=8e0001c"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/fd"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"fd", "filesystem"=>"fd", "options"=>["rw", "nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=9040027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/dfs/sharetab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"sharefs", "filesystem"=>"sharefs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8f40016"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/mnttab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mnttab", "filesystem"=>"mntfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8e80027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/export"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/export", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=495017f"], "size"=>"475.29 GiB", "size_bytes"=>-757532160, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/export/home"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/export/home", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950180"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/proc"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"proc", "filesystem"=>"proc", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8dc0026"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/rpool"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950181"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/system/contract"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"ctfs", "filesystem"=>"ctfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8e40027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/object"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"objfs", "filesystem"=>"objfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8f00027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/volatile"=>{"available"=>"4.53 GiB", "available_bytes"=>571752448, "capacity"=>"0.01%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc", "sharezone=38", "dev=8ec004d"], "size"=>"4.53 GiB", "size_bytes"=>572342272, "used"=>"576.00 KiB", "used_bytes"=>589824}, "/tmp"=>{"available"=>"4.53 GiB", "available_bytes"=>571752448, "capacity"=>"0.95%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc", "sharezone=38", "dev=8ec004e"], "size"=>"4.58 GiB", "size_bytes"=>618414080, "used"=>"44.50 MiB", "used_bytes"=>46661632}, "/var"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.05%", "device"=>"rpool/ROOT/solaris-0/var", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc/root/var", "zone=cisparc", "nozonemod", "sharezone=38", "dev=495017d"], "size"=>"475.51 GiB", "size_bytes"=>-521269760, "used"=>"225.35 MiB", "used_bytes"=>236295168}, "/var/share"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=495017e"], "size"=>"475.30 GiB", "size_bytes"=>-756610048, "used"=>"932.50 KiB", "used_bytes"=>954880}, "/var/share/pkg"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE/pkg", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950182"], "size"=>"475.29 GiB", "size_bytes"=>-757532160, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/var/share/pkg/repositories"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE/pkg/repositories", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950183"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}}, "mtu_lo0"=>8232, "mtu_net0"=>1500, "netmask"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "netmask_net0"=>"255.255.255.0", "network"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "network_net0"=>"10.32.77.0", "networking"=>{"dhcp"=>"10.32.22.10", "domain"=>"puppet.example", "fqdn"=>"solaris-11_2-sparc-t4-64.puppet.example", "hostname"=>"solaris-11_2-sparc-t4-64", "interfaces"=>{"lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "ip"=>"127.0.0.1", "mtu"=>8232, "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, "net0"=>{"bindings"=>[{"address"=>"10.32.77.68", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "dhcp"=>"10.32.22.10", "ip"=>"10.32.77.68", "mac"=>"02:08:20:41:26:8c", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}}, "ip"=>"10.32.77.68", "mac"=>"02:08:20:41:26:8c", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"net0"}, "operatingsystem"=>"Solaris", "operatingsystemmajrelease"=>"11", "operatingsystemrelease"=>"11.2", "os"=>{"architecture"=>"sun4v", "family"=>"Solaris", "hardware"=>"sun4v", "name"=>"Solaris", "release"=>{"full"=>"11.2", "major"=>"11", "minor"=>"2"}}, "osfamily"=>"Solaris", "path"=>"PATH:/opt/puppetlabs/bin:/usr/sbin:/usr/bin:/sbin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"solaris-11-sparc", "processor0"=>"SPARC-T4", "processor1"=>"SPARC-T4", "processor10"=>"SPARC-T4", "processor11"=>"SPARC-T4", "processor12"=>"SPARC-T4", "processor13"=>"SPARC-T4", "processor14"=>"SPARC-T4", "processor15"=>"SPARC-T4", "processor16"=>"SPARC-T4", "processor17"=>"SPARC-T4", "processor18"=>"SPARC-T4", "processor19"=>"SPARC-T4", "processor2"=>"SPARC-T4", "processor20"=>"SPARC-T4", "processor21"=>"SPARC-T4", "processor22"=>"SPARC-T4", "processor23"=>"SPARC-T4", "processor24"=>"SPARC-T4", "processor25"=>"SPARC-T4", "processor26"=>"SPARC-T4", "processor27"=>"SPARC-T4", "processor28"=>"SPARC-T4", "processor29"=>"SPARC-T4", "processor3"=>"SPARC-T4", "processor30"=>"SPARC-T4", "processor31"=>"SPARC-T4", "processor32"=>"SPARC-T4", "processor33"=>"SPARC-T4", "processor34"=>"SPARC-T4", "processor35"=>"SPARC-T4", "processor36"=>"SPARC-T4", "processor37"=>"SPARC-T4", "processor38"=>"SPARC-T4", "processor39"=>"SPARC-T4", "processor4"=>"SPARC-T4", "processor40"=>"SPARC-T4", "processor41"=>"SPARC-T4", "processor42"=>"SPARC-T4", "processor43"=>"SPARC-T4", "processor44"=>"SPARC-T4", "processor45"=>"SPARC-T4", "processor46"=>"SPARC-T4", "processor47"=>"SPARC-T4", "processor48"=>"SPARC-T4", "processor49"=>"SPARC-T4", "processor5"=>"SPARC-T4", "processor50"=>"SPARC-T4", "processor51"=>"SPARC-T4", "processor52"=>"SPARC-T4", "processor53"=>"SPARC-T4", "processor54"=>"SPARC-T4", "processor55"=>"SPARC-T4", "processor56"=>"SPARC-T4", "processor57"=>"SPARC-T4", "processor58"=>"SPARC-T4", "processor59"=>"SPARC-T4", "processor6"=>"SPARC-T4", "processor60"=>"SPARC-T4", "processor61"=>"SPARC-T4", "processor62"=>"SPARC-T4", "processor63"=>"SPARC-T4", "processor7"=>"SPARC-T4", "processor8"=>"SPARC-T4", "processor9"=>"SPARC-T4", "processorcount"=>64, "processors"=>{"count"=>64, "isa"=>"sparc", "models"=>["SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4"], "physicalcount"=>1, "speed"=>"2.85 GHz"}, "puppet_files_dir_present"=>false, "puppetversion"=>"4.4.2", "ruby"=>{"platform"=>"sparc-solaris2.11", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.8"}, "rubyplatform"=>"sparc-solaris2.11", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.8", "solaris_zones"=>{"current"=>"cisparc", "zones"=>{"cisparc"=>{"brand"=>"solaris", "id"=>"38", "ip_type"=>"excl", "path"=>"/", "status"=>"running", "uuid"=>"9903e75b-f048-4e38-83b3-977cde7b3782"}}}, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 db349d276f0d3465ddf320d4f39d91349f1b576f", "sha256"=>"SSHFP 2 2 b8e58d26d36f2ce088034a1ce3be70b03ef404671f0c6ed3256152af9c9ad607"}, "key"=>"AAAAB3NzaC1kc3MAAACBAMVAhiKM1nrem5tlbgwagi6NKV1e6RIpLxXj+vovBAb/vWf6+in2lBrxLqljbxYWq1XTOJoXUTybb24gpnDwZC2v/5TytqJ35P4ptOH1fY2zthRnkgyYUMfF7nLslOgoy24A19uwmR3lhFpklhCUe1xkMHOXkToujrfym+nwpFZ5AAAAFQDRqOSYA1u47UtVMg4zXL0txwFHIwAAAIBNxcSYfeOSQrkFawbG0GQpSNs2Z/iqFDbJFz/Ha1xkitkpmBBNizRva5tqNR8uaK/VHoIdaK7Rn1qS/D2Sl3w4Ps4UhEN9qOOylQplUmqb4JAFtAFInDMIHz/69SYMyBJ9eXQHh8mOeLX8s2lQow+Z/iOVpAlGIB0PxrHClqSN5AAAAIEAqHqE/Ry0hL98YpXRvMw0kpMl439iXQjzfx3IgJzSScNpNx3G5QDDysSu8dzanOvqXxJ0ynwc1LxuXhuvq4hJ990snyYLOgNOOJ5v86G1TkXTq3Ny0gb+7efiwI7u4xIY6WrQeXt32hbRY0kF/MswmKjz3NSBK6jozSNwHlP6jeA="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 865be76b66792c0d98006a6ed5227f19f8241cf3", "sha256"=>"SSHFP 1 2 c74d9f97237b06070909f30fbb68afbe0943450a8ea3d1b85fb16db53441a824"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA8bZpHkHvgZEBhn7qlupS61DjwXYOnTVFuaOaDI6eesXxU1yDJfEqO1eHp6YF6x5gmM/mDyfFU9hixMmH9yLRgi2/QUhoYa44z8NB3EBaHxFtLQLnoFTGq/VR5xZ+pyBcbwUswvDel3OfXTcepmT6lWLCBRLOfYTc6hzwRCfyrWgdVc3kruu9hh9pKIWFEyUUztHWuR7+akNH3nD+EcqsmuMowEzzssWC8msWnAX89geFPuhilAgz7Qcc1bJZUaWGgOzyaZKn3IVNNa3grOWzgKDE6gdLMefnk0dgndtIbB1E9iY1syosQCrBIiEfMMGEBjrDstcNKs+Ge8stRljjMw=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAMVAhiKM1nrem5tlbgwagi6NKV1e6RIpLxXj+vovBAb/vWf6+in2lBrxLqljbxYWq1XTOJoXUTybb24gpnDwZC2v/5TytqJ35P4ptOH1fY2zthRnkgyYUMfF7nLslOgoy24A19uwmR3lhFpklhCUe1xkMHOXkToujrfym+nwpFZ5AAAAFQDRqOSYA1u47UtVMg4zXL0txwFHIwAAAIBNxcSYfeOSQrkFawbG0GQpSNs2Z/iqFDbJFz/Ha1xkitkpmBBNizRva5tqNR8uaK/VHoIdaK7Rn1qS/D2Sl3w4Ps4UhEN9qOOylQplUmqb4JAFtAFInDMIHz/69SYMyBJ9eXQHh8mOeLX8s2lQow+Z/iOVpAlGIB0PxrHClqSN5AAAAIEAqHqE/Ry0hL98YpXRvMw0kpMl439iXQjzfx3IgJzSScNpNx3G5QDDysSu8dzanOvqXxJ0ynwc1LxuXhuvq4hJ990snyYLOgNOOJ5v86G1TkXTq3Ny0gb+7efiwI7u4xIY6WrQeXt32hbRY0kF/MswmKjz3NSBK6jozSNwHlP6jeA=", "sshfp_dsa"=>"SSHFP 2 1 db349d276f0d3465ddf320d4f39d91349f1b576f\nSSHFP 2 2 b8e58d26d36f2ce088034a1ce3be70b03ef404671f0c6ed3256152af9c9ad607", "sshfp_rsa"=>"SSHFP 1 1 865be76b66792c0d98006a6ed5227f19f8241cf3\nSSHFP 1 2 c74d9f97237b06070909f30fbb68afbe0943450a8ea3d1b85fb16db53441a824", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA8bZpHkHvgZEBhn7qlupS61DjwXYOnTVFuaOaDI6eesXxU1yDJfEqO1eHp6YF6x5gmM/mDyfFU9hixMmH9yLRgi2/QUhoYa44z8NB3EBaHxFtLQLnoFTGq/VR5xZ+pyBcbwUswvDel3OfXTcepmT6lWLCBRLOfYTc6hzwRCfyrWgdVc3kruu9hh9pKIWFEyUUztHWuR7+akNH3nD+EcqsmuMowEzzssWC8msWnAX89geFPuhilAgz7Qcc1bJZUaWGgOzyaZKn3IVNNa3grOWzgKDE6gdLMefnk0dgndtIbB1E9iY1syosQCrBIiEfMMGEBjrDstcNKs+Ge8stRljjMw==", "staging_http_get"=>"curl", "swapfree"=>"4.00 GiB", "swapfree_mb"=>4095.9921875, "swapsize"=>"4.00 GiB", "swapsize_mb"=>4095.9921875, "system_uptime"=>{"days"=>2, "hours"=>62, "seconds"=>225780, "uptime"=>"2 days"}, "timezone"=>"PDT", "uptime"=>"2 days", "uptime_days"=>2, "uptime_hours"=>62, "uptime_seconds"=>225780, "virtual"=>"zone", "zfs_featurenumbers"=>"1,2,3,4,5,6", "zfs_version"=>"6", "zone_cisparc_brand"=>"solaris", "zone_cisparc_id"=>"38", "zone_cisparc_iptype"=>"excl", "zone_cisparc_name"=>"cisparc", "zone_cisparc_path"=>"/", "zone_cisparc_status"=>"running", "zone_cisparc_uuid"=>"9903e75b-f048-4e38-83b3-977cde7b3782", "zonename"=>"cisparc", "zones"=>1, "zpool_featurenumbers"=>"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35", "zpool_version"=>"35", "clientcert"=>"solaris-11_2-sparc-t4-64.puppet.example", "clientversion"=>"4.4.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'solaris-11.2-sparc-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__metrics_on_windows-10-64_spec.rb b/.onceover/spec/classes/role__metrics_on_windows-10-64_spec.rb new file mode 100644 index 0000000..887d977 --- /dev/null +++ b/.onceover/spec/classes/role__metrics_on_windows-10-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::metrics" do + + context "using fact set windows-10-64" do + node_facts = {"puppetversion"=>"6.0.2", "puppet_inventory_metadata"=>{"packages"=>{"collection_enabled"=>false, "last_collection_time"=>"0.0s"}}, "package_provider"=>"windows", "pe_concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/pe_concat", "is_pe"=>false, "platform_symlink_writable"=>false, "puppet_files_dir_present"=>false, "puppet_vardir"=>"C:/ProgramData/PuppetLabs/puppet/cache", "puppet_environmentpath"=>"C:/ProgramData/PuppetLabs/code/environments", "puppet_server"=>"pe-puppet.localdomain", "service_provider"=>"windows", "staging_http_get"=>"curl", "common_appdata"=>"C:\\ProgramData", "architecture"=>"x64", "kernel"=>"windows", "virtual"=>"vmware", "is_virtual"=>true, "hardwaremodel"=>"x64", "operatingsystem"=>"windows", "os"=>{"name"=>"windows", "family"=>"windows", "release"=>{"major"=>"10", "full"=>"10"}}, "facterversion"=>"2.5.1", "fqdn"=>"VAGRANT-HB9G3RD", "hostname"=>"VAGRANT-HB9G3RD", "id"=>"vagrant-hb9g3rd\\vagrant", "interfaces"=>"Ethernet0_2", "ipaddress_ethernet0_2"=>"192.168.43.174", "ipaddress6_ethernet0_2"=>"fd72:b3ab:b8dd:0:f563:fac2:928c:6aa", "macaddress_ethernet0_2"=>"00:0C:29:A3:53:54", "netmask_ethernet0_2"=>"255.255.255.0", "mtu_ethernet0_2"=>0, "ipaddress"=>"192.168.43.174", "ipaddress6"=>"fd72:b3ab:b8dd:0:f563:fac2:928c:6aa", "kernelmajversion"=>"10.0", "kernelrelease"=>"10.0.17134", "kernelversion"=>"10.0.17134", "macaddress"=>"00:0C:29:A3:53:54", "manufacturer"=>"Phoenix Technologies LTD", "serialnumber"=>"VMware-56 4d 36 2e 2e a4 81 f9-0d 05 ae d0 e5 a3 53 54", "productname"=>"VMware Virtual Platform", "memorysize"=>"4.00 GB", "memoryfree"=>"2.30 GB", "memorysize_mb"=>"4095.49", "memoryfree_mb"=>"2360.00", "netmask"=>"255.255.255.0", "network_ethernet0_2"=>"192.168.43.0", "operatingsystemmajrelease"=>"10", "operatingsystemrelease"=>"10", "osfamily"=>"windows", "path"=>"C:\\tools\\ruby24\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;C:\\ProgramData\\chocolatey\\bin;C:\\Program Files (x86)\\vim\\vim80;C:\\Program Files\\Git\\cmd;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Users\\vagrant\\AppData\\Local\\Microsoft\\WindowsApps;", "physicalprocessorcount"=>4, "processors"=>{"models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "count"=>4, "physicalcount"=>4}, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor2"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor3"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>4, "ps"=>"tasklist.exe", "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/tools/ruby24/lib/ruby/site_ruby/2.4.0", "rubyversion"=>"2.4.3", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"seconds"=>1113359, "hours"=>309, "days"=>12, "uptime"=>"12 days"}, "timezone"=>"GMT Standard Time", "uptime"=>"12 days", "uptime_days"=>12, "uptime_hours"=>309, "uptime_seconds"=>1113359, "clientcert"=>"vagrant-hb9g3rd.lan.asio", "clientversion"=>"6.0.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::metrics' +$onceover_node = 'windows-10-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_AIX-6.1-powerpc_spec.rb b/.onceover/spec/classes/role__node_on_AIX-6.1-powerpc_spec.rb new file mode 100644 index 0000000..68b4435 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_AIX-6.1-powerpc_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set AIX-6.1-powerpc" do + node_facts = {"aio_agent_version"=>"1.8.2", "architecture"=>"PowerPC_POWER7", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "domain"=>"delivery.puppetlabs.net", "facterversion"=>"3.5.0", "fqdn"=>"pe-aix-61-se.delivery.puppetlabs.net", "gid"=>"system", "hardwareisa"=>"powerpc", "hardwaremodel"=>"IBM,8231-E1D", "hostname"=>"pe-aix-61-se", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"system", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,en0", "ipaddress"=>"10.32.77.35", "ipaddress6_lo0"=>"::1", "ipaddress_en0"=>"10.32.77.35", "ipaddress_lo0"=>"127.0.0.1", "kernel"=>"AIX", "kernelmajversion"=>"6100", "kernelrelease"=>"6100-07-04-1216", "kernelversion"=>"6100", "macaddress"=>"66:a4:d9:f8:4a:04", "macaddress_en0"=>"66:a4:d9:f8:4a:04", "memory"=>{"swap"=>{"available"=>"410.43 MiB", "available_bytes"=>430366720, "capacity"=>"19.84%", "total"=>"512.00 MiB", "total_bytes"=>536870912, "used"=>"101.57 MiB", "used_bytes"=>106504192}, "system"=>{"available"=>"10.88 MiB", "available_bytes"=>11403264, "capacity"=>"98.94%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"1013.13 MiB", "used_bytes"=>1062338560}}, "memoryfree"=>"10.88 MiB", "memoryfree_mb"=>10.875, "memorysize"=>"1.00 GiB", "memorysize_mb"=>1024.0, "mtu_en0"=>1500, "mtu_lo0"=>16896, "netmask"=>"255.255.255.0", "netmask6_lo0"=>"::", "netmask_en0"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "network"=>"10.32.77.0", "network6_lo0"=>"::", "network_en0"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "networking"=>{"domain"=>"delivery.puppetlabs.net", "fqdn"=>"pe-aix-61-se.delivery.puppetlabs.net", "hostname"=>"pe-aix-61-se", "interfaces"=>{"en0"=>{"bindings"=>[{"address"=>"10.32.77.35", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.35", "mac"=>"66:a4:d9:f8:4a:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}, "lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"::", "network"=>"::"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16896, "netmask"=>"255.0.0.0", "netmask6"=>"::", "network"=>"127.0.0.0", "network6"=>"::"}}, "ip"=>"10.32.77.35", "mac"=>"66:a4:d9:f8:4a:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"en0"}, "operatingsystem"=>"AIX", "operatingsystemmajrelease"=>"6100", "operatingsystemrelease"=>"6100-07-04-1216", "os"=>{"architecture"=>"PowerPC_POWER7", "family"=>"AIX", "hardware"=>"IBM,8231-E1D", "name"=>"AIX", "release"=>{"full"=>"6100-07-04-1216", "major"=>"6100"}}, "osfamily"=>"AIX", "path"=>"::/usr/bin:/etc:/usr/sbin:/sbin", "processor0"=>"PowerPC_POWER7", "processor1"=>"PowerPC_POWER7", "processor2"=>"PowerPC_POWER7", "processor3"=>"PowerPC_POWER7", "processor4"=>"PowerPC_POWER7", "processor5"=>"PowerPC_POWER7", "processor6"=>"PowerPC_POWER7", "processor7"=>"PowerPC_POWER7", "processorcount"=>8, "processors"=>{"count"=>8, "isa"=>"powerpc", "models"=>["PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7"], "speed"=>"4.23 GHz"}, "puppetversion"=>"4.8.1", "ruby"=>{"platform"=>"powerpc-aix6.1.0.0", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"powerpc-aix6.1.0.0", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "serialnumber"=>"21280CV", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 571109ba578ea17c854dcefad0e667bbbe4232c2", "sha256"=>"SSHFP 2 2 acd6ea2ff8cc0a0a8be88e6dada2688a17b7adb2a52312745208696f99dce945"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPJEJEzFa4YmVyS17c4Cs8ZWFJIg+igYRWiG/oJ4KMAu9R+cq3TuokGp0h5/T69yNeOn32h1WPYPIjnr14FyOr5Bb6+h+ej3WKnS1IpAGSy2H8Z21r4Cz0qX+madm/dGrtN1TI+6OV1xXXICZB0F0Lg4xilzix431nGunqbm1XXLAAAAFQDjxidL5XtudVMcTUzGFQ33cVwdTwAAAIBUjvKhMQP1304lW+Fr7A35ypaQrCVbsJFQD4egb9fGKY5WKIlQo7UGS/jvDtPS7iRDaLdiC2K5D4MYM9EUHgkprIO1d/o0i2UsYgec8WCJSBja/I4n0slEl7XEwM3SmnYNT0xfZM01Caj9+AyJFtRoF7l00QjSoxyOGMlEfvbCDAAAAIEA8MTmNjwDneigJnnxK9ZL4cvW4zQ+PQDglCdjJ2sB/IcpSvVyu6R9jbHSnfKhergRmmNJzKNA1Oc/INvNr4i9FFAuXEKkafmUyMavgd19uMxdpTAcvOJxwhG8TCrLQtJbm8Rn1e5wFM+4wnpc2y7HsBYGonmK9O5p9Fd3qkUx4BY="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 2faed3b06ba31bcbf069dcdb759d36730a2c649d", "sha256"=>"SSHFP 1 2 51fbfd79200a8667eeb1a8a4eee2487bbdee663189a9ca86a07069f5d95f9826"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDP+DHJRMbR8a4WvTwUGnz9rq+hHDVcP26xG+WIvIC5vlBk/N2lcrD7qs45Ht1kpZo4k4td+PQmi2k6I3BSVEeR9FTwbHEtjv8op1F7VTPXSSdY+90/CiQ4MA5s7d2Lbm5jipMV6dCneYZWsEkHKHzcp/Qst3w+0JSAHpx1wEOAlk/uJuLHHvAFYPZtdwzxTOW8/di5CpBIz/Pl1gcO8vQrFygvkFdYKPL44/zS3MZbmi7Hi6Q0PdcarFlWn6IodAlVSrJ/hcBbMkXJWV2L3zCt5nX4tJkYoOU9IIjGQEh+1cmIcWGdXpyvyaUnbSXJsFP9yAzi+MszYLJq9mUKIYch"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPJEJEzFa4YmVyS17c4Cs8ZWFJIg+igYRWiG/oJ4KMAu9R+cq3TuokGp0h5/T69yNeOn32h1WPYPIjnr14FyOr5Bb6+h+ej3WKnS1IpAGSy2H8Z21r4Cz0qX+madm/dGrtN1TI+6OV1xXXICZB0F0Lg4xilzix431nGunqbm1XXLAAAAFQDjxidL5XtudVMcTUzGFQ33cVwdTwAAAIBUjvKhMQP1304lW+Fr7A35ypaQrCVbsJFQD4egb9fGKY5WKIlQo7UGS/jvDtPS7iRDaLdiC2K5D4MYM9EUHgkprIO1d/o0i2UsYgec8WCJSBja/I4n0slEl7XEwM3SmnYNT0xfZM01Caj9+AyJFtRoF7l00QjSoxyOGMlEfvbCDAAAAIEA8MTmNjwDneigJnnxK9ZL4cvW4zQ+PQDglCdjJ2sB/IcpSvVyu6R9jbHSnfKhergRmmNJzKNA1Oc/INvNr4i9FFAuXEKkafmUyMavgd19uMxdpTAcvOJxwhG8TCrLQtJbm8Rn1e5wFM+4wnpc2y7HsBYGonmK9O5p9Fd3qkUx4BY=", "sshfp_dsa"=>"SSHFP 2 1 571109ba578ea17c854dcefad0e667bbbe4232c2\nSSHFP 2 2 acd6ea2ff8cc0a0a8be88e6dada2688a17b7adb2a52312745208696f99dce945", "sshfp_rsa"=>"SSHFP 1 1 2faed3b06ba31bcbf069dcdb759d36730a2c649d\nSSHFP 1 2 51fbfd79200a8667eeb1a8a4eee2487bbdee663189a9ca86a07069f5d95f9826", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDP+DHJRMbR8a4WvTwUGnz9rq+hHDVcP26xG+WIvIC5vlBk/N2lcrD7qs45Ht1kpZo4k4td+PQmi2k6I3BSVEeR9FTwbHEtjv8op1F7VTPXSSdY+90/CiQ4MA5s7d2Lbm5jipMV6dCneYZWsEkHKHzcp/Qst3w+0JSAHpx1wEOAlk/uJuLHHvAFYPZtdwzxTOW8/di5CpBIz/Pl1gcO8vQrFygvkFdYKPL44/zS3MZbmi7Hi6Q0PdcarFlWn6IodAlVSrJ/hcBbMkXJWV2L3zCt5nX4tJkYoOU9IIjGQEh+1cmIcWGdXpyvyaUnbSXJsFP9yAzi+MszYLJq9mUKIYch", "swapfree"=>"410.43 MiB", "swapfree_mb"=>410.4296875, "swapsize"=>"512.00 MiB", "swapsize_mb"=>512.0, "system_uptime"=>{"days"=>418, "hours"=>10035, "seconds"=>36127200, "uptime"=>"418 days"}, "timezone"=>"PST", "uptime"=>"418 days", "uptime_days"=>418, "uptime_hours"=>10035, "uptime_seconds"=>36127200, "clientcert"=>"pe-aix-61-se.delivery.puppetlabs.net", "clientversion"=>"4.8.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'AIX-6.1-powerpc' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_AIX-7.1-powerpc_spec.rb b/.onceover/spec/classes/role__node_on_AIX-7.1-powerpc_spec.rb new file mode 100644 index 0000000..efc9a20 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_AIX-7.1-powerpc_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set AIX-7.1-powerpc" do + node_facts = {"aio_agent_version"=>"1.5.2", "architecture"=>"PowerPC_POWER7", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "domain"=>"delivery.puppetlabs.net", "facterversion"=>"3.2.0", "fqdn"=>"pe-aix-71-se.delivery.puppetlabs.net", "gid"=>"system", "hardwareisa"=>"powerpc", "hardwaremodel"=>"IBM,8231-E1D", "hostname"=>"pe-aix-71-se", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"system", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,en0", "ipaddress"=>"10.32.77.36", "ipaddress6_lo0"=>"::1", "ipaddress_en0"=>"10.32.77.36", "ipaddress_lo0"=>"127.0.0.1", "is_pe"=>false, "kernel"=>"AIX", "kernelmajversion"=>"7100", "kernelrelease"=>"7100-01-05-1228", "kernelversion"=>"7100", "macaddress"=>"66:a4:dc:28:bf:04", "macaddress_en0"=>"66:a4:dc:28:bf:04", "memory"=>{"swap"=>{"available"=>"1007.14 MiB", "available_bytes"=>1056063488, "capacity"=>"1.65%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"16.86 MiB", "used_bytes"=>17678336}, "system"=>{"available"=>"16.84 MiB", "available_bytes"=>17653760, "capacity"=>"98.36%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"1007.16 MiB", "used_bytes"=>1056088064}}, "memoryfree"=>"16.84 MiB", "memoryfree_mb"=>16.8359375, "memorysize"=>"1.00 GiB", "memorysize_mb"=>1024.0, "mtu_en0"=>1500, "mtu_lo0"=>16896, "netmask"=>"255.255.255.0", "netmask6_lo0"=>"::", "netmask_en0"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "network"=>"10.32.77.0", "network6_lo0"=>"::", "network_en0"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "networking"=>{"domain"=>"delivery.puppetlabs.net", "fqdn"=>"pe-aix-71-se.delivery.puppetlabs.net", "hostname"=>"pe-aix-71-se", "interfaces"=>{"en0"=>{"bindings"=>[{"address"=>"10.32.77.36", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.36", "mac"=>"66:a4:dc:28:bf:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}, "lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"::", "network"=>"::"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16896, "netmask"=>"255.0.0.0", "netmask6"=>"::", "network"=>"127.0.0.0", "network6"=>"::"}}, "ip"=>"10.32.77.36", "mac"=>"66:a4:dc:28:bf:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"en0"}, "operatingsystem"=>"AIX", "operatingsystemmajrelease"=>"7100", "operatingsystemrelease"=>"7100-01-05-1228", "os"=>{"architecture"=>"PowerPC_POWER7", "family"=>"AIX", "hardware"=>"IBM,8231-E1D", "name"=>"AIX", "release"=>{"full"=>"7100-01-05-1228", "major"=>"7100"}}, "osfamily"=>"AIX", "package_provider"=>"aix", "path"=>"::/usr/bin:/etc:/usr/sbin:/sbin", "processor0"=>"PowerPC_POWER7", "processor1"=>"PowerPC_POWER7", "processor2"=>"PowerPC_POWER7", "processor3"=>"PowerPC_POWER7", "processor4"=>"PowerPC_POWER7", "processor5"=>"PowerPC_POWER7", "processor6"=>"PowerPC_POWER7", "processor7"=>"PowerPC_POWER7", "processorcount"=>8, "processors"=>{"count"=>8, "isa"=>"powerpc", "models"=>["PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7"], "speed"=>"4.23 GHz"}, "puppet_environmentpath"=>"/etc/puppetlabs/code/environments", "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.5.2", "root_home"=>"/root", "ruby"=>{"platform"=>"powerpc-aix7.1.0.0", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"powerpc-aix7.1.0.0", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "serialnumber"=>"21280CV", "service_provider"=>"src", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1bbfbd9caff8924d4584cbb2a748f1be2690d04c", "sha256"=>"SSHFP 2 2 73ec4c25ea880adfbb7f66c60e92fec0ff130c4988765b5799e4707a7cdde68a"}, "key"=>"AAAAB3NzaC1kc3MAAACBAI5I6MVkSh3bO0WVTWIxbB0VyoFrpIXjAtBBveHKQDiB5I9OmCGkzytyR7ERBG/yqFS04hcEX8JV//3DoJeLJ0vupRCDLr4HoTYDGS3Dkvb3wqLn8aaaadz4Ca8IgRbx0vr8ANQbu/XT0/eTv5fRs3YWeijPe4Zgto2x55Ap7UDlAAAAFQDtb/7QYsDVPUt0dVWhOehzBNvybwAAAIBTxxfl95ZRcFG7b2cWljphohnZGzZCJortjE76JBIhnXRlVnlXQFT98hrjkPwedjsj9KWM0RpiKOdas3QAM6iTWLoAv/4GcvAWDa7TuJ5fs3eeQO0yCsTzRzpPwkOv6dcHK6OWWLiGybf/kPxIb546COFONVekdyIdksfZzwJ41QAAAIEAgj+4V9gdRBZcOX7XchaNUPaezTc3pNG1HG8iYTiCTV28EkpkQgzMtW7pPU1Nzqv5CX0LnFS+QN4lTWtuqtADYWSu3soz+7GuL8u3vximAAp6RcmWYSRpIdIQkHGvcyAzT5LlNRhGc/bBPM6RNoCkPzjEDHJDOgTdPx+tRNWXb8Y="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 8957e5a6df12f351fd768ee9615b3906861ff4e5", "sha256"=>"SSHFP 1 2 5a2dddf4df75bc8f4f352d30a8192824e01386b4720708d249edec6f05c5eb81"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC38I+hMQxC/++t3XvgXPtpVglDV2Qp5Xqqp/ZmdJrW7gh3ylKWlOrJOlx72p9Qa2fTAU+eJpYeI8vAAKxtBqqoxVNfn9rGt8wR3eubcwm6CRLTCOqf2OoDJzyJw3RcgidhHuT2KPVYtNOpNEkFyTjtpru3RWrO08PLpT0simATc5XJrvSH9ODQCqzVi5Fhe58Kn1kyAmH9gr0vz/9zrhllBjxVhc3YFz2TKqnZD+zIYlYhoI1vm5zQSzUWA+8B9XBEGs3TUaSDKPANEwof2lt+auTHySlGRXTPL4D9mYw2BhrxRBESgLsbba23SVCMGPILDvb4JwI4vYc7E6AvrFIB"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAI5I6MVkSh3bO0WVTWIxbB0VyoFrpIXjAtBBveHKQDiB5I9OmCGkzytyR7ERBG/yqFS04hcEX8JV//3DoJeLJ0vupRCDLr4HoTYDGS3Dkvb3wqLn8aaaadz4Ca8IgRbx0vr8ANQbu/XT0/eTv5fRs3YWeijPe4Zgto2x55Ap7UDlAAAAFQDtb/7QYsDVPUt0dVWhOehzBNvybwAAAIBTxxfl95ZRcFG7b2cWljphohnZGzZCJortjE76JBIhnXRlVnlXQFT98hrjkPwedjsj9KWM0RpiKOdas3QAM6iTWLoAv/4GcvAWDa7TuJ5fs3eeQO0yCsTzRzpPwkOv6dcHK6OWWLiGybf/kPxIb546COFONVekdyIdksfZzwJ41QAAAIEAgj+4V9gdRBZcOX7XchaNUPaezTc3pNG1HG8iYTiCTV28EkpkQgzMtW7pPU1Nzqv5CX0LnFS+QN4lTWtuqtADYWSu3soz+7GuL8u3vximAAp6RcmWYSRpIdIQkHGvcyAzT5LlNRhGc/bBPM6RNoCkPzjEDHJDOgTdPx+tRNWXb8Y=", "sshfp_dsa"=>"SSHFP 2 1 1bbfbd9caff8924d4584cbb2a748f1be2690d04c\nSSHFP 2 2 73ec4c25ea880adfbb7f66c60e92fec0ff130c4988765b5799e4707a7cdde68a", "sshfp_rsa"=>"SSHFP 1 1 8957e5a6df12f351fd768ee9615b3906861ff4e5\nSSHFP 1 2 5a2dddf4df75bc8f4f352d30a8192824e01386b4720708d249edec6f05c5eb81", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC38I+hMQxC/++t3XvgXPtpVglDV2Qp5Xqqp/ZmdJrW7gh3ylKWlOrJOlx72p9Qa2fTAU+eJpYeI8vAAKxtBqqoxVNfn9rGt8wR3eubcwm6CRLTCOqf2OoDJzyJw3RcgidhHuT2KPVYtNOpNEkFyTjtpru3RWrO08PLpT0simATc5XJrvSH9ODQCqzVi5Fhe58Kn1kyAmH9gr0vz/9zrhllBjxVhc3YFz2TKqnZD+zIYlYhoI1vm5zQSzUWA+8B9XBEGs3TUaSDKPANEwof2lt+auTHySlGRXTPL4D9mYw2BhrxRBESgLsbba23SVCMGPILDvb4JwI4vYc7E6AvrFIB", "swapfree"=>"1007.14 MiB", "swapfree_mb"=>1007.140625, "swapsize"=>"1.00 GiB", "swapsize_mb"=>1024.0, "system_uptime"=>{"days"=>160, "hours"=>3847, "seconds"=>13852500, "uptime"=>"160 days"}, "timezone"=>"PST", "uptime"=>"160 days", "uptime_days"=>160, "uptime_hours"=>3847, "uptime_seconds"=>13852500, "clientcert"=>"pe-aix-71-se.delivery.puppetlabs.net", "clientversion"=>"4.5.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'AIX-7.1-powerpc' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Amazon-2018.03_spec.rb b/.onceover/spec/classes/role__node_on_Amazon-2018.03_spec.rb new file mode 100644 index 0000000..f408952 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Amazon-2018.03_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Amazon-2018.03" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"10/16/2017", "bios_vendor"=>"Amazon EC2", "bios_version"=>"1.0", "blockdevice_nvme0n1_model"=>"Amazon Elastic Block Store", "blockdevice_nvme0n1_size"=>8589934592, "blockdevices"=>"nvme0n1", "boardassettag"=>"i-0816d4c53ff8dc6a2", "boardmanufacturer"=>"Amazon EC2", "chassisassettag"=>"Amazon EC2", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"172.31.0.1", "system"=>"172.31.0.1"}, "disks"=>{"nvme0n1"=>{"model"=>"Amazon Elastic Block Store", "size"=>"8.00 GiB", "size_bytes"=>8589934592}}, "dmi"=>{"bios"=>{"release_date"=>"10/16/2017", "vendor"=>"Amazon EC2", "version"=>"1.0"}, "board"=>{"asset_tag"=>"i-0816d4c53ff8dc6a2", "manufacturer"=>"Amazon EC2"}, "chassis"=>{"asset_tag"=>"Amazon EC2", "type"=>"Other"}, "manufacturer"=>"Amazon EC2", "product"=>{"name"=>"t3a.xlarge", "serial_number"=>"ec21b37d-28ce-a3c2-956e-527e2857aeda", "uuid"=>"EC21B37D-28CE-A3C2-956E-527E2857AEDA"}}, "domain"=>"us-west-2.compute.internal", "ec2_metadata"=>{"ami-id"=>"ami-01e24be29428c15b2", "ami-launch-index"=>"0", "ami-manifest-path"=>"(unknown)", "block-device-mapping"=>{"ami"=>"xvda", "root"=>"/dev/xvda"}, "events"=>{"maintenance"=>{"history"=>"[]", "scheduled"=>"[]"}}, "hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "identity-credentials"=>{"ec2"=>{"info"=>"{\n \"Code\" : \"Success\",\n \"LastUpdated\" : \"2019-05-07T01:03:28Z\",\n \"AccountId\" : \"581165678935\"\n}"}}, "instance-action"=>"none", "instance-id"=>"i-0816d4c53ff8dc6a2", "instance-type"=>"t3a.xlarge", "local-hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "local-ipv4"=>"172.31.3.153", "mac"=>"0a:ca:e0:39:c1:f6", "metrics"=>{"vhostmd"=>""}, "network"=>{"interfaces"=>{"macs"=>{"0a:ca:e0:39:c1:f6"=>{"device-number"=>"0", "interface-id"=>"eni-04e7710af3cf1699c", "ipv4-associations"=>{"34.209.204.164"=>"172.31.3.153"}, "local-hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "local-ipv4s"=>"172.31.3.153", "mac"=>"0a:ca:e0:39:c1:f6", "owner-id"=>"581165678935", "public-hostname"=>"ec2-34-209-204-164.us-west-2.compute.amazonaws.com", "public-ipv4s"=>"34.209.204.164", "security-group-ids"=>"sg-05a2c52388c24f3ae", "security-groups"=>"launch-wizard-2", "subnet-id"=>"subnet-3bafc660", "subnet-ipv4-cidr-block"=>"172.31.0.0/20", "vpc-id"=>"vpc-287af44e", "vpc-ipv4-cidr-block"=>"172.31.0.0/16", "vpc-ipv4-cidr-blocks"=>"172.31.0.0/16"}}}}, "placement"=>{"availability-zone"=>"us-west-2c"}, "profile"=>"default-hvm", "public-hostname"=>"ec2-34-209-204-164.us-west-2.compute.amazonaws.com", "public-ipv4"=>"34.209.204.164", "public-keys"=>{"0"=>{"openssh-key"=>"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDk1QR+MwLPRohIOiWbCC8xjJKFYeCjIh2g2wAKnZFCkPjCG9BD3L4URnszJXdv+5XylfWO1y9O1Z95etjWfObApRZ5Ej22Dz1EExWWRNOKl9QdrEfCACSlc5gbT5rflHd/He9eD5OFRHlMY8fNIApEKdQrlxZgr1/NOusVQggoS/MiszxCl0dob3kz86XX6PrAmMyGfv7j/mPeeEUzP3bGxtjJyaZGcwukjPvlgq1yI4AzZlveY8fnokRsh9uDHXUEVB2hLNaBBZB/Evw261J/+QsnKopAuqQpwct/n/ulbg+w1h/2ZBiDXDBK8DQ8kOC4zuum6qwri1KNKdX9zIif thinkpad"}}, "reservation-id"=>"r-0b89c0e198506ec1f", "security-groups"=>"launch-wizard-2", "services"=>{"domain"=>"amazonaws.com", "partition"=>"aws"}}, "facterversion"=>"3.12.4", "filesystems"=>"ext3,ext4", "fips_enabled"=>false, "fqdn"=>"ip-172-31-3-153.us-west-2.compute.internal", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"ip-172-31-3-153", "hypervisors"=>{"kvm"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"172.31.3.153", "ipaddress6"=>"fe80::8ca:e0ff:fe39:c1f6", "ipaddress6_eth0"=>"fe80::8ca:e0ff:fe39:c1f6", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"172.31.3.153", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"4.14", "kernelrelease"=>"4.14.77-70.59.amzn1.x86_64", "kernelversion"=>"4.14.77", "load_averages"=>{"15m"=>0.02, "1m"=>0.12, "5m"=>0.06}, "macaddress"=>"0a:ca:e0:39:c1:f6", "macaddress_eth0"=>"0a:ca:e0:39:c1:f6", "manufacturer"=>"Amazon EC2", "memory"=>{"system"=>{"available"=>"15.36 GiB", "available_bytes"=>16489611264, "capacity"=>"1.10%", "total"=>"15.53 GiB", "total_bytes"=>16673153024, "used"=>"175.04 MiB", "used_bytes"=>183541760}}, "memoryfree"=>"15.36 GiB", "memoryfree_mb"=>15725.71875, "memorysize"=>"15.53 GiB", "memorysize_mb"=>15900.7578125, "mountpoints"=>{"/"=>{"available"=>"6.55 GiB", "available_bytes"=>7033344000, "capacity"=>"15.45%", "device"=>"/dev/nvme0n1p1", "filesystem"=>"ext4", "options"=>["rw", "noatime", "data=ordered"], "size"=>"7.75 GiB", "size_bytes"=>8318783488, "used"=>"1.20 GiB", "used_bytes"=>1285439488}, "/dev/shm"=>{"available"=>"7.76 GiB", "available_bytes"=>8336576512, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "relatime"], "size"=>"7.76 GiB", "size_bytes"=>8336576512, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_eth0"=>9001, "mtu_lo"=>65536, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.240.0", "netmask_lo"=>"255.0.0.0", "network"=>"172.31.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"172.31.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"172.31.0.1", "domain"=>"us-west-2.compute.internal", "fqdn"=>"ip-172-31-3-153.us-west-2.compute.internal", "hostname"=>"ip-172-31-3-153", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"172.31.3.153", "netmask"=>"255.255.240.0", "network"=>"172.31.0.0"}], "bindings6"=>[{"address"=>"fe80::8ca:e0ff:fe39:c1f6", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"172.31.0.1", "ip"=>"172.31.3.153", "ip6"=>"fe80::8ca:e0ff:fe39:c1f6", "mac"=>"0a:ca:e0:39:c1:f6", "mtu"=>9001, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"172.31.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"172.31.3.153", "ip6"=>"fe80::8ca:e0ff:fe39:c1f6", "mac"=>"0a:ca:e0:39:c1:f6", "mtu"=>9001, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"172.31.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"Amazon", "operatingsystemmajrelease"=>"2018", "operatingsystemrelease"=>"2018.03", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"Amazon", "release"=>{"full"=>"2018.03", "major"=>"2018", "minor"=>"03"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/nvme0n1p1"=>{"filesystem"=>"ext4", "label"=>"/", "mount"=>"/", "partlabel"=>"Linux", "partuuid"=>"893c59db-bd86-4d67-b40f-221bc82c14c8", "size"=>"8.00 GiB", "size_bytes"=>8587820544, "uuid"=>"f25f5092-0401-4edb-9fac-c57f3c673803"}, "/dev/nvme0n1p128"=>{"partlabel"=>"BIOS Boot Partition", "partuuid"=>"9d1c14c8-e25b-4405-9171-de3c756f61b2", "size"=>"1.00 MiB", "size_bytes"=>1048576}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin", "physicalprocessorcount"=>1, "processor0"=>"AMD EPYC 7571", "processor1"=>"AMD EPYC 7571", "processor2"=>"AMD EPYC 7571", "processor3"=>"AMD EPYC 7571", "processorcount"=>4, "processors"=>{"count"=>4, "isa"=>"x86_64", "models"=>["AMD EPYC 7571", "AMD EPYC 7571", "AMD EPYC 7571", "AMD EPYC 7571"], "physicalcount"=>1}, "productname"=>"t3a.xlarge", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>false, "serialnumber"=>"ec21b37d-28ce-a3c2-956e-527e2857aeda", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 0b8e09e2fe5c820230d717a8f1c4bfd4bcb11dfd", "sha256"=>"SSHFP 2 2 956e88a3dd192f4a401c05deccf92985b16542027b7a77d36172a3c014c8491f"}, "key"=>"AAAAB3NzaC1kc3MAAACBALzgFDQ4Hu4sjtB0gYwh2uv/00U15avjHKLuffc1+rDmjnoW99OlbeijOb9nPBTDR/+OkAJuVzFdfP/EmPAajAMSE2bOPn5jgNBoKdw7g4LMhtRGomJ8ZxJ9kphYbFaq1JdX6a06HSJHn8RlkV6MV9WYnGQiE89e/7kf3krFssXJAAAAFQDuL8oufyAzYtkWvApZlOX+UlFvxwAAAIEAhibNA8agHCpQIrswmMj9PUOhEVx3OqS/F+0TB/vOqWdubFK97zlt56biu+2R2gHNCiqyiGorBA83xonkHrdjn44Nw2KsZVE9xR4BCbqIyrkwQkWbTHfGYwq0QCo9UyuTdrhen2FnFdZXsQw4b4mcedNDxSPzgLy9Pl/EAVINm6EAAACBAJOfk9MzOocneM35ROEMKRZV5oWFwkglRg/qT3Xcvc3PabEUKlTWQs65fVlVkyipri/0cIuPEo8NKUFJ614FHYGedgja2lFz4xEAonJX3wG3c4GSdbv9uMJT0K1p3zbfCuBoZ9my2nJvWBYPYrXvZgXMt48ewJHMy3HlTnhNSklI", "type"=>"ssh-dss"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 8fc1a45df472f27fd3fa19cd5e6df68434fa60d4", "sha256"=>"SSHFP 3 2 c4b4bb4362c47a3d0feaf030779e1bf06e2fd95911b1f8636ad2032b57cf087b"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL2ZVP/li7lMY6UrniJHcWOjBvTs1xdw2NQlmzLtuyaPhnolyh2uwoZctB5tOnlG97NlGqkBKV9pl7+fplDWip0=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 10e0fcb0020748f776ff7178310be3e8e1c788bc", "sha256"=>"SSHFP 4 2 ef9e38c12ab7fa4e4eb82e26d6707110352d82a5beae30887f3de96e7a83fb8f"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHtcpSu4oquHdhVu57O9BP/sHvy1vgMuEWZ2Aoq1elFP", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 70e536ec33e8312c25b6c606546d7acb2f471e28", "sha256"=>"SSHFP 1 2 ee810f2ab351653e9c2ca93270f9c73eb31dd824318b50af72d0afbe31d5d462"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDT/8RUum1jt8FZg8GJRvjjOQyU1VLn1199yjI4xr4aSx7yAmm3eHb5bsSPsxxPUMnlWcd8bq0hWQ5VI2G2WQfUpM4Tyx+wRnGdU1SB7xY8Flzg7w0JOIIIKf1ulxcscacCnGR2y/6rJUkdYVsiCKMADuQ6MUpqA6jLbWHAv8dJlvfq/vtCxBtTOzbhlWmmuvo0WPGXEmHW8Hvj94wcPkvRbf/Pohn+A5NrGs1SlIetn+N6tnK6CPK/g1dNMomPTwU+1+yAIUdTMedJPEeiB8pX5ydDhmO0X76KcXmaqIGvPWWMPEBoPKH8f/IFauOqkoaSAycdKBLYEUbb0iDIlXG1", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALzgFDQ4Hu4sjtB0gYwh2uv/00U15avjHKLuffc1+rDmjnoW99OlbeijOb9nPBTDR/+OkAJuVzFdfP/EmPAajAMSE2bOPn5jgNBoKdw7g4LMhtRGomJ8ZxJ9kphYbFaq1JdX6a06HSJHn8RlkV6MV9WYnGQiE89e/7kf3krFssXJAAAAFQDuL8oufyAzYtkWvApZlOX+UlFvxwAAAIEAhibNA8agHCpQIrswmMj9PUOhEVx3OqS/F+0TB/vOqWdubFK97zlt56biu+2R2gHNCiqyiGorBA83xonkHrdjn44Nw2KsZVE9xR4BCbqIyrkwQkWbTHfGYwq0QCo9UyuTdrhen2FnFdZXsQw4b4mcedNDxSPzgLy9Pl/EAVINm6EAAACBAJOfk9MzOocneM35ROEMKRZV5oWFwkglRg/qT3Xcvc3PabEUKlTWQs65fVlVkyipri/0cIuPEo8NKUFJ614FHYGedgja2lFz4xEAonJX3wG3c4GSdbv9uMJT0K1p3zbfCuBoZ9my2nJvWBYPYrXvZgXMt48ewJHMy3HlTnhNSklI", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL2ZVP/li7lMY6UrniJHcWOjBvTs1xdw2NQlmzLtuyaPhnolyh2uwoZctB5tOnlG97NlGqkBKV9pl7+fplDWip0=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHtcpSu4oquHdhVu57O9BP/sHvy1vgMuEWZ2Aoq1elFP", "sshfp_dsa"=>"SSHFP 2 1 0b8e09e2fe5c820230d717a8f1c4bfd4bcb11dfd\nSSHFP 2 2 956e88a3dd192f4a401c05deccf92985b16542027b7a77d36172a3c014c8491f", "sshfp_ecdsa"=>"SSHFP 3 1 8fc1a45df472f27fd3fa19cd5e6df68434fa60d4\nSSHFP 3 2 c4b4bb4362c47a3d0feaf030779e1bf06e2fd95911b1f8636ad2032b57cf087b", "sshfp_ed25519"=>"SSHFP 4 1 10e0fcb0020748f776ff7178310be3e8e1c788bc\nSSHFP 4 2 ef9e38c12ab7fa4e4eb82e26d6707110352d82a5beae30887f3de96e7a83fb8f", "sshfp_rsa"=>"SSHFP 1 1 70e536ec33e8312c25b6c606546d7acb2f471e28\nSSHFP 1 2 ee810f2ab351653e9c2ca93270f9c73eb31dd824318b50af72d0afbe31d5d462", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDT/8RUum1jt8FZg8GJRvjjOQyU1VLn1199yjI4xr4aSx7yAmm3eHb5bsSPsxxPUMnlWcd8bq0hWQ5VI2G2WQfUpM4Tyx+wRnGdU1SB7xY8Flzg7w0JOIIIKf1ulxcscacCnGR2y/6rJUkdYVsiCKMADuQ6MUpqA6jLbWHAv8dJlvfq/vtCxBtTOzbhlWmmuvo0WPGXEmHW8Hvj94wcPkvRbf/Pohn+A5NrGs1SlIetn+N6tnK6CPK/g1dNMomPTwU+1+yAIUdTMedJPEeiB8pX5ydDhmO0X76KcXmaqIGvPWWMPEBoPKH8f/IFauOqkoaSAycdKBLYEUbb0iDIlXG1", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>136, "uptime"=>"0:02 hours"}, "timezone"=>"UTC", "uptime"=>"0:02 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>136, "uuid"=>"EC21B37D-28CE-A3C2-956E-527E2857AEDA", "virtual"=>"kvm", "clientcert"=>"ip-172-31-3-153.us-west-2.compute.internal", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Amazon-2018.03' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_CentOS-5.11-32_spec.rb b/.onceover/spec/classes/role__node_on_CentOS-5.11-32_spec.rb new file mode 100644 index 0000000..22cdcf3 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_CentOS-5.11-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set CentOS-5.11-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_hda_size"=>0, "blockdevices"=>"hda", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"hda"=>{"size"=>"20.00 GiB", "size_bytes"=>0}}, "domain"=>"localdomain", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,iso9660", "fqdn"=>"localhost.localdomain", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo,sit0", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:febf:56", "ipaddress6_eth0"=>"fe80::a00:27ff:febf:56", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.18-398.el5", "kernelversion"=>"2.6.18", "load_averages"=>{"15m"=>0.11, "1m"=>0.28, "5m"=>0.22}, "lsbdistcodename"=>"Final", "lsbdistdescription"=>"CentOS release 5.11 (Final)", "lsbdistid"=>"CentOS", "lsbdistrelease"=>"5.11", "lsbmajdistrelease"=>"5", "lsbminordistrelease"=>"11", "lsbrelease"=>":core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch", "macaddress"=>"08:00:27:bf:00:56", "macaddress_eth0"=>"08:00:27:bf:00:56", "memory"=>{"swap"=>{"available"=>"1023.99 MiB", "available_bytes"=>1073733632, "capacity"=>"0%", "total"=>"1023.99 MiB", "total_bytes"=>1073733632, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"429.48 MiB", "available_bytes"=>450342912, "capacity"=>"14.58%", "total"=>"502.80 MiB", "total_bytes"=>527220736, "used"=>"73.32 MiB", "used_bytes"=>76877824}}, "memoryfree"=>"429.48 MiB", "memoryfree_mb"=>429.48046875, "memorysize"=>"502.80 MiB", "memorysize_mb"=>502.796875, "mountpoints"=>{"/"=>{"available"=>"1.09 GiB", "available_bytes"=>1171632128, "capacity"=>"52.22%", "device"=>"/dev/mapper/VolGroup00-LogVol00", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"2.28 GiB", "size_bytes"=>-1842671616, "used"=>"1.19 GiB", "used_bytes"=>1280663552}, "/boot"=>{"available"=>"86.58 MiB", "available_bytes"=>90790912, "capacity"=>"12.29%", "device"=>"/dev/hda1", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"98.72 MiB", "size_bytes"=>103512064, "used"=>"12.13 MiB", "used_bytes"=>12721152}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "mtu_sit0"=>1480, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"localdomain", "fqdn"=>"localhost.localdomain", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:febf:56", "mac"=>"08:00:27:bf:00:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}, "sit0"=>{"mtu"=>1480}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:febf:56", "mac"=>"08:00:27:bf:00:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"5", "operatingsystemrelease"=>"5.11", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"Final", "description"=>"CentOS release 5.11 (Final)", "id"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "specification"=>":core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"i686", "name"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "path"=>"/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 3a63a36b70f2d9a56a9dc3a1159a64ff9f89536f", "sha256"=>"SSHFP 2 2 610f5aaa0dc46e30df3fb0ecac0eb3e00e7cac79d610c8c9a2a1eac341244940"}, "key"=>"AAAAB3NzaC1kc3MAAACBANIQgUl4dqCF84m1riBm7rlb5j6v6Dco/P7w0+AE0by81oHLA/i2V89okSrenm2scb4/u57ZpR/GeyVaLzicLyUjBICBwPOsv/+eLnVUtL/+vXwnVleBqaZn+2FUswdkz+J4QiDRSyl78kAkLMAFqEfNimMUB12DirtvgYIFqKaZAAAAFQDTiJhQ0rCPN0ax1rHbjLAMYYoCLwAAAIBWYAzgNYnG5TCzHWSdQZHeJPItH3MUrLFgggb3H9kFZBKCLSBW/EWV1s27G8a1Hd9JAsGEwDGBHn2VLz4uMSssEbJpdJY4jeRmeqeyqZ7My+83XLu0stm2xu6Tt7dwH//DPTTS1XmFXYdx/3tR5JWBIUm6yTb1WS43WUTSyxyPCQAAAIEAzyoULrHnqiBjuJeLB/2OF1vnRT58D53Vd3cQW1xZwyzsPSralv2lMGW0rGaduGrFQjCrDQk0k1fajZnjFX3qfdxaflFCgz2I1W46AcrGXeFy7AlRlCIE1LZtYGd04l3ERiqcUQT+vk2Jv54qMUwSQeyYWY67XcAnglf5GLqwqMo="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 6b3dbcd02fe71fb6106ad074454f8f16917327b5", "sha256"=>"SSHFP 1 2 913a32e7a0b2c81b5419903654c1dc42680df07f4fe04c82d7d70892b77b824b"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAsNcmWEvgjOkr4XA4uYa9aAfcxv1IygDmFnM/zIFbcMUmCxoza/WWZwm/mDO319xq71YqpVtvhgpSTHLGek6Iwb1rZukQvbwZnlzrIe0G8Bc4JpSAmyZkZceve1cau6nOXEI8eDrlbRLtrUNeptaIVHaa85KJqv7Ksc+NxGIRS/xBTWus3rxx3cQaurcyIK1rBHLiL5VpN+ove3Nl3zsHyyOym6FjbqIQuVMStr5j0+lQ3B+AqZpJixwbGKaxSIKZUcQla1pGCchBt7BuAq+A4XE+XIdsi2gRks2IjPGMkOXh0IiYud1ph7JaO7iLjSalylvF9qZSO/70J3w7nKLJYQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBANIQgUl4dqCF84m1riBm7rlb5j6v6Dco/P7w0+AE0by81oHLA/i2V89okSrenm2scb4/u57ZpR/GeyVaLzicLyUjBICBwPOsv/+eLnVUtL/+vXwnVleBqaZn+2FUswdkz+J4QiDRSyl78kAkLMAFqEfNimMUB12DirtvgYIFqKaZAAAAFQDTiJhQ0rCPN0ax1rHbjLAMYYoCLwAAAIBWYAzgNYnG5TCzHWSdQZHeJPItH3MUrLFgggb3H9kFZBKCLSBW/EWV1s27G8a1Hd9JAsGEwDGBHn2VLz4uMSssEbJpdJY4jeRmeqeyqZ7My+83XLu0stm2xu6Tt7dwH//DPTTS1XmFXYdx/3tR5JWBIUm6yTb1WS43WUTSyxyPCQAAAIEAzyoULrHnqiBjuJeLB/2OF1vnRT58D53Vd3cQW1xZwyzsPSralv2lMGW0rGaduGrFQjCrDQk0k1fajZnjFX3qfdxaflFCgz2I1W46AcrGXeFy7AlRlCIE1LZtYGd04l3ERiqcUQT+vk2Jv54qMUwSQeyYWY67XcAnglf5GLqwqMo=", "sshfp_dsa"=>"SSHFP 2 1 3a63a36b70f2d9a56a9dc3a1159a64ff9f89536f\nSSHFP 2 2 610f5aaa0dc46e30df3fb0ecac0eb3e00e7cac79d610c8c9a2a1eac341244940", "sshfp_rsa"=>"SSHFP 1 1 6b3dbcd02fe71fb6106ad074454f8f16917327b5\nSSHFP 1 2 913a32e7a0b2c81b5419903654c1dc42680df07f4fe04c82d7d70892b77b824b", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAsNcmWEvgjOkr4XA4uYa9aAfcxv1IygDmFnM/zIFbcMUmCxoza/WWZwm/mDO319xq71YqpVtvhgpSTHLGek6Iwb1rZukQvbwZnlzrIe0G8Bc4JpSAmyZkZceve1cau6nOXEI8eDrlbRLtrUNeptaIVHaa85KJqv7Ksc+NxGIRS/xBTWus3rxx3cQaurcyIK1rBHLiL5VpN+ove3Nl3zsHyyOym6FjbqIQuVMStr5j0+lQ3B+AqZpJixwbGKaxSIKZUcQla1pGCchBt7BuAq+A4XE+XIdsi2gRks2IjPGMkOXh0IiYud1ph7JaO7iLjSalylvF9qZSO/70J3w7nKLJYQ==", "swapfree"=>"1023.99 MiB", "swapfree_mb"=>1023.9921875, "swapsize"=>"1023.99 MiB", "swapsize_mb"=>1023.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1067, "uptime"=>"0:17 hours"}, "timezone"=>"UTC", "uptime"=>"0:17 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1067, "virtual"=>"virtualbox", "clientcert"=>"localhost.localdomain", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'CentOS-5.11-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_CentOS-5.11-64_spec.rb b/.onceover/spec/classes/role__node_on_CentOS-5.11-64_spec.rb new file mode 100644 index 0000000..87a71dd --- /dev/null +++ b/.onceover/spec/classes/role__node_on_CentOS-5.11-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set CentOS-5.11-64" do + node_facts = {"architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_hda_size"=>21474836480, "blockdevices"=>"hda", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"hda"=>{"size"=>"20.00 GiB", "size_bytes"=>21474836480}}, "domain"=>"localdomain", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,iso9660", "fqdn"=>"localhost.localdomain", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo,sit0", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe3e:4987", "ipaddress6_eth0"=>"fe80::a00:27ff:fe3e:4987", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.18-398.el5", "kernelversion"=>"2.6.18", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"Final", "lsbdistdescription"=>"CentOS release 5.11 (Final)", "lsbdistid"=>"CentOS", "lsbdistrelease"=>"5.11", "lsbmajdistrelease"=>"5", "lsbminordistrelease"=>"11", "lsbrelease"=>":core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch", "macaddress"=>"08:00:27:3e:49:87", "macaddress_eth0"=>"08:00:27:3e:49:87", "memory"=>{"swap"=>{"available"=>"1023.99 MiB", "available_bytes"=>1073733632, "capacity"=>"0%", "total"=>"1023.99 MiB", "total_bytes"=>1073733632, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"389.45 MiB", "available_bytes"=>408363008, "capacity"=>"21.76%", "total"=>"497.78 MiB", "total_bytes"=>521961472, "used"=>"108.34 MiB", "used_bytes"=>113598464}}, "memoryfree"=>"389.45 MiB", "memoryfree_mb"=>389.4453125, "memorysize"=>"497.78 MiB", "memorysize_mb"=>497.78125, "mountpoints"=>{"/"=>{"available"=>"16.96 GiB", "available_bytes"=>18212638720, "capacity"=>"7.23%", "device"=>"/dev/mapper/VolGroup00-LogVol00", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"18.28 GiB", "size_bytes"=>19632164864, "used"=>"1.32 GiB", "used_bytes"=>1419526144}, "/boot"=>{"available"=>"86.04 MiB", "available_bytes"=>90215424, "capacity"=>"12.85%", "device"=>"/dev/hda1", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"98.72 MiB", "size_bytes"=>103512064, "used"=>"12.68 MiB", "used_bytes"=>13296640}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "mtu_sit0"=>1480, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"localdomain", "fqdn"=>"localhost.localdomain", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe3e:4987", "mac"=>"08:00:27:3e:49:87", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}, "sit0"=>{"mtu"=>1480}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe3e:4987", "mac"=>"08:00:27:3e:49:87", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"5", "operatingsystemrelease"=>"5.11", "os"=>{"architecture"=>"x86_64", "distro"=>{"codename"=>"Final", "description"=>"CentOS release 5.11 (Final)", "id"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "specification"=>":core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "path"=>"/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1139f2967264a610088812d1ed3ea8db448c417d", "sha256"=>"SSHFP 2 2 ddb6064607ac29a8c83978d33e46ed56e677f27ed727341142a08156906bc9bb"}, "key"=>"AAAAB3NzaC1kc3MAAACBAK4mrAWHX3BUGyimNDl6+rtP3BXx8hvZ8UCfySeFw3vliSb5uzCLSdbcLmNZxqVrYv9skhO7wIaRFo4xwLSBPbwMffwuO8/2kIXGxkkVKnucsYmsNNaaLAgrfTR+d2lj089fs/PBDGUiJThPPsbNLMVxDEy1SOuby5FAZvNGQTlxAAAAFQCivnpYKhk5wFrpmn1mZv7ayD8HLwAAAIBQ64m92s3WWK+tdChTH2rEvfn3lJlatruRDeZaXrTuuzA7K9uJhtfqg3KAs9gtZup6vOGNJbJWZVxTG+I3jLXgA2Mfd/lAcbtA1RXnqgUITgg2/sd/TkEkCrke/NVjBaiiXVhsly63OIv/JAvq4ulmNxvUT7Pj6Fz9dKvV1elbJQAAAIBqHveIC7RZnN4bGEc+rZZ63aOYI7Pm/9OE2soVjjvGYgk9Iew9S7xwDmcrDKICqSCwzE3ISalkGAkqXKBJnKx/gKziLWdj1VOoNv16X4nVTwxaL7u9nAg1cQ+H5whnWQ+KDoLJPtc8bCpnamGMY4W89a08Qv0U5RECNhv92AQcqQ=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 29e63bdd87c88c24251d791b474a8f3b56d581f7", "sha256"=>"SSHFP 1 2 cfc171e3db64806593cd26571556b360882507938c9a71e477478837cfa6ea9c"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA7Z6GmWepCT3oXq1qGkIq736GM5oXr4ISMuJtGF2+8yOyM+qqvM83zgnZVkCSkNwtiLOODfzbFmmfKKdLoN30xE6oRP+hu9LH7dzRnnIwsx2DBgaX6QPdbcsIG1dnfH34PO1/AvZGRU4YRwrBSVsURR5wow6BYTs56qznYUd6VALvDg0iOLde7eniqQlVbzfLsR+GFeQ9zp9qMI4JjL17RJYBeVam0wP3cYXglE5PsMYuJwVLP6aOIFx3nQPem76bh5fyTVFsav+jsdamw+dZ7uZn6lkRlCtqyxQzFyyT3RgCUW1qVwdus42xsJm8GPojfIcqhQ3HUEDZ61D5dgZjIQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAK4mrAWHX3BUGyimNDl6+rtP3BXx8hvZ8UCfySeFw3vliSb5uzCLSdbcLmNZxqVrYv9skhO7wIaRFo4xwLSBPbwMffwuO8/2kIXGxkkVKnucsYmsNNaaLAgrfTR+d2lj089fs/PBDGUiJThPPsbNLMVxDEy1SOuby5FAZvNGQTlxAAAAFQCivnpYKhk5wFrpmn1mZv7ayD8HLwAAAIBQ64m92s3WWK+tdChTH2rEvfn3lJlatruRDeZaXrTuuzA7K9uJhtfqg3KAs9gtZup6vOGNJbJWZVxTG+I3jLXgA2Mfd/lAcbtA1RXnqgUITgg2/sd/TkEkCrke/NVjBaiiXVhsly63OIv/JAvq4ulmNxvUT7Pj6Fz9dKvV1elbJQAAAIBqHveIC7RZnN4bGEc+rZZ63aOYI7Pm/9OE2soVjjvGYgk9Iew9S7xwDmcrDKICqSCwzE3ISalkGAkqXKBJnKx/gKziLWdj1VOoNv16X4nVTwxaL7u9nAg1cQ+H5whnWQ+KDoLJPtc8bCpnamGMY4W89a08Qv0U5RECNhv92AQcqQ==", "sshfp_dsa"=>"SSHFP 2 1 1139f2967264a610088812d1ed3ea8db448c417d\nSSHFP 2 2 ddb6064607ac29a8c83978d33e46ed56e677f27ed727341142a08156906bc9bb", "sshfp_rsa"=>"SSHFP 1 1 29e63bdd87c88c24251d791b474a8f3b56d581f7\nSSHFP 1 2 cfc171e3db64806593cd26571556b360882507938c9a71e477478837cfa6ea9c", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA7Z6GmWepCT3oXq1qGkIq736GM5oXr4ISMuJtGF2+8yOyM+qqvM83zgnZVkCSkNwtiLOODfzbFmmfKKdLoN30xE6oRP+hu9LH7dzRnnIwsx2DBgaX6QPdbcsIG1dnfH34PO1/AvZGRU4YRwrBSVsURR5wow6BYTs56qznYUd6VALvDg0iOLde7eniqQlVbzfLsR+GFeQ9zp9qMI4JjL17RJYBeVam0wP3cYXglE5PsMYuJwVLP6aOIFx3nQPem76bh5fyTVFsav+jsdamw+dZ7uZn6lkRlCtqyxQzFyyT3RgCUW1qVwdus42xsJm8GPojfIcqhQ3HUEDZ61D5dgZjIQ==", "swapfree"=>"1023.99 MiB", "swapfree_mb"=>1023.9921875, "swapsize"=>"1023.99 MiB", "swapsize_mb"=>1023.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>847, "uptime"=>"0:14 hours"}, "timezone"=>"UTC", "uptime"=>"0:14 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>847, "virtual"=>"virtualbox", "clientcert"=>"localhost.localdomain", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'CentOS-5.11-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_CentOS-6.6-32_spec.rb b/.onceover/spec/classes/role__node_on_CentOS-6.6-32_spec.rb new file mode 100644 index 0000000..630fcdb --- /dev/null +++ b/.onceover/spec/classes/role__node_on_CentOS-6.6-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set CentOS-6.6-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"6C33275E-3132-4167-9318-9BDE31E82035"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext4,iso9660", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:feff:42e5", "ipaddress6_eth0"=>"fe80::a00:27ff:feff:42e5", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-504.el6.i686", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "macaddress"=>"08:00:27:ff:42:e5", "macaddress_eth0"=>"08:00:27:ff:42:e5", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"1.00 GiB", "available_bytes"=>1073737728, "capacity"=>"0%", "total"=>"1.00 GiB", "total_bytes"=>1073737728, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"451.91 MiB", "available_bytes"=>473862144, "capacity"=>"9.40%", "total"=>"498.82 MiB", "total_bytes"=>523051008, "used"=>"46.91 MiB", "used_bytes"=>49188864}}, "memoryfree"=>"451.91 MiB", "memoryfree_mb"=>451.91015625, "memorysize"=>"498.82 MiB", "memorysize_mb"=>498.8203125, "mountpoints"=>{"/"=>{"available"=>"1.02 GiB", "available_bytes"=>1099689984, "capacity"=>"51.05%", "device"=>"/dev/mapper/VolGroup-lv_root", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"2.09 GiB", "size_bytes"=>-2048442368, "used"=>"1.07 GiB", "used_bytes"=>1146834944}, "/boot"=>{"available"=>"450.39 MiB", "available_bytes"=>472266752, "capacity"=>"5.42%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"25.83 MiB", "used_bytes"=>27088896}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feff:42e5", "mac"=>"08:00:27:ff:42:e5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feff:42e5", "mac"=>"08:00:27:ff:42:e5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.6", "os"=>{"architecture"=>"i386", "family"=>"RedHat", "hardware"=>"i686", "name"=>"CentOS", "release"=>{"full"=>"6.6", "major"=>"6", "minor"=>"6"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/VolGroup-lv_root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"bc353fb2-82b1-4d41-a43e-6512030a2a28"}, "/dev/mapper/VolGroup-lv_swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"eb19f39e-a1cc-4e43-bf33-809fa7f52044"}, "/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"51727e98-6cd5-4fba-8a1f-7d4dfb575e1f"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>-525336576, "uuid"=>"vkG7sJ-bfu3-Cko3-YJ7v-jPys-3uHe-vki0jZ"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 5c44d0a9f52668fbaaf05e6957f058d90264adfe", "sha256"=>"SSHFP 2 2 de1d70753fc8dcce901b997fca065a08cdfcc9d7ba44f630e0e16be7a54df877"}, "key"=>"AAAAB3NzaC1kc3MAAACBAME6dtbuRJGNiBgp3QqD50a8LmJLduCTsifX5ST6RA5l+LHIx/UpCo66dsSY29mXVsMIK6tlZyu0MDR4iOz/4oFcKwkgHvbZ33WFY7G526IDrszdLdWnEqxPw7pUC+izWmD337K0gcZnDMJGZk1PVEjK6i5MeFYI4SwYkdd/m7DTAAAAFQCzZLb3M4+Y0TBLUVImfxc31+KXiQAAAIAbk33qNmIiB4+iHJ0coB4MfSdwoPnhU+vG7XpqiA0W/68U6lGIFFFHW0R1utZUQ28E8jUhSwzM0EGXtiSyFpTzjAnS44UiIWvulTkbpa9RnTn1gVzR2Tpbc24LMiKqiz/ZrvKmp8jLUO1/BPCmD80yNXXo+v59wXnVD8Yak4u07QAAAIB0lpeV5gShABSEIBXBuAPGW67mjCdUqbj6Ry1ZV3XTPtUXWVhCehWQrPh9yYCItpepKWp55t7neSqVjaxFo7W8O2gBkYwv24eQiqaqI8vgV3fJf4mdb10cdAb6IzM46WVhSxo1al2XPLBDVtx1z/4RH/7agKpbfmP6QrDgKkMKow=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1002ff7e5e42c3c9c9681d65afe0f195277d2a8", "sha256"=>"SSHFP 1 2 ac639861032637e9c24f0af7126242086540c3d1f41640576c011d6eb9f4bf24"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEArd8ro8164ykLYynBWxSiPBNUy1hLeh2S284vuYCbJwNC/naFBmcXORUFIsegfJpRxFKg3YsCbQUrHfZ6cfAc/xKUdoORUkF+8ixsVl4YzHg6vybxnRlaanBvS0eiR/wzxsVepqC/S3gd7YF3/Lca5sHNixNuqgxsd9iy9VEz7XMZ32mMxBqgTabR1KorBSufGMRADq/jauXpd2QRul+bih5uAL/Ilb2bZutcHUohnWi3UQnR10bO9MS1wr6c42VJBOHW6fZXvGjRvjd94AhNB7RTKvmRCucPCMvkgaDsr+z0cCjmpmptsdy119UpKmv4uCHalPbtHOWMYk2QVnqoQw=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAME6dtbuRJGNiBgp3QqD50a8LmJLduCTsifX5ST6RA5l+LHIx/UpCo66dsSY29mXVsMIK6tlZyu0MDR4iOz/4oFcKwkgHvbZ33WFY7G526IDrszdLdWnEqxPw7pUC+izWmD337K0gcZnDMJGZk1PVEjK6i5MeFYI4SwYkdd/m7DTAAAAFQCzZLb3M4+Y0TBLUVImfxc31+KXiQAAAIAbk33qNmIiB4+iHJ0coB4MfSdwoPnhU+vG7XpqiA0W/68U6lGIFFFHW0R1utZUQ28E8jUhSwzM0EGXtiSyFpTzjAnS44UiIWvulTkbpa9RnTn1gVzR2Tpbc24LMiKqiz/ZrvKmp8jLUO1/BPCmD80yNXXo+v59wXnVD8Yak4u07QAAAIB0lpeV5gShABSEIBXBuAPGW67mjCdUqbj6Ry1ZV3XTPtUXWVhCehWQrPh9yYCItpepKWp55t7neSqVjaxFo7W8O2gBkYwv24eQiqaqI8vgV3fJf4mdb10cdAb6IzM46WVhSxo1al2XPLBDVtx1z/4RH/7agKpbfmP6QrDgKkMKow==", "sshfp_dsa"=>"SSHFP 2 1 5c44d0a9f52668fbaaf05e6957f058d90264adfe\nSSHFP 2 2 de1d70753fc8dcce901b997fca065a08cdfcc9d7ba44f630e0e16be7a54df877", "sshfp_rsa"=>"SSHFP 1 1 d1002ff7e5e42c3c9c9681d65afe0f195277d2a8\nSSHFP 1 2 ac639861032637e9c24f0af7126242086540c3d1f41640576c011d6eb9f4bf24", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEArd8ro8164ykLYynBWxSiPBNUy1hLeh2S284vuYCbJwNC/naFBmcXORUFIsegfJpRxFKg3YsCbQUrHfZ6cfAc/xKUdoORUkF+8ixsVl4YzHg6vybxnRlaanBvS0eiR/wzxsVepqC/S3gd7YF3/Lca5sHNixNuqgxsd9iy9VEz7XMZ32mMxBqgTabR1KorBSufGMRADq/jauXpd2QRul+bih5uAL/Ilb2bZutcHUohnWi3UQnR10bO9MS1wr6c42VJBOHW6fZXvGjRvjd94AhNB7RTKvmRCucPCMvkgaDsr+z0cCjmpmptsdy119UpKmv4uCHalPbtHOWMYk2QVnqoQw==", "swapfree"=>"1.00 GiB", "swapfree_mb"=>1023.99609375, "swapsize"=>"1.00 GiB", "swapsize_mb"=>1023.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>430, "uptime"=>"0:07 hours"}, "timezone"=>"UTC", "uptime"=>"0:07 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>430, "uuid"=>"6C33275E-3132-4167-9318-9BDE31E82035", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'CentOS-6.6-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_CentOS-6.6-64_spec.rb b/.onceover/spec/classes/role__node_on_CentOS-6.6-64_spec.rb new file mode 100644 index 0000000..a936820 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_CentOS-6.6-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set CentOS-6.6-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"DA4CD203-2C23-4E21-B169-293D1749C38C"}}, "domain"=>"pdx.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"ext4,iso9660", "fqdn"=>"centos6a.pdx.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"centos6a", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ip6tables_version"=>"1.4.7", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe0f:d276", "ipaddress6_eth0"=>"fe80::a00:27ff:fe0f:d276", "ipaddress6_eth1"=>"fe80::a00:27ff:fe66:988a", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"10.20.1.88", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.7", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-504.8.1.el6.x86_64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "macaddress"=>"08:00:27:0f:d2:76", "macaddress_eth0"=>"08:00:27:0f:d2:76", "macaddress_eth1"=>"08:00:27:66:98:8a", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"992.00 MiB", "available_bytes"=>1040183296, "capacity"=>"0%", "total"=>"992.00 MiB", "total_bytes"=>1040183296, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"348.41 MiB", "available_bytes"=>365338624, "capacity"=>"28.95%", "total"=>"490.39 MiB", "total_bytes"=>514215936, "used"=>"141.98 MiB", "used_bytes"=>148877312}}, "memoryfree"=>"348.41 MiB", "memoryfree_mb"=>348.4140625, "memorysize"=>"490.39 MiB", "memorysize_mb"=>490.39453125, "mountpoints"=>{"/"=>{"available"=>"16.94 GiB", "available_bytes"=>18193268736, "capacity"=>"6.51%", "device"=>"/dev/mapper/VolGroup-lv_root", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"18.12 GiB", "size_bytes"=>19459338240, "used"=>"1.18 GiB", "used_bytes"=>1266069504}, "/boot"=>{"available"=>"448.35 MiB", "available_bytes"=>470125568, "capacity"=>"5.85%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"27.88 MiB", "used_bytes"=>29230080}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8555670, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"pdx.puppetlabs.demo", "fqdn"=>"centos6a.pdx.puppetlabs.demo", "hostname"=>"centos6a", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe0f:d276", "mac"=>"08:00:27:0f:d2:76", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"ip"=>"10.20.1.88", "ip6"=>"fe80::a00:27ff:fe66:988a", "mac"=>"08:00:27:66:98:8a", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe0f:d276", "mac"=>"08:00:27:0f:d2:76", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.6", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"6.6", "major"=>"6", "minor"=>"6"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/VolGroup-lv_root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"a29409f8-0b58-4271-a348-032caefec8b8"}, "/dev/mapper/VolGroup-lv_swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b30b464a-8ac9-492a-a1c5-2da75bb7488a"}, "/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"da946872-1406-4ac1-9a4d-f7ce5f7be47e"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>20949499904, "uuid"=>"nRdWPh-INkA-aHPs-TNtk-HjJG-SxBU-DdqI8a"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_razor_server_version"=>"package pe-razor-server is not installed", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"el-6-x86_64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 5dad11db93cde6e3b1d5ce5a5fe5ad02825037e8", "sha256"=>"SSHFP 2 2 576fe2b6a8412ada50cb776e6f1da5dd4bc301f2aa682be2ff82c70558c14745"}, "key"=>"AAAAB3NzaC1kc3MAAACBAJSFgQJi2VfgHnp2MQsV2wNpONevQuhi1Jb/nX0EjHtrAgc8MNRXLQTmjunh5q4+mjcYMHXDIx6F0Oc4XCnR5g6uQwBOGg70oXJmUkmwCw/mdgu3ppepOQJssBKnKFCR7QsbrBL+U1YmYmV8eGYDB76eXWRBOd9LewcGkjhHYbpzAAAAFQCShhFDlgHvmj6kcr6XRUuYPNziNwAAAIBBjLzEbwqoedlUKXRGuKc7nU71qWAkahN8rI4lU7d6PrVS7XziNX3OTCXbRCF3wT/dlYBU+grjmOIF4dbOrjBCHmmYVzlntXsefyR6XIbJw/H08L2LdDT6aye+MDWdYGK0PqgV6AZ5pWUzu7wS+qJduOaNMts5YrzqvlhiFDO8EAAAAIAJoqYk2bkNTPnjYi4qhIP3o+7Lhpxh5akAkjPMpM4tf/BedBqzKimvWhtDNVTcNCOZwJuSkHL4SSafvPCoxbKY4YhFWYykS/Vdle9ixNtH+wMU5d8DsSsvZpfa4lvj9FpzgfcM+NT1aYHis/pIRpBblPfHHnFBsxGKX66v6webHg=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 e1e2811771eb093d9b74333a111e089bc8e434ef", "sha256"=>"SSHFP 1 2 4513b7ba6b47b22319ea40fe9e0f12e9ac200b367b78508364a80a2a9b92409c"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA3Gn072MPvlL1R0RpTGod7BxiCvm4Wp6p8gRYJgEba9FLtYTWYhx18ueLnuFWKnK6WMpwe24732ZGGCsagjBkEo8DFJZABZbfSHxW1gsmU6smUM9o2wt9ZEeYJ036DqIkg4DzsBLc206NKStuKCTOINFSwBtHAWkZCeGdon8ssEoery//yZchbHBXQB1f312Re42W4eLNpWm0T93eEwRRMOpnLtNFrVa9kvHv71eQx2crvDG2xd6BfN0PkU0tx0TBzDS2xUqBg5m1MdNbarxWH1Km8JUEH40jl3YKgh5g0lrfEE36xIItPtW2mFawsMBpMK0iPerqs60or9SjM1LwXQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAJSFgQJi2VfgHnp2MQsV2wNpONevQuhi1Jb/nX0EjHtrAgc8MNRXLQTmjunh5q4+mjcYMHXDIx6F0Oc4XCnR5g6uQwBOGg70oXJmUkmwCw/mdgu3ppepOQJssBKnKFCR7QsbrBL+U1YmYmV8eGYDB76eXWRBOd9LewcGkjhHYbpzAAAAFQCShhFDlgHvmj6kcr6XRUuYPNziNwAAAIBBjLzEbwqoedlUKXRGuKc7nU71qWAkahN8rI4lU7d6PrVS7XziNX3OTCXbRCF3wT/dlYBU+grjmOIF4dbOrjBCHmmYVzlntXsefyR6XIbJw/H08L2LdDT6aye+MDWdYGK0PqgV6AZ5pWUzu7wS+qJduOaNMts5YrzqvlhiFDO8EAAAAIAJoqYk2bkNTPnjYi4qhIP3o+7Lhpxh5akAkjPMpM4tf/BedBqzKimvWhtDNVTcNCOZwJuSkHL4SSafvPCoxbKY4YhFWYykS/Vdle9ixNtH+wMU5d8DsSsvZpfa4lvj9FpzgfcM+NT1aYHis/pIRpBblPfHHnFBsxGKX66v6webHg==", "sshfp_dsa"=>"SSHFP 2 1 5dad11db93cde6e3b1d5ce5a5fe5ad02825037e8\nSSHFP 2 2 576fe2b6a8412ada50cb776e6f1da5dd4bc301f2aa682be2ff82c70558c14745", "sshfp_rsa"=>"SSHFP 1 1 e1e2811771eb093d9b74333a111e089bc8e434ef\nSSHFP 1 2 4513b7ba6b47b22319ea40fe9e0f12e9ac200b367b78508364a80a2a9b92409c", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA3Gn072MPvlL1R0RpTGod7BxiCvm4Wp6p8gRYJgEba9FLtYTWYhx18ueLnuFWKnK6WMpwe24732ZGGCsagjBkEo8DFJZABZbfSHxW1gsmU6smUM9o2wt9ZEeYJ036DqIkg4DzsBLc206NKStuKCTOINFSwBtHAWkZCeGdon8ssEoery//yZchbHBXQB1f312Re42W4eLNpWm0T93eEwRRMOpnLtNFrVa9kvHv71eQx2crvDG2xd6BfN0PkU0tx0TBzDS2xUqBg5m1MdNbarxWH1Km8JUEH40jl3YKgh5g0lrfEE36xIItPtW2mFawsMBpMK0iPerqs60or9SjM1LwXQ==", "staging_http_get"=>"curl", "swapfree"=>"992.00 MiB", "swapfree_mb"=>991.99609375, "swapsize"=>"992.00 MiB", "swapsize_mb"=>991.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>352, "uptime"=>"0:05 hours"}, "timezone"=>"UTC", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>352, "uuid"=>"DA4CD203-2C23-4E21-B169-293D1749C38C", "virtual"=>"virtualbox", "clientcert"=>"centos6a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'CentOS-6.6-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_CentOS-7.0-64_spec.rb b/.onceover/spec/classes/role__node_on_CentOS-7.0-64_spec.rb new file mode 100644 index 0000000..17ae9f5 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_CentOS-7.0-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set CentOS-7.0-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"sydney", "dhcp_servers"=>{"enp0s3"=>"10.0.2.2", "enp0s8"=>"192.168.56.100", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"9D7BE471-F3DA-47EE-B023-F659129270EF"}}, "domain"=>"syd.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"xfs", "fqdn"=>"centos7b.syd.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"centos7b", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"enp0s3,enp0s8,lo", "ip6tables_version"=>"1.4.21", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe39:183c", "ipaddress6_enp0s3"=>"fe80::a00:27ff:fe39:183c", "ipaddress6_enp0s8"=>"fe80::a00:27ff:fe39:832c", "ipaddress6_lo"=>"::1", "ipaddress_enp0s3"=>"10.0.2.15", "ipaddress_enp0s8"=>"10.20.1.92", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.21", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.10", "kernelrelease"=>"3.10.0-123.el7.x86_64", "kernelversion"=>"3.10.0", "load_averages"=>{"15m"=>0.05, "1m"=>0.26, "5m"=>0.12}, "macaddress"=>"08:00:27:39:18:3c", "macaddress_enp0s3"=>"08:00:27:39:18:3c", "macaddress_enp0s8"=>"08:00:27:39:83:2c", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"1.03 GiB", "available_bytes"=>1107292160, "capacity"=>"0%", "total"=>"1.03 GiB", "total_bytes"=>1107292160, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"297.76 MiB", "available_bytes"=>312225792, "capacity"=>"39.28%", "total"=>"490.41 MiB", "total_bytes"=>514228224, "used"=>"192.64 MiB", "used_bytes"=>202002432}}, "memoryfree"=>"297.76 MiB", "memoryfree_mb"=>297.76171875, "memorysize"=>"490.41 MiB", "memorysize_mb"=>490.40625, "mountpoints"=>{"/"=>{"available"=>"17.30 GiB", "available_bytes"=>18574749696, "capacity"=>"6.32%", "device"=>"/dev/mapper/centos-root", "filesystem"=>"xfs", "options"=>["rw", "relatime", "attr2", "inode64", "noquota"], "size"=>"18.47 GiB", "size_bytes"=>19828572160, "used"=>"1.17 GiB", "used_bytes"=>1253822464}, "/boot"=>{"available"=>"393.11 MiB", "available_bytes"=>412209152, "capacity"=>"20.85%", "device"=>"/dev/sda1", "filesystem"=>"xfs", "options"=>["rw", "relatime", "attr2", "inode64", "noquota"], "size"=>"496.67 MiB", "size_bytes"=>520794112, "used"=>"103.55 MiB", "used_bytes"=>108584960}}, "mtu_enp0s3"=>1500, "mtu_enp0s8"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8563388, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s3"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s8"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_enp0s3"=>"255.255.255.0", "netmask_enp0s8"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_enp0s3"=>"fe80::", "network6_enp0s8"=>"fe80::", "network6_lo"=>"::1", "network_enp0s3"=>"10.0.2.0", "network_enp0s8"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"syd.puppetlabs.demo", "fqdn"=>"centos7b.syd.puppetlabs.demo", "hostname"=>"centos7b", "interfaces"=>{"enp0s3"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe39:183c", "mac"=>"08:00:27:39:18:3c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "enp0s8"=>{"dhcp"=>"192.168.56.100", "ip"=>"10.20.1.92", "ip6"=>"fe80::a00:27ff:fe39:832c", "mac"=>"08:00:27:39:83:2c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe39:183c", "mac"=>"08:00:27:39:18:3c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.0.1406", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"7.0.1406", "major"=>"7", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/centos-root"=>{"filesystem"=>"xfs", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"db651e5f-a2c2-4236-9570-6226f63e1fcd"}, "/dev/mapper/centos-swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"ff4ec16c-28c0-4715-846d-11e7c9b4e53b"}, "/dev/sda1"=>{"filesystem"=>"xfs", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"39ce4ad1-4e9d-49a4-bce0-8a30b459490a"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>20949499904, "uuid"=>"pg7zVv-M3hI-zpjY-eYlZ-06aD-ZRO2-J30GLd"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_razor_server_version"=>"package pe-razor-server is not installed", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"el-7-x86_64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 91edfdf5e7e098f4392606865c017dabc26804bb", "sha256"=>"SSHFP 3 2 f00c65a1884bfec52db11de89254f0bfd46baf9e759546654c94371a05ee0dba"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcSUcHQOfBDZElr6PBmxc/4ZDaIhsugXM7OE2SQj35iOMCN/I3XfINMo8SvBIQ6CsBqPnzgbKRBs7e1FPFnsT4="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 f25e9ad2faddbe75263cfee4fa97dc965bc1d581", "sha256"=>"SSHFP 1 2 0173e386031a134e4cbfb7f6971788761a5aa3d9e39dafcf163f003de2537199"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMo35gwbuqQvRq1gy6L8vddeyMNBYr5WPVcftMKSJR1jmwzxcZ+h0AEb3KPfoMHkqe9Xy+3oN981qe5ZCE780HO884AaXzXry9zdWQjGysrI+zHQbqbpOkYAGsVbJiQ7VnH7lMVZo2jCbABj4OdsbeCOeP3oDXTNCTaWWdQChzqvYgNBvb0mg/na1l0naQ1nsJYD85O8ZRQ9U/JOADMaOjummfOb2z7MgskZ9abm5eFCCQl+wUUNXKqQx+uyVM4lyyoTHpW3M2IV0P9wxhWJF6eovwyREGuMgJCs6kbHCFty7HtAYbzziabgQav8pMe68aBqjshbpU6ll/+aXWhD1"}}, "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcSUcHQOfBDZElr6PBmxc/4ZDaIhsugXM7OE2SQj35iOMCN/I3XfINMo8SvBIQ6CsBqPnzgbKRBs7e1FPFnsT4=", "sshfp_ecdsa"=>"SSHFP 3 1 91edfdf5e7e098f4392606865c017dabc26804bb\nSSHFP 3 2 f00c65a1884bfec52db11de89254f0bfd46baf9e759546654c94371a05ee0dba", "sshfp_rsa"=>"SSHFP 1 1 f25e9ad2faddbe75263cfee4fa97dc965bc1d581\nSSHFP 1 2 0173e386031a134e4cbfb7f6971788761a5aa3d9e39dafcf163f003de2537199", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMo35gwbuqQvRq1gy6L8vddeyMNBYr5WPVcftMKSJR1jmwzxcZ+h0AEb3KPfoMHkqe9Xy+3oN981qe5ZCE780HO884AaXzXry9zdWQjGysrI+zHQbqbpOkYAGsVbJiQ7VnH7lMVZo2jCbABj4OdsbeCOeP3oDXTNCTaWWdQChzqvYgNBvb0mg/na1l0naQ1nsJYD85O8ZRQ9U/JOADMaOjummfOb2z7MgskZ9abm5eFCCQl+wUUNXKqQx+uyVM4lyyoTHpW3M2IV0P9wxhWJF6eovwyREGuMgJCs6kbHCFty7HtAYbzziabgQav8pMe68aBqjshbpU6ll/+aXWhD1", "staging_http_get"=>"curl", "swapfree"=>"1.03 GiB", "swapfree_mb"=>1055.99609375, "swapsize"=>"1.03 GiB", "swapsize_mb"=>1055.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>78, "uptime"=>"0:01 hours"}, "timezone"=>"UTC", "uptime"=>"0:01 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>78, "uuid"=>"9D7BE471-F3DA-47EE-B023-F659129270EF", "virtual"=>"virtualbox", "clientcert"=>"centos7b.syd.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'CentOS-7.0-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Debian-6.0.10-32_spec.rb b/.onceover/spec/classes/role__node_on_Debian-6.0.10-32_spec.rb new file mode 100644 index 0000000..a82bedc --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Debian-6.0.10-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Debian-6.0.10-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"6E39B0C5-08BD-4595-AC3D-576DAA677DED"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fead:dc1c", "ipaddress6_eth0"=>"fe80::a00:27ff:fead:dc1c", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-5-686", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"squeeze", "lsbdistdescription"=>"Debian GNU/Linux 6.0.10 (squeeze)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"6.0.10", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"0", "macaddress"=>"08:00:27:ad:dc:1c", "macaddress_eth0"=>"08:00:27:ad:dc:1c", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"871.99 MiB", "available_bytes"=>914350080, "capacity"=>"0%", "total"=>"871.99 MiB", "total_bytes"=>914350080, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"434.46 MiB", "available_bytes"=>455565312, "capacity"=>"13.56%", "total"=>"502.63 MiB", "total_bytes"=>527040512, "used"=>"68.16 MiB", "used_bytes"=>71475200}}, "memoryfree"=>"434.46 MiB", "memoryfree_mb"=>434.4609375, "memorysize"=>"502.63 MiB", "memorysize_mb"=>502.625, "mountpoints"=>{"/"=>{"available"=>"1.69 GiB", "available_bytes"=>1819041792, "capacity"=>"35.07%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "errors=remount-ro"], "size"=>"2.61 GiB", "size_bytes"=>-1493307392, "used"=>"937.10 MiB", "used_bytes"=>982618112}, "/boot"=>{"available"=>"213.27 MiB", "available_bytes"=>223632384, "capacity"=>"6.35%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"14.45 MiB", "used_bytes"=>15155200}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fead:dc1c", "mac"=>"08:00:27:ad:dc:1c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fead:dc1c", "mac"=>"08:00:27:ad:dc:1c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.0.10", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"squeeze", "description"=>"Debian GNU/Linux 6.0.10 (squeeze)", "id"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"092d5625-eb03-443c-953f-006bec7d5476"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"f9e1cf7c-ab54-4949-8e55-290adc8d853f"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"2c798378-1738-426f-a847-c929a507fc73"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"cG2Syv-bT1d-2TyA-Wqgz-33I2-RnTz-jA2LxS"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 3e0f92fe3eb7ee9737cead81e7465b5903d6ce57", "sha256"=>"SSHFP 2 2 c67d0777eb694d679a1d24335e76dd0475ca92077ff8d02c91f26a4b9cf56b09"}, "key"=>"AAAAB3NzaC1kc3MAAACBAInFvAyGI1vy23JgBDC4/AZeO2jhNRqlX0kdL9utKPaMgrIzIiEN0aqdlSJY4uTFcYAdfYxMuIkYaMh0FM3EMDB0ZL/1k9W2dCVFYpSHgIa/zJwSEqY7sFHdXjRsD3mjOzEZwpjV+dFq8sHoIouIhMcTC4nejrDRno994JoJSyP3AAAAFQCjjYeNB9geUQHIrcE/nY90aiI9pQAAAIBDoY90WppP0db2EyCgnAsl9J70YQg6bCPHHxl61ktEwStzGu7eEZxXVBDCPtFDYKL2gtmIlF0lAbt5KoC9NnVCb0n9vV4qY+xdwxWAjQI3CtrOfEZTaSlsn7lbgcnjXCODnALL92/nS6ahcVRt1KfmWTjCYnP1We+9QBSz/mRD8wAAAIBT+9TbXOqhlfNP/J3X3rEzZ1HsYh7DoLGbh3krSO0vpdC0crj6vx6NTDfJhwye6axWAgQOXF8g87FFTFERgmxEHhZE/QH7YxueNllJxKPtC77uiDBfaHsGtpIhISirr1fPSRTOVeVN3aCqHMualyCCH2xaYC8yGYwvL8W+mgqG6g=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1795dbe0b42f87f01a7a9f822b8ceb40bd6420b", "sha256"=>"SSHFP 1 2 7a4b0b01598345e44894393168d2e803b2dfbae8795a844b02e7ac16a999417a"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCyhapWpsFVIKdKwjNSiqZQYx6m5w7k3+bsmaNs7YU6qg+HrmBXBR/HwckXTPDMAHPVmmDYwi80N89Gp8NPZvnYJnhZwyQPmMUfORWO0aW8SE/TQKgbpbatZOzKb7pYtLT7g7ZbaWBPJBEqU0aCKAl3AW8FX8Hfja7+GD4DBLUi+rPyGPCr+uxa//NL9PE5nO1mQGLsn0Sy1Z7ChECrFVL7mXZ4xVSfTM3v0HI/SNUuq8qCpw8ysZFmUEbRzVEwTFm5zff8IaTZPQi7e/RofgELzn4+cuXiYHYKyiZDSJVDoHnc61OGmPWVxRHzcxNZDJS4dnc1mO48wyKpaM9xZF7B"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAInFvAyGI1vy23JgBDC4/AZeO2jhNRqlX0kdL9utKPaMgrIzIiEN0aqdlSJY4uTFcYAdfYxMuIkYaMh0FM3EMDB0ZL/1k9W2dCVFYpSHgIa/zJwSEqY7sFHdXjRsD3mjOzEZwpjV+dFq8sHoIouIhMcTC4nejrDRno994JoJSyP3AAAAFQCjjYeNB9geUQHIrcE/nY90aiI9pQAAAIBDoY90WppP0db2EyCgnAsl9J70YQg6bCPHHxl61ktEwStzGu7eEZxXVBDCPtFDYKL2gtmIlF0lAbt5KoC9NnVCb0n9vV4qY+xdwxWAjQI3CtrOfEZTaSlsn7lbgcnjXCODnALL92/nS6ahcVRt1KfmWTjCYnP1We+9QBSz/mRD8wAAAIBT+9TbXOqhlfNP/J3X3rEzZ1HsYh7DoLGbh3krSO0vpdC0crj6vx6NTDfJhwye6axWAgQOXF8g87FFTFERgmxEHhZE/QH7YxueNllJxKPtC77uiDBfaHsGtpIhISirr1fPSRTOVeVN3aCqHMualyCCH2xaYC8yGYwvL8W+mgqG6g==", "sshfp_dsa"=>"SSHFP 2 1 3e0f92fe3eb7ee9737cead81e7465b5903d6ce57\nSSHFP 2 2 c67d0777eb694d679a1d24335e76dd0475ca92077ff8d02c91f26a4b9cf56b09", "sshfp_rsa"=>"SSHFP 1 1 d1795dbe0b42f87f01a7a9f822b8ceb40bd6420b\nSSHFP 1 2 7a4b0b01598345e44894393168d2e803b2dfbae8795a844b02e7ac16a999417a", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCyhapWpsFVIKdKwjNSiqZQYx6m5w7k3+bsmaNs7YU6qg+HrmBXBR/HwckXTPDMAHPVmmDYwi80N89Gp8NPZvnYJnhZwyQPmMUfORWO0aW8SE/TQKgbpbatZOzKb7pYtLT7g7ZbaWBPJBEqU0aCKAl3AW8FX8Hfja7+GD4DBLUi+rPyGPCr+uxa//NL9PE5nO1mQGLsn0Sy1Z7ChECrFVL7mXZ4xVSfTM3v0HI/SNUuq8qCpw8ysZFmUEbRzVEwTFm5zff8IaTZPQi7e/RofgELzn4+cuXiYHYKyiZDSJVDoHnc61OGmPWVxRHzcxNZDJS4dnc1mO48wyKpaM9xZF7B", "swapfree"=>"871.99 MiB", "swapfree_mb"=>871.9921875, "swapsize"=>"871.99 MiB", "swapsize_mb"=>871.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1441, "uptime"=>"0:24 hours"}, "timezone"=>"PST", "uptime"=>"0:24 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1441, "uuid"=>"6E39B0C5-08BD-4595-AC3D-576DAA677DED", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Debian-6.0.10-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Debian-6.0.10-64_spec.rb b/.onceover/spec/classes/role__node_on_Debian-6.0.10-64_spec.rb new file mode 100644 index 0000000..af3c351 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Debian-6.0.10-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Debian-6.0.10-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"8AFC52E0-2A7C-42BA-BAFA-62B8413FB7C2"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe62:fa69", "ipaddress6_eth0"=>"fe80::a00:27ff:fe62:fa69", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-5-amd64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"squeeze", "lsbdistdescription"=>"Debian GNU/Linux 6.0.10 (squeeze)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"6.0.10", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"0", "macaddress"=>"08:00:27:62:fa:69", "macaddress_eth0"=>"08:00:27:62:fa:69", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"871.99 MiB", "available_bytes"=>914350080, "capacity"=>"0%", "total"=>"871.99 MiB", "total_bytes"=>914350080, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"382.43 MiB", "available_bytes"=>401010688, "capacity"=>"23.04%", "total"=>"496.90 MiB", "total_bytes"=>521035776, "used"=>"114.46 MiB", "used_bytes"=>120025088}}, "memoryfree"=>"382.43 MiB", "memoryfree_mb"=>382.43359375, "memorysize"=>"496.90 MiB", "memorysize_mb"=>496.8984375, "mountpoints"=>{"/"=>{"available"=>"17.65 GiB", "available_bytes"=>18949697536, "capacity"=>"5.16%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "errors=remount-ro"], "size"=>"18.61 GiB", "size_bytes"=>19981529088, "used"=>"984.03 MiB", "used_bytes"=>1031831552}, "/boot"=>{"available"=>"212.24 MiB", "available_bytes"=>222552064, "capacity"=>"6.80%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"15.48 MiB", "used_bytes"=>16235520}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe62:fa69", "mac"=>"08:00:27:62:fa:69", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe62:fa69", "mac"=>"08:00:27:62:fa:69", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.0.10", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"squeeze", "description"=>"Debian GNU/Linux 6.0.10 (squeeze)", "id"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"d2763d16-5203-4625-8733-a6f2ecc94f5a"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b5661448-0339-4ba3-8593-21cc6a049d33"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"415531d6-6955-433f-921e-8f266ab56649"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"vGb2LM-M1SP-IynO-OZJV-sYKl-Pcfo-fAFbiz"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 c9683f8ef6dc226d83a014be6349f496b65d329f", "sha256"=>"SSHFP 2 2 23aa109e68ed1d1b6766259c72d5168a93df3b0818fc975727b203aa6c4eb6ad"}, "key"=>"AAAAB3NzaC1kc3MAAACBALw6MnSlMUiVwDHFe5OUWDLBt0OooRutGu9pH1L3Ir6oZRNCbeFf3qoi+WWBU0cradbi0H1vlwtApdxVwymseyn9OqzfSt8urWkZS0o87vrJ1Hrz8RJe/B0TrWqgI1lm8h3zVBYsR7OXVFlSQC4ljK/3yZXfkIWEDBn8yXAsVMv5AAAAFQDuMctG71BY6fTAWG754jypFIJ/QwAAAIEAkqkhJdtDwZKty47LzSKIPne0t4TfbY8zHRN6atEtEFuOjgSBJoeYY7ILJL8zK8G7YO6nNdY0gVJv5x/R2ac1mfn06cq7xR2I/rD+BICmRt69kyFNi9newk2C7cLG8Mi6JvIHMduU8DegYeqz0kjh8WPUZWPakY5nqbYob6NE6vMAAACBAKh42Jooiu2+P1yrHjuYmjB9Wq8CoDSUwyNslY47HcEvzCuMcEZ8sVutpP0gjvO72bvFUPDzLP4HwqzphLVbGvBCc2N9RPTgJzijnHryB/LFXWS6evePwo4LMLhUMgzPOyIyxXxhG4bTTLR2jBmQe75EDqz3ibKJgb3CKz+hf6SZ"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 8e4b010ef208a5d1ecbbef4999ddb1a20ec0b6d2", "sha256"=>"SSHFP 1 2 1819579b1d40afe00107ef9d153e916f443fbddbefdf7f77583e84f32a3503b3"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCx/7sL2SPCsd/gcIPPvJhhOwYZdZSboDWqbIyUzzothrO7aKGHf7bxRdn+zu4vWUwBMoueGB1lf3xnDbrbDMxdh5sTpKYHWGKvBdgat+sWlEH3YiRd9vkji28R0+GEWdvmRTKfUxGEoJ7/NVZ0RroCMKlWO7tsDIUPhWn2NDZ3z4V3FAv4WvaE0YF1g0+71kF263+9IJCoxx6ztWBQfdJvEdu/k9cvCIJ6IMxscZ48vAqLRali6QCKRNHUqZFOLattqKFvGHdU/WvX+xpEj2QLTD+Tuat2uImblM4wge44oS8nlhN+reO1Cjafjf6lh3cCfUWphndK3Wvv7a18l2av"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALw6MnSlMUiVwDHFe5OUWDLBt0OooRutGu9pH1L3Ir6oZRNCbeFf3qoi+WWBU0cradbi0H1vlwtApdxVwymseyn9OqzfSt8urWkZS0o87vrJ1Hrz8RJe/B0TrWqgI1lm8h3zVBYsR7OXVFlSQC4ljK/3yZXfkIWEDBn8yXAsVMv5AAAAFQDuMctG71BY6fTAWG754jypFIJ/QwAAAIEAkqkhJdtDwZKty47LzSKIPne0t4TfbY8zHRN6atEtEFuOjgSBJoeYY7ILJL8zK8G7YO6nNdY0gVJv5x/R2ac1mfn06cq7xR2I/rD+BICmRt69kyFNi9newk2C7cLG8Mi6JvIHMduU8DegYeqz0kjh8WPUZWPakY5nqbYob6NE6vMAAACBAKh42Jooiu2+P1yrHjuYmjB9Wq8CoDSUwyNslY47HcEvzCuMcEZ8sVutpP0gjvO72bvFUPDzLP4HwqzphLVbGvBCc2N9RPTgJzijnHryB/LFXWS6evePwo4LMLhUMgzPOyIyxXxhG4bTTLR2jBmQe75EDqz3ibKJgb3CKz+hf6SZ", "sshfp_dsa"=>"SSHFP 2 1 c9683f8ef6dc226d83a014be6349f496b65d329f\nSSHFP 2 2 23aa109e68ed1d1b6766259c72d5168a93df3b0818fc975727b203aa6c4eb6ad", "sshfp_rsa"=>"SSHFP 1 1 8e4b010ef208a5d1ecbbef4999ddb1a20ec0b6d2\nSSHFP 1 2 1819579b1d40afe00107ef9d153e916f443fbddbefdf7f77583e84f32a3503b3", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCx/7sL2SPCsd/gcIPPvJhhOwYZdZSboDWqbIyUzzothrO7aKGHf7bxRdn+zu4vWUwBMoueGB1lf3xnDbrbDMxdh5sTpKYHWGKvBdgat+sWlEH3YiRd9vkji28R0+GEWdvmRTKfUxGEoJ7/NVZ0RroCMKlWO7tsDIUPhWn2NDZ3z4V3FAv4WvaE0YF1g0+71kF263+9IJCoxx6ztWBQfdJvEdu/k9cvCIJ6IMxscZ48vAqLRali6QCKRNHUqZFOLattqKFvGHdU/WvX+xpEj2QLTD+Tuat2uImblM4wge44oS8nlhN+reO1Cjafjf6lh3cCfUWphndK3Wvv7a18l2av", "swapfree"=>"871.99 MiB", "swapfree_mb"=>871.9921875, "swapsize"=>"871.99 MiB", "swapsize_mb"=>871.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1211, "uptime"=>"0:20 hours"}, "timezone"=>"PST", "uptime"=>"0:20 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1211, "uuid"=>"8AFC52E0-2A7C-42BA-BAFA-62B8413FB7C2", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Debian-6.0.10-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Debian-7.8-32_spec.rb b/.onceover/spec/classes/role__node_on_Debian-7.8-32_spec.rb new file mode 100644 index 0000000..580ae21 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Debian-7.8-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Debian-7.8-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"75AFEC9A-DECD-40F4-B25F-A737EE8BA7CA"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe18:59a5", "ipaddress6_eth0"=>"fe80::a00:27ff:fe18:59a5", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.2", "kernelrelease"=>"3.2.0-4-686-pae", "kernelversion"=>"3.2.0", "load_averages"=>{"15m"=>0.03, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"wheezy", "lsbdistdescription"=>"Debian GNU/Linux 7.8 (wheezy)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"7.8", "lsbmajdistrelease"=>"7", "lsbminordistrelease"=>"8", "macaddress"=>"08:00:27:18:59:a5", "macaddress_eth0"=>"08:00:27:18:59:a5", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"872.00 MiB", "available_bytes"=>914354176, "capacity"=>"0%", "total"=>"872.00 MiB", "total_bytes"=>914354176, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"432.02 MiB", "available_bytes"=>453001216, "capacity"=>"14.00%", "total"=>"502.32 MiB", "total_bytes"=>526725120, "used"=>"70.31 MiB", "used_bytes"=>73723904}}, "memoryfree"=>"432.02 MiB", "memoryfree_mb"=>432.015625, "memorysize"=>"502.32 MiB", "memorysize_mb"=>502.32421875, "mountpoints"=>{"/"=>{"available"=>"1.52 GiB", "available_bytes"=>1633996800, "capacity"=>"41.68%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=remount-ro", "user_xattr", "acl", "barrier=1", "data=ordered"], "size"=>"2.61 GiB", "size_bytes"=>-1493307392, "used"=>"1.09 GiB", "used_bytes"=>1167663104}, "/boot"=>{"available"=>"211.24 MiB", "available_bytes"=>221499392, "capacity"=>"7.24%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw", "relatime", "errors=continue"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"16.49 MiB", "used_bytes"=>17288192}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe18:59a5", "mac"=>"08:00:27:18:59:a5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe18:59a5", "mac"=>"08:00:27:18:59:a5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.8", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"wheezy", "description"=>"Debian GNU/Linux 7.8 (wheezy)", "id"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"c87cb2c9-ffb8-48d1-bc31-024a57d3e44e"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"864df30a-fc50-4a93-8cfd-4624251c1589"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"b8ab8500-a238-4554-8d11-9c194ebba70c"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"NvdPwA-esP3-xUuv-n9OR-Ep7r-kQAr-qyUAzr"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 ffc65c9d4e1956519935d902798fc58cbafde1fa", "sha256"=>"SSHFP 2 2 3a59447b36760803f33fdda5c1f58681b271a8a5e6fb4997ee7241cb29a59906"}, "key"=>"AAAAB3NzaC1kc3MAAACBANJna2zK1ufiBINsA3RgaBhVXUFlya5rxD6A2KkeYr1yWcDECATGcsSh6KDEC4asOEtoyIogsZx/5ygefXeR+0R1XYQghrFsZWSwIdVV+jrt6IWddub3KXp8UvfWYUUXKAm0fiGXzTJ7sodap1ep/FBM0cyyaWYXvQCgiBr/T+lLAAAAFQCGGv9dGnuyKCMssoWebZ7PRd41cQAAAIEAsmFTg56Q5KwsFyYrtUR+fZlL983DI4m+/PPWI/pZ4sgvRjA7NWfr+gfJrSObH88ZAccu7edbVSfOyRVcOqCjBYU3nybG9vuelacqm4qdTnZbUWlMZJ1clJ4GlRVPO9zEhuODBleyxQW13XiwgNe9h9vOXlu/xu8aogaIyLfXGZgAAACAMe0yNEoADrHDE8rXr6nvytfibxofPnCtZj7L54OY7HuaBv1I0OqdJVjLw7SjJQ3vIiiR2pMMFVioROgVWUokdskTT/M3RvEcoNG55iYFVe8p43Z1HY4NNLgHIoPZ4C3EDDxiwCxiFK0kmhbg9boyV0Dyra/rbEAyZH6xNZYBR/c="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 5222b070970562793c4df0db8916f7828334bad4", "sha256"=>"SSHFP 3 2 920d4e5ef5dc8064271df26a5cda37211772a9133537d4520addef0e2dc0a480"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOkAfihhbn6Ht/z9rqOPlshRbi8MFhg12kUUf9PBVvKOBA3wgmHzOlcwSdhpO9olPla92uplSlntiE+bqR7eZhA="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 5bd78bebc725f3afc34cff576f09eaa052ef6c3d", "sha256"=>"SSHFP 1 2 c9e8b904a928e59d86e90e84d972b95bc3eabbfcf465ce0bb9569547ac5c2aa6"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQD4eO7mc/0jHFMbrPCrT6ktvNPzIqceRoIo6Kf/E845UlOO0eX425jMKVLqmnQCorZnN168LyyRfBoKXCmC/EEe18BlTcosCBseh/RytFcOpaUcX5etnmaqf8yBg4Hcp2zkRQx4HsHJMK5/52Dha7ZU7FvgJBMfCJULaEL9t+eRp1bOLN7GnFsMkXAaLmUqI3d6cVI8rc10ocQMu1nhzzNX4FDjoSvRH/AKGTzcIm8LBXUAR3v1ubFf+8Qc8vYF/sGcyJAJ0Bhcmg9/KH9NQMT01u0cgCOsxzBXu56CF5zeKERrbi8k6OJzz0t+rT8/7mwJOgKx4QhHt69jqt4KVeJv"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBANJna2zK1ufiBINsA3RgaBhVXUFlya5rxD6A2KkeYr1yWcDECATGcsSh6KDEC4asOEtoyIogsZx/5ygefXeR+0R1XYQghrFsZWSwIdVV+jrt6IWddub3KXp8UvfWYUUXKAm0fiGXzTJ7sodap1ep/FBM0cyyaWYXvQCgiBr/T+lLAAAAFQCGGv9dGnuyKCMssoWebZ7PRd41cQAAAIEAsmFTg56Q5KwsFyYrtUR+fZlL983DI4m+/PPWI/pZ4sgvRjA7NWfr+gfJrSObH88ZAccu7edbVSfOyRVcOqCjBYU3nybG9vuelacqm4qdTnZbUWlMZJ1clJ4GlRVPO9zEhuODBleyxQW13XiwgNe9h9vOXlu/xu8aogaIyLfXGZgAAACAMe0yNEoADrHDE8rXr6nvytfibxofPnCtZj7L54OY7HuaBv1I0OqdJVjLw7SjJQ3vIiiR2pMMFVioROgVWUokdskTT/M3RvEcoNG55iYFVe8p43Z1HY4NNLgHIoPZ4C3EDDxiwCxiFK0kmhbg9boyV0Dyra/rbEAyZH6xNZYBR/c=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOkAfihhbn6Ht/z9rqOPlshRbi8MFhg12kUUf9PBVvKOBA3wgmHzOlcwSdhpO9olPla92uplSlntiE+bqR7eZhA=", "sshfp_dsa"=>"SSHFP 2 1 ffc65c9d4e1956519935d902798fc58cbafde1fa\nSSHFP 2 2 3a59447b36760803f33fdda5c1f58681b271a8a5e6fb4997ee7241cb29a59906", "sshfp_ecdsa"=>"SSHFP 3 1 5222b070970562793c4df0db8916f7828334bad4\nSSHFP 3 2 920d4e5ef5dc8064271df26a5cda37211772a9133537d4520addef0e2dc0a480", "sshfp_rsa"=>"SSHFP 1 1 5bd78bebc725f3afc34cff576f09eaa052ef6c3d\nSSHFP 1 2 c9e8b904a928e59d86e90e84d972b95bc3eabbfcf465ce0bb9569547ac5c2aa6", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQD4eO7mc/0jHFMbrPCrT6ktvNPzIqceRoIo6Kf/E845UlOO0eX425jMKVLqmnQCorZnN168LyyRfBoKXCmC/EEe18BlTcosCBseh/RytFcOpaUcX5etnmaqf8yBg4Hcp2zkRQx4HsHJMK5/52Dha7ZU7FvgJBMfCJULaEL9t+eRp1bOLN7GnFsMkXAaLmUqI3d6cVI8rc10ocQMu1nhzzNX4FDjoSvRH/AKGTzcIm8LBXUAR3v1ubFf+8Qc8vYF/sGcyJAJ0Bhcmg9/KH9NQMT01u0cgCOsxzBXu56CF5zeKERrbi8k6OJzz0t+rT8/7mwJOgKx4QhHt69jqt4KVeJv", "swapfree"=>"872.00 MiB", "swapfree_mb"=>871.99609375, "swapsize"=>"872.00 MiB", "swapsize_mb"=>871.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>800, "uptime"=>"0:13 hours"}, "timezone"=>"PST", "uptime"=>"0:13 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>800, "uuid"=>"75AFEC9A-DECD-40F4-B25F-A737EE8BA7CA", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Debian-7.8-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Debian-7.8-64_spec.rb b/.onceover/spec/classes/role__node_on_Debian-7.8-64_spec.rb new file mode 100644 index 0000000..608398c --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Debian-7.8-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Debian-7.8-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"117385F3-E367-4C81-BEE6-78384BAAA1DB"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe83:ad56", "ipaddress6_eth0"=>"fe80::a00:27ff:fe83:ad56", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.2", "kernelrelease"=>"3.2.0-4-amd64", "kernelversion"=>"3.2.0", "load_averages"=>{"15m"=>0.01, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"wheezy", "lsbdistdescription"=>"Debian GNU/Linux 7.8 (wheezy)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"7.8", "lsbmajdistrelease"=>"7", "lsbminordistrelease"=>"8", "macaddress"=>"08:00:27:83:ad:56", "macaddress_eth0"=>"08:00:27:83:ad:56", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"872.00 MiB", "available_bytes"=>914354176, "capacity"=>"0%", "total"=>"872.00 MiB", "total_bytes"=>914354176, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"382.02 MiB", "available_bytes"=>400576512, "capacity"=>"23.13%", "total"=>"496.96 MiB", "total_bytes"=>521101312, "used"=>"114.94 MiB", "used_bytes"=>120524800}}, "memoryfree"=>"382.02 MiB", "memoryfree_mb"=>382.01953125, "memorysize"=>"496.96 MiB", "memorysize_mb"=>496.9609375, "mountpoints"=>{"/"=>{"available"=>"17.49 GiB", "available_bytes"=>18781380608, "capacity"=>"6.01%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=remount-ro", "user_xattr", "acl", "barrier=1", "data=ordered"], "size"=>"18.61 GiB", "size_bytes"=>19981529088, "used"=>"1.12 GiB", "used_bytes"=>1200148480}, "/boot"=>{"available"=>"210.36 MiB", "available_bytes"=>220575744, "capacity"=>"7.63%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw", "relatime", "errors=continue"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"17.37 MiB", "used_bytes"=>18211840}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe83:ad56", "mac"=>"08:00:27:83:ad:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe83:ad56", "mac"=>"08:00:27:83:ad:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.8", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"wheezy", "description"=>"Debian GNU/Linux 7.8 (wheezy)", "id"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"7b853135-fb91-48ff-a25c-8d34ada8d549"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"486756ce-bdd1-45f4-864d-e4b6fce59b9d"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"8aa50802-2811-43ec-9686-a30f6a1c3ade"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"eGBBBU-DZw3-wy0f-OMxw-Sf5d-jDyA-ctqcpx"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 36d929686c60f981438c3e708f76eaa8aea811ac", "sha256"=>"SSHFP 2 2 f509f25d24c474bf0f2b0fae387b1c798174632af84f7e7b064ead1d1e23b144"}, "key"=>"AAAAB3NzaC1kc3MAAACBAKo52UJRnjkvuOvraymZ2bDiTUEUexIZ50eR2hx47JpOCUW0OMFH443axvl4TeCpPwqTbf0MH3RdkdSqpGOSAAcBmDfOyI5o9dgzWwSIiplNTxO29tUB9YinkduLEe4pXL5FwZ20owYnvcbrlc8t+LNl8Vku3zWWMrng6mf620MVAAAAFQC5KtOLXLxKD3hk3ATXQbnli4wMRwAAAIAy3bLl4X5yk+WYssTadam8ScUdvzVBCXsrfK9o8HNHfdHCAQqYRYYlC7muDATZxhyw72IhZsFzw/Wswr+5K35hElvrH8j3pFXafe+5dp18CP3V+vXTAzVBiiOnA+AG1tvudBRsrh7bhD9oq1LnXqijLRiI9nD0Faem4uGcT7/jqgAAAIBudV2Q2VYl/N+pRv4/JTgsNLtNz3X12dMjeNXwbpM9LJZUVZDq/KsT1vdDTYOy42g/v14ucRU50QyyAxx78prRgyTIfyKFDEiff9i5uok0c/YN0t2w9ayYkYl6xBWVj+q2SiUM6WdqJdb7sltOLGwsjkroqAV0xdBpbiN6ZWvzKA=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 263f3632f018d8535aaf8374ff4e8bdfc2eb118a", "sha256"=>"SSHFP 3 2 f14b4e61f1569a8181800a082ce91452ce352122bffe4e39314888b280f598a6"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEspGa8fuYvtfy2pnBhKV/d/xfmUmvAVUhCJLOlwRURmszRQBW/+GwvhPIT1avptddqTUF2HeA1XKLkbabnxoHI="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3f543127df57aceb9be2259918ff9115e507be37", "sha256"=>"SSHFP 1 2 90114d6c22d6a759b85f4df1316c567828da41411ae36e8eb09e480bf3cd8ac3"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC8R/CbG0zr75BfoeoCv0GuLcxEIf8Yp5+s2OJKrYRqRmfD9gM6f4J3lVGB/+i5WRiQqJ61Mogstd4CSFmIUhq+opARvDQGxIz1mgV4aHAZDIAGYZ9b1nwS//JWb7nW5mMQqOW3fq59XWxssWjkW6kjJqNSvJtH24kDayxg3jB6Xt2jChz6NLq0t+WmRf24EKCymfnTOdXc4a2sSusAwSb1yl6iHnLpkd5efsUm/ZNCOzHbUtUsnAfDW4MNCUTzq8M/9SpCy2CRid4F29bD1jnJEvyPRrIRAwfPdJTuNZ06pzOWexvS0PcOY6tb0XbdFE78iDdUrVHqTGJiVrFHLoAx"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAKo52UJRnjkvuOvraymZ2bDiTUEUexIZ50eR2hx47JpOCUW0OMFH443axvl4TeCpPwqTbf0MH3RdkdSqpGOSAAcBmDfOyI5o9dgzWwSIiplNTxO29tUB9YinkduLEe4pXL5FwZ20owYnvcbrlc8t+LNl8Vku3zWWMrng6mf620MVAAAAFQC5KtOLXLxKD3hk3ATXQbnli4wMRwAAAIAy3bLl4X5yk+WYssTadam8ScUdvzVBCXsrfK9o8HNHfdHCAQqYRYYlC7muDATZxhyw72IhZsFzw/Wswr+5K35hElvrH8j3pFXafe+5dp18CP3V+vXTAzVBiiOnA+AG1tvudBRsrh7bhD9oq1LnXqijLRiI9nD0Faem4uGcT7/jqgAAAIBudV2Q2VYl/N+pRv4/JTgsNLtNz3X12dMjeNXwbpM9LJZUVZDq/KsT1vdDTYOy42g/v14ucRU50QyyAxx78prRgyTIfyKFDEiff9i5uok0c/YN0t2w9ayYkYl6xBWVj+q2SiUM6WdqJdb7sltOLGwsjkroqAV0xdBpbiN6ZWvzKA==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEspGa8fuYvtfy2pnBhKV/d/xfmUmvAVUhCJLOlwRURmszRQBW/+GwvhPIT1avptddqTUF2HeA1XKLkbabnxoHI=", "sshfp_dsa"=>"SSHFP 2 1 36d929686c60f981438c3e708f76eaa8aea811ac\nSSHFP 2 2 f509f25d24c474bf0f2b0fae387b1c798174632af84f7e7b064ead1d1e23b144", "sshfp_ecdsa"=>"SSHFP 3 1 263f3632f018d8535aaf8374ff4e8bdfc2eb118a\nSSHFP 3 2 f14b4e61f1569a8181800a082ce91452ce352122bffe4e39314888b280f598a6", "sshfp_rsa"=>"SSHFP 1 1 3f543127df57aceb9be2259918ff9115e507be37\nSSHFP 1 2 90114d6c22d6a759b85f4df1316c567828da41411ae36e8eb09e480bf3cd8ac3", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC8R/CbG0zr75BfoeoCv0GuLcxEIf8Yp5+s2OJKrYRqRmfD9gM6f4J3lVGB/+i5WRiQqJ61Mogstd4CSFmIUhq+opARvDQGxIz1mgV4aHAZDIAGYZ9b1nwS//JWb7nW5mMQqOW3fq59XWxssWjkW6kjJqNSvJtH24kDayxg3jB6Xt2jChz6NLq0t+WmRf24EKCymfnTOdXc4a2sSusAwSb1yl6iHnLpkd5efsUm/ZNCOzHbUtUsnAfDW4MNCUTzq8M/9SpCy2CRid4F29bD1jnJEvyPRrIRAwfPdJTuNZ06pzOWexvS0PcOY6tb0XbdFE78iDdUrVHqTGJiVrFHLoAx", "swapfree"=>"872.00 MiB", "swapfree_mb"=>871.99609375, "swapsize"=>"872.00 MiB", "swapsize_mb"=>871.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>650, "uptime"=>"0:10 hours"}, "timezone"=>"PST", "uptime"=>"0:10 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>650, "uuid"=>"117385F3-E367-4C81-BEE6-78384BAAA1DB", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Debian-7.8-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_RHEL-6.7_spec.rb b/.onceover/spec/classes/role__node_on_RHEL-6.7_spec.rb new file mode 100644 index 0000000..8363b28 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_RHEL-6.7_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set RHEL-6.7" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"06/02/2017", "bios_vendor"=>"American Megatrends Inc.", "bios_version"=>"090007", "blockdevice_sda_model"=>"Virtual Disk", "blockdevice_sda_size"=>34359738368, "blockdevice_sda_vendor"=>"Msft", "blockdevice_sdb_model"=>"Virtual Disk", "blockdevice_sdb_size"=>53687091200, "blockdevice_sdb_vendor"=>"Msft", "blockdevice_sr0_model"=>"Virtual CD/ROM", "blockdevice_sr0_size"=>643072, "blockdevice_sr0_vendor"=>"Msft", "blockdevices"=>"sr0,sdb,sda", "boardmanufacturer"=>"Microsoft Corporation", "boardproductname"=>"Virtual Machine", "boardserialnumber"=>"0000-0010-9727-3914-2228-1494-64", "chassisassettag"=>"7783-7084-3265-9085-8269-3286-77", "chassistype"=>"Desktop", "dhcp_servers"=>{"eth0"=>"168.63.129.16", "system"=>"168.63.129.16"}, "disks"=>{"sda"=>{"model"=>"Virtual Disk", "size"=>"32.00 GiB", "size_bytes"=>34359738368, "vendor"=>"Msft"}, "sdb"=>{"model"=>"Virtual Disk", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"Msft"}, "sr0"=>{"model"=>"Virtual CD/ROM", "size"=>"628.00 KiB", "size_bytes"=>643072, "vendor"=>"Msft"}}, "dmi"=>{"bios"=>{"release_date"=>"06/02/2017", "vendor"=>"American Megatrends Inc.", "version"=>"090007"}, "board"=>{"manufacturer"=>"Microsoft Corporation", "product"=>"Virtual Machine", "serial_number"=>"0000-0010-9727-3914-2228-1494-64"}, "chassis"=>{"asset_tag"=>"7783-7084-3265-9085-8269-3286-77", "type"=>"Desktop"}, "manufacturer"=>"Microsoft Corporation", "product"=>{"name"=>"Virtual Machine", "serial_number"=>"0000-0016-4348-2410-5386-3288-39", "uuid"=>"723914E4-94CB-0743-9847-001D218884D8"}}, "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "facterversion"=>"3.12.4", "filesystems"=>"ext4,iso9660,udf", "fips_enabled"=>false, "fqdn"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"rhel6box", "hypervisors"=>{"hyperv"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.0.5", "ipaddress6"=>"fe80::20d:3aff:fe96:ed47", "ipaddress6_eth0"=>"fe80::20d:3aff:fe96:ed47", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.0.5", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-573.45.1.el6.x86_64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.06, "1m"=>0.15, "5m"=>0.14}, "lsbdistcodename"=>"Santiago", "lsbdistdescription"=>"Red Hat Enterprise Linux Server release 6.7 (Santiago)", "lsbdistid"=>"RedHatEnterpriseServer", "lsbdistrelease"=>"6.7", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"7", "lsbrelease"=>":base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch", "macaddress"=>"00:0d:3a:96:ed:47", "macaddress_eth0"=>"00:0d:3a:96:ed:47", "manufacturer"=>"Microsoft Corporation", "memory"=>{"swap"=>{"available"=>"2.00 GiB", "available_bytes"=>2147479552, "capacity"=>"0%", "total"=>"2.00 GiB", "total_bytes"=>2147479552, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"7.55 GiB", "available_bytes"=>8103010304, "capacity"=>"3.24%", "total"=>"7.80 GiB", "total_bytes"=>8374747136, "used"=>"259.15 MiB", "used_bytes"=>271736832}}, "memoryfree"=>"7.55 GiB", "memoryfree_mb"=>7727.6328125, "memorysize"=>"7.80 GiB", "memorysize_mb"=>7986.78125, "mountpoints"=>{"/"=>{"available"=>"27.90 GiB", "available_bytes"=>29956210688, "capacity"=>"9.68%", "device"=>"/dev/sda2", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"30.89 GiB", "size_bytes"=>33168420864, "used"=>"2.99 GiB", "used_bytes"=>3212210176}, "/boot"=>{"available"=>"402.87 MiB", "available_bytes"=>422435840, "capacity"=>"15.40%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"73.36 MiB", "used_bytes"=>76919808}, "/dev/shm"=>{"available"=>"3.90 GiB", "available_bytes"=>4187373568, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "rootcontext=\"system_u:object_r:tmpfs_t:s0\""], "size"=>"3.90 GiB", "size_bytes"=>4187373568, "used"=>"0 bytes", "used_bytes"=>0}, "/mnt/resource"=>{"available"=>"47.04 GiB", "available_bytes"=>50506543104, "capacity"=>"4.18%", "device"=>"/dev/sdb1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"49.09 GiB", "size_bytes"=>52708372480, "used"=>"2.05 GiB", "used_bytes"=>2201829376}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"168.63.129.16", "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "fqdn"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "hostname"=>"rhel6box", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.0.5", "netmask"=>"255.255.255.0", "network"=>"10.0.0.0"}], "bindings6"=>[{"address"=>"fe80::20d:3aff:fe96:ed47", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"168.63.129.16", "ip"=>"10.0.0.5", "ip6"=>"fe80::20d:3aff:fe96:ed47", "mac"=>"00:0d:3a:96:ed:47", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.0.5", "ip6"=>"fe80::20d:3aff:fe96:ed47", "mac"=>"00:0d:3a:96:ed:47", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"RedHat", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.7", "os"=>{"architecture"=>"x86_64", "distro"=>{"codename"=>"Santiago", "description"=>"Red Hat Enterprise Linux Server release 6.7 (Santiago)", "id"=>"RedHatEnterpriseServer", "release"=>{"full"=>"6.7", "major"=>"6", "minor"=>"7"}, "specification"=>":base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"RedHat", "release"=>{"full"=>"6.7", "major"=>"6", "minor"=>"7"}, "selinux"=>{"config_mode"=>"enforcing", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>"24"}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"ce2ad98e-bb9f-4603-abce-3db7fd857a6c"}, "/dev/sda2"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"31.51 GiB", "size_bytes"=>33834401792, "uuid"=>"be4cc18d-b110-4914-a6f9-52dc0dc66f68"}, "/dev/sdb1"=>{"filesystem"=>"ext4", "mount"=>"/mnt/resource", "size"=>"50.00 GiB", "size_bytes"=>53684994048, "uuid"=>"aafc7ffe-f0b2-4872-8174-a05f24f6c3d4"}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processor1"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz"], "physicalcount"=>1}, "productname"=>"Virtual Machine", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>true, "selinux_config_mode"=>"enforcing", "selinux_current_mode"=>"enforcing", "selinux_enforced"=>true, "selinux_policyversion"=>"24", "serialnumber"=>"0000-0016-4348-2410-5386-3288-39", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 2e57bf0a973182ca91a3a9da9df2d332e55624ce", "sha256"=>"SSHFP 2 2 e2bbc2a273c58f32c9680300045705133d3efc571bda04798fc67b74463126cd"}, "key"=>"AAAAB3NzaC1kc3MAAACBAL//vXVYQWUZ0FmIEo76fECXpnTXBM5k9XpvJ/hHo+C9AAhkDz8OIPKW/mWjJWkux4nGASNKeHLaya+3Y9vtNZ/MdGw4ivJOR4rCCOfcPzuo3PbBsRE2gKaqc53F6/SwLufGPW2WF8deD6vgTs/OfklbK1evvPBSFAEYrGXlGyJPAAAAFQDY6orVttfPBu50B7OUA5k9ObNLaQAAAIBwX43NbThII85Bv6et0FdeQftDwoLNCTjBI0+DFNqxTVH/LO10fwqcdOMI1jAmmUSe0Dt+PpWQ1ZosK1UKN+hq3jWc84vxyL7l4KYigrvZJoKWvljazNN2unetwLUiPE4X2KL/CmTnXv/N9SeWsSnr86thNVRioQx+znoy8WZHOAAAAIEAkNIj1FhjzCMK4/f2Wg6tJHsW8wRwcGEzAymIj++aBYGPy5BI5Fa6kOcMEyJ+nl+8U3Mps+mJY5EYE/FvsinOrSJzFqowofABd7NgtoRLTGQyohBHP41+RPqXdPGDzPHHvOnuFP/vSKe+sgtJ6j6OqpddLPVybv/7EbylU9n1OpA=", "type"=>"ssh-dss"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3c9465989548635bc20a034f98be3dd917074a7d", "sha256"=>"SSHFP 1 2 22cec87904c8057c2fa6b92e252b95496b678d042fe19d3f58332d67755bbb39"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAuHC1qI3c48QrKuSLHo54im7OIGQyFL/KwoP4jig+LbIdduwmGMlXejZr+E3yb/RKvwQJGkGJ8HCLf8hyz0AmQf2690rXD7M3Ibq8Q3OrpteC46N3JbvnAFockJPLkMt3g/4sWTTmQbMStBAsfhaergAhXHp8x/xmqYnXtYWbKLyY1aFynWiyXx0omJLd3n0zCnDpEDTRlwn/LAwotK/b/lZ58RXJhafA5AbquKYANtg3png+FYX2MAWj75NXwY4h5dQGtMa8dWqWyZYE4Z9bzWFx4A6YAQPwyheKs4GWCU7dCDuiE4z6oZ3BMbfnfO4oX7bnmDtFRoE2GUElBi46Bw==", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAL//vXVYQWUZ0FmIEo76fECXpnTXBM5k9XpvJ/hHo+C9AAhkDz8OIPKW/mWjJWkux4nGASNKeHLaya+3Y9vtNZ/MdGw4ivJOR4rCCOfcPzuo3PbBsRE2gKaqc53F6/SwLufGPW2WF8deD6vgTs/OfklbK1evvPBSFAEYrGXlGyJPAAAAFQDY6orVttfPBu50B7OUA5k9ObNLaQAAAIBwX43NbThII85Bv6et0FdeQftDwoLNCTjBI0+DFNqxTVH/LO10fwqcdOMI1jAmmUSe0Dt+PpWQ1ZosK1UKN+hq3jWc84vxyL7l4KYigrvZJoKWvljazNN2unetwLUiPE4X2KL/CmTnXv/N9SeWsSnr86thNVRioQx+znoy8WZHOAAAAIEAkNIj1FhjzCMK4/f2Wg6tJHsW8wRwcGEzAymIj++aBYGPy5BI5Fa6kOcMEyJ+nl+8U3Mps+mJY5EYE/FvsinOrSJzFqowofABd7NgtoRLTGQyohBHP41+RPqXdPGDzPHHvOnuFP/vSKe+sgtJ6j6OqpddLPVybv/7EbylU9n1OpA=", "sshfp_dsa"=>"SSHFP 2 1 2e57bf0a973182ca91a3a9da9df2d332e55624ce\nSSHFP 2 2 e2bbc2a273c58f32c9680300045705133d3efc571bda04798fc67b74463126cd", "sshfp_rsa"=>"SSHFP 1 1 3c9465989548635bc20a034f98be3dd917074a7d\nSSHFP 1 2 22cec87904c8057c2fa6b92e252b95496b678d042fe19d3f58332d67755bbb39", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAuHC1qI3c48QrKuSLHo54im7OIGQyFL/KwoP4jig+LbIdduwmGMlXejZr+E3yb/RKvwQJGkGJ8HCLf8hyz0AmQf2690rXD7M3Ibq8Q3OrpteC46N3JbvnAFockJPLkMt3g/4sWTTmQbMStBAsfhaergAhXHp8x/xmqYnXtYWbKLyY1aFynWiyXx0omJLd3n0zCnDpEDTRlwn/LAwotK/b/lZ58RXJhafA5AbquKYANtg3png+FYX2MAWj75NXwY4h5dQGtMa8dWqWyZYE4Z9bzWFx4A6YAQPwyheKs4GWCU7dCDuiE4z6oZ3BMbfnfO4oX7bnmDtFRoE2GUElBi46Bw==", "swapfree"=>"2.00 GiB", "swapfree_mb"=>2047.99609375, "swapsize"=>"2.00 GiB", "swapsize_mb"=>2047.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>239, "uptime"=>"0:03 hours"}, "timezone"=>"EDT", "uptime"=>"0:03 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>239, "uuid"=>"723914E4-94CB-0743-9847-001D218884D8", "virtual"=>"hyperv", "clientcert"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'RHEL-6.7' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_RHEL-7.4_spec.rb b/.onceover/spec/classes/role__node_on_RHEL-7.4_spec.rb new file mode 100644 index 0000000..b1541c5 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_RHEL-7.4_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set RHEL-7.4" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"06/02/2017", "bios_vendor"=>"American Megatrends Inc.", "bios_version"=>"090007", "blockdevice_fd0_size"=>4096, "blockdevice_sda_model"=>"Virtual Disk", "blockdevice_sda_size"=>34359738368, "blockdevice_sda_vendor"=>"Msft", "blockdevice_sdb_model"=>"Virtual Disk", "blockdevice_sdb_size"=>53687091200, "blockdevice_sdb_vendor"=>"Msft", "blockdevice_sr0_model"=>"Virtual CD/ROM", "blockdevice_sr0_size"=>643072, "blockdevice_sr0_vendor"=>"Msft", "blockdevices"=>"fd0,sda,sdb,sr0", "boardmanufacturer"=>"Microsoft Corporation", "boardproductname"=>"Virtual Machine", "boardserialnumber"=>"0000-0010-6006-7746-5828-7871-43", "chassisassettag"=>"7783-7084-3265-9085-8269-3286-77", "chassistype"=>"Desktop", "dhcp_servers"=>{"eth0"=>"168.63.129.16", "system"=>"168.63.129.16"}, "disks"=>{"fd0"=>{"size"=>"4.00 KiB", "size_bytes"=>4096}, "sda"=>{"model"=>"Virtual Disk", "size"=>"32.00 GiB", "size_bytes"=>34359738368, "vendor"=>"Msft"}, "sdb"=>{"model"=>"Virtual Disk", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"Msft"}, "sr0"=>{"model"=>"Virtual CD/ROM", "size"=>"628.00 KiB", "size_bytes"=>643072, "vendor"=>"Msft"}}, "dmi"=>{"bios"=>{"release_date"=>"06/02/2017", "vendor"=>"American Megatrends Inc.", "version"=>"090007"}, "board"=>{"manufacturer"=>"Microsoft Corporation", "product"=>"Virtual Machine", "serial_number"=>"0000-0010-6006-7746-5828-7871-43"}, "chassis"=>{"asset_tag"=>"7783-7084-3265-9085-8269-3286-77", "type"=>"Desktop"}, "manufacturer"=>"Microsoft Corporation", "product"=>{"name"=>"Virtual Machine", "serial_number"=>"0000-0017-8302-7891-2115-8198-39", "uuid"=>"33E071F7-CDA2-3F45-931D-2BFD893683C7"}}, "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "facterversion"=>"3.12.4", "filesystems"=>"ext2,ext3,ext4,udf,xfs", "fips_enabled"=>false, "fqdn"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"rhel7test", "hypervisors"=>{"hyperv"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.0.6", "ipaddress6"=>"fe80::20d:3aff:fe90:5780", "ipaddress6_eth0"=>"fe80::20d:3aff:fe90:5780", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.0.6", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.10", "kernelrelease"=>"3.10.0-693.46.1.el7.x86_64", "kernelversion"=>"3.10.0", "load_averages"=>{"15m"=>0.08, "1m"=>0.32, "5m"=>0.19}, "macaddress"=>"00:0d:3a:90:57:80", "macaddress_eth0"=>"00:0d:3a:90:57:80", "manufacturer"=>"Microsoft Corporation", "memory"=>{"swap"=>{"available"=>"2.00 GiB", "available_bytes"=>2147479552, "capacity"=>"0%", "total"=>"2.00 GiB", "total_bytes"=>2147479552, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"7.42 GiB", "available_bytes"=>7963906048, "capacity"=>"4.67%", "total"=>"7.78 GiB", "total_bytes"=>8353742848, "used"=>"371.78 MiB", "used_bytes"=>389836800}}, "memoryfree"=>"7.42 GiB", "memoryfree_mb"=>7594.97265625, "memorysize"=>"7.78 GiB", "memorysize_mb"=>7966.75, "mountpoints"=>{"/"=>{"available"=>"29.95 GiB", "available_bytes"=>32156790784, "capacity"=>"4.91%", "device"=>"/dev/sda2", "filesystem"=>"xfs", "options"=>["rw", "seclabel", "relatime", "attr2", "inode64", "noquota"], "size"=>"31.50 GiB", "size_bytes"=>33817882624, "used"=>"1.55 GiB", "used_bytes"=>1661091840}, "/boot"=>{"available"=>"393.75 MiB", "available_bytes"=>412880896, "capacity"=>"20.72%", "device"=>"/dev/sda1", "filesystem"=>"xfs", "options"=>["rw", "seclabel", "relatime", "attr2", "inode64", "noquota"], "size"=>"496.66 MiB", "size_bytes"=>520785920, "used"=>"102.91 MiB", "used_bytes"=>107905024}, "/dev/shm"=>{"available"=>"3.89 GiB", "available_bytes"=>4176871424, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"0 bytes", "used_bytes"=>0}, "/mnt/resource"=>{"available"=>"47.04 GiB", "available_bytes"=>50506170368, "capacity"=>"4.18%", "device"=>"/dev/sdb1", "filesystem"=>"ext4", "options"=>["rw", "seclabel", "relatime", "data=ordered"], "size"=>"49.09 GiB", "size_bytes"=>52708212736, "used"=>"2.05 GiB", "used_bytes"=>2202042368}, "/run"=>{"available"=>"3.88 GiB", "available_bytes"=>4168146944, "capacity"=>"0.21%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev", "mode=755"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"8.32 MiB", "used_bytes"=>8724480}, "/run/user/1000"=>{"available"=>"796.68 MiB", "available_bytes"=>835375104, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev", "relatime", "size=815796k", "mode=700", "uid=1000", "gid=1000"], "size"=>"796.68 MiB", "size_bytes"=>835375104, "used"=>"0 bytes", "used_bytes"=>0}, "/sys/fs/cgroup"=>{"available"=>"3.89 GiB", "available_bytes"=>4176871424, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["ro", "seclabel", "nosuid", "nodev", "noexec", "mode=755"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"168.63.129.16", "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "fqdn"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "hostname"=>"rhel7test", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.0.6", "netmask"=>"255.255.255.0", "network"=>"10.0.0.0"}], "bindings6"=>[{"address"=>"fe80::20d:3aff:fe90:5780", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"168.63.129.16", "ip"=>"10.0.0.6", "ip6"=>"fe80::20d:3aff:fe90:5780", "mac"=>"00:0d:3a:90:57:80", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.0.6", "ip6"=>"fe80::20d:3aff:fe90:5780", "mac"=>"00:0d:3a:90:57:80", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"RedHat", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.4", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"RedHat", "release"=>{"full"=>"7.4", "major"=>"7", "minor"=>"4"}, "selinux"=>{"config_mode"=>"enforcing", "config_policy"=>"targeted", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>"28"}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"xfs", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"b3f65ad5-0571-4ae4-937a-13ef2fda43e3"}, "/dev/sda2"=>{"filesystem"=>"xfs", "mount"=>"/", "size"=>"31.51 GiB", "size_bytes"=>33834401792, "uuid"=>"e9643aa4-b339-43c4-afc5-fcac22af1584"}, "/dev/sdb1"=>{"filesystem"=>"ext4", "mount"=>"/mnt/resource", "size"=>"50.00 GiB", "size_bytes"=>53684994048, "uuid"=>"07908b37-1661-4130-9d5a-e1fdb0a4bdb2"}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processor1"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz"], "physicalcount"=>1}, "productname"=>"Virtual Machine", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>true, "selinux_config_mode"=>"enforcing", "selinux_config_policy"=>"targeted", "selinux_current_mode"=>"enforcing", "selinux_enforced"=>true, "selinux_policyversion"=>"28", "serialnumber"=>"0000-0017-8302-7891-2115-8198-39", "ssh"=>{"ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 8b4b534a70cc57bfbebb88a6d980c397fa9dddf7", "sha256"=>"SSHFP 3 2 ab2e72961bc6515482c34e7c8358f929026fc8af979d5a9fa16bd9a25bf4bcb2"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMYggL8slLxRmDxaMceOJ4c8pVKIVA4uUZ4b4jPo7+s8xUHEZkngmqSfHGJpJ4uaDSwO4rNOYVAyCZVK4sDJBuU=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 559ecc22a9b45200bd56dd86455250e203668929", "sha256"=>"SSHFP 4 2 d005f680bbb24dc3c670c16d4cc87a59a871c4bed2763a17141b03d10d480282"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAINswqLjeLueVwG3UgsjhTNQGUg2Y7zayfIXJd783I44K", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 ec0afe862095855d6ca6174cceec173e241afe6a", "sha256"=>"SSHFP 1 2 af54fb6de7ea67ba7e8b93f99af27d7984dc02224aee7de886d269797ae64b11"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDHfGHvDLYXMARhNOK21bV8ZWnwOSxtAcdenfMP/wVlLshAPtqXMzXiDeaFJKfXrKMuiP3aWEbqtERPQnmu+AGfvOekwM6YoHIHCszhnP4ASSpITEuY3ZgVM6qQLgdClBMSdbEoHQ2f6Lem3Uy/7fekA1ofvofp6BtqO5s/Sk3zQhYhDS/TfSw2wlB6J/VrmOimnqhoMq6JLDFJtbYtBFFPqlpf5CZfzOXwAGBnoAuSRO7rtRzXE7caAHMRAdFWlGX1S5zzCJueUyQm3cVvMfqyjbGWJmxDbtIUaDpE+63jLwMidaSu1ZF0Q3mMRvPP0x/g8EZ+EnATl5rPYvVJqcq1", "type"=>"ssh-rsa"}}, "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMYggL8slLxRmDxaMceOJ4c8pVKIVA4uUZ4b4jPo7+s8xUHEZkngmqSfHGJpJ4uaDSwO4rNOYVAyCZVK4sDJBuU=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAINswqLjeLueVwG3UgsjhTNQGUg2Y7zayfIXJd783I44K", "sshfp_ecdsa"=>"SSHFP 3 1 8b4b534a70cc57bfbebb88a6d980c397fa9dddf7\nSSHFP 3 2 ab2e72961bc6515482c34e7c8358f929026fc8af979d5a9fa16bd9a25bf4bcb2", "sshfp_ed25519"=>"SSHFP 4 1 559ecc22a9b45200bd56dd86455250e203668929\nSSHFP 4 2 d005f680bbb24dc3c670c16d4cc87a59a871c4bed2763a17141b03d10d480282", "sshfp_rsa"=>"SSHFP 1 1 ec0afe862095855d6ca6174cceec173e241afe6a\nSSHFP 1 2 af54fb6de7ea67ba7e8b93f99af27d7984dc02224aee7de886d269797ae64b11", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDHfGHvDLYXMARhNOK21bV8ZWnwOSxtAcdenfMP/wVlLshAPtqXMzXiDeaFJKfXrKMuiP3aWEbqtERPQnmu+AGfvOekwM6YoHIHCszhnP4ASSpITEuY3ZgVM6qQLgdClBMSdbEoHQ2f6Lem3Uy/7fekA1ofvofp6BtqO5s/Sk3zQhYhDS/TfSw2wlB6J/VrmOimnqhoMq6JLDFJtbYtBFFPqlpf5CZfzOXwAGBnoAuSRO7rtRzXE7caAHMRAdFWlGX1S5zzCJueUyQm3cVvMfqyjbGWJmxDbtIUaDpE+63jLwMidaSu1ZF0Q3mMRvPP0x/g8EZ+EnATl5rPYvVJqcq1", "swapfree"=>"2.00 GiB", "swapfree_mb"=>2047.99609375, "swapsize"=>"2.00 GiB", "swapsize_mb"=>2047.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>215, "uptime"=>"0:03 hours"}, "timezone"=>"UTC", "uptime"=>"0:03 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>215, "uuid"=>"33E071F7-CDA2-3F45-931D-2BFD893683C7", "virtual"=>"hyperv", "clientcert"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'RHEL-7.4' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_SLES-11.3-64_spec.rb b/.onceover/spec/classes/role__node_on_SLES-11.3-64_spec.rb new file mode 100644 index 0000000..dca7a80 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_SLES-11.3-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set SLES-11.3-64" do + node_facts = {"aio_agent_version"=>"1.8.3", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>53687091200, "blockdevice_sda_vendor"=>"VBOX", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"8B82075A-B071-4035-A96A-3B5D08F6841D"}}, "domain"=>"lan.asio", "facterversion"=>"3.5.1", "filesystems"=>"ext3,iso9660,squashfs", "fqdn"=>"sles11-sp3.lan.asio", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"sles11-sp3", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::216:3eff:fe48:617f", "ipaddress6_eth0"=>"fe80::216:3eff:fe48:617f", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.0", "kernelrelease"=>"3.0.101-0.47.67-default", "kernelversion"=>"3.0.101", "load_averages"=>{"15m"=>0.06, "1m"=>0.18, "5m"=>0.08}, "macaddress"=>"00:16:3e:48:61:7f", "macaddress_eth0"=>"00:16:3e:48:61:7f", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"354.30 MiB", "available_bytes"=>371511296, "capacity"=>"27.78%", "total"=>"490.61 MiB", "total_bytes"=>514437120, "used"=>"136.30 MiB", "used_bytes"=>142925824}}, "memoryfree"=>"354.30 MiB", "memoryfree_mb"=>354.30078125, "memorysize"=>"490.61 MiB", "memorysize_mb"=>490.60546875, "mountpoints"=>{"/"=>{"available"=>"47.14 GiB", "available_bytes"=>50611761152, "capacity"=>"4.22%", "device"=>"/dev/sda1", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=continue", "barrier=1", "data=ordered"], "size"=>"49.21 GiB", "size_bytes"=>52843638784, "used"=>"2.08 GiB", "used_bytes"=>2231877632}, "/dev/shm"=>{"available"=>"245.29 MiB", "available_bytes"=>257208320, "capacity"=>"0.00%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "relatime"], "size"=>"245.30 MiB", "size_bytes"=>257216512, "used"=>"8.00 KiB", "used_bytes"=>8192}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"domain"=>"lan.asio", "fqdn"=>"sles11-sp3.lan.asio", "hostname"=>"sles11-sp3", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::216:3eff:fe48:617f", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe48:617f", "mac"=>"00:16:3e:48:61:7f", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, {"address"=>"127.0.0.2", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe48:617f", "mac"=>"00:16:3e:48:61:7f", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"SLES", "operatingsystemmajrelease"=>"11", "operatingsystemrelease"=>"11.3", "os"=>{"architecture"=>"x86_64", "family"=>"Suse", "hardware"=>"x86_64", "name"=>"SLES", "release"=>{"full"=>"11.3", "major"=>"11", "minor"=>"3"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Suse", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"50.00 GiB", "size_bytes"=>53686042624, "uuid"=>"586adc21-9cfc-4e12-93e6-c711ab2400b1"}}, "path"=>"/usr/bin:/bin:/usr/sbin:/sbin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.8.2", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 2f39a5ddd25d30676bceb1b99faec8330cb80cd5", "sha256"=>"SSHFP 2 2 d17b59f49908df6bd337918a31a4e38f8489a0c46ada06963cb67ab3a4bdfb11"}, "key"=>"AAAAB3NzaC1kc3MAAACBALvEn/P3Kfg/yFWplaqFsrUOk/Kh9aOZTNNCoJX7lsSQkWpLDkjz03IZZ1pUsykZp6HUhzfW1ZCOKme5503MAsflB78fjgsfGaVL2IcWOvPhurC8SXGivanS5+rL3CFqja/+nMJBPFg8oEyjJei6RJZCQtlEFSEJziKMVI368fxLAAAAFQCC8c+IrxPZc4zVe5EF6qsPnZtMiwAAAIEApfv1xS6ECWq1f8J43BXFdiRszBXQecgdPtf6STvabnYdLKScAPyu3JdosrPswlZWEXLz+srkqqai6xISeSxLKrlY570GNVPmgnBFmoz+iJRi6kakroNe5xjGT45aTyZ16cyg9LFHFLL3KadlzZXu+9XwS9kv09SFlvH6+9+XNGMAAACBALLbpqIZKISARdnFviWOWzFbvYzZHiO3ddAYnXVCGfW1ywmGDqc5kUNTZsBFNYVA56YcaHR/kwFHjOij3SJnvy6VxSG9sSZ4wex/FGBmTUmklelZQsywITGps3MWxiyO3TGfIEXJlqgyVxXZhXnIshN//NCCPbq2X7X7VyTyGjhI"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 7fc0ef4bb2d2d14db8fc0bc0b1b97a9d83c6dc17", "sha256"=>"SSHFP 3 2 a0b01ecd2461ed45e0b51ebec48f79957a9710c3ec441cde0e6c4e5d8939c15e"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK9w38lDcCpjkGqrTdhhsZCVzS2XKgC6Q9fTvkZn1RLhvvWjDBHyFg0KyTAqfepMNNjdgHqEBFumKc3w+L5xLuY="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 20cdd84628cfad3edff17edf9ce3c2f7f1756f41", "sha256"=>"SSHFP 1 2 f48e7e96ed7708c6225367ada2a29309f159a12443eeaed6c86efee0660f3f78"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC2nt/gDBidRKDNUmDDThXA+mMWQxq83odOXzx4/3NHMMfIfu3nuvcCaTI+Tp1EiNcbb6Q2ummoGdJpCXT6/W4cjfluuun1rBDeQzzFfthdBAasNKbSCy+cYKwda0zfP9X4Az0SqsbHM5DekNS0w0stCB+L5qqlhaKyunyid2PaeLfSalP5RbcAxGSy5ijLNcAZqbuNOEiq1v0IIySCPplvzvEv//Ht8PhPhXQiRRtKMeq5pAgqjLeUq5zRlXIVqTYfZPfa5tuteaZNxpRxbDvog7h57LWsHKZSjc8ND2ocoehIymNeL4kpFkLg6TMm6BEEOEks5Kue/SXdYUbHkRKN"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALvEn/P3Kfg/yFWplaqFsrUOk/Kh9aOZTNNCoJX7lsSQkWpLDkjz03IZZ1pUsykZp6HUhzfW1ZCOKme5503MAsflB78fjgsfGaVL2IcWOvPhurC8SXGivanS5+rL3CFqja/+nMJBPFg8oEyjJei6RJZCQtlEFSEJziKMVI368fxLAAAAFQCC8c+IrxPZc4zVe5EF6qsPnZtMiwAAAIEApfv1xS6ECWq1f8J43BXFdiRszBXQecgdPtf6STvabnYdLKScAPyu3JdosrPswlZWEXLz+srkqqai6xISeSxLKrlY570GNVPmgnBFmoz+iJRi6kakroNe5xjGT45aTyZ16cyg9LFHFLL3KadlzZXu+9XwS9kv09SFlvH6+9+XNGMAAACBALLbpqIZKISARdnFviWOWzFbvYzZHiO3ddAYnXVCGfW1ywmGDqc5kUNTZsBFNYVA56YcaHR/kwFHjOij3SJnvy6VxSG9sSZ4wex/FGBmTUmklelZQsywITGps3MWxiyO3TGfIEXJlqgyVxXZhXnIshN//NCCPbq2X7X7VyTyGjhI", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK9w38lDcCpjkGqrTdhhsZCVzS2XKgC6Q9fTvkZn1RLhvvWjDBHyFg0KyTAqfepMNNjdgHqEBFumKc3w+L5xLuY=", "sshfp_dsa"=>"SSHFP 2 1 2f39a5ddd25d30676bceb1b99faec8330cb80cd5\nSSHFP 2 2 d17b59f49908df6bd337918a31a4e38f8489a0c46ada06963cb67ab3a4bdfb11", "sshfp_ecdsa"=>"SSHFP 3 1 7fc0ef4bb2d2d14db8fc0bc0b1b97a9d83c6dc17\nSSHFP 3 2 a0b01ecd2461ed45e0b51ebec48f79957a9710c3ec441cde0e6c4e5d8939c15e", "sshfp_rsa"=>"SSHFP 1 1 20cdd84628cfad3edff17edf9ce3c2f7f1756f41\nSSHFP 1 2 f48e7e96ed7708c6225367ada2a29309f159a12443eeaed6c86efee0660f3f78", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC2nt/gDBidRKDNUmDDThXA+mMWQxq83odOXzx4/3NHMMfIfu3nuvcCaTI+Tp1EiNcbb6Q2ummoGdJpCXT6/W4cjfluuun1rBDeQzzFfthdBAasNKbSCy+cYKwda0zfP9X4Az0SqsbHM5DekNS0w0stCB+L5qqlhaKyunyid2PaeLfSalP5RbcAxGSy5ijLNcAZqbuNOEiq1v0IIySCPplvzvEv//Ht8PhPhXQiRRtKMeq5pAgqjLeUq5zRlXIVqTYfZPfa5tuteaZNxpRxbDvog7h57LWsHKZSjc8ND2ocoehIymNeL4kpFkLg6TMm6BEEOEks5Kue/SXdYUbHkRKN", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>524, "uptime"=>"0:08 hours"}, "timezone"=>"UTC", "uptime"=>"0:08 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>524, "uuid"=>"8B82075A-B071-4035-A96A-3B5D08F6841D", "virtual"=>"virtualbox", "clientcert"=>"sles11-sp3.lan.asio", "clientversion"=>"4.8.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'SLES-11.3-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_SLES-12.1-64_spec.rb b/.onceover/spec/classes/role__node_on_SLES-12.1-64_spec.rb new file mode 100644 index 0000000..fab4975 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_SLES-12.1-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set SLES-12.1-64" do + node_facts = {"aio_agent_build"=>"1.7.2", "aio_agent_version"=>"1.7.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>53687091200, "blockdevice_sda_vendor"=>"VBOX", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"7733628A-3D10-4F0B-B6E2-DB6D0CBB8F7E"}}, "domain"=>"openstack.site", "facterversion"=>"3.4.2", "filesystems"=>"ext2,ext3,ext4", "fqdn"=>"sles12-sp1.openstack.site", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"sles12-sp1", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::216:3eff:fe72:f121", "ipaddress6_eth0"=>"fe80::216:3eff:fe72:f121", "ipaddress6_eth1"=>"fe80::a00:27ff:fe60:90e", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"192.168.33.15", "ipaddress_lo"=>"127.0.0.1", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.12", "kernelrelease"=>"3.12.62-60.64.8-default", "kernelversion"=>"3.12.62", "load_averages"=>{"15m"=>0.05, "1m"=>0.0, "5m"=>0.02}, "macaddress"=>"00:16:3e:72:f1:21", "macaddress_eth0"=>"00:16:3e:72:f1:21", "macaddress_eth1"=>"08:00:27:60:09:0e", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"1.78 GiB", "available_bytes"=>1907027968, "capacity"=>"68.84%", "total"=>"5.70 GiB", "total_bytes"=>6119927808, "used"=>"3.92 GiB", "used_bytes"=>4212899840}}, "memoryfree"=>"1.78 GiB", "memoryfree_mb"=>1818.68359375, "memorysize"=>"5.70 GiB", "memorysize_mb"=>5836.41796875, "mountpoints"=>{"/"=>{"available"=>"45.34 GiB", "available_bytes"=>48682504192, "capacity"=>"7.64%", "device"=>"/dev/sda1", "filesystem"=>"ext3", "options"=>["rw", "relatime", "data=ordered"], "size"=>"49.09 GiB", "size_bytes"=>52709421056, "used"=>"3.75 GiB", "used_bytes"=>4026916864}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"192.168.33.0", "network_lo"=>"127.0.0.0", "networking"=>{"domain"=>"openstack.site", "fqdn"=>"sles12-sp1.openstack.site", "hostname"=>"sles12-sp1", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::216:3eff:fe72:f121", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe72:f121", "mac"=>"00:16:3e:72:f1:21", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"bindings"=>[{"address"=>"192.168.33.15", "netmask"=>"255.255.255.0", "network"=>"192.168.33.0"}], "bindings6"=>[{"address"=>"fe80::a00:27ff:fe60:90e", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"192.168.33.15", "ip6"=>"fe80::a00:27ff:fe60:90e", "mac"=>"08:00:27:60:09:0e", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"192.168.33.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe72:f121", "mac"=>"00:16:3e:72:f1:21", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"SLES", "operatingsystemmajrelease"=>"12", "operatingsystemrelease"=>"12.1", "os"=>{"architecture"=>"x86_64", "family"=>"Suse", "hardware"=>"x86_64", "name"=>"SLES", "release"=>{"full"=>"12.1", "major"=>"12", "minor"=>"1"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Suse", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext3", "label"=>"ROOT", "mount"=>"/", "partuuid"=>"3d2745bf-01", "size"=>"50.00 GiB", "size_bytes"=>53686042624, "uuid"=>"dcf2494f-2b02-466b-aa2c-9e7c01bdbdd7"}}, "path"=>"/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin:/usr/games", "pe_build"=>"2016.4.3", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_server_version"=>"2016.4.3", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"sles-12-x86_64", "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor2"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor3"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>4, "processors"=>{"count"=>4, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppetversion"=>"4.7.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 4c29775fbdf4c3c3899d036510ced3a377023cd1", "sha256"=>"SSHFP 2 2 6b21d41b5df2640a9b710884c10d8f87dbc2944e639a5e46273bfb4aa76522c5"}, "key"=>"AAAAB3NzaC1kc3MAAACBAK+haL65A0ALR7nw0X5re26C23ncFgxvedmnE2iUbjbeM7F//EBeA4Gn3mjbtPkTVDu61Tfl45tCHKHa36l2w5rC2mt71yMGJQoHeDtA4ddO2uA+B19fmkfhAICtjrvYc8vj5jwwcVmmP0FUasIunM0/9uAhZ+97E7+I91bPhp/RAAAAFQDNpq248quBrulsV6qkoYv00XODZwAAAIBAe5mwq4iS3DH5ABJSJoGGrWZBrY2ZPYcpzqStDN12I+lNL0HqoZF3dRdXUiiAl0qGpO9vtaTtrJzQuahTpB0k/HkMP042Kqa/hhkobuPlvu5Xuuj5cNzLuditXn5ScKs8BXaoh6mvOAAIS1jY9BZ+dGxZfygvjjtcAWHWCVAxoQAAAIACBpgms8yMLnEd5qY7kF5hqO7DNJ6Q0xyFOB5zWKhj1nbCUmxKBiF2XjXZGZc+6LD0Hg1fs1EiW9ed9g7F7/7LLtlgzeJPIg8vuqsRvCj3JkwFDmGHfA2Z0EYU4sn8dmw1RLeoWY0fCaPM+x00hSa36VMMXAHEd2MCUPYTTiMmaQ=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 d1c37b4313689a7afe74eead74ea53699234505b", "sha256"=>"SSHFP 3 2 60246f4a32257320dc990997d7373eede1667aaead6ea95baa32fa07fec824cd"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGnNFUni4th60YWWMAHbe9fByciHV0mswnuc2CzGSzziVAUbsSKmJktAHNmcYKssztsMpBPsPMLM9j8ceD59jmI="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 37cbc33c742e357446b82735b529cd0d6dd5c459", "sha256"=>"SSHFP 4 2 2228771c3a8436da3436b331f293b2394f8e24f12cf6590d75d5077b37e7cacf"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIB9nMKgF7UeoNyuUwz3ifm0M4QjlEjGNSLxvFm6xXVhx"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1ccfdf4e0afc38d26ab2d3b44f37c1ec7eefe51", "sha256"=>"SSHFP 1 2 f492d7edf7cc14c5e8472aa10aa6e7cf049032f9a52584e07c10101af807fe38"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDjeTmNl1i5lo2aP6quMk+/thACsrOK50twMge6KfZ6J1Q6ncsjjpZNA745pgvUJuQx2STl2vCMT3aTbGIrw+FXGNbfRWRa9pUUTJE82mgcPnYsMqWo+JQwuJOjhdaDlV8r7U197ZIsOM+eo2CBYYUP/ZAFbGzFL4Wb29hld1MiHSACcRC7HozgAxPCUyOZ0mcckofFIW/XO289UmEJj27RSnM3YyaOXxg+xv7tjxjLaq7j4HlFR5HZt4OYdzoHMTSwexcNtyM8TyNu9OKSGSYuQNWxghltrElP+Hg1Zgw8Bxhyf+a9KqF9/Q7Z0zWvwoJE3II9kHij2M73eiadZPj/"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAK+haL65A0ALR7nw0X5re26C23ncFgxvedmnE2iUbjbeM7F//EBeA4Gn3mjbtPkTVDu61Tfl45tCHKHa36l2w5rC2mt71yMGJQoHeDtA4ddO2uA+B19fmkfhAICtjrvYc8vj5jwwcVmmP0FUasIunM0/9uAhZ+97E7+I91bPhp/RAAAAFQDNpq248quBrulsV6qkoYv00XODZwAAAIBAe5mwq4iS3DH5ABJSJoGGrWZBrY2ZPYcpzqStDN12I+lNL0HqoZF3dRdXUiiAl0qGpO9vtaTtrJzQuahTpB0k/HkMP042Kqa/hhkobuPlvu5Xuuj5cNzLuditXn5ScKs8BXaoh6mvOAAIS1jY9BZ+dGxZfygvjjtcAWHWCVAxoQAAAIACBpgms8yMLnEd5qY7kF5hqO7DNJ6Q0xyFOB5zWKhj1nbCUmxKBiF2XjXZGZc+6LD0Hg1fs1EiW9ed9g7F7/7LLtlgzeJPIg8vuqsRvCj3JkwFDmGHfA2Z0EYU4sn8dmw1RLeoWY0fCaPM+x00hSa36VMMXAHEd2MCUPYTTiMmaQ==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGnNFUni4th60YWWMAHbe9fByciHV0mswnuc2CzGSzziVAUbsSKmJktAHNmcYKssztsMpBPsPMLM9j8ceD59jmI=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIB9nMKgF7UeoNyuUwz3ifm0M4QjlEjGNSLxvFm6xXVhx", "sshfp_dsa"=>"SSHFP 2 1 4c29775fbdf4c3c3899d036510ced3a377023cd1\nSSHFP 2 2 6b21d41b5df2640a9b710884c10d8f87dbc2944e639a5e46273bfb4aa76522c5", "sshfp_ecdsa"=>"SSHFP 3 1 d1c37b4313689a7afe74eead74ea53699234505b\nSSHFP 3 2 60246f4a32257320dc990997d7373eede1667aaead6ea95baa32fa07fec824cd", "sshfp_ed25519"=>"SSHFP 4 1 37cbc33c742e357446b82735b529cd0d6dd5c459\nSSHFP 4 2 2228771c3a8436da3436b331f293b2394f8e24f12cf6590d75d5077b37e7cacf", "sshfp_rsa"=>"SSHFP 1 1 d1ccfdf4e0afc38d26ab2d3b44f37c1ec7eefe51\nSSHFP 1 2 f492d7edf7cc14c5e8472aa10aa6e7cf049032f9a52584e07c10101af807fe38", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDjeTmNl1i5lo2aP6quMk+/thACsrOK50twMge6KfZ6J1Q6ncsjjpZNA745pgvUJuQx2STl2vCMT3aTbGIrw+FXGNbfRWRa9pUUTJE82mgcPnYsMqWo+JQwuJOjhdaDlV8r7U197ZIsOM+eo2CBYYUP/ZAFbGzFL4Wb29hld1MiHSACcRC7HozgAxPCUyOZ0mcckofFIW/XO289UmEJj27RSnM3YyaOXxg+xv7tjxjLaq7j4HlFR5HZt4OYdzoHMTSwexcNtyM8TyNu9OKSGSYuQNWxghltrElP+Hg1Zgw8Bxhyf+a9KqF9/Q7Z0zWvwoJE3II9kHij2M73eiadZPj/", "staging_http_get"=>"curl", "system_uptime"=>{"days"=>1, "hours"=>41, "seconds"=>148058, "uptime"=>"1 day"}, "timezone"=>"UTC", "uptime"=>"1 day", "uptime_days"=>1, "uptime_hours"=>41, "uptime_seconds"=>148058, "uuid"=>"7733628A-3D10-4F0B-B6E2-DB6D0CBB8F7E", "virtual"=>"virtualbox", "clientcert"=>"sles12-sp1.openstack.site", "clientversion"=>"4.7.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'SLES-12.1-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Ubuntu-12.04-32_spec.rb b/.onceover/spec/classes/role__node_on_Ubuntu-12.04-32_spec.rb new file mode 100644 index 0000000..b225c33 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Ubuntu-12.04-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Ubuntu-12.04-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"3A7F9D94-3B88-45AB-99A4-57745C934A08"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe8d:6188", "ipaddress6_eth0"=>"fe80::a00:27ff:fe8d:6188", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.13", "kernelrelease"=>"3.13.0-32-generic", "kernelversion"=>"3.13.0", "load_averages"=>{"15m"=>0.03, "1m"=>0.23, "5m"=>0.09}, "lsbdistcodename"=>"precise", "lsbdistdescription"=>"Ubuntu 12.04.5 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"12.04", "lsbmajdistrelease"=>"12.04", "macaddress"=>"08:00:27:8d:61:88", "macaddress_eth0"=>"08:00:27:8d:61:88", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"407.73 MiB", "available_bytes"=>427540480, "capacity"=>"17.64%", "total"=>"495.05 MiB", "total_bytes"=>519102464, "used"=>"87.32 MiB", "used_bytes"=>91561984}}, "memoryfree"=>"407.73 MiB", "memoryfree_mb"=>407.734375, "memorysize"=>"495.05 MiB", "memorysize_mb"=>495.0546875, "mountpoints"=>{"/"=>{"available"=>"1.81 GiB", "available_bytes"=>1940865024, "capacity"=>"36.14%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"2.83 GiB", "size_bytes"=>-1255694336, "used"=>"1.02 GiB", "used_bytes"=>1098407936}, "/boot"=>{"available"=>"203.56 MiB", "available_bytes"=>213447680, "capacity"=>"13.50%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"31.76 MiB", "used_bytes"=>33307648}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe8d:6188", "mac"=>"08:00:27:8d:61:88", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe8d:6188", "mac"=>"08:00:27:8d:61:88", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"12.04", "operatingsystemrelease"=>"12.04", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"precise", "description"=>"Ubuntu 12.04.5 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"3fff8935-622f-4e9a-944f-38108c71af34"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"185fbdf2-880c-4aa6-ada8-8dade7aa3fc6"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"31f2e84f-0e99-4531-9ecb-2b151fc6ce31"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"S8Vl05-TIfO-rk5Y-gIDu-TIwj-L8Ub-3OjoJb"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 9cb1f6d6a1730dcc9e02dc62be68874f11e5dd6b", "sha256"=>"SSHFP 2 2 6e391d8fc3ab5c57147ba946aafe236972ec89cca3dfb2937f6a874524f1bce0"}, "key"=>"AAAAB3NzaC1kc3MAAACBAOBWnH+OxYCpvG4X6e4AFQNUreLJ3AvvgUUyIirhJ+zhg3IgAoe0LGc1i8t1HPBrmnZDe0jLJJVzQU42jrfQZHlZSlydnkfjoa/Z8R2ruMa+972wODUvSTAtIkuJeYKTMdNQVJCTkiy6DwU2K8UT32uVb6nN/oLHLroM7rQGaZuXAAAAFQC+aaKJlj/9kRyIiQjmYWrMJiry5wAAAIB9Q1hRlr7ZIlDSpmXPk1cVh7e4s0B89NAd4M/49iM5ZXj4FyMtFvsO+tWlRrNhgVJYTK/2agwf9FhBVD0nTqqAKOnisjmRv6QD8jADoVdI7sxxqGRs+HneMjfSXe2sCD8LFQENB3+uY1fIgfvVqAgCRR7QOFA7Xm0xh/iiu2H6+AAAAIEAsnZ59SDy2ISkiaZu9s6TXnt+WrBqtkAqpLMr7Sy+lsV1zWkoEgHKPUrBW1Yfc4tByXCqJk/YrYbkPrVN7ng5E30QACV//YmCaBD76Jm+VDjHFGgaGzh18PhuR/vnhByQ+b+MAE22IE3kqMakxnLpxowWUVVbm0CTG3lFMGvGFnA="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 75fd3452191ff0c693a6e76d75a9a617230e8b21", "sha256"=>"SSHFP 3 2 0ae893992e316dcbed9e14b009a8f00df48a352377da435a4d75a97f7c8e6668"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF5AGWyOlygr7/VMxZepE9A7W5UxuQY9NqxokurV4IR0hWR3K3qZ+ro8ai55HE07W16EGHt5FPLi3ocnzr0U1R0="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 198e8faaf2a7b3c5d0d8071a5fb89d3673baa48f", "sha256"=>"SSHFP 1 2 3c8ba605220954898d29864d617d8e1330d5ac3df2bd73e718fb2ab97098f9ee"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDGzlnmGodUPjwICVkKWpSoIG47EJLT2SYCsCMFjHLUbD6mgXe2vAhgTSwaxxL8lEecc9lZRi1VCG/CaUZFCwirSysADa5pewIA6fFfYNiBqwg56MOEC2cyeQePshi73FRkvPpwQsisAhieW8XCA+93fDPbaQaQpDpc8lIeraVFRkhxSZ2MD2j+4/gMvTH+oIHFa12GidUoRpEryt6qXFrV0dg+L5OKvIGDntssFnBE+zG3lhlFcdm3CwQp34MaVolaDtkCt5klO2GaVLHxtcyG+8wM54urHuW7HK3jxaZwKBeAQJ00rQsuC2dRljOZ9RFFCUWPf/XuCP9nNXEu1hEN"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAOBWnH+OxYCpvG4X6e4AFQNUreLJ3AvvgUUyIirhJ+zhg3IgAoe0LGc1i8t1HPBrmnZDe0jLJJVzQU42jrfQZHlZSlydnkfjoa/Z8R2ruMa+972wODUvSTAtIkuJeYKTMdNQVJCTkiy6DwU2K8UT32uVb6nN/oLHLroM7rQGaZuXAAAAFQC+aaKJlj/9kRyIiQjmYWrMJiry5wAAAIB9Q1hRlr7ZIlDSpmXPk1cVh7e4s0B89NAd4M/49iM5ZXj4FyMtFvsO+tWlRrNhgVJYTK/2agwf9FhBVD0nTqqAKOnisjmRv6QD8jADoVdI7sxxqGRs+HneMjfSXe2sCD8LFQENB3+uY1fIgfvVqAgCRR7QOFA7Xm0xh/iiu2H6+AAAAIEAsnZ59SDy2ISkiaZu9s6TXnt+WrBqtkAqpLMr7Sy+lsV1zWkoEgHKPUrBW1Yfc4tByXCqJk/YrYbkPrVN7ng5E30QACV//YmCaBD76Jm+VDjHFGgaGzh18PhuR/vnhByQ+b+MAE22IE3kqMakxnLpxowWUVVbm0CTG3lFMGvGFnA=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF5AGWyOlygr7/VMxZepE9A7W5UxuQY9NqxokurV4IR0hWR3K3qZ+ro8ai55HE07W16EGHt5FPLi3ocnzr0U1R0=", "sshfp_dsa"=>"SSHFP 2 1 9cb1f6d6a1730dcc9e02dc62be68874f11e5dd6b\nSSHFP 2 2 6e391d8fc3ab5c57147ba946aafe236972ec89cca3dfb2937f6a874524f1bce0", "sshfp_ecdsa"=>"SSHFP 3 1 75fd3452191ff0c693a6e76d75a9a617230e8b21\nSSHFP 3 2 0ae893992e316dcbed9e14b009a8f00df48a352377da435a4d75a97f7c8e6668", "sshfp_rsa"=>"SSHFP 1 1 198e8faaf2a7b3c5d0d8071a5fb89d3673baa48f\nSSHFP 1 2 3c8ba605220954898d29864d617d8e1330d5ac3df2bd73e718fb2ab97098f9ee", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDGzlnmGodUPjwICVkKWpSoIG47EJLT2SYCsCMFjHLUbD6mgXe2vAhgTSwaxxL8lEecc9lZRi1VCG/CaUZFCwirSysADa5pewIA6fFfYNiBqwg56MOEC2cyeQePshi73FRkvPpwQsisAhieW8XCA+93fDPbaQaQpDpc8lIeraVFRkhxSZ2MD2j+4/gMvTH+oIHFa12GidUoRpEryt6qXFrV0dg+L5OKvIGDntssFnBE+zG3lhlFcdm3CwQp34MaVolaDtkCt5klO2GaVLHxtcyG+8wM54urHuW7HK3jxaZwKBeAQJ00rQsuC2dRljOZ9RFFCUWPf/XuCP9nNXEu1hEN", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>60, "uptime"=>"0:01 hours"}, "timezone"=>"PST", "uptime"=>"0:01 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>60, "uuid"=>"3A7F9D94-3B88-45AB-99A4-57745C934A08", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Ubuntu-12.04-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Ubuntu-12.04-64_spec.rb b/.onceover/spec/classes/role__node_on_Ubuntu-12.04-64_spec.rb new file mode 100644 index 0000000..2917803 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Ubuntu-12.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Ubuntu-12.04-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"47C86ACE-B882-46AD-8D6D-4260BF97C669"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe5f:df27", "ipaddress6_eth0"=>"fe80::a00:27ff:fe5f:df27", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.13", "kernelrelease"=>"3.13.0-32-generic", "kernelversion"=>"3.13.0", "load_averages"=>{"15m"=>0.01, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"precise", "lsbdistdescription"=>"Ubuntu 12.04.5 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"12.04", "lsbmajdistrelease"=>"12.04", "macaddress"=>"08:00:27:5f:df:27", "macaddress_eth0"=>"08:00:27:5f:df:27", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"350.97 MiB", "available_bytes"=>368017408, "capacity"=>"28.33%", "total"=>"489.72 MiB", "total_bytes"=>513507328, "used"=>"138.75 MiB", "used_bytes"=>145489920}}, "memoryfree"=>"350.97 MiB", "memoryfree_mb"=>350.96875, "memorysize"=>"489.72 MiB", "memorysize_mb"=>489.71875, "mountpoints"=>{"/"=>{"available"=>"17.68 GiB", "available_bytes"=>18981703680, "capacity"=>"6.12%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"18.83 GiB", "size_bytes"=>20219142144, "used"=>"1.15 GiB", "used_bytes"=>1237438464}, "/boot"=>{"available"=>"202.55 MiB", "available_bytes"=>212389888, "capacity"=>"13.93%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"32.77 MiB", "used_bytes"=>34365440}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe5f:df27", "mac"=>"08:00:27:5f:df:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe5f:df27", "mac"=>"08:00:27:5f:df:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"12.04", "operatingsystemrelease"=>"12.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"precise", "description"=>"Ubuntu 12.04.5 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"96092a10-847b-4a55-b5dc-87d2cc56ee5e"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"50695407-158d-4b0e-975a-b575fa5f5359"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"829f03e2-ceb8-4f8d-9f32-e1336456f719"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"P6GCnD-xaHj-APeE-m1Em-fr5a-z3Kk-iFVziN"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 59bc746d9ab774867521d076613863790a696630", "sha256"=>"SSHFP 2 2 8d5bdb7662b7b938beb6517c7d001cc68136d3f1ded5b240cbee1a89dad2d79f"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPHTvj71+XfT0li+zpLYPbY5wKyO36Mij5D4Otl1RMIbZK68No9pDhiPdxMgZrLSq9bHLYs+cxqtSrpZgnNLvT44P+BPZbbQE4HrfcYuv0o2ifa0bqzlyHYl+BT6qSmx8zgBh3iImuhAJhLPnGCzgQ2FkfjAiHKHT1LG4h2knvtTAAAAFQDHa6q8yJo47htrK8LG0D3iAfTT2QAAAIEAtFgO4Qw6K2fQnLSfxL7h98lRopA4tokzKinUjJAoQ86eu9oR4mHDh3FRQlaHJX52RT1GABctV5MyG9LJxUuJLdeyIA7bmJrIPi0TROlHCd3NaS+0r6d1BzmMy+v7cVZsDK+8fqYBjC3b3e+lr3khnUU9uz8GqtrGFrDxjkl8y8QAAACAIKPdIYNLGaoreSz/L0PLSE6xw6+bButDCuuODpGXtD6Q6Cwo+4bjvAwV/yNMVIbrZdic8xjWh1YLxaCx0622XX8wr8GPLr3HViJ74VryCRkvsgXXuZcDl3z5+eEq1YDd5ELzpCcpkW31f64VWYLOIqz3Uo5hXeeCrSEt2vmh+Eo="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 cc6522d24466d3704070e9fda54dc60147978420", "sha256"=>"SSHFP 3 2 9ac8780c7818c208926a847d5f2c3fc274a37a0ed8ae0276f96fb3203e0e0e00"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPZ7/g0ZAcDbNMyMEABW/giY5lPyalZ717tzqmt1baNzEXALYoFN2FMHL/Wid8DUl7oKnXHGSkc4JYYFgpvt11Q="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 0ea50bd46b70a8f9efae23a8bea49388972e9740", "sha256"=>"SSHFP 1 2 0c1c44799be36031d1a8da2d02b9ed4b299ab924c647605afecb1c73063fb307"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCvijE5JYtnXa4uibGq6UEqXn7fboZYCvwZ3RFSkkG6qQ51Q7685OJgayGAZkrbiTeEWOHN6MQPr3TKwSQD2YxoUw3qKQ+hsuTydPK/ZXtNxM0ejFvpIprG1U1NDwj2YVxwo4tQveUewbBQYzEyI1aNQaE2z/fPypQOEj0v9QNAapmGGlV8ab0q0izCM4Aen5pccRZLJuibUUY3nOEfE0QTIM3QmOZoKEmj/Ez3P3+16iGeRNId/+8Bf4R5eVrKhorUUt+H/y/WcCHT5KrbCWkEH6G3eEQ7UA6XCB/sQ5pC6ZKxBbyYjy8N5wySv+5PVpoUHhHjKoSuYy6qQDE2MwRz"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPHTvj71+XfT0li+zpLYPbY5wKyO36Mij5D4Otl1RMIbZK68No9pDhiPdxMgZrLSq9bHLYs+cxqtSrpZgnNLvT44P+BPZbbQE4HrfcYuv0o2ifa0bqzlyHYl+BT6qSmx8zgBh3iImuhAJhLPnGCzgQ2FkfjAiHKHT1LG4h2knvtTAAAAFQDHa6q8yJo47htrK8LG0D3iAfTT2QAAAIEAtFgO4Qw6K2fQnLSfxL7h98lRopA4tokzKinUjJAoQ86eu9oR4mHDh3FRQlaHJX52RT1GABctV5MyG9LJxUuJLdeyIA7bmJrIPi0TROlHCd3NaS+0r6d1BzmMy+v7cVZsDK+8fqYBjC3b3e+lr3khnUU9uz8GqtrGFrDxjkl8y8QAAACAIKPdIYNLGaoreSz/L0PLSE6xw6+bButDCuuODpGXtD6Q6Cwo+4bjvAwV/yNMVIbrZdic8xjWh1YLxaCx0622XX8wr8GPLr3HViJ74VryCRkvsgXXuZcDl3z5+eEq1YDd5ELzpCcpkW31f64VWYLOIqz3Uo5hXeeCrSEt2vmh+Eo=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPZ7/g0ZAcDbNMyMEABW/giY5lPyalZ717tzqmt1baNzEXALYoFN2FMHL/Wid8DUl7oKnXHGSkc4JYYFgpvt11Q=", "sshfp_dsa"=>"SSHFP 2 1 59bc746d9ab774867521d076613863790a696630\nSSHFP 2 2 8d5bdb7662b7b938beb6517c7d001cc68136d3f1ded5b240cbee1a89dad2d79f", "sshfp_ecdsa"=>"SSHFP 3 1 cc6522d24466d3704070e9fda54dc60147978420\nSSHFP 3 2 9ac8780c7818c208926a847d5f2c3fc274a37a0ed8ae0276f96fb3203e0e0e00", "sshfp_rsa"=>"SSHFP 1 1 0ea50bd46b70a8f9efae23a8bea49388972e9740\nSSHFP 1 2 0c1c44799be36031d1a8da2d02b9ed4b299ab924c647605afecb1c73063fb307", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCvijE5JYtnXa4uibGq6UEqXn7fboZYCvwZ3RFSkkG6qQ51Q7685OJgayGAZkrbiTeEWOHN6MQPr3TKwSQD2YxoUw3qKQ+hsuTydPK/ZXtNxM0ejFvpIprG1U1NDwj2YVxwo4tQveUewbBQYzEyI1aNQaE2z/fPypQOEj0v9QNAapmGGlV8ab0q0izCM4Aen5pccRZLJuibUUY3nOEfE0QTIM3QmOZoKEmj/Ez3P3+16iGeRNId/+8Bf4R5eVrKhorUUt+H/y/WcCHT5KrbCWkEH6G3eEQ7UA6XCB/sQ5pC6ZKxBbyYjy8N5wySv+5PVpoUHhHjKoSuYy6qQDE2MwRz", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>368, "uptime"=>"0:06 hours"}, "timezone"=>"PST", "uptime"=>"0:06 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>368, "uuid"=>"47C86ACE-B882-46AD-8D6D-4260BF97C669", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Ubuntu-12.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Ubuntu-14.04-32_spec.rb b/.onceover/spec/classes/role__node_on_Ubuntu-14.04-32_spec.rb new file mode 100644 index 0000000..fe599ad --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Ubuntu-14.04-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Ubuntu-14.04-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"C138B01C-ADF6-4D36-8A3A-D9FCE21FF0C7"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe71:8945", "ipaddress6_eth0"=>"fe80::a00:27ff:fe71:8945", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.16", "kernelrelease"=>"3.16.0-30-generic", "kernelversion"=>"3.16.0", "load_averages"=>{"15m"=>0.05, "1m"=>0.0, "5m"=>0.07}, "lsbdistcodename"=>"trusty", "lsbdistdescription"=>"Ubuntu 14.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"14.04", "lsbmajdistrelease"=>"14.04", "macaddress"=>"08:00:27:71:89:45", "macaddress_eth0"=>"08:00:27:71:89:45", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"414.97 MiB", "available_bytes"=>435126272, "capacity"=>"16.34%", "total"=>"496.04 MiB", "total_bytes"=>520130560, "used"=>"81.07 MiB", "used_bytes"=>85004288}}, "memoryfree"=>"414.97 MiB", "memoryfree_mb"=>414.96875, "memorysize"=>"496.04 MiB", "memorysize_mb"=>496.03515625, "mountpoints"=>{"/"=>{"available"=>"1.72 GiB", "available_bytes"=>1846272000, "capacity"=>"39.25%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"2.83 GiB", "size_bytes"=>-1255694336, "used"=>"1.11 GiB", "used_bytes"=>1193000960}, "/boot"=>{"available"=>"200.06 MiB", "available_bytes"=>209779712, "capacity"=>"14.98%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"35.26 MiB", "used_bytes"=>36975616}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe71:8945", "mac"=>"08:00:27:71:89:45", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe71:8945", "mac"=>"08:00:27:71:89:45", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"14.04", "operatingsystemrelease"=>"14.04", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"trusty", "description"=>"Ubuntu 14.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b31f5de0-8805-43da-b3f2-da9e51c3401b"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"569bc4ac-b4e8-4e62-8503-551a63285383"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"f00f661b-b4b5-4e6f-bba3-3dcacf85fd8e"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"vF1RtV-BHmi-b0UW-QR1z-tJ48-g6Tn-aGgEn7"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1d072f5a62c6f3ecb283ca8a54906665550fb2cf", "sha256"=>"SSHFP 2 2 216358286cef61e3340afe60750513fc6bdbfc96a7190e32929fc11aeefcd375"}, "key"=>"AAAAB3NzaC1kc3MAAACBAKG/fk+L4qOg6yF5DOrNdiTsaSvD7lsYpJAFGR5AJqtmtXZsRckVuydvmsbLVDNi+P+XaO6Sr/dkFfj89vAx6gB+qZxtEbasdoUiddpjzONvjmvfzmGlFZhlptlYTSu3Ci89mY6ZergBMtGqLGh8VmcNPI54eNexasVdG4nbkcxPAAAAFQCaJGszl2tCCa6KY7GYCOisCeGwtwAAAIBDzQlFkAi7IZAQpaUS6V+1frDgnCipxXjDSZD+ObJ4Wgwrj01+vXdeHKj30mIRo7ZatXxZs2dkQHUeL0SJ/bpsdd1jOu4Mf8c+cHqSHcC4Qz2vtlARKNMXAY5vJHh7QBwaPf3/s8tWqX9lnyu1UdTjE/SgF322Nwkz9OFvCHbuuwAAAIBPA32N7qVPwEOsTBG8xVPcUXwguj6ube0n0OUsZB5i8PFjQ99nLbZce9ucLqVzPCYeClgbPrVH1MBtRc67QLKb6Kms8pseuFCtiB78j9A36PfNfTDervnF1Aw/nIb/DQImtmmDKbPhv4uniseqgSdnh2awLVy6UO7haf3Wz6maFA=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 a6f44c1518708b08d997c7a97cc75b0654b098d1", "sha256"=>"SSHFP 3 2 2ccda56b2fb9bd95c2327cceaaf8f868daebb1f7dfc5bd0a9d816fff06f7b474"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCK+3h6/GsmbpRd/xdgTi+vsoh+N6gTB5IZFpZdaJVK6H6cSwmhiEiby/3yqwQFGlSXug8aQiQJ3YZI471wScbU="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 4ca8bd8a83038bc1339ee7037ab2043f41e4b4e7", "sha256"=>"SSHFP 4 2 7326c4dfce373f219025f41f127535f0fb9aacc221adf34e75db8eccc118ab3d"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAICobX2RUot4PEA4s4fTvltDWEWIXFMehgbTwvLezavoq"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 9da876f061d5f203345c99b047a48b24775f77ae", "sha256"=>"SSHFP 1 2 90ca5e6b808b9f47c78e26f9c228dab88b19536d56f6c72443b1d06502646ecf"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC+fl/b51y7U6i6DGQ+FwkYKIzBSVV6DcIZj+Q3BVRLzviOQIQMfNJ0wvLMKKHK96gWaGlknnU0Tn/cvVShuWbaWFBpOTLDsM2cm0usZot8+EmYGnql8D3AFMxhgWBb7pBa5KJOfJidrprXLcSjW82bKhIYbLDDVWMgaoIEVAbufOCobffpwTBYSPS4OdF3WyqNJj2B9tklkUdeUFYKkCFO/mszwSZdY+0xxTyilmyrHr8evbmoA34LREnktKFiu/I5gPXts1CdVLVzvNsMt0VM+ldLEtGPy7qvcddXy34yax538n+A6VOOBg2wpKwEsmqjkCHdq8s/2eWeeu+xGFch"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAKG/fk+L4qOg6yF5DOrNdiTsaSvD7lsYpJAFGR5AJqtmtXZsRckVuydvmsbLVDNi+P+XaO6Sr/dkFfj89vAx6gB+qZxtEbasdoUiddpjzONvjmvfzmGlFZhlptlYTSu3Ci89mY6ZergBMtGqLGh8VmcNPI54eNexasVdG4nbkcxPAAAAFQCaJGszl2tCCa6KY7GYCOisCeGwtwAAAIBDzQlFkAi7IZAQpaUS6V+1frDgnCipxXjDSZD+ObJ4Wgwrj01+vXdeHKj30mIRo7ZatXxZs2dkQHUeL0SJ/bpsdd1jOu4Mf8c+cHqSHcC4Qz2vtlARKNMXAY5vJHh7QBwaPf3/s8tWqX9lnyu1UdTjE/SgF322Nwkz9OFvCHbuuwAAAIBPA32N7qVPwEOsTBG8xVPcUXwguj6ube0n0OUsZB5i8PFjQ99nLbZce9ucLqVzPCYeClgbPrVH1MBtRc67QLKb6Kms8pseuFCtiB78j9A36PfNfTDervnF1Aw/nIb/DQImtmmDKbPhv4uniseqgSdnh2awLVy6UO7haf3Wz6maFA==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCK+3h6/GsmbpRd/xdgTi+vsoh+N6gTB5IZFpZdaJVK6H6cSwmhiEiby/3yqwQFGlSXug8aQiQJ3YZI471wScbU=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAICobX2RUot4PEA4s4fTvltDWEWIXFMehgbTwvLezavoq", "sshfp_dsa"=>"SSHFP 2 1 1d072f5a62c6f3ecb283ca8a54906665550fb2cf\nSSHFP 2 2 216358286cef61e3340afe60750513fc6bdbfc96a7190e32929fc11aeefcd375", "sshfp_ecdsa"=>"SSHFP 3 1 a6f44c1518708b08d997c7a97cc75b0654b098d1\nSSHFP 3 2 2ccda56b2fb9bd95c2327cceaaf8f868daebb1f7dfc5bd0a9d816fff06f7b474", "sshfp_ed25519"=>"SSHFP 4 1 4ca8bd8a83038bc1339ee7037ab2043f41e4b4e7\nSSHFP 4 2 7326c4dfce373f219025f41f127535f0fb9aacc221adf34e75db8eccc118ab3d", "sshfp_rsa"=>"SSHFP 1 1 9da876f061d5f203345c99b047a48b24775f77ae\nSSHFP 1 2 90ca5e6b808b9f47c78e26f9c228dab88b19536d56f6c72443b1d06502646ecf", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC+fl/b51y7U6i6DGQ+FwkYKIzBSVV6DcIZj+Q3BVRLzviOQIQMfNJ0wvLMKKHK96gWaGlknnU0Tn/cvVShuWbaWFBpOTLDsM2cm0usZot8+EmYGnql8D3AFMxhgWBb7pBa5KJOfJidrprXLcSjW82bKhIYbLDDVWMgaoIEVAbufOCobffpwTBYSPS4OdF3WyqNJj2B9tklkUdeUFYKkCFO/mszwSZdY+0xxTyilmyrHr8evbmoA34LREnktKFiu/I5gPXts1CdVLVzvNsMt0VM+ldLEtGPy7qvcddXy34yax538n+A6VOOBg2wpKwEsmqjkCHdq8s/2eWeeu+xGFch", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>354, "uptime"=>"0:05 hours"}, "timezone"=>"PST", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>354, "uuid"=>"C138B01C-ADF6-4D36-8A3A-D9FCE21FF0C7", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Ubuntu-14.04-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Ubuntu-14.04-64_spec.rb b/.onceover/spec/classes/role__node_on_Ubuntu-14.04-64_spec.rb new file mode 100644 index 0000000..b96630b --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Ubuntu-14.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Ubuntu-14.04-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"C3C98552-9F17-434C-866B-0E254F5CD115"}}, "domain"=>"pdx.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"ubuntu1404a.pdx.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"ubuntu1404a", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ip6tables_version"=>"1.4.21", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:feea:2027", "ipaddress6_eth0"=>"fe80::a00:27ff:feea:2027", "ipaddress6_eth1"=>"fe80::a00:27ff:fe61:1916", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"10.20.1.93", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.21", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.16", "kernelrelease"=>"3.16.0-30-generic", "kernelversion"=>"3.16.0", "load_averages"=>{"15m"=>0.06, "1m"=>0.49, "5m"=>0.17}, "lsbdistcodename"=>"trusty", "lsbdistdescription"=>"Ubuntu 14.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"14.04", "lsbmajdistrelease"=>"14.04", "macaddress"=>"08:00:27:ea:20:27", "macaddress_eth0"=>"08:00:27:ea:20:27", "macaddress_eth1"=>"08:00:27:61:19:16", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"331.30 MiB", "available_bytes"=>347394048, "capacity"=>"32.35%", "total"=>"489.74 MiB", "total_bytes"=>513531904, "used"=>"158.44 MiB", "used_bytes"=>166137856}}, "memoryfree"=>"331.30 MiB", "memoryfree_mb"=>331.30078125, "memorysize"=>"489.74 MiB", "memorysize_mb"=>489.7421875, "mountpoints"=>{"/"=>{"available"=>"17.58 GiB", "available_bytes"=>18880684032, "capacity"=>"6.62%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"18.83 GiB", "size_bytes"=>20219142144, "used"=>"1.25 GiB", "used_bytes"=>1338458112}, "/boot"=>{"available"=>"198.65 MiB", "available_bytes"=>208301056, "capacity"=>"15.58%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"36.67 MiB", "used_bytes"=>38454272}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8608807, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"pdx.puppetlabs.demo", "fqdn"=>"ubuntu1404a.pdx.puppetlabs.demo", "hostname"=>"ubuntu1404a", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feea:2027", "mac"=>"08:00:27:ea:20:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"ip"=>"10.20.1.93", "ip6"=>"fe80::a00:27ff:fe61:1916", "mac"=>"08:00:27:61:19:16", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feea:2027", "mac"=>"08:00:27:ea:20:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"14.04", "operatingsystemrelease"=>"14.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"trusty", "description"=>"Ubuntu 14.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"c94f234c-f947-450d-aaaf-d32be1b7f27f"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"5501b007-e44b-46cf-b22b-177428cbe5d6"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"3a97a5b0-ebd0-4ce6-ba62-d39b4fd0719e"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"vgfiUo-lVmS-57wx-qv4m-N3fR-efa0-iBI6Cn"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"ubuntu-14.04-amd64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 528b28369558620d8fb12d7bea179e437823154c", "sha256"=>"SSHFP 2 2 5a7688dbb06e4b0c72e6e78ae4ca8b379620ba14b019d5b3ae5670936e1acdf4"}, "key"=>"AAAAB3NzaC1kc3MAAACBAI8c8/RV/kAfEuo71eUt5O1BBbzk34v7b14bi3swzOnzJslJXt2KR/3Dy+8eazzkcw8nbmzZSHvcyo93yQ0LjsExXfG0EkzN7uiE840Fcpg5LFmeCHan0So3Cc1FLavcGu8N+RpWHYYLLmPjlQqPdHSS1rhhXdqKIoiTdlaocXD5AAAAFQCJ0mBV1SSayMNI6tTF4W0o1Y6+cQAAAIBWY05wbeTi/vFgkhH57X0/S7Kr86K3Q/BMz7ZmKF2XCzZW9LJ6Ou0T7tHKAr472DBwUm6IxGHoUXky0Q0+XDCVut9YLYXJK8L/P8SbGwhMfj1YPiv9uorECcrqJMB5W1GCFS+HIo4DvmKYzivcmpE25b/y0V1u5Oas9cQaNZnhxwAAAIBqvLMiEyQPpemji+p+p/9E3sdX6RMUeSHj7n3WSkRTdq09nZ0ewtH12LpbENCjoc4PFh02/qqdub0tjpbgJrMYgwJDADD/AsrdcDBd3gU7mDjyF8PFzWV9nEVYExu447svRt422OW6gkkJ6sn3fovBAvDaWy7OR5YYrg5JLp+/4A=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 505ac6e68fa78305f635f305e11fbb0cc597e8ad", "sha256"=>"SSHFP 3 2 d5840c440b5f52a582589e3b2b583ecea53fd6618851dbcfce2e5cca7624f3c8"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJKYyLqXe/n2LFUbqMkwhLyOpg10LYOx/MpdgFXTxUB67AP4/GoX8zfz5Lb6fOidSJTlrzD5FB584JiRlEGUGLo="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 53784fee8fc968dca5c5d17e731716a012e59234", "sha256"=>"SSHFP 4 2 95b82a785582818106bf403e53667fc559eeabf176f103a929a210a38e9c4e05"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIAAhP8P8zhiQrKmyV/U+e5M7nd5X+ZuIEYCPHDoza0rP"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 4d3d498c7a3377c8f95ac713db4866c32199be51", "sha256"=>"SSHFP 1 2 949c0790f27d5ef7e8b0c35ceabb23bdd50d81611093531c0354330a7234b833"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDIPayGCFe5RUpJ8/UsH6gf+ecMRWo1dc20+HAy0bV4KalYWN5jUB/wrs41rdJRwMKWczgSDi2gFMsJ7q8Vjvpm2hUy+3H3/AEASRij99+37X1T4A6vPpT45EhTpS6JgGROii1Q2+9AJ/6BE6fSawymgR7jDx5QNLbKRy/FiwZAG+A0n29iUALeKqEZMd/1fU0hQCy/V+9V4DgRbHcJz4lKgc6nYrMymj8tUivTd8zm+CQov+YsUAdaXHSxIGVofnFQYXzbPqWGVV8S3fpwvrn/IY6paZ2F/lHoWombHwE271Bw863oWdkKpzP1nhjR3+Q1z++Tl2ZXT+rp6mhS9Pwv"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAI8c8/RV/kAfEuo71eUt5O1BBbzk34v7b14bi3swzOnzJslJXt2KR/3Dy+8eazzkcw8nbmzZSHvcyo93yQ0LjsExXfG0EkzN7uiE840Fcpg5LFmeCHan0So3Cc1FLavcGu8N+RpWHYYLLmPjlQqPdHSS1rhhXdqKIoiTdlaocXD5AAAAFQCJ0mBV1SSayMNI6tTF4W0o1Y6+cQAAAIBWY05wbeTi/vFgkhH57X0/S7Kr86K3Q/BMz7ZmKF2XCzZW9LJ6Ou0T7tHKAr472DBwUm6IxGHoUXky0Q0+XDCVut9YLYXJK8L/P8SbGwhMfj1YPiv9uorECcrqJMB5W1GCFS+HIo4DvmKYzivcmpE25b/y0V1u5Oas9cQaNZnhxwAAAIBqvLMiEyQPpemji+p+p/9E3sdX6RMUeSHj7n3WSkRTdq09nZ0ewtH12LpbENCjoc4PFh02/qqdub0tjpbgJrMYgwJDADD/AsrdcDBd3gU7mDjyF8PFzWV9nEVYExu447svRt422OW6gkkJ6sn3fovBAvDaWy7OR5YYrg5JLp+/4A==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJKYyLqXe/n2LFUbqMkwhLyOpg10LYOx/MpdgFXTxUB67AP4/GoX8zfz5Lb6fOidSJTlrzD5FB584JiRlEGUGLo=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIAAhP8P8zhiQrKmyV/U+e5M7nd5X+ZuIEYCPHDoza0rP", "sshfp_dsa"=>"SSHFP 2 1 528b28369558620d8fb12d7bea179e437823154c\nSSHFP 2 2 5a7688dbb06e4b0c72e6e78ae4ca8b379620ba14b019d5b3ae5670936e1acdf4", "sshfp_ecdsa"=>"SSHFP 3 1 505ac6e68fa78305f635f305e11fbb0cc597e8ad\nSSHFP 3 2 d5840c440b5f52a582589e3b2b583ecea53fd6618851dbcfce2e5cca7624f3c8", "sshfp_ed25519"=>"SSHFP 4 1 53784fee8fc968dca5c5d17e731716a012e59234\nSSHFP 4 2 95b82a785582818106bf403e53667fc559eeabf176f103a929a210a38e9c4e05", "sshfp_rsa"=>"SSHFP 1 1 4d3d498c7a3377c8f95ac713db4866c32199be51\nSSHFP 1 2 949c0790f27d5ef7e8b0c35ceabb23bdd50d81611093531c0354330a7234b833", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDIPayGCFe5RUpJ8/UsH6gf+ecMRWo1dc20+HAy0bV4KalYWN5jUB/wrs41rdJRwMKWczgSDi2gFMsJ7q8Vjvpm2hUy+3H3/AEASRij99+37X1T4A6vPpT45EhTpS6JgGROii1Q2+9AJ/6BE6fSawymgR7jDx5QNLbKRy/FiwZAG+A0n29iUALeKqEZMd/1fU0hQCy/V+9V4DgRbHcJz4lKgc6nYrMymj8tUivTd8zm+CQov+YsUAdaXHSxIGVofnFQYXzbPqWGVV8S3fpwvrn/IY6paZ2F/lHoWombHwE271Bw863oWdkKpzP1nhjR3+Q1z++Tl2ZXT+rp6mhS9Pwv", "staging_http_get"=>"curl", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>47, "uptime"=>"0:00 hours"}, "timezone"=>"PDT", "uptime"=>"0:00 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>47, "uuid"=>"C3C98552-9F17-434C-866B-0E254F5CD115", "virtual"=>"virtualbox", "clientcert"=>"ubuntu1404a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Ubuntu-14.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Ubuntu-18.04-64_spec.rb b/.onceover/spec/classes/role__node_on_Ubuntu-18.04-64_spec.rb new file mode 100644 index 0000000..90c9214 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Ubuntu-18.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Ubuntu-18.04-64" do + node_facts = {"aio_agent_version"=>"6.14.0", "architecture"=>"amd64", "augeas"=>{"version"=>"1.12.0"}, "augeasversion"=>"1.12.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>10737418240, "blockdevice_sda_vendor"=>"VBOX", "blockdevice_sdb_model"=>"HARDDISK", "blockdevice_sdb_size"=>10485760, "blockdevice_sdb_vendor"=>"VBOX", "blockdevices"=>"sdb,sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"enp0s3"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"10.00 GiB", "size_bytes"=>10737418240, "vendor"=>"VBOX"}, "sdb"=>{"model"=>"HARDDISK", "size"=>"10.00 MiB", "size_bytes"=>10485760, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"2C7D24ED-FB7D-4B4C-BC4B-B9FC32C8BDC3"}}, "domain"=>"lan.asio", "facterversion"=>"3.14.9", "filesystems"=>"btrfs,ext2,ext3,ext4,iso9660,squashfs,vfat", "fips_enabled"=>false, "fqdn"=>"ubuntu-bionic.lan.asio", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"ubuntu-bionic", "hypervisors"=>{"virtualbox"=>{"revision"=>"133895", "version"=>"6.0.14"}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"enp0s3,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::bb:7dff:fee8:e923", "ipaddress6_enp0s3"=>"fe80::bb:7dff:fee8:e923", "ipaddress6_lo"=>"::1", "ipaddress_enp0s3"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"4.15", "kernelrelease"=>"4.15.0-54-generic", "kernelversion"=>"4.15.0", "load_averages"=>{"15m"=>0.1, "1m"=>0.31, "5m"=>0.23}, "lsbdistcodename"=>"bionic", "lsbdistdescription"=>"Ubuntu 18.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"18.04", "lsbmajdistrelease"=>"18.04", "macaddress"=>"02:bb:7d:e8:e9:23", "macaddress_enp0s3"=>"02:bb:7d:e8:e9:23", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"776.53 MiB", "available_bytes"=>814247936, "capacity"=>"21.19%", "total"=>"985.26 MiB", "total_bytes"=>1033121792, "used"=>"208.73 MiB", "used_bytes"=>218873856}}, "memoryfree"=>"776.53 MiB", "memoryfree_mb"=>776.52734375, "memorysize"=>"985.26 MiB", "memorysize_mb"=>985.26171875, "mountpoints"=>{"/"=>{"available"=>"8.14 GiB", "available_bytes"=>8742756352, "capacity"=>"15.32%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw", "relatime", "data=ordered"], "size"=>"9.63 GiB", "size_bytes"=>10340794368, "used"=>"1.47 GiB", "used_bytes"=>1581260800}, "/dev"=>{"available"=>"480.22 MiB", "available_bytes"=>503545856, "capacity"=>"0%", "device"=>"udev", "filesystem"=>"devtmpfs", "options"=>["rw", "nosuid", "relatime", "size=491744k", "nr_inodes=122936", "mode=755"], "size"=>"480.22 MiB", "size_bytes"=>503545856, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/hugepages"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"hugetlbfs", "filesystem"=>"hugetlbfs", "options"=>["rw", "relatime", "pagesize=2M"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/mqueue"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mqueue", "filesystem"=>"mqueue", "options"=>["rw", "relatime"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/pts"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"devpts", "filesystem"=>"devpts", "options"=>["rw", "nosuid", "noexec", "relatime", "gid=5", "mode=620", "ptmxmode=000"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/shm"=>{"available"=>"492.63 MiB", "available_bytes"=>516558848, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev"], "size"=>"492.63 MiB", "size_bytes"=>516558848, "used"=>"0 bytes", "used_bytes"=>0}, "/run"=>{"available"=>"97.93 MiB", "available_bytes"=>102690816, "capacity"=>"0.60%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "noexec", "relatime", "size=100892k", "mode=755"], "size"=>"98.53 MiB", "size_bytes"=>103313408, "used"=>"608.00 KiB", "used_bytes"=>622592}, "/run/lock"=>{"available"=>"5.00 MiB", "available_bytes"=>5242880, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev", "noexec", "relatime", "size=5120k"], "size"=>"5.00 MiB", "size_bytes"=>5242880, "used"=>"0 bytes", "used_bytes"=>0}, "/run/user/1000"=>{"available"=>"98.52 MiB", "available_bytes"=>103309312, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev", "relatime", "size=100888k", "mode=700", "uid=1000", "gid=1000"], "size"=>"98.52 MiB", "size_bytes"=>103309312, "used"=>"0 bytes", "used_bytes"=>0}, "/sys/fs/cgroup"=>{"available"=>"492.63 MiB", "available_bytes"=>516558848, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["ro", "nosuid", "nodev", "noexec", "mode=755"], "size"=>"492.63 MiB", "size_bytes"=>516558848, "used"=>"0 bytes", "used_bytes"=>0}, "/vagrant"=>{"available"=>"122.93 GiB", "available_bytes"=>131996221440, "capacity"=>"85.01%", "device"=>"vagrant", "filesystem"=>"vboxsf", "options"=>["rw", "nodev", "relatime", "iocharset=utf8", "uid=1000", "gid=1000"], "size"=>"820.33 GiB", "size_bytes"=>880824786944, "used"=>"697.40 GiB", "used_bytes"=>748828565504}, "/var/lib/lxcfs"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"lxcfs", "filesystem"=>"fuse.lxcfs", "options"=>["rw", "nosuid", "nodev", "relatime", "user_id=0", "group_id=0", "allow_other"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_enp0s3"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s3"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_enp0s3"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_enp0s3"=>"fe80::", "network6_lo"=>"::1", "network_enp0s3"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"lan.asio", "fqdn"=>"ubuntu-bionic.lan.asio", "hostname"=>"ubuntu-bionic", "interfaces"=>{"enp0s3"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::bb:7dff:fee8:e923", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::bb:7dff:fee8:e923", "mac"=>"02:bb:7d:e8:e9:23", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "scope6"=>"link"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1", "scope6"=>"host"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::bb:7dff:fee8:e923", "mac"=>"02:bb:7d:e8:e9:23", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"enp0s3", "scope6"=>"link"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"18.04", "operatingsystemrelease"=>"18.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"bionic", "description"=>"Ubuntu 18.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"18.04", "major"=>"18.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"18.04", "major"=>"18.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext4", "label"=>"cloudimg-rootfs", "mount"=>"/", "partuuid"=>"654c6dc7-01", "size"=>"10.00 GiB", "size_bytes"=>10736352768, "uuid"=>"8de716dd-d9b2-477f-b818-bb0b1eb036ce"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"6.14.0", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.7"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.7", "scope6"=>"link", "scope6_enp0s3"=>"link", "scope6_lo"=>"host", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 7024118ae71eead4750a74d458472e89e38c7e7c", "sha256"=>"SSHFP 2 2 e5606c7ee1cf32f5591b42c98a9bc87d27cef4bc75c7802cd3f22bcb39333656"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPemHtx92WDon/zDA0oaO5wWOXCUx45+6X9QxJugdryqG3RV0J/ZkKhayANq7NO1GeC3/3EC8celhsHyZFILEEJpFPzW32053dVnOZ6JyQCGb4JKFaCH7DjVnZLlTPyqvraykF3beEhp7dArSpsgsIURJLDRvE3PJdd9DDNtOapXAAAAFQC27/RqfyRjrjSOjNrfsqLm6GoT0QAAAIAJm6rGXMlZ+xNfPfVHsugGNP7BdcFLSWnUGaBQ+51FGkRdVesun6HF5A9/TNBfQ6U2k1BE8Qtc3H8uHrwenIQKyWuhVejvpYVD3NA6hztMWYiidiQ7Ji0O3qkPv4CY5QhlmyPit1gR4aly/fG1H8p+J/XbwrJXMtfR6ND3OXbeYwAAAIEAzDOkrJJgq5f+oPSVaOOmvbNdJ0B003fTyJEH+2yCm3q41O7vakoWv9Qt9mH7T/ivqwMK3yzk1eIpozx8TPU1aOQC3OyehoEXXFY6U5Jcgp0K8WUvVgnC47hAKBkf562aGdWftWNu4GkjI6wcNtZqkeVN/wyazilHRF9GyPdsvHg=", "type"=>"ssh-dss"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 aa6b8ac4bccb5afded59e2bf680cc151bbb27ef9", "sha256"=>"SSHFP 3 2 4ee2dc2ded938a37ef44de4fd3f3add478abfe272f0a50dc7dbb1f9a4839ca99"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF02SaI3oPW6CVWEvzDuf/XqaUF+OAr4RKNW3hAR8RRBSDEjQGdoejQEYP8lEFa1KeVlkJYnvgrPYwxVSUI6hUA=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 a20e01cf434a802607e1aff21e621dd3ada6499f", "sha256"=>"SSHFP 4 2 569917b95c5299fe3cdd1cc4a37166d1e81106a22bb75a15b99bb8694b2ac8c4"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHmh1Z/od2mbHDUkAL2bXswdwp43dPXQOKo9DA8AUDO1", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3bc833bc8e3e259da03d37aa0c0244ae98f30622", "sha256"=>"SSHFP 1 2 f27f0e09326c1c8abc2b0691bc6444b77781c0a21e9d99933492f269e5163346"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+QuEhOY+IrmAaG1/PgO0nyxYY0VYilhjcM5daSKb61z+XBmBuAsgVxWaQ815OxlwYQunPJZlKnaXZ8yTlnjk8eekxvWnoSLtqKZWW1+RfMyy6n6MyXdno1mwez+5HG3tThC63xE4EWbmKH+fsWuNT2ZpQ49fuWnG8sObv/66QLyCjt+KHMpy9ClHjpYli+0hFhdHTwxGo9H/r4I2En9rBcTy3nQZhZGm1FFh6xnHxnSGm02r2fhsk2x0kw9K1pA7IFtr31hBOu5Po5CJBVJQBd1TEozmNELl2ZISmT0HK3sIV4AG/FmFEsd9+63ST5BbeurlcOEzvxudDJmuroZX", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPemHtx92WDon/zDA0oaO5wWOXCUx45+6X9QxJugdryqG3RV0J/ZkKhayANq7NO1GeC3/3EC8celhsHyZFILEEJpFPzW32053dVnOZ6JyQCGb4JKFaCH7DjVnZLlTPyqvraykF3beEhp7dArSpsgsIURJLDRvE3PJdd9DDNtOapXAAAAFQC27/RqfyRjrjSOjNrfsqLm6GoT0QAAAIAJm6rGXMlZ+xNfPfVHsugGNP7BdcFLSWnUGaBQ+51FGkRdVesun6HF5A9/TNBfQ6U2k1BE8Qtc3H8uHrwenIQKyWuhVejvpYVD3NA6hztMWYiidiQ7Ji0O3qkPv4CY5QhlmyPit1gR4aly/fG1H8p+J/XbwrJXMtfR6ND3OXbeYwAAAIEAzDOkrJJgq5f+oPSVaOOmvbNdJ0B003fTyJEH+2yCm3q41O7vakoWv9Qt9mH7T/ivqwMK3yzk1eIpozx8TPU1aOQC3OyehoEXXFY6U5Jcgp0K8WUvVgnC47hAKBkf562aGdWftWNu4GkjI6wcNtZqkeVN/wyazilHRF9GyPdsvHg=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF02SaI3oPW6CVWEvzDuf/XqaUF+OAr4RKNW3hAR8RRBSDEjQGdoejQEYP8lEFa1KeVlkJYnvgrPYwxVSUI6hUA=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHmh1Z/od2mbHDUkAL2bXswdwp43dPXQOKo9DA8AUDO1", "sshfp_dsa"=>"SSHFP 2 1 7024118ae71eead4750a74d458472e89e38c7e7c\nSSHFP 2 2 e5606c7ee1cf32f5591b42c98a9bc87d27cef4bc75c7802cd3f22bcb39333656", "sshfp_ecdsa"=>"SSHFP 3 1 aa6b8ac4bccb5afded59e2bf680cc151bbb27ef9\nSSHFP 3 2 4ee2dc2ded938a37ef44de4fd3f3add478abfe272f0a50dc7dbb1f9a4839ca99", "sshfp_ed25519"=>"SSHFP 4 1 a20e01cf434a802607e1aff21e621dd3ada6499f\nSSHFP 4 2 569917b95c5299fe3cdd1cc4a37166d1e81106a22bb75a15b99bb8694b2ac8c4", "sshfp_rsa"=>"SSHFP 1 1 3bc833bc8e3e259da03d37aa0c0244ae98f30622\nSSHFP 1 2 f27f0e09326c1c8abc2b0691bc6444b77781c0a21e9d99933492f269e5163346", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+QuEhOY+IrmAaG1/PgO0nyxYY0VYilhjcM5daSKb61z+XBmBuAsgVxWaQ815OxlwYQunPJZlKnaXZ8yTlnjk8eekxvWnoSLtqKZWW1+RfMyy6n6MyXdno1mwez+5HG3tThC63xE4EWbmKH+fsWuNT2ZpQ49fuWnG8sObv/66QLyCjt+KHMpy9ClHjpYli+0hFhdHTwxGo9H/r4I2En9rBcTy3nQZhZGm1FFh6xnHxnSGm02r2fhsk2x0kw9K1pA7IFtr31hBOu5Po5CJBVJQBd1TEozmNELl2ZISmT0HK3sIV4AG/FmFEsd9+63ST5BbeurlcOEzvxudDJmuroZX", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>336, "uptime"=>"0:05 hours"}, "timezone"=>"UTC", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>336, "uuid"=>"2C7D24ED-FB7D-4B4C-BC4B-B9FC32C8BDC3", "virtual"=>"virtualbox", "clientcert"=>"ubuntu-bionic.lan.asio", "clientversion"=>"6.14.0", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Ubuntu-18.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Windows_Server-2008r2-64_spec.rb b/.onceover/spec/classes/role__node_on_Windows_Server-2008r2-64_spec.rb new file mode 100644 index 0000000..8f7a781 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Windows_Server-2008r2-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Windows_Server-2008r2-64" do + node_facts = {"agent_specified_environment"=>"production", "aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x64", "common_appdata"=>"C:\\ProgramData", "concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"Local Area Connection"=>"10.0.2.2"}, "dmi"=>{"manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0"}}, "domain"=>"pdx.puppetlabs.demo", "env_windows_installdir"=>"C:\\Program Files\\Puppet Labs\\Puppet", "facterversion"=>"3.0.2", "fqdn"=>"server2008r2a.pdx.puppetlabs.demo", "hardwareisa"=>"x64", "hardwaremodel"=>"x86_64", "hostname"=>"server2008r2a", "id"=>"SERVER2008R2A\\vagrant", "identity"=>{"user"=>"SERVER2008R2A\\vagrant"}, "iis_version"=>"Get-ItemProperty : Cannot find path 'HKLM:\\SOFTWARE\\Microsoft\\InetStp\\' because it does not exist.\nAt line:1 char:18\n+ (Get-ItemProperty <<<< HKLM:\\SOFTWARE\\Microsoft\\InetStp\\ -Name VersionString).VersionString.SubString(8,3)\n + CategoryInfo : ObjectNotFound: (HKLM:\\SOFTWARE\\Microsoft\\InetStp\\:String) [Get-ItemProperty], ItemNotFo \n undException\n + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetItemPropertyCommand\n \nYou cannot call a method on a null-valued expression.\nAt line:1 char:97\n+ (Get-ItemProperty HKLM:\\SOFTWARE\\Microsoft\\InetStp\\ -Name VersionString).VersionString.SubString <<<< (8,3)\n + CategoryInfo : InvalidOperation: (SubString:String) [], RuntimeException\n + FullyQualifiedErrorId : InvokeMethodOnNull\n \n", "interfaces"=>"Local Area Connection 2,Local Area Connection", "ipaddress"=>"10.20.1.101", "ipaddress6"=>"fe80::2c34:c353:1aaa:a872%13", "ipaddress6_Local Area Connection"=>"fe80::50f8:86eb:f103:75b%12", "ipaddress6_Local Area Connection 2"=>"fe80::2c34:c353:1aaa:a872%13", "ipaddress_Local Area Connection"=>"10.0.2.15", "ipaddress_Local Area Connection 2"=>"10.20.1.101", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"windows", "kernelmajversion"=>"6.1", "kernelrelease"=>"6.1.7600", "kernelversion"=>"6.1.7600", "macaddress"=>"08:00:27:7B:C7:40", "macaddress_Local Area Connection"=>"08:00:27:AB:52:FB", "macaddress_Local Area Connection 2"=>"08:00:27:7B:C7:40", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"448.14 MiB", "available_bytes"=>469909504, "capacity"=>"56.22%", "total"=>"1023.55 MiB", "total_bytes"=>1073274880, "used"=>"575.41 MiB", "used_bytes"=>603365376}}, "memoryfree"=>"448.14 MiB", "memoryfree_mb"=>448.140625, "memorysize"=>"1023.55 MiB", "memorysize_mb"=>1023.5546875, "mtu_Local Area Connection"=>1500, "mtu_Local Area Connection 2"=>1500, "mysql_server_id"=>8583088, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_Local Area Connection"=>"ffff:ffff:ffff:ffff::", "netmask6_Local Area Connection 2"=>"ffff:ffff:ffff:ffff::", "netmask_Local Area Connection"=>"255.255.255.0", "netmask_Local Area Connection 2"=>"255.255.255.0", "network"=>"10.20.1.0", "network6"=>"fe80::%13", "network6_Local Area Connection"=>"fe80::%12", "network6_Local Area Connection 2"=>"fe80::%13", "network_Local Area Connection"=>"10.0.2.0", "network_Local Area Connection 2"=>"10.20.1.0", "networking"=>{"domain"=>"pdx.puppetlabs.demo", "fqdn"=>"server2008r2a.pdx.puppetlabs.demo", "hostname"=>"server2008r2a", "interfaces"=>{"Local Area Connection"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::50f8:86eb:f103:75b%12", "mac"=>"08:00:27:AB:52:FB", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12"}, "Local Area Connection 2"=>{"ip"=>"10.20.1.101", "ip6"=>"fe80::2c34:c353:1aaa:a872%13", "mac"=>"08:00:27:7B:C7:40", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::%13"}}, "ip"=>"10.20.1.101", "ip6"=>"fe80::2c34:c353:1aaa:a872%13", "mac"=>"08:00:27:7B:C7:40", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::%13"}, "operatingsystem"=>"windows", "operatingsystemmajrelease"=>"2008 R2", "operatingsystemrelease"=>"2008 R2", "os"=>{"architecture"=>"x64", "family"=>"windows", "hardware"=>"x86_64", "name"=>"windows", "release"=>{"full"=>"2008 R2", "major"=>"2008 R2"}, "windows"=>{"system32"=>"C:\\Windows\\system32"}}, "osfamily"=>"windows", "path"=>"C:/Program Files/Puppet Labs/Puppet/facter/bin;C:\\Program Files\\Puppet Labs\\Puppet\\puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\facter\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\hiera\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\mcollective\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\ruby\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\tools\\bin;%SystemRoot%\\system32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\ProgramData\\chocolatey\\bin;", "pe_concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>false, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"C:/ProgramData/PuppetLabs/puppet/cache", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x64-mingw32", "sitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "serialnumber"=>"0", "staging_http_get"=>"powershell", "staging_windir"=>"C:\\ProgramData\\staging", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>266, "uptime"=>"0:04 hours"}, "timezone"=>"Pacific Daylight Time", "uptime"=>"0:04 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>266, "virtual"=>"virtualbox", "clientcert"=>"server2008r2a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Windows_Server-2008r2-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_Windows_Server-2012r2-64_spec.rb b/.onceover/spec/classes/role__node_on_Windows_Server-2012r2-64_spec.rb new file mode 100644 index 0000000..79c3275 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_Windows_Server-2012r2-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set Windows_Server-2012r2-64" do + node_facts = {"agent_specified_environment"=>"production", "architecture"=>"x64", "dhcp_servers"=>{"Ethernet"=>"10.0.2.2", "system"=>"10.0.2.2"}, "dmi"=>{"manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0"}}, "env_windows_installdir"=>"C:\\Program Files\\Puppet Labs\\Puppet", "facterversion"=>"3.1.1", "fqdn"=>"WIN-E5K8TM30719", "hardwareisa"=>"x64", "hardwaremodel"=>"x86_64", "hostname"=>"WIN-E5K8TM30719", "id"=>"WIN-E5K8TM30719\\vagrant", "identity"=>{"user"=>"WIN-E5K8TM30719\\vagrant"}, "interfaces"=>"Ethernet", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a180:36e0:3a6e:1005%12", "ipaddress6_Ethernet"=>"fe80::a180:36e0:3a6e:1005%12", "ipaddress_Ethernet"=>"10.0.2.15", "is_virtual"=>true, "kernel"=>"windows", "kernelmajversion"=>"6.3", "kernelrelease"=>"6.3.9600", "kernelversion"=>"6.3.9600", "macaddress"=>"08:00:27:81:38:FA", "macaddress_Ethernet"=>"08:00:27:81:38:FA", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"1.42 GiB", "available_bytes"=>1521610752, "capacity"=>"29.13%", "total"=>"2.00 GiB", "total_bytes"=>2147012608, "used"=>"596.43 MiB", "used_bytes"=>625401856}}, "memoryfree"=>"1.42 GiB", "memoryfree_mb"=>1451.12109375, "memorysize"=>"2.00 GiB", "memorysize_mb"=>2047.55078125, "mtu_Ethernet"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_Ethernet"=>"ffff:ffff:ffff:ffff::", "netmask_Ethernet"=>"255.255.255.0", "network"=>"10.0.2.0", "network6"=>"fe80::%12", "network6_Ethernet"=>"fe80::%12", "network_Ethernet"=>"10.0.2.0", "networking"=>{"dhcp"=>"10.0.2.2", "fqdn"=>"WIN-E5K8TM30719", "hostname"=>"WIN-E5K8TM30719", "interfaces"=>{"Ethernet"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::a180:36e0:3a6e:1005%12", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::%12"}], "dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a180:36e0:3a6e:1005%12", "mac"=>"08:00:27:81:38:FA", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a180:36e0:3a6e:1005%12", "mac"=>"08:00:27:81:38:FA", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12", "primary"=>"Ethernet"}, "operatingsystem"=>"windows", "operatingsystemmajrelease"=>"2012 R2", "operatingsystemrelease"=>"2012 R2", "os"=>{"architecture"=>"x64", "family"=>"windows", "hardware"=>"x86_64", "name"=>"windows", "release"=>{"full"=>"2012 R2", "major"=>"2012 R2"}, "windows"=>{"system32"=>"C:\\Windows\\system32"}}, "osfamily"=>"windows", "path"=>"C:/Program Files/Puppet Labs/Puppet/facter/bin;C:\\Program Files\\Puppet Labs\\Puppet\\puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\facter\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\hiera\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\mcollective\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\ruby\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\tools\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files (x86)\\Git\\cmd;C:\\Program Files (x86)\\Git\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.3", "ruby"=>{"platform"=>"x64-mingw32", "sitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.7"}, "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.7", "serialnumber"=>"0", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>287, "uptime"=>"0:04 hours"}, "timezone"=>"Coordinated Universal Time", "uptime"=>"0:04 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>287, "virtual"=>"virtualbox", "clientcert"=>"win-e5k8tm30719", "clientversion"=>"4.2.3", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'Windows_Server-2012r2-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_solaris-10_u9-sparc-64_spec.rb b/.onceover/spec/classes/role__node_on_solaris-10_u9-sparc-64_spec.rb new file mode 100644 index 0000000..2c3ba40 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_solaris-10_u9-sparc-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set solaris-10_u9-sparc-64" do + node_facts = {"aio_agent_build"=>"1.4.2", "aio_agent_version"=>"1.4.2", "architecture"=>"sun4v", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_sd4_size"=>-1168154624, "blockdevice_sd4_vendor"=>"HITACHI", "blockdevice_sd5_size"=>-647710720, "blockdevice_sd5_vendor"=>"HITACHI", "blockdevice_sd6_size"=>0, "blockdevice_sd6_vendor"=>"AMI", "blockdevice_sd7_size"=>0, "blockdevice_sd7_vendor"=>"TEAC", "blockdevice_sd8_size"=>-1168154624, "blockdevice_sd8_vendor"=>"HITACHI", "blockdevice_sd9_size"=>-647710720, "blockdevice_sd9_vendor"=>"HITACHI", "blockdevices"=>"sd4,sd5,sd8,sd9,sd7,sd6", "custom_auth_conf"=>false, "disks"=>{"sd4"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd5"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}, "sd6"=>{"product"=>"Virtual CDROM Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"AMI"}, "sd7"=>{"product"=>"DV-W28SS-W Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"TEAC"}, "sd8"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd9"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}}, "dmi"=>{"manufacturer"=>"Oracle Corporation"}, "domain"=>"puppet.example", "facterversion"=>"3.1.6", "fqdn"=>"solaris-10_u9-sparc-t4-64.puppet.example", "gid"=>"root", "hardwareisa"=>"sparc", "hardwaremodel"=>"sun4v", "hostname"=>"solaris-10_u9-sparc-t4-64", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,net0", "ipaddress"=>"10.32.77.42", "ipaddress_lo0"=>"127.0.0.1", "ipaddress_net0"=>"10.32.77.42", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"SunOS", "kernelmajversion"=>"Generic_Virtual", "kernelrelease"=>"5.10", "kernelversion"=>"Generic_Virtual", "load_averages"=>{"15m"=>1.015625, "1m"=>1.89453125, "5m"=>1.25390625}, "macaddress"=>"02:08:20:f1:97:4b", "macaddress_net0"=>"02:08:20:f1:97:4b", "manufacturer"=>"Oracle Corporation", "memory"=>{"swap"=>{"available"=>"4.00 GiB", "available_bytes"=>-8192, "capacity"=>"0%", "total"=>"4.00 GiB", "total_bytes"=>-8192, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"3.25 GiB", "available_bytes"=>-806297600, "capacity"=>"78.94%", "total"=>"15.43 GiB", "total_bytes"=>-611737600, "used"=>"12.18 GiB", "used_bytes"=>194560000}}, "memoryfree"=>"3.25 GiB", "memoryfree_mb"=>3327.0546875, "memorysize"=>"15.43 GiB", "memorysize_mb"=>15800.6015625, "mountpoints"=>{"/"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"1.14%", "device"=>"rpool/ROOT/zbe-0", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc10/root/", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950161"], "size"=>"480.01 GiB", "size_bytes"=>13566464, "used"=>"5.49 GiB", "used_bytes"=>1602503680}, "/.SUNWnative/lib"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/lib", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/platform"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/platform", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/sbin"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/sbin", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/usr"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/usr", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/dev"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"/dev", "filesystem"=>"dev", "options"=>["zone=cisparc10", "nozonemod", "sharezone=36", "dev=8e0001b"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/fd"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"fd", "filesystem"=>"fd", "options"=>["rw", "nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=9040025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/mnttab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mnttab", "filesystem"=>"mntfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8e80025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/svc/volatile"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.01%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc10", "sharezone=36", "dev=8ec0049"], "size"=>"5.48 GiB", "size_bytes"=>1591631872, "used"=>"448.00 KiB", "used_bytes"=>458752}, "/export"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool/export", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950163"], "size"=>"474.52 GiB", "size_bytes"=>-1588904448, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/export/home"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool/export/home", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950164"], "size"=>"474.52 GiB", "size_bytes"=>-1588905472, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/proc"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"proc", "filesystem"=>"proc", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8dc0024"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/rpool"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950165"], "size"=>"474.52 GiB", "size_bytes"=>-1588905472, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/system/contract"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"ctfs", "filesystem"=>"ctfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8e40025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/object"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"objfs", "filesystem"=>"objfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8f00025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/tmp"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.70%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc10", "sharezone=36", "dev=8ec004a"], "size"=>"5.52 GiB", "size_bytes"=>1632608256, "used"=>"39.52 MiB", "used_bytes"=>41435136}, "/var"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.03%", "device"=>"rpool/ROOT/zbe-0/var", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc10/root/var", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950162"], "size"=>"474.66 GiB", "size_bytes"=>-1436724224, "used"=>"145.16 MiB", "used_bytes"=>152212992}, "/var/run"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.01%", "device"=>"/etc/svc/volatile/", "filesystem"=>"lofs", "options"=>["rstchown", "zone=cisparc10", "sharezone=36", "dev=8ec0049"], "size"=>"5.48 GiB", "size_bytes"=>1591631872, "used"=>"448.00 KiB", "used_bytes"=>458752}}, "mtu_lo0"=>8232, "mtu_net0"=>1500, "netmask"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "netmask_net0"=>"255.255.255.0", "network"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "network_net0"=>"10.32.77.0", "networking"=>{"domain"=>"puppet.example", "fqdn"=>"solaris-10_u9-sparc-t4-64.puppet.example", "hostname"=>"solaris-10_u9-sparc-t4-64", "interfaces"=>{"lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "ip"=>"127.0.0.1", "mtu"=>8232, "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, "net0"=>{"bindings"=>[{"address"=>"10.32.77.42", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.42", "mac"=>"02:08:20:f1:97:4b", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}}, "ip"=>"10.32.77.42", "mac"=>"02:08:20:f1:97:4b", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"net0"}, "operatingsystem"=>"Solaris", "operatingsystemmajrelease"=>"10", "operatingsystemrelease"=>"10_u9", "os"=>{"architecture"=>"sun4v", "family"=>"Solaris", "hardware"=>"sun4v", "name"=>"Solaris", "release"=>{"full"=>"10_u9", "major"=>"10", "minor"=>"9"}}, "osfamily"=>"Solaris", "path"=>"/usr/local/bin:/usr/local/sbin:/opt/csw/bin:PATH:/opt/puppetlabs/bin:/usr/local/bin:/usr/local/sbin:/opt/csw/bin:/usr/sbin:/usr/bin:/sbin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"solaris-10-sparc", "processor0"=>"SPARC-T4", "processor1"=>"SPARC-T4", "processor10"=>"SPARC-T4", "processor11"=>"SPARC-T4", "processor12"=>"SPARC-T4", "processor13"=>"SPARC-T4", "processor14"=>"SPARC-T4", "processor15"=>"SPARC-T4", "processor16"=>"SPARC-T4", "processor17"=>"SPARC-T4", "processor18"=>"SPARC-T4", "processor19"=>"SPARC-T4", "processor2"=>"SPARC-T4", "processor20"=>"SPARC-T4", "processor21"=>"SPARC-T4", "processor22"=>"SPARC-T4", "processor23"=>"SPARC-T4", "processor24"=>"SPARC-T4", "processor25"=>"SPARC-T4", "processor26"=>"SPARC-T4", "processor27"=>"SPARC-T4", "processor28"=>"SPARC-T4", "processor29"=>"SPARC-T4", "processor3"=>"SPARC-T4", "processor30"=>"SPARC-T4", "processor31"=>"SPARC-T4", "processor32"=>"SPARC-T4", "processor33"=>"SPARC-T4", "processor34"=>"SPARC-T4", "processor35"=>"SPARC-T4", "processor36"=>"SPARC-T4", "processor37"=>"SPARC-T4", "processor38"=>"SPARC-T4", "processor39"=>"SPARC-T4", "processor4"=>"SPARC-T4", "processor40"=>"SPARC-T4", "processor41"=>"SPARC-T4", "processor42"=>"SPARC-T4", "processor43"=>"SPARC-T4", "processor44"=>"SPARC-T4", "processor45"=>"SPARC-T4", "processor46"=>"SPARC-T4", "processor47"=>"SPARC-T4", "processor48"=>"SPARC-T4", "processor49"=>"SPARC-T4", "processor5"=>"SPARC-T4", "processor50"=>"SPARC-T4", "processor51"=>"SPARC-T4", "processor52"=>"SPARC-T4", "processor53"=>"SPARC-T4", "processor54"=>"SPARC-T4", "processor55"=>"SPARC-T4", "processor56"=>"SPARC-T4", "processor57"=>"SPARC-T4", "processor58"=>"SPARC-T4", "processor59"=>"SPARC-T4", "processor6"=>"SPARC-T4", "processor60"=>"SPARC-T4", "processor61"=>"SPARC-T4", "processor62"=>"SPARC-T4", "processor63"=>"SPARC-T4", "processor7"=>" SPARC-T4", "processor8"=>"SPARC-T4", "processor9"=>"SPARC-T4", "processorcount"=>64, "processors"=>{"count"=>64, "isa"=>"sparc", "models"=>["SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4"], "physicalcount"=>1, "speed"=>"2.85 GHz"}, "puppet_files_dir_present"=>false, "puppetversion"=>"4.4.2", "ruby"=>{"platform"=>"sparc-solaris2.10", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.8"}, "rubyplatform"=>"sparc-solaris2.10", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.8", "solaris_zones"=>{"current"=>"solaris-10_u9-sparc-t4-64", "zones"=>{"solaris-10_u9-sparc-t4-64"=>{"brand"=>"solaris10", "id"=>"36", "ip_type"=>"excl", "path"=>"/", "status"=>"running"}}}, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 c9a8316e12052c89f9c8eea38c433c50950d5798", "sha256"=>"SSHFP 2 2 26773f31bd38b64224ee474eec7659dc05f23f8cb43e8352c1b58545bf5bbb15"}, "key"=>"AAAAB3NzaC1kc3MAAACBAIBt3ynjIBp7/uKbi9RdcO5DiIA0l7y4BmHsfm9042jYtMvIZkMF9cqwvxHjgoHW9JZGGNgIxUK/q0vjuGzctspVUovGBfL+m7F9Lp0rAHZVRkRm1wzGtjCPcdq35J9uVVj0YiHKvuuRvpooVtF55fe9ZfvwPBW41n9+eCX+yjY9AAAAFQC79jdm/KtE/8yXT6r1dMs63sF70wAAAIBC1yGHJcpRJt5NPi0t+eFQu6sDxxUeaaChW4u8BFLT4NXQ6SgBGW7FpT/zEaYEn2UZeQ8Mk3jAycUckyq5qSmWpunTHWdz8iKuuzPSyMgAYXwv0nGL+soRwGcjFdHIhCi2LGloN8JZpE/Kz2ry7yThwL7qMq3i8FFlovWDesAyzAAAAIATGYMDBcEnIY8+CvG3qFtsX4oM//ExuislYawqmChhp7A8IaMLeBoXmc3AdvvuZ/7CS/Kq/XwJApIPy9apRtqJp5zG5R9TvqEmCtCqtemvAmT0n9WsvDWev4YCIWj9wMiRlmT7HemL+5qFiKOmvo9lTd4NPRL3+gIPHCqXHyxacg=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 ea3ecdaaf4d5112fe3148cb52385f928a3cc53f4", "sha256"=>"SSHFP 1 2 961dddd0fb580a5c0d1db74c16560fa37529cf4d162c13de99a880b1e91fd424"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAIEAz60kx84oy4edq6Nt2/SMQfQVVXoic/64JQ45EnwGKlMYvU3Okp3pT7uqyl+I5mXFjTB7wzLfIxzK5beofKDUbXNM5BwVeFQuZLR/hRusuvR5ntOce2kFMnyFteuvBue7Tg8YMGHAEM7fjfcqvuQgxWMELMJFwq0yUcl/aOL/o+U="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAIBt3ynjIBp7/uKbi9RdcO5DiIA0l7y4BmHsfm9042jYtMvIZkMF9cqwvxHjgoHW9JZGGNgIxUK/q0vjuGzctspVUovGBfL+m7F9Lp0rAHZVRkRm1wzGtjCPcdq35J9uVVj0YiHKvuuRvpooVtF55fe9ZfvwPBW41n9+eCX+yjY9AAAAFQC79jdm/KtE/8yXT6r1dMs63sF70wAAAIBC1yGHJcpRJt5NPi0t+eFQu6sDxxUeaaChW4u8BFLT4NXQ6SgBGW7FpT/zEaYEn2UZeQ8Mk3jAycUckyq5qSmWpunTHWdz8iKuuzPSyMgAYXwv0nGL+soRwGcjFdHIhCi2LGloN8JZpE/Kz2ry7yThwL7qMq3i8FFlovWDesAyzAAAAIATGYMDBcEnIY8+CvG3qFtsX4oM//ExuislYawqmChhp7A8IaMLeBoXmc3AdvvuZ/7CS/Kq/XwJApIPy9apRtqJp5zG5R9TvqEmCtCqtemvAmT0n9WsvDWev4YCIWj9wMiRlmT7HemL+5qFiKOmvo9lTd4NPRL3+gIPHCqXHyxacg==", "sshfp_dsa"=>"SSHFP 2 1 c9a8316e12052c89f9c8eea38c433c50950d5798\nSSHFP 2 2 26773f31bd38b64224ee474eec7659dc05f23f8cb43e8352c1b58545bf5bbb15", "sshfp_rsa"=>"SSHFP 1 1 ea3ecdaaf4d5112fe3148cb52385f928a3cc53f4\nSSHFP 1 2 961dddd0fb580a5c0d1db74c16560fa37529cf4d162c13de99a880b1e91fd424", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAIEAz60kx84oy4edq6Nt2/SMQfQVVXoic/64JQ45EnwGKlMYvU3Okp3pT7uqyl+I5mXFjTB7wzLfIxzK5beofKDUbXNM5BwVeFQuZLR/hRusuvR5ntOce2kFMnyFteuvBue7Tg8YMGHAEM7fjfcqvuQgxWMELMJFwq0yUcl/aOL/o+U=", "staging_http_get"=>"curl", "swapfree"=>"4.00 GiB", "swapfree_mb"=>4095.9921875, "swapsize"=>"4.00 GiB", "swapsize_mb"=>4095.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1860, "uptime"=>"0:31 hours"}, "timezone"=>"PDT", "uptime"=>"0:31 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1860, "virtual"=>"zone", "zfs_featurenumbers"=>"1,2,3,4,5,6", "zfs_version"=>"6", "zone_cisparc10_brand"=>"solaris10", "zone_cisparc10_id"=>"36", "zone_cisparc10_iptype"=>"excl", "zone_cisparc10_name"=>"solaris-10_u9-sparc-t4-64", "zone_cisparc10_path"=>"/", "zone_cisparc10_status"=>"running", "zonename"=>"solaris-10_u9-sparc-t4-64", "zones"=>1, "zpool_featurenumbers"=>"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35", "zpool_version"=>"35", "clientcert"=>"solaris-10_u9-sparc-t4-64.puppet.example", "clientversion"=>"4.4.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'solaris-10_u9-sparc-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_solaris-11.2-sparc-64_spec.rb b/.onceover/spec/classes/role__node_on_solaris-11.2-sparc-64_spec.rb new file mode 100644 index 0000000..b2a134d --- /dev/null +++ b/.onceover/spec/classes/role__node_on_solaris-11.2-sparc-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set solaris-11.2-sparc-64" do + node_facts = {"aio_agent_build"=>"1.4.2", "aio_agent_version"=>"1.4.2", "architecture"=>"sun4v", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_sd4_size"=>-1168154624, "blockdevice_sd4_vendor"=>"HITACHI", "blockdevice_sd5_size"=>-647710720, "blockdevice_sd5_vendor"=>"HITACHI", "blockdevice_sd6_size"=>0, "blockdevice_sd6_vendor"=>"AMI", "blockdevice_sd7_size"=>0, "blockdevice_sd7_vendor"=>"TEAC", "blockdevice_sd8_size"=>-1168154624, "blockdevice_sd8_vendor"=>"HITACHI", "blockdevice_sd9_size"=>-647710720, "blockdevice_sd9_vendor"=>"HITACHI", "blockdevices"=>"sd4,sd5,sd8,sd9,sd7,sd6", "custom_auth_conf"=>false, "dhcp_servers"=>{"net0"=>"10.32.22.10", "system"=>"10.32.22.10"}, "disks"=>{"sd4"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd5"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}, "sd6"=>{"product"=>"Virtual CDROM Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"AMI"}, "sd7"=>{"product"=>"DV-W28SS-W Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"TEAC"}, "sd8"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd9"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}}, "dmi"=>{"manufacturer"=>"Oracle Corporation"}, "domain"=>"puppet.example", "facterversion"=>"3.1.6", "fqdn"=>"solaris-11_2-sparc-t4-64.puppet.example", "gid"=>"root", "hardwareisa"=>"sparc", "hardwaremodel"=>"sun4v", "hostname"=>"solaris-11_2-sparc-t4-64", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,net0", "ipaddress"=>"10.32.77.68", "ipaddress_lo0"=>"127.0.0.1", "ipaddress_net0"=>"10.32.77.68", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"SunOS", "kernelmajversion"=>"11", "kernelrelease"=>"5.11", "kernelversion"=>"11.2", "load_averages"=>{"15m"=>1.0234375, "1m"=>1.21875, "5m"=>1.28125}, "macaddress"=>"02:08:20:41:26:8c", "macaddress_net0"=>"02:08:20:41:26:8c", "manufacturer"=>"Oracle Corporation", "memory"=>{"swap"=>{"available"=>"4.00 GiB", "available_bytes"=>-8192, "capacity"=>"0%", "total"=>"4.00 GiB", "total_bytes"=>-8192, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"2.34 GiB", "available_bytes"=>-1777401856, "capacity"=>"84.80%", "total"=>"15.43 GiB", "total_bytes"=>-611737600, "used"=>"13.09 GiB", "used_bytes"=>1165664256}}, "memoryfree"=>"2.34 GiB", "memoryfree_mb"=>2400.9375, "memorysize"=>"15.43 GiB", "memorysize_mb"=>15800.6015625, "mountpoints"=>{"/"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.18%", "device"=>"rpool/ROOT/solaris-0", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc/root/", "zone=cisparc", "nozonemod", "sharezone=38", "dev=495017b"], "size"=>"476.16 GiB", "size_bytes"=>175171072, "used"=>"889.53 MiB", "used_bytes"=>932736000}, "/dev"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"/dev", "filesystem"=>"dev", "options"=>["zone=cisparc", "nozonemod", "sharezone=38", "dev=8e0001c"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/fd"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"fd", "filesystem"=>"fd", "options"=>["rw", "nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=9040027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/dfs/sharetab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"sharefs", "filesystem"=>"sharefs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8f40016"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/mnttab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mnttab", "filesystem"=>"mntfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8e80027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/export"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/export", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=495017f"], "size"=>"475.29 GiB", "size_bytes"=>-757532160, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/export/home"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/export/home", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950180"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/proc"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"proc", "filesystem"=>"proc", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8dc0026"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/rpool"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950181"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/system/contract"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"ctfs", "filesystem"=>"ctfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8e40027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/object"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"objfs", "filesystem"=>"objfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8f00027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/volatile"=>{"available"=>"4.53 GiB", "available_bytes"=>571752448, "capacity"=>"0.01%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc", "sharezone=38", "dev=8ec004d"], "size"=>"4.53 GiB", "size_bytes"=>572342272, "used"=>"576.00 KiB", "used_bytes"=>589824}, "/tmp"=>{"available"=>"4.53 GiB", "available_bytes"=>571752448, "capacity"=>"0.95%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc", "sharezone=38", "dev=8ec004e"], "size"=>"4.58 GiB", "size_bytes"=>618414080, "used"=>"44.50 MiB", "used_bytes"=>46661632}, "/var"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.05%", "device"=>"rpool/ROOT/solaris-0/var", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc/root/var", "zone=cisparc", "nozonemod", "sharezone=38", "dev=495017d"], "size"=>"475.51 GiB", "size_bytes"=>-521269760, "used"=>"225.35 MiB", "used_bytes"=>236295168}, "/var/share"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=495017e"], "size"=>"475.30 GiB", "size_bytes"=>-756610048, "used"=>"932.50 KiB", "used_bytes"=>954880}, "/var/share/pkg"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE/pkg", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950182"], "size"=>"475.29 GiB", "size_bytes"=>-757532160, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/var/share/pkg/repositories"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE/pkg/repositories", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950183"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}}, "mtu_lo0"=>8232, "mtu_net0"=>1500, "netmask"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "netmask_net0"=>"255.255.255.0", "network"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "network_net0"=>"10.32.77.0", "networking"=>{"dhcp"=>"10.32.22.10", "domain"=>"puppet.example", "fqdn"=>"solaris-11_2-sparc-t4-64.puppet.example", "hostname"=>"solaris-11_2-sparc-t4-64", "interfaces"=>{"lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "ip"=>"127.0.0.1", "mtu"=>8232, "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, "net0"=>{"bindings"=>[{"address"=>"10.32.77.68", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "dhcp"=>"10.32.22.10", "ip"=>"10.32.77.68", "mac"=>"02:08:20:41:26:8c", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}}, "ip"=>"10.32.77.68", "mac"=>"02:08:20:41:26:8c", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"net0"}, "operatingsystem"=>"Solaris", "operatingsystemmajrelease"=>"11", "operatingsystemrelease"=>"11.2", "os"=>{"architecture"=>"sun4v", "family"=>"Solaris", "hardware"=>"sun4v", "name"=>"Solaris", "release"=>{"full"=>"11.2", "major"=>"11", "minor"=>"2"}}, "osfamily"=>"Solaris", "path"=>"PATH:/opt/puppetlabs/bin:/usr/sbin:/usr/bin:/sbin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"solaris-11-sparc", "processor0"=>"SPARC-T4", "processor1"=>"SPARC-T4", "processor10"=>"SPARC-T4", "processor11"=>"SPARC-T4", "processor12"=>"SPARC-T4", "processor13"=>"SPARC-T4", "processor14"=>"SPARC-T4", "processor15"=>"SPARC-T4", "processor16"=>"SPARC-T4", "processor17"=>"SPARC-T4", "processor18"=>"SPARC-T4", "processor19"=>"SPARC-T4", "processor2"=>"SPARC-T4", "processor20"=>"SPARC-T4", "processor21"=>"SPARC-T4", "processor22"=>"SPARC-T4", "processor23"=>"SPARC-T4", "processor24"=>"SPARC-T4", "processor25"=>"SPARC-T4", "processor26"=>"SPARC-T4", "processor27"=>"SPARC-T4", "processor28"=>"SPARC-T4", "processor29"=>"SPARC-T4", "processor3"=>"SPARC-T4", "processor30"=>"SPARC-T4", "processor31"=>"SPARC-T4", "processor32"=>"SPARC-T4", "processor33"=>"SPARC-T4", "processor34"=>"SPARC-T4", "processor35"=>"SPARC-T4", "processor36"=>"SPARC-T4", "processor37"=>"SPARC-T4", "processor38"=>"SPARC-T4", "processor39"=>"SPARC-T4", "processor4"=>"SPARC-T4", "processor40"=>"SPARC-T4", "processor41"=>"SPARC-T4", "processor42"=>"SPARC-T4", "processor43"=>"SPARC-T4", "processor44"=>"SPARC-T4", "processor45"=>"SPARC-T4", "processor46"=>"SPARC-T4", "processor47"=>"SPARC-T4", "processor48"=>"SPARC-T4", "processor49"=>"SPARC-T4", "processor5"=>"SPARC-T4", "processor50"=>"SPARC-T4", "processor51"=>"SPARC-T4", "processor52"=>"SPARC-T4", "processor53"=>"SPARC-T4", "processor54"=>"SPARC-T4", "processor55"=>"SPARC-T4", "processor56"=>"SPARC-T4", "processor57"=>"SPARC-T4", "processor58"=>"SPARC-T4", "processor59"=>"SPARC-T4", "processor6"=>"SPARC-T4", "processor60"=>"SPARC-T4", "processor61"=>"SPARC-T4", "processor62"=>"SPARC-T4", "processor63"=>"SPARC-T4", "processor7"=>"SPARC-T4", "processor8"=>"SPARC-T4", "processor9"=>"SPARC-T4", "processorcount"=>64, "processors"=>{"count"=>64, "isa"=>"sparc", "models"=>["SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4"], "physicalcount"=>1, "speed"=>"2.85 GHz"}, "puppet_files_dir_present"=>false, "puppetversion"=>"4.4.2", "ruby"=>{"platform"=>"sparc-solaris2.11", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.8"}, "rubyplatform"=>"sparc-solaris2.11", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.8", "solaris_zones"=>{"current"=>"cisparc", "zones"=>{"cisparc"=>{"brand"=>"solaris", "id"=>"38", "ip_type"=>"excl", "path"=>"/", "status"=>"running", "uuid"=>"9903e75b-f048-4e38-83b3-977cde7b3782"}}}, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 db349d276f0d3465ddf320d4f39d91349f1b576f", "sha256"=>"SSHFP 2 2 b8e58d26d36f2ce088034a1ce3be70b03ef404671f0c6ed3256152af9c9ad607"}, "key"=>"AAAAB3NzaC1kc3MAAACBAMVAhiKM1nrem5tlbgwagi6NKV1e6RIpLxXj+vovBAb/vWf6+in2lBrxLqljbxYWq1XTOJoXUTybb24gpnDwZC2v/5TytqJ35P4ptOH1fY2zthRnkgyYUMfF7nLslOgoy24A19uwmR3lhFpklhCUe1xkMHOXkToujrfym+nwpFZ5AAAAFQDRqOSYA1u47UtVMg4zXL0txwFHIwAAAIBNxcSYfeOSQrkFawbG0GQpSNs2Z/iqFDbJFz/Ha1xkitkpmBBNizRva5tqNR8uaK/VHoIdaK7Rn1qS/D2Sl3w4Ps4UhEN9qOOylQplUmqb4JAFtAFInDMIHz/69SYMyBJ9eXQHh8mOeLX8s2lQow+Z/iOVpAlGIB0PxrHClqSN5AAAAIEAqHqE/Ry0hL98YpXRvMw0kpMl439iXQjzfx3IgJzSScNpNx3G5QDDysSu8dzanOvqXxJ0ynwc1LxuXhuvq4hJ990snyYLOgNOOJ5v86G1TkXTq3Ny0gb+7efiwI7u4xIY6WrQeXt32hbRY0kF/MswmKjz3NSBK6jozSNwHlP6jeA="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 865be76b66792c0d98006a6ed5227f19f8241cf3", "sha256"=>"SSHFP 1 2 c74d9f97237b06070909f30fbb68afbe0943450a8ea3d1b85fb16db53441a824"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA8bZpHkHvgZEBhn7qlupS61DjwXYOnTVFuaOaDI6eesXxU1yDJfEqO1eHp6YF6x5gmM/mDyfFU9hixMmH9yLRgi2/QUhoYa44z8NB3EBaHxFtLQLnoFTGq/VR5xZ+pyBcbwUswvDel3OfXTcepmT6lWLCBRLOfYTc6hzwRCfyrWgdVc3kruu9hh9pKIWFEyUUztHWuR7+akNH3nD+EcqsmuMowEzzssWC8msWnAX89geFPuhilAgz7Qcc1bJZUaWGgOzyaZKn3IVNNa3grOWzgKDE6gdLMefnk0dgndtIbB1E9iY1syosQCrBIiEfMMGEBjrDstcNKs+Ge8stRljjMw=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAMVAhiKM1nrem5tlbgwagi6NKV1e6RIpLxXj+vovBAb/vWf6+in2lBrxLqljbxYWq1XTOJoXUTybb24gpnDwZC2v/5TytqJ35P4ptOH1fY2zthRnkgyYUMfF7nLslOgoy24A19uwmR3lhFpklhCUe1xkMHOXkToujrfym+nwpFZ5AAAAFQDRqOSYA1u47UtVMg4zXL0txwFHIwAAAIBNxcSYfeOSQrkFawbG0GQpSNs2Z/iqFDbJFz/Ha1xkitkpmBBNizRva5tqNR8uaK/VHoIdaK7Rn1qS/D2Sl3w4Ps4UhEN9qOOylQplUmqb4JAFtAFInDMIHz/69SYMyBJ9eXQHh8mOeLX8s2lQow+Z/iOVpAlGIB0PxrHClqSN5AAAAIEAqHqE/Ry0hL98YpXRvMw0kpMl439iXQjzfx3IgJzSScNpNx3G5QDDysSu8dzanOvqXxJ0ynwc1LxuXhuvq4hJ990snyYLOgNOOJ5v86G1TkXTq3Ny0gb+7efiwI7u4xIY6WrQeXt32hbRY0kF/MswmKjz3NSBK6jozSNwHlP6jeA=", "sshfp_dsa"=>"SSHFP 2 1 db349d276f0d3465ddf320d4f39d91349f1b576f\nSSHFP 2 2 b8e58d26d36f2ce088034a1ce3be70b03ef404671f0c6ed3256152af9c9ad607", "sshfp_rsa"=>"SSHFP 1 1 865be76b66792c0d98006a6ed5227f19f8241cf3\nSSHFP 1 2 c74d9f97237b06070909f30fbb68afbe0943450a8ea3d1b85fb16db53441a824", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA8bZpHkHvgZEBhn7qlupS61DjwXYOnTVFuaOaDI6eesXxU1yDJfEqO1eHp6YF6x5gmM/mDyfFU9hixMmH9yLRgi2/QUhoYa44z8NB3EBaHxFtLQLnoFTGq/VR5xZ+pyBcbwUswvDel3OfXTcepmT6lWLCBRLOfYTc6hzwRCfyrWgdVc3kruu9hh9pKIWFEyUUztHWuR7+akNH3nD+EcqsmuMowEzzssWC8msWnAX89geFPuhilAgz7Qcc1bJZUaWGgOzyaZKn3IVNNa3grOWzgKDE6gdLMefnk0dgndtIbB1E9iY1syosQCrBIiEfMMGEBjrDstcNKs+Ge8stRljjMw==", "staging_http_get"=>"curl", "swapfree"=>"4.00 GiB", "swapfree_mb"=>4095.9921875, "swapsize"=>"4.00 GiB", "swapsize_mb"=>4095.9921875, "system_uptime"=>{"days"=>2, "hours"=>62, "seconds"=>225780, "uptime"=>"2 days"}, "timezone"=>"PDT", "uptime"=>"2 days", "uptime_days"=>2, "uptime_hours"=>62, "uptime_seconds"=>225780, "virtual"=>"zone", "zfs_featurenumbers"=>"1,2,3,4,5,6", "zfs_version"=>"6", "zone_cisparc_brand"=>"solaris", "zone_cisparc_id"=>"38", "zone_cisparc_iptype"=>"excl", "zone_cisparc_name"=>"cisparc", "zone_cisparc_path"=>"/", "zone_cisparc_status"=>"running", "zone_cisparc_uuid"=>"9903e75b-f048-4e38-83b3-977cde7b3782", "zonename"=>"cisparc", "zones"=>1, "zpool_featurenumbers"=>"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35", "zpool_version"=>"35", "clientcert"=>"solaris-11_2-sparc-t4-64.puppet.example", "clientversion"=>"4.4.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'solaris-11.2-sparc-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__node_on_windows-10-64_spec.rb b/.onceover/spec/classes/role__node_on_windows-10-64_spec.rb new file mode 100644 index 0000000..858d4f9 --- /dev/null +++ b/.onceover/spec/classes/role__node_on_windows-10-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::node" do + + context "using fact set windows-10-64" do + node_facts = {"puppetversion"=>"6.0.2", "puppet_inventory_metadata"=>{"packages"=>{"collection_enabled"=>false, "last_collection_time"=>"0.0s"}}, "package_provider"=>"windows", "pe_concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/pe_concat", "is_pe"=>false, "platform_symlink_writable"=>false, "puppet_files_dir_present"=>false, "puppet_vardir"=>"C:/ProgramData/PuppetLabs/puppet/cache", "puppet_environmentpath"=>"C:/ProgramData/PuppetLabs/code/environments", "puppet_server"=>"pe-puppet.localdomain", "service_provider"=>"windows", "staging_http_get"=>"curl", "common_appdata"=>"C:\\ProgramData", "architecture"=>"x64", "kernel"=>"windows", "virtual"=>"vmware", "is_virtual"=>true, "hardwaremodel"=>"x64", "operatingsystem"=>"windows", "os"=>{"name"=>"windows", "family"=>"windows", "release"=>{"major"=>"10", "full"=>"10"}}, "facterversion"=>"2.5.1", "fqdn"=>"VAGRANT-HB9G3RD", "hostname"=>"VAGRANT-HB9G3RD", "id"=>"vagrant-hb9g3rd\\vagrant", "interfaces"=>"Ethernet0_2", "ipaddress_ethernet0_2"=>"192.168.43.174", "ipaddress6_ethernet0_2"=>"fd72:b3ab:b8dd:0:f563:fac2:928c:6aa", "macaddress_ethernet0_2"=>"00:0C:29:A3:53:54", "netmask_ethernet0_2"=>"255.255.255.0", "mtu_ethernet0_2"=>0, "ipaddress"=>"192.168.43.174", "ipaddress6"=>"fd72:b3ab:b8dd:0:f563:fac2:928c:6aa", "kernelmajversion"=>"10.0", "kernelrelease"=>"10.0.17134", "kernelversion"=>"10.0.17134", "macaddress"=>"00:0C:29:A3:53:54", "manufacturer"=>"Phoenix Technologies LTD", "serialnumber"=>"VMware-56 4d 36 2e 2e a4 81 f9-0d 05 ae d0 e5 a3 53 54", "productname"=>"VMware Virtual Platform", "memorysize"=>"4.00 GB", "memoryfree"=>"2.30 GB", "memorysize_mb"=>"4095.49", "memoryfree_mb"=>"2360.00", "netmask"=>"255.255.255.0", "network_ethernet0_2"=>"192.168.43.0", "operatingsystemmajrelease"=>"10", "operatingsystemrelease"=>"10", "osfamily"=>"windows", "path"=>"C:\\tools\\ruby24\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;C:\\ProgramData\\chocolatey\\bin;C:\\Program Files (x86)\\vim\\vim80;C:\\Program Files\\Git\\cmd;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Users\\vagrant\\AppData\\Local\\Microsoft\\WindowsApps;", "physicalprocessorcount"=>4, "processors"=>{"models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "count"=>4, "physicalcount"=>4}, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor2"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor3"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>4, "ps"=>"tasklist.exe", "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/tools/ruby24/lib/ruby/site_ruby/2.4.0", "rubyversion"=>"2.4.3", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"seconds"=>1113359, "hours"=>309, "days"=>12, "uptime"=>"12 days"}, "timezone"=>"GMT Standard Time", "uptime"=>"12 days", "uptime_days"=>12, "uptime_hours"=>309, "uptime_seconds"=>1113359, "clientcert"=>"vagrant-hb9g3rd.lan.asio", "clientversion"=>"6.0.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::node' +$onceover_node = 'windows-10-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_AIX-6.1-powerpc_spec.rb b/.onceover/spec/classes/role__puppetserver_on_AIX-6.1-powerpc_spec.rb new file mode 100644 index 0000000..28af28a --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_AIX-6.1-powerpc_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set AIX-6.1-powerpc" do + node_facts = {"aio_agent_version"=>"1.8.2", "architecture"=>"PowerPC_POWER7", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "domain"=>"delivery.puppetlabs.net", "facterversion"=>"3.5.0", "fqdn"=>"pe-aix-61-se.delivery.puppetlabs.net", "gid"=>"system", "hardwareisa"=>"powerpc", "hardwaremodel"=>"IBM,8231-E1D", "hostname"=>"pe-aix-61-se", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"system", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,en0", "ipaddress"=>"10.32.77.35", "ipaddress6_lo0"=>"::1", "ipaddress_en0"=>"10.32.77.35", "ipaddress_lo0"=>"127.0.0.1", "kernel"=>"AIX", "kernelmajversion"=>"6100", "kernelrelease"=>"6100-07-04-1216", "kernelversion"=>"6100", "macaddress"=>"66:a4:d9:f8:4a:04", "macaddress_en0"=>"66:a4:d9:f8:4a:04", "memory"=>{"swap"=>{"available"=>"410.43 MiB", "available_bytes"=>430366720, "capacity"=>"19.84%", "total"=>"512.00 MiB", "total_bytes"=>536870912, "used"=>"101.57 MiB", "used_bytes"=>106504192}, "system"=>{"available"=>"10.88 MiB", "available_bytes"=>11403264, "capacity"=>"98.94%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"1013.13 MiB", "used_bytes"=>1062338560}}, "memoryfree"=>"10.88 MiB", "memoryfree_mb"=>10.875, "memorysize"=>"1.00 GiB", "memorysize_mb"=>1024.0, "mtu_en0"=>1500, "mtu_lo0"=>16896, "netmask"=>"255.255.255.0", "netmask6_lo0"=>"::", "netmask_en0"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "network"=>"10.32.77.0", "network6_lo0"=>"::", "network_en0"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "networking"=>{"domain"=>"delivery.puppetlabs.net", "fqdn"=>"pe-aix-61-se.delivery.puppetlabs.net", "hostname"=>"pe-aix-61-se", "interfaces"=>{"en0"=>{"bindings"=>[{"address"=>"10.32.77.35", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.35", "mac"=>"66:a4:d9:f8:4a:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}, "lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"::", "network"=>"::"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16896, "netmask"=>"255.0.0.0", "netmask6"=>"::", "network"=>"127.0.0.0", "network6"=>"::"}}, "ip"=>"10.32.77.35", "mac"=>"66:a4:d9:f8:4a:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"en0"}, "operatingsystem"=>"AIX", "operatingsystemmajrelease"=>"6100", "operatingsystemrelease"=>"6100-07-04-1216", "os"=>{"architecture"=>"PowerPC_POWER7", "family"=>"AIX", "hardware"=>"IBM,8231-E1D", "name"=>"AIX", "release"=>{"full"=>"6100-07-04-1216", "major"=>"6100"}}, "osfamily"=>"AIX", "path"=>"::/usr/bin:/etc:/usr/sbin:/sbin", "processor0"=>"PowerPC_POWER7", "processor1"=>"PowerPC_POWER7", "processor2"=>"PowerPC_POWER7", "processor3"=>"PowerPC_POWER7", "processor4"=>"PowerPC_POWER7", "processor5"=>"PowerPC_POWER7", "processor6"=>"PowerPC_POWER7", "processor7"=>"PowerPC_POWER7", "processorcount"=>8, "processors"=>{"count"=>8, "isa"=>"powerpc", "models"=>["PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7"], "speed"=>"4.23 GHz"}, "puppetversion"=>"4.8.1", "ruby"=>{"platform"=>"powerpc-aix6.1.0.0", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"powerpc-aix6.1.0.0", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "serialnumber"=>"21280CV", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 571109ba578ea17c854dcefad0e667bbbe4232c2", "sha256"=>"SSHFP 2 2 acd6ea2ff8cc0a0a8be88e6dada2688a17b7adb2a52312745208696f99dce945"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPJEJEzFa4YmVyS17c4Cs8ZWFJIg+igYRWiG/oJ4KMAu9R+cq3TuokGp0h5/T69yNeOn32h1WPYPIjnr14FyOr5Bb6+h+ej3WKnS1IpAGSy2H8Z21r4Cz0qX+madm/dGrtN1TI+6OV1xXXICZB0F0Lg4xilzix431nGunqbm1XXLAAAAFQDjxidL5XtudVMcTUzGFQ33cVwdTwAAAIBUjvKhMQP1304lW+Fr7A35ypaQrCVbsJFQD4egb9fGKY5WKIlQo7UGS/jvDtPS7iRDaLdiC2K5D4MYM9EUHgkprIO1d/o0i2UsYgec8WCJSBja/I4n0slEl7XEwM3SmnYNT0xfZM01Caj9+AyJFtRoF7l00QjSoxyOGMlEfvbCDAAAAIEA8MTmNjwDneigJnnxK9ZL4cvW4zQ+PQDglCdjJ2sB/IcpSvVyu6R9jbHSnfKhergRmmNJzKNA1Oc/INvNr4i9FFAuXEKkafmUyMavgd19uMxdpTAcvOJxwhG8TCrLQtJbm8Rn1e5wFM+4wnpc2y7HsBYGonmK9O5p9Fd3qkUx4BY="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 2faed3b06ba31bcbf069dcdb759d36730a2c649d", "sha256"=>"SSHFP 1 2 51fbfd79200a8667eeb1a8a4eee2487bbdee663189a9ca86a07069f5d95f9826"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDP+DHJRMbR8a4WvTwUGnz9rq+hHDVcP26xG+WIvIC5vlBk/N2lcrD7qs45Ht1kpZo4k4td+PQmi2k6I3BSVEeR9FTwbHEtjv8op1F7VTPXSSdY+90/CiQ4MA5s7d2Lbm5jipMV6dCneYZWsEkHKHzcp/Qst3w+0JSAHpx1wEOAlk/uJuLHHvAFYPZtdwzxTOW8/di5CpBIz/Pl1gcO8vQrFygvkFdYKPL44/zS3MZbmi7Hi6Q0PdcarFlWn6IodAlVSrJ/hcBbMkXJWV2L3zCt5nX4tJkYoOU9IIjGQEh+1cmIcWGdXpyvyaUnbSXJsFP9yAzi+MszYLJq9mUKIYch"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPJEJEzFa4YmVyS17c4Cs8ZWFJIg+igYRWiG/oJ4KMAu9R+cq3TuokGp0h5/T69yNeOn32h1WPYPIjnr14FyOr5Bb6+h+ej3WKnS1IpAGSy2H8Z21r4Cz0qX+madm/dGrtN1TI+6OV1xXXICZB0F0Lg4xilzix431nGunqbm1XXLAAAAFQDjxidL5XtudVMcTUzGFQ33cVwdTwAAAIBUjvKhMQP1304lW+Fr7A35ypaQrCVbsJFQD4egb9fGKY5WKIlQo7UGS/jvDtPS7iRDaLdiC2K5D4MYM9EUHgkprIO1d/o0i2UsYgec8WCJSBja/I4n0slEl7XEwM3SmnYNT0xfZM01Caj9+AyJFtRoF7l00QjSoxyOGMlEfvbCDAAAAIEA8MTmNjwDneigJnnxK9ZL4cvW4zQ+PQDglCdjJ2sB/IcpSvVyu6R9jbHSnfKhergRmmNJzKNA1Oc/INvNr4i9FFAuXEKkafmUyMavgd19uMxdpTAcvOJxwhG8TCrLQtJbm8Rn1e5wFM+4wnpc2y7HsBYGonmK9O5p9Fd3qkUx4BY=", "sshfp_dsa"=>"SSHFP 2 1 571109ba578ea17c854dcefad0e667bbbe4232c2\nSSHFP 2 2 acd6ea2ff8cc0a0a8be88e6dada2688a17b7adb2a52312745208696f99dce945", "sshfp_rsa"=>"SSHFP 1 1 2faed3b06ba31bcbf069dcdb759d36730a2c649d\nSSHFP 1 2 51fbfd79200a8667eeb1a8a4eee2487bbdee663189a9ca86a07069f5d95f9826", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDP+DHJRMbR8a4WvTwUGnz9rq+hHDVcP26xG+WIvIC5vlBk/N2lcrD7qs45Ht1kpZo4k4td+PQmi2k6I3BSVEeR9FTwbHEtjv8op1F7VTPXSSdY+90/CiQ4MA5s7d2Lbm5jipMV6dCneYZWsEkHKHzcp/Qst3w+0JSAHpx1wEOAlk/uJuLHHvAFYPZtdwzxTOW8/di5CpBIz/Pl1gcO8vQrFygvkFdYKPL44/zS3MZbmi7Hi6Q0PdcarFlWn6IodAlVSrJ/hcBbMkXJWV2L3zCt5nX4tJkYoOU9IIjGQEh+1cmIcWGdXpyvyaUnbSXJsFP9yAzi+MszYLJq9mUKIYch", "swapfree"=>"410.43 MiB", "swapfree_mb"=>410.4296875, "swapsize"=>"512.00 MiB", "swapsize_mb"=>512.0, "system_uptime"=>{"days"=>418, "hours"=>10035, "seconds"=>36127200, "uptime"=>"418 days"}, "timezone"=>"PST", "uptime"=>"418 days", "uptime_days"=>418, "uptime_hours"=>10035, "uptime_seconds"=>36127200, "clientcert"=>"pe-aix-61-se.delivery.puppetlabs.net", "clientversion"=>"4.8.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'AIX-6.1-powerpc' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_AIX-7.1-powerpc_spec.rb b/.onceover/spec/classes/role__puppetserver_on_AIX-7.1-powerpc_spec.rb new file mode 100644 index 0000000..5950a20 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_AIX-7.1-powerpc_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set AIX-7.1-powerpc" do + node_facts = {"aio_agent_version"=>"1.5.2", "architecture"=>"PowerPC_POWER7", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "domain"=>"delivery.puppetlabs.net", "facterversion"=>"3.2.0", "fqdn"=>"pe-aix-71-se.delivery.puppetlabs.net", "gid"=>"system", "hardwareisa"=>"powerpc", "hardwaremodel"=>"IBM,8231-E1D", "hostname"=>"pe-aix-71-se", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"system", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,en0", "ipaddress"=>"10.32.77.36", "ipaddress6_lo0"=>"::1", "ipaddress_en0"=>"10.32.77.36", "ipaddress_lo0"=>"127.0.0.1", "is_pe"=>false, "kernel"=>"AIX", "kernelmajversion"=>"7100", "kernelrelease"=>"7100-01-05-1228", "kernelversion"=>"7100", "macaddress"=>"66:a4:dc:28:bf:04", "macaddress_en0"=>"66:a4:dc:28:bf:04", "memory"=>{"swap"=>{"available"=>"1007.14 MiB", "available_bytes"=>1056063488, "capacity"=>"1.65%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"16.86 MiB", "used_bytes"=>17678336}, "system"=>{"available"=>"16.84 MiB", "available_bytes"=>17653760, "capacity"=>"98.36%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"1007.16 MiB", "used_bytes"=>1056088064}}, "memoryfree"=>"16.84 MiB", "memoryfree_mb"=>16.8359375, "memorysize"=>"1.00 GiB", "memorysize_mb"=>1024.0, "mtu_en0"=>1500, "mtu_lo0"=>16896, "netmask"=>"255.255.255.0", "netmask6_lo0"=>"::", "netmask_en0"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "network"=>"10.32.77.0", "network6_lo0"=>"::", "network_en0"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "networking"=>{"domain"=>"delivery.puppetlabs.net", "fqdn"=>"pe-aix-71-se.delivery.puppetlabs.net", "hostname"=>"pe-aix-71-se", "interfaces"=>{"en0"=>{"bindings"=>[{"address"=>"10.32.77.36", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.36", "mac"=>"66:a4:dc:28:bf:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}, "lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"::", "network"=>"::"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16896, "netmask"=>"255.0.0.0", "netmask6"=>"::", "network"=>"127.0.0.0", "network6"=>"::"}}, "ip"=>"10.32.77.36", "mac"=>"66:a4:dc:28:bf:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"en0"}, "operatingsystem"=>"AIX", "operatingsystemmajrelease"=>"7100", "operatingsystemrelease"=>"7100-01-05-1228", "os"=>{"architecture"=>"PowerPC_POWER7", "family"=>"AIX", "hardware"=>"IBM,8231-E1D", "name"=>"AIX", "release"=>{"full"=>"7100-01-05-1228", "major"=>"7100"}}, "osfamily"=>"AIX", "package_provider"=>"aix", "path"=>"::/usr/bin:/etc:/usr/sbin:/sbin", "processor0"=>"PowerPC_POWER7", "processor1"=>"PowerPC_POWER7", "processor2"=>"PowerPC_POWER7", "processor3"=>"PowerPC_POWER7", "processor4"=>"PowerPC_POWER7", "processor5"=>"PowerPC_POWER7", "processor6"=>"PowerPC_POWER7", "processor7"=>"PowerPC_POWER7", "processorcount"=>8, "processors"=>{"count"=>8, "isa"=>"powerpc", "models"=>["PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7"], "speed"=>"4.23 GHz"}, "puppet_environmentpath"=>"/etc/puppetlabs/code/environments", "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.5.2", "root_home"=>"/root", "ruby"=>{"platform"=>"powerpc-aix7.1.0.0", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"powerpc-aix7.1.0.0", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "serialnumber"=>"21280CV", "service_provider"=>"src", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1bbfbd9caff8924d4584cbb2a748f1be2690d04c", "sha256"=>"SSHFP 2 2 73ec4c25ea880adfbb7f66c60e92fec0ff130c4988765b5799e4707a7cdde68a"}, "key"=>"AAAAB3NzaC1kc3MAAACBAI5I6MVkSh3bO0WVTWIxbB0VyoFrpIXjAtBBveHKQDiB5I9OmCGkzytyR7ERBG/yqFS04hcEX8JV//3DoJeLJ0vupRCDLr4HoTYDGS3Dkvb3wqLn8aaaadz4Ca8IgRbx0vr8ANQbu/XT0/eTv5fRs3YWeijPe4Zgto2x55Ap7UDlAAAAFQDtb/7QYsDVPUt0dVWhOehzBNvybwAAAIBTxxfl95ZRcFG7b2cWljphohnZGzZCJortjE76JBIhnXRlVnlXQFT98hrjkPwedjsj9KWM0RpiKOdas3QAM6iTWLoAv/4GcvAWDa7TuJ5fs3eeQO0yCsTzRzpPwkOv6dcHK6OWWLiGybf/kPxIb546COFONVekdyIdksfZzwJ41QAAAIEAgj+4V9gdRBZcOX7XchaNUPaezTc3pNG1HG8iYTiCTV28EkpkQgzMtW7pPU1Nzqv5CX0LnFS+QN4lTWtuqtADYWSu3soz+7GuL8u3vximAAp6RcmWYSRpIdIQkHGvcyAzT5LlNRhGc/bBPM6RNoCkPzjEDHJDOgTdPx+tRNWXb8Y="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 8957e5a6df12f351fd768ee9615b3906861ff4e5", "sha256"=>"SSHFP 1 2 5a2dddf4df75bc8f4f352d30a8192824e01386b4720708d249edec6f05c5eb81"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC38I+hMQxC/++t3XvgXPtpVglDV2Qp5Xqqp/ZmdJrW7gh3ylKWlOrJOlx72p9Qa2fTAU+eJpYeI8vAAKxtBqqoxVNfn9rGt8wR3eubcwm6CRLTCOqf2OoDJzyJw3RcgidhHuT2KPVYtNOpNEkFyTjtpru3RWrO08PLpT0simATc5XJrvSH9ODQCqzVi5Fhe58Kn1kyAmH9gr0vz/9zrhllBjxVhc3YFz2TKqnZD+zIYlYhoI1vm5zQSzUWA+8B9XBEGs3TUaSDKPANEwof2lt+auTHySlGRXTPL4D9mYw2BhrxRBESgLsbba23SVCMGPILDvb4JwI4vYc7E6AvrFIB"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAI5I6MVkSh3bO0WVTWIxbB0VyoFrpIXjAtBBveHKQDiB5I9OmCGkzytyR7ERBG/yqFS04hcEX8JV//3DoJeLJ0vupRCDLr4HoTYDGS3Dkvb3wqLn8aaaadz4Ca8IgRbx0vr8ANQbu/XT0/eTv5fRs3YWeijPe4Zgto2x55Ap7UDlAAAAFQDtb/7QYsDVPUt0dVWhOehzBNvybwAAAIBTxxfl95ZRcFG7b2cWljphohnZGzZCJortjE76JBIhnXRlVnlXQFT98hrjkPwedjsj9KWM0RpiKOdas3QAM6iTWLoAv/4GcvAWDa7TuJ5fs3eeQO0yCsTzRzpPwkOv6dcHK6OWWLiGybf/kPxIb546COFONVekdyIdksfZzwJ41QAAAIEAgj+4V9gdRBZcOX7XchaNUPaezTc3pNG1HG8iYTiCTV28EkpkQgzMtW7pPU1Nzqv5CX0LnFS+QN4lTWtuqtADYWSu3soz+7GuL8u3vximAAp6RcmWYSRpIdIQkHGvcyAzT5LlNRhGc/bBPM6RNoCkPzjEDHJDOgTdPx+tRNWXb8Y=", "sshfp_dsa"=>"SSHFP 2 1 1bbfbd9caff8924d4584cbb2a748f1be2690d04c\nSSHFP 2 2 73ec4c25ea880adfbb7f66c60e92fec0ff130c4988765b5799e4707a7cdde68a", "sshfp_rsa"=>"SSHFP 1 1 8957e5a6df12f351fd768ee9615b3906861ff4e5\nSSHFP 1 2 5a2dddf4df75bc8f4f352d30a8192824e01386b4720708d249edec6f05c5eb81", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC38I+hMQxC/++t3XvgXPtpVglDV2Qp5Xqqp/ZmdJrW7gh3ylKWlOrJOlx72p9Qa2fTAU+eJpYeI8vAAKxtBqqoxVNfn9rGt8wR3eubcwm6CRLTCOqf2OoDJzyJw3RcgidhHuT2KPVYtNOpNEkFyTjtpru3RWrO08PLpT0simATc5XJrvSH9ODQCqzVi5Fhe58Kn1kyAmH9gr0vz/9zrhllBjxVhc3YFz2TKqnZD+zIYlYhoI1vm5zQSzUWA+8B9XBEGs3TUaSDKPANEwof2lt+auTHySlGRXTPL4D9mYw2BhrxRBESgLsbba23SVCMGPILDvb4JwI4vYc7E6AvrFIB", "swapfree"=>"1007.14 MiB", "swapfree_mb"=>1007.140625, "swapsize"=>"1.00 GiB", "swapsize_mb"=>1024.0, "system_uptime"=>{"days"=>160, "hours"=>3847, "seconds"=>13852500, "uptime"=>"160 days"}, "timezone"=>"PST", "uptime"=>"160 days", "uptime_days"=>160, "uptime_hours"=>3847, "uptime_seconds"=>13852500, "clientcert"=>"pe-aix-71-se.delivery.puppetlabs.net", "clientversion"=>"4.5.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'AIX-7.1-powerpc' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Amazon-2018.03_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Amazon-2018.03_spec.rb new file mode 100644 index 0000000..413c5b8 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Amazon-2018.03_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Amazon-2018.03" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"10/16/2017", "bios_vendor"=>"Amazon EC2", "bios_version"=>"1.0", "blockdevice_nvme0n1_model"=>"Amazon Elastic Block Store", "blockdevice_nvme0n1_size"=>8589934592, "blockdevices"=>"nvme0n1", "boardassettag"=>"i-0816d4c53ff8dc6a2", "boardmanufacturer"=>"Amazon EC2", "chassisassettag"=>"Amazon EC2", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"172.31.0.1", "system"=>"172.31.0.1"}, "disks"=>{"nvme0n1"=>{"model"=>"Amazon Elastic Block Store", "size"=>"8.00 GiB", "size_bytes"=>8589934592}}, "dmi"=>{"bios"=>{"release_date"=>"10/16/2017", "vendor"=>"Amazon EC2", "version"=>"1.0"}, "board"=>{"asset_tag"=>"i-0816d4c53ff8dc6a2", "manufacturer"=>"Amazon EC2"}, "chassis"=>{"asset_tag"=>"Amazon EC2", "type"=>"Other"}, "manufacturer"=>"Amazon EC2", "product"=>{"name"=>"t3a.xlarge", "serial_number"=>"ec21b37d-28ce-a3c2-956e-527e2857aeda", "uuid"=>"EC21B37D-28CE-A3C2-956E-527E2857AEDA"}}, "domain"=>"us-west-2.compute.internal", "ec2_metadata"=>{"ami-id"=>"ami-01e24be29428c15b2", "ami-launch-index"=>"0", "ami-manifest-path"=>"(unknown)", "block-device-mapping"=>{"ami"=>"xvda", "root"=>"/dev/xvda"}, "events"=>{"maintenance"=>{"history"=>"[]", "scheduled"=>"[]"}}, "hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "identity-credentials"=>{"ec2"=>{"info"=>"{\n \"Code\" : \"Success\",\n \"LastUpdated\" : \"2019-05-07T01:03:28Z\",\n \"AccountId\" : \"581165678935\"\n}"}}, "instance-action"=>"none", "instance-id"=>"i-0816d4c53ff8dc6a2", "instance-type"=>"t3a.xlarge", "local-hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "local-ipv4"=>"172.31.3.153", "mac"=>"0a:ca:e0:39:c1:f6", "metrics"=>{"vhostmd"=>""}, "network"=>{"interfaces"=>{"macs"=>{"0a:ca:e0:39:c1:f6"=>{"device-number"=>"0", "interface-id"=>"eni-04e7710af3cf1699c", "ipv4-associations"=>{"34.209.204.164"=>"172.31.3.153"}, "local-hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "local-ipv4s"=>"172.31.3.153", "mac"=>"0a:ca:e0:39:c1:f6", "owner-id"=>"581165678935", "public-hostname"=>"ec2-34-209-204-164.us-west-2.compute.amazonaws.com", "public-ipv4s"=>"34.209.204.164", "security-group-ids"=>"sg-05a2c52388c24f3ae", "security-groups"=>"launch-wizard-2", "subnet-id"=>"subnet-3bafc660", "subnet-ipv4-cidr-block"=>"172.31.0.0/20", "vpc-id"=>"vpc-287af44e", "vpc-ipv4-cidr-block"=>"172.31.0.0/16", "vpc-ipv4-cidr-blocks"=>"172.31.0.0/16"}}}}, "placement"=>{"availability-zone"=>"us-west-2c"}, "profile"=>"default-hvm", "public-hostname"=>"ec2-34-209-204-164.us-west-2.compute.amazonaws.com", "public-ipv4"=>"34.209.204.164", "public-keys"=>{"0"=>{"openssh-key"=>"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDk1QR+MwLPRohIOiWbCC8xjJKFYeCjIh2g2wAKnZFCkPjCG9BD3L4URnszJXdv+5XylfWO1y9O1Z95etjWfObApRZ5Ej22Dz1EExWWRNOKl9QdrEfCACSlc5gbT5rflHd/He9eD5OFRHlMY8fNIApEKdQrlxZgr1/NOusVQggoS/MiszxCl0dob3kz86XX6PrAmMyGfv7j/mPeeEUzP3bGxtjJyaZGcwukjPvlgq1yI4AzZlveY8fnokRsh9uDHXUEVB2hLNaBBZB/Evw261J/+QsnKopAuqQpwct/n/ulbg+w1h/2ZBiDXDBK8DQ8kOC4zuum6qwri1KNKdX9zIif thinkpad"}}, "reservation-id"=>"r-0b89c0e198506ec1f", "security-groups"=>"launch-wizard-2", "services"=>{"domain"=>"amazonaws.com", "partition"=>"aws"}}, "facterversion"=>"3.12.4", "filesystems"=>"ext3,ext4", "fips_enabled"=>false, "fqdn"=>"ip-172-31-3-153.us-west-2.compute.internal", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"ip-172-31-3-153", "hypervisors"=>{"kvm"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"172.31.3.153", "ipaddress6"=>"fe80::8ca:e0ff:fe39:c1f6", "ipaddress6_eth0"=>"fe80::8ca:e0ff:fe39:c1f6", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"172.31.3.153", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"4.14", "kernelrelease"=>"4.14.77-70.59.amzn1.x86_64", "kernelversion"=>"4.14.77", "load_averages"=>{"15m"=>0.02, "1m"=>0.12, "5m"=>0.06}, "macaddress"=>"0a:ca:e0:39:c1:f6", "macaddress_eth0"=>"0a:ca:e0:39:c1:f6", "manufacturer"=>"Amazon EC2", "memory"=>{"system"=>{"available"=>"15.36 GiB", "available_bytes"=>16489611264, "capacity"=>"1.10%", "total"=>"15.53 GiB", "total_bytes"=>16673153024, "used"=>"175.04 MiB", "used_bytes"=>183541760}}, "memoryfree"=>"15.36 GiB", "memoryfree_mb"=>15725.71875, "memorysize"=>"15.53 GiB", "memorysize_mb"=>15900.7578125, "mountpoints"=>{"/"=>{"available"=>"6.55 GiB", "available_bytes"=>7033344000, "capacity"=>"15.45%", "device"=>"/dev/nvme0n1p1", "filesystem"=>"ext4", "options"=>["rw", "noatime", "data=ordered"], "size"=>"7.75 GiB", "size_bytes"=>8318783488, "used"=>"1.20 GiB", "used_bytes"=>1285439488}, "/dev/shm"=>{"available"=>"7.76 GiB", "available_bytes"=>8336576512, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "relatime"], "size"=>"7.76 GiB", "size_bytes"=>8336576512, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_eth0"=>9001, "mtu_lo"=>65536, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.240.0", "netmask_lo"=>"255.0.0.0", "network"=>"172.31.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"172.31.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"172.31.0.1", "domain"=>"us-west-2.compute.internal", "fqdn"=>"ip-172-31-3-153.us-west-2.compute.internal", "hostname"=>"ip-172-31-3-153", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"172.31.3.153", "netmask"=>"255.255.240.0", "network"=>"172.31.0.0"}], "bindings6"=>[{"address"=>"fe80::8ca:e0ff:fe39:c1f6", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"172.31.0.1", "ip"=>"172.31.3.153", "ip6"=>"fe80::8ca:e0ff:fe39:c1f6", "mac"=>"0a:ca:e0:39:c1:f6", "mtu"=>9001, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"172.31.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"172.31.3.153", "ip6"=>"fe80::8ca:e0ff:fe39:c1f6", "mac"=>"0a:ca:e0:39:c1:f6", "mtu"=>9001, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"172.31.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"Amazon", "operatingsystemmajrelease"=>"2018", "operatingsystemrelease"=>"2018.03", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"Amazon", "release"=>{"full"=>"2018.03", "major"=>"2018", "minor"=>"03"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/nvme0n1p1"=>{"filesystem"=>"ext4", "label"=>"/", "mount"=>"/", "partlabel"=>"Linux", "partuuid"=>"893c59db-bd86-4d67-b40f-221bc82c14c8", "size"=>"8.00 GiB", "size_bytes"=>8587820544, "uuid"=>"f25f5092-0401-4edb-9fac-c57f3c673803"}, "/dev/nvme0n1p128"=>{"partlabel"=>"BIOS Boot Partition", "partuuid"=>"9d1c14c8-e25b-4405-9171-de3c756f61b2", "size"=>"1.00 MiB", "size_bytes"=>1048576}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin", "physicalprocessorcount"=>1, "processor0"=>"AMD EPYC 7571", "processor1"=>"AMD EPYC 7571", "processor2"=>"AMD EPYC 7571", "processor3"=>"AMD EPYC 7571", "processorcount"=>4, "processors"=>{"count"=>4, "isa"=>"x86_64", "models"=>["AMD EPYC 7571", "AMD EPYC 7571", "AMD EPYC 7571", "AMD EPYC 7571"], "physicalcount"=>1}, "productname"=>"t3a.xlarge", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>false, "serialnumber"=>"ec21b37d-28ce-a3c2-956e-527e2857aeda", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 0b8e09e2fe5c820230d717a8f1c4bfd4bcb11dfd", "sha256"=>"SSHFP 2 2 956e88a3dd192f4a401c05deccf92985b16542027b7a77d36172a3c014c8491f"}, "key"=>"AAAAB3NzaC1kc3MAAACBALzgFDQ4Hu4sjtB0gYwh2uv/00U15avjHKLuffc1+rDmjnoW99OlbeijOb9nPBTDR/+OkAJuVzFdfP/EmPAajAMSE2bOPn5jgNBoKdw7g4LMhtRGomJ8ZxJ9kphYbFaq1JdX6a06HSJHn8RlkV6MV9WYnGQiE89e/7kf3krFssXJAAAAFQDuL8oufyAzYtkWvApZlOX+UlFvxwAAAIEAhibNA8agHCpQIrswmMj9PUOhEVx3OqS/F+0TB/vOqWdubFK97zlt56biu+2R2gHNCiqyiGorBA83xonkHrdjn44Nw2KsZVE9xR4BCbqIyrkwQkWbTHfGYwq0QCo9UyuTdrhen2FnFdZXsQw4b4mcedNDxSPzgLy9Pl/EAVINm6EAAACBAJOfk9MzOocneM35ROEMKRZV5oWFwkglRg/qT3Xcvc3PabEUKlTWQs65fVlVkyipri/0cIuPEo8NKUFJ614FHYGedgja2lFz4xEAonJX3wG3c4GSdbv9uMJT0K1p3zbfCuBoZ9my2nJvWBYPYrXvZgXMt48ewJHMy3HlTnhNSklI", "type"=>"ssh-dss"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 8fc1a45df472f27fd3fa19cd5e6df68434fa60d4", "sha256"=>"SSHFP 3 2 c4b4bb4362c47a3d0feaf030779e1bf06e2fd95911b1f8636ad2032b57cf087b"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL2ZVP/li7lMY6UrniJHcWOjBvTs1xdw2NQlmzLtuyaPhnolyh2uwoZctB5tOnlG97NlGqkBKV9pl7+fplDWip0=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 10e0fcb0020748f776ff7178310be3e8e1c788bc", "sha256"=>"SSHFP 4 2 ef9e38c12ab7fa4e4eb82e26d6707110352d82a5beae30887f3de96e7a83fb8f"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHtcpSu4oquHdhVu57O9BP/sHvy1vgMuEWZ2Aoq1elFP", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 70e536ec33e8312c25b6c606546d7acb2f471e28", "sha256"=>"SSHFP 1 2 ee810f2ab351653e9c2ca93270f9c73eb31dd824318b50af72d0afbe31d5d462"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDT/8RUum1jt8FZg8GJRvjjOQyU1VLn1199yjI4xr4aSx7yAmm3eHb5bsSPsxxPUMnlWcd8bq0hWQ5VI2G2WQfUpM4Tyx+wRnGdU1SB7xY8Flzg7w0JOIIIKf1ulxcscacCnGR2y/6rJUkdYVsiCKMADuQ6MUpqA6jLbWHAv8dJlvfq/vtCxBtTOzbhlWmmuvo0WPGXEmHW8Hvj94wcPkvRbf/Pohn+A5NrGs1SlIetn+N6tnK6CPK/g1dNMomPTwU+1+yAIUdTMedJPEeiB8pX5ydDhmO0X76KcXmaqIGvPWWMPEBoPKH8f/IFauOqkoaSAycdKBLYEUbb0iDIlXG1", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALzgFDQ4Hu4sjtB0gYwh2uv/00U15avjHKLuffc1+rDmjnoW99OlbeijOb9nPBTDR/+OkAJuVzFdfP/EmPAajAMSE2bOPn5jgNBoKdw7g4LMhtRGomJ8ZxJ9kphYbFaq1JdX6a06HSJHn8RlkV6MV9WYnGQiE89e/7kf3krFssXJAAAAFQDuL8oufyAzYtkWvApZlOX+UlFvxwAAAIEAhibNA8agHCpQIrswmMj9PUOhEVx3OqS/F+0TB/vOqWdubFK97zlt56biu+2R2gHNCiqyiGorBA83xonkHrdjn44Nw2KsZVE9xR4BCbqIyrkwQkWbTHfGYwq0QCo9UyuTdrhen2FnFdZXsQw4b4mcedNDxSPzgLy9Pl/EAVINm6EAAACBAJOfk9MzOocneM35ROEMKRZV5oWFwkglRg/qT3Xcvc3PabEUKlTWQs65fVlVkyipri/0cIuPEo8NKUFJ614FHYGedgja2lFz4xEAonJX3wG3c4GSdbv9uMJT0K1p3zbfCuBoZ9my2nJvWBYPYrXvZgXMt48ewJHMy3HlTnhNSklI", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL2ZVP/li7lMY6UrniJHcWOjBvTs1xdw2NQlmzLtuyaPhnolyh2uwoZctB5tOnlG97NlGqkBKV9pl7+fplDWip0=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHtcpSu4oquHdhVu57O9BP/sHvy1vgMuEWZ2Aoq1elFP", "sshfp_dsa"=>"SSHFP 2 1 0b8e09e2fe5c820230d717a8f1c4bfd4bcb11dfd\nSSHFP 2 2 956e88a3dd192f4a401c05deccf92985b16542027b7a77d36172a3c014c8491f", "sshfp_ecdsa"=>"SSHFP 3 1 8fc1a45df472f27fd3fa19cd5e6df68434fa60d4\nSSHFP 3 2 c4b4bb4362c47a3d0feaf030779e1bf06e2fd95911b1f8636ad2032b57cf087b", "sshfp_ed25519"=>"SSHFP 4 1 10e0fcb0020748f776ff7178310be3e8e1c788bc\nSSHFP 4 2 ef9e38c12ab7fa4e4eb82e26d6707110352d82a5beae30887f3de96e7a83fb8f", "sshfp_rsa"=>"SSHFP 1 1 70e536ec33e8312c25b6c606546d7acb2f471e28\nSSHFP 1 2 ee810f2ab351653e9c2ca93270f9c73eb31dd824318b50af72d0afbe31d5d462", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDT/8RUum1jt8FZg8GJRvjjOQyU1VLn1199yjI4xr4aSx7yAmm3eHb5bsSPsxxPUMnlWcd8bq0hWQ5VI2G2WQfUpM4Tyx+wRnGdU1SB7xY8Flzg7w0JOIIIKf1ulxcscacCnGR2y/6rJUkdYVsiCKMADuQ6MUpqA6jLbWHAv8dJlvfq/vtCxBtTOzbhlWmmuvo0WPGXEmHW8Hvj94wcPkvRbf/Pohn+A5NrGs1SlIetn+N6tnK6CPK/g1dNMomPTwU+1+yAIUdTMedJPEeiB8pX5ydDhmO0X76KcXmaqIGvPWWMPEBoPKH8f/IFauOqkoaSAycdKBLYEUbb0iDIlXG1", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>136, "uptime"=>"0:02 hours"}, "timezone"=>"UTC", "uptime"=>"0:02 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>136, "uuid"=>"EC21B37D-28CE-A3C2-956E-527E2857AEDA", "virtual"=>"kvm", "clientcert"=>"ip-172-31-3-153.us-west-2.compute.internal", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Amazon-2018.03' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_CentOS-5.11-32_spec.rb b/.onceover/spec/classes/role__puppetserver_on_CentOS-5.11-32_spec.rb new file mode 100644 index 0000000..0e3e9e9 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_CentOS-5.11-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set CentOS-5.11-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_hda_size"=>0, "blockdevices"=>"hda", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"hda"=>{"size"=>"20.00 GiB", "size_bytes"=>0}}, "domain"=>"localdomain", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,iso9660", "fqdn"=>"localhost.localdomain", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo,sit0", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:febf:56", "ipaddress6_eth0"=>"fe80::a00:27ff:febf:56", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.18-398.el5", "kernelversion"=>"2.6.18", "load_averages"=>{"15m"=>0.11, "1m"=>0.28, "5m"=>0.22}, "lsbdistcodename"=>"Final", "lsbdistdescription"=>"CentOS release 5.11 (Final)", "lsbdistid"=>"CentOS", "lsbdistrelease"=>"5.11", "lsbmajdistrelease"=>"5", "lsbminordistrelease"=>"11", "lsbrelease"=>":core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch", "macaddress"=>"08:00:27:bf:00:56", "macaddress_eth0"=>"08:00:27:bf:00:56", "memory"=>{"swap"=>{"available"=>"1023.99 MiB", "available_bytes"=>1073733632, "capacity"=>"0%", "total"=>"1023.99 MiB", "total_bytes"=>1073733632, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"429.48 MiB", "available_bytes"=>450342912, "capacity"=>"14.58%", "total"=>"502.80 MiB", "total_bytes"=>527220736, "used"=>"73.32 MiB", "used_bytes"=>76877824}}, "memoryfree"=>"429.48 MiB", "memoryfree_mb"=>429.48046875, "memorysize"=>"502.80 MiB", "memorysize_mb"=>502.796875, "mountpoints"=>{"/"=>{"available"=>"1.09 GiB", "available_bytes"=>1171632128, "capacity"=>"52.22%", "device"=>"/dev/mapper/VolGroup00-LogVol00", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"2.28 GiB", "size_bytes"=>-1842671616, "used"=>"1.19 GiB", "used_bytes"=>1280663552}, "/boot"=>{"available"=>"86.58 MiB", "available_bytes"=>90790912, "capacity"=>"12.29%", "device"=>"/dev/hda1", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"98.72 MiB", "size_bytes"=>103512064, "used"=>"12.13 MiB", "used_bytes"=>12721152}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "mtu_sit0"=>1480, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"localdomain", "fqdn"=>"localhost.localdomain", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:febf:56", "mac"=>"08:00:27:bf:00:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}, "sit0"=>{"mtu"=>1480}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:febf:56", "mac"=>"08:00:27:bf:00:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"5", "operatingsystemrelease"=>"5.11", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"Final", "description"=>"CentOS release 5.11 (Final)", "id"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "specification"=>":core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"i686", "name"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "path"=>"/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 3a63a36b70f2d9a56a9dc3a1159a64ff9f89536f", "sha256"=>"SSHFP 2 2 610f5aaa0dc46e30df3fb0ecac0eb3e00e7cac79d610c8c9a2a1eac341244940"}, "key"=>"AAAAB3NzaC1kc3MAAACBANIQgUl4dqCF84m1riBm7rlb5j6v6Dco/P7w0+AE0by81oHLA/i2V89okSrenm2scb4/u57ZpR/GeyVaLzicLyUjBICBwPOsv/+eLnVUtL/+vXwnVleBqaZn+2FUswdkz+J4QiDRSyl78kAkLMAFqEfNimMUB12DirtvgYIFqKaZAAAAFQDTiJhQ0rCPN0ax1rHbjLAMYYoCLwAAAIBWYAzgNYnG5TCzHWSdQZHeJPItH3MUrLFgggb3H9kFZBKCLSBW/EWV1s27G8a1Hd9JAsGEwDGBHn2VLz4uMSssEbJpdJY4jeRmeqeyqZ7My+83XLu0stm2xu6Tt7dwH//DPTTS1XmFXYdx/3tR5JWBIUm6yTb1WS43WUTSyxyPCQAAAIEAzyoULrHnqiBjuJeLB/2OF1vnRT58D53Vd3cQW1xZwyzsPSralv2lMGW0rGaduGrFQjCrDQk0k1fajZnjFX3qfdxaflFCgz2I1W46AcrGXeFy7AlRlCIE1LZtYGd04l3ERiqcUQT+vk2Jv54qMUwSQeyYWY67XcAnglf5GLqwqMo="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 6b3dbcd02fe71fb6106ad074454f8f16917327b5", "sha256"=>"SSHFP 1 2 913a32e7a0b2c81b5419903654c1dc42680df07f4fe04c82d7d70892b77b824b"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAsNcmWEvgjOkr4XA4uYa9aAfcxv1IygDmFnM/zIFbcMUmCxoza/WWZwm/mDO319xq71YqpVtvhgpSTHLGek6Iwb1rZukQvbwZnlzrIe0G8Bc4JpSAmyZkZceve1cau6nOXEI8eDrlbRLtrUNeptaIVHaa85KJqv7Ksc+NxGIRS/xBTWus3rxx3cQaurcyIK1rBHLiL5VpN+ove3Nl3zsHyyOym6FjbqIQuVMStr5j0+lQ3B+AqZpJixwbGKaxSIKZUcQla1pGCchBt7BuAq+A4XE+XIdsi2gRks2IjPGMkOXh0IiYud1ph7JaO7iLjSalylvF9qZSO/70J3w7nKLJYQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBANIQgUl4dqCF84m1riBm7rlb5j6v6Dco/P7w0+AE0by81oHLA/i2V89okSrenm2scb4/u57ZpR/GeyVaLzicLyUjBICBwPOsv/+eLnVUtL/+vXwnVleBqaZn+2FUswdkz+J4QiDRSyl78kAkLMAFqEfNimMUB12DirtvgYIFqKaZAAAAFQDTiJhQ0rCPN0ax1rHbjLAMYYoCLwAAAIBWYAzgNYnG5TCzHWSdQZHeJPItH3MUrLFgggb3H9kFZBKCLSBW/EWV1s27G8a1Hd9JAsGEwDGBHn2VLz4uMSssEbJpdJY4jeRmeqeyqZ7My+83XLu0stm2xu6Tt7dwH//DPTTS1XmFXYdx/3tR5JWBIUm6yTb1WS43WUTSyxyPCQAAAIEAzyoULrHnqiBjuJeLB/2OF1vnRT58D53Vd3cQW1xZwyzsPSralv2lMGW0rGaduGrFQjCrDQk0k1fajZnjFX3qfdxaflFCgz2I1W46AcrGXeFy7AlRlCIE1LZtYGd04l3ERiqcUQT+vk2Jv54qMUwSQeyYWY67XcAnglf5GLqwqMo=", "sshfp_dsa"=>"SSHFP 2 1 3a63a36b70f2d9a56a9dc3a1159a64ff9f89536f\nSSHFP 2 2 610f5aaa0dc46e30df3fb0ecac0eb3e00e7cac79d610c8c9a2a1eac341244940", "sshfp_rsa"=>"SSHFP 1 1 6b3dbcd02fe71fb6106ad074454f8f16917327b5\nSSHFP 1 2 913a32e7a0b2c81b5419903654c1dc42680df07f4fe04c82d7d70892b77b824b", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAsNcmWEvgjOkr4XA4uYa9aAfcxv1IygDmFnM/zIFbcMUmCxoza/WWZwm/mDO319xq71YqpVtvhgpSTHLGek6Iwb1rZukQvbwZnlzrIe0G8Bc4JpSAmyZkZceve1cau6nOXEI8eDrlbRLtrUNeptaIVHaa85KJqv7Ksc+NxGIRS/xBTWus3rxx3cQaurcyIK1rBHLiL5VpN+ove3Nl3zsHyyOym6FjbqIQuVMStr5j0+lQ3B+AqZpJixwbGKaxSIKZUcQla1pGCchBt7BuAq+A4XE+XIdsi2gRks2IjPGMkOXh0IiYud1ph7JaO7iLjSalylvF9qZSO/70J3w7nKLJYQ==", "swapfree"=>"1023.99 MiB", "swapfree_mb"=>1023.9921875, "swapsize"=>"1023.99 MiB", "swapsize_mb"=>1023.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1067, "uptime"=>"0:17 hours"}, "timezone"=>"UTC", "uptime"=>"0:17 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1067, "virtual"=>"virtualbox", "clientcert"=>"localhost.localdomain", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'CentOS-5.11-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_CentOS-5.11-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_CentOS-5.11-64_spec.rb new file mode 100644 index 0000000..9ada772 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_CentOS-5.11-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set CentOS-5.11-64" do + node_facts = {"architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_hda_size"=>21474836480, "blockdevices"=>"hda", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"hda"=>{"size"=>"20.00 GiB", "size_bytes"=>21474836480}}, "domain"=>"localdomain", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,iso9660", "fqdn"=>"localhost.localdomain", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo,sit0", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe3e:4987", "ipaddress6_eth0"=>"fe80::a00:27ff:fe3e:4987", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.18-398.el5", "kernelversion"=>"2.6.18", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"Final", "lsbdistdescription"=>"CentOS release 5.11 (Final)", "lsbdistid"=>"CentOS", "lsbdistrelease"=>"5.11", "lsbmajdistrelease"=>"5", "lsbminordistrelease"=>"11", "lsbrelease"=>":core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch", "macaddress"=>"08:00:27:3e:49:87", "macaddress_eth0"=>"08:00:27:3e:49:87", "memory"=>{"swap"=>{"available"=>"1023.99 MiB", "available_bytes"=>1073733632, "capacity"=>"0%", "total"=>"1023.99 MiB", "total_bytes"=>1073733632, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"389.45 MiB", "available_bytes"=>408363008, "capacity"=>"21.76%", "total"=>"497.78 MiB", "total_bytes"=>521961472, "used"=>"108.34 MiB", "used_bytes"=>113598464}}, "memoryfree"=>"389.45 MiB", "memoryfree_mb"=>389.4453125, "memorysize"=>"497.78 MiB", "memorysize_mb"=>497.78125, "mountpoints"=>{"/"=>{"available"=>"16.96 GiB", "available_bytes"=>18212638720, "capacity"=>"7.23%", "device"=>"/dev/mapper/VolGroup00-LogVol00", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"18.28 GiB", "size_bytes"=>19632164864, "used"=>"1.32 GiB", "used_bytes"=>1419526144}, "/boot"=>{"available"=>"86.04 MiB", "available_bytes"=>90215424, "capacity"=>"12.85%", "device"=>"/dev/hda1", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"98.72 MiB", "size_bytes"=>103512064, "used"=>"12.68 MiB", "used_bytes"=>13296640}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "mtu_sit0"=>1480, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"localdomain", "fqdn"=>"localhost.localdomain", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe3e:4987", "mac"=>"08:00:27:3e:49:87", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}, "sit0"=>{"mtu"=>1480}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe3e:4987", "mac"=>"08:00:27:3e:49:87", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"5", "operatingsystemrelease"=>"5.11", "os"=>{"architecture"=>"x86_64", "distro"=>{"codename"=>"Final", "description"=>"CentOS release 5.11 (Final)", "id"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "specification"=>":core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "path"=>"/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1139f2967264a610088812d1ed3ea8db448c417d", "sha256"=>"SSHFP 2 2 ddb6064607ac29a8c83978d33e46ed56e677f27ed727341142a08156906bc9bb"}, "key"=>"AAAAB3NzaC1kc3MAAACBAK4mrAWHX3BUGyimNDl6+rtP3BXx8hvZ8UCfySeFw3vliSb5uzCLSdbcLmNZxqVrYv9skhO7wIaRFo4xwLSBPbwMffwuO8/2kIXGxkkVKnucsYmsNNaaLAgrfTR+d2lj089fs/PBDGUiJThPPsbNLMVxDEy1SOuby5FAZvNGQTlxAAAAFQCivnpYKhk5wFrpmn1mZv7ayD8HLwAAAIBQ64m92s3WWK+tdChTH2rEvfn3lJlatruRDeZaXrTuuzA7K9uJhtfqg3KAs9gtZup6vOGNJbJWZVxTG+I3jLXgA2Mfd/lAcbtA1RXnqgUITgg2/sd/TkEkCrke/NVjBaiiXVhsly63OIv/JAvq4ulmNxvUT7Pj6Fz9dKvV1elbJQAAAIBqHveIC7RZnN4bGEc+rZZ63aOYI7Pm/9OE2soVjjvGYgk9Iew9S7xwDmcrDKICqSCwzE3ISalkGAkqXKBJnKx/gKziLWdj1VOoNv16X4nVTwxaL7u9nAg1cQ+H5whnWQ+KDoLJPtc8bCpnamGMY4W89a08Qv0U5RECNhv92AQcqQ=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 29e63bdd87c88c24251d791b474a8f3b56d581f7", "sha256"=>"SSHFP 1 2 cfc171e3db64806593cd26571556b360882507938c9a71e477478837cfa6ea9c"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA7Z6GmWepCT3oXq1qGkIq736GM5oXr4ISMuJtGF2+8yOyM+qqvM83zgnZVkCSkNwtiLOODfzbFmmfKKdLoN30xE6oRP+hu9LH7dzRnnIwsx2DBgaX6QPdbcsIG1dnfH34PO1/AvZGRU4YRwrBSVsURR5wow6BYTs56qznYUd6VALvDg0iOLde7eniqQlVbzfLsR+GFeQ9zp9qMI4JjL17RJYBeVam0wP3cYXglE5PsMYuJwVLP6aOIFx3nQPem76bh5fyTVFsav+jsdamw+dZ7uZn6lkRlCtqyxQzFyyT3RgCUW1qVwdus42xsJm8GPojfIcqhQ3HUEDZ61D5dgZjIQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAK4mrAWHX3BUGyimNDl6+rtP3BXx8hvZ8UCfySeFw3vliSb5uzCLSdbcLmNZxqVrYv9skhO7wIaRFo4xwLSBPbwMffwuO8/2kIXGxkkVKnucsYmsNNaaLAgrfTR+d2lj089fs/PBDGUiJThPPsbNLMVxDEy1SOuby5FAZvNGQTlxAAAAFQCivnpYKhk5wFrpmn1mZv7ayD8HLwAAAIBQ64m92s3WWK+tdChTH2rEvfn3lJlatruRDeZaXrTuuzA7K9uJhtfqg3KAs9gtZup6vOGNJbJWZVxTG+I3jLXgA2Mfd/lAcbtA1RXnqgUITgg2/sd/TkEkCrke/NVjBaiiXVhsly63OIv/JAvq4ulmNxvUT7Pj6Fz9dKvV1elbJQAAAIBqHveIC7RZnN4bGEc+rZZ63aOYI7Pm/9OE2soVjjvGYgk9Iew9S7xwDmcrDKICqSCwzE3ISalkGAkqXKBJnKx/gKziLWdj1VOoNv16X4nVTwxaL7u9nAg1cQ+H5whnWQ+KDoLJPtc8bCpnamGMY4W89a08Qv0U5RECNhv92AQcqQ==", "sshfp_dsa"=>"SSHFP 2 1 1139f2967264a610088812d1ed3ea8db448c417d\nSSHFP 2 2 ddb6064607ac29a8c83978d33e46ed56e677f27ed727341142a08156906bc9bb", "sshfp_rsa"=>"SSHFP 1 1 29e63bdd87c88c24251d791b474a8f3b56d581f7\nSSHFP 1 2 cfc171e3db64806593cd26571556b360882507938c9a71e477478837cfa6ea9c", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA7Z6GmWepCT3oXq1qGkIq736GM5oXr4ISMuJtGF2+8yOyM+qqvM83zgnZVkCSkNwtiLOODfzbFmmfKKdLoN30xE6oRP+hu9LH7dzRnnIwsx2DBgaX6QPdbcsIG1dnfH34PO1/AvZGRU4YRwrBSVsURR5wow6BYTs56qznYUd6VALvDg0iOLde7eniqQlVbzfLsR+GFeQ9zp9qMI4JjL17RJYBeVam0wP3cYXglE5PsMYuJwVLP6aOIFx3nQPem76bh5fyTVFsav+jsdamw+dZ7uZn6lkRlCtqyxQzFyyT3RgCUW1qVwdus42xsJm8GPojfIcqhQ3HUEDZ61D5dgZjIQ==", "swapfree"=>"1023.99 MiB", "swapfree_mb"=>1023.9921875, "swapsize"=>"1023.99 MiB", "swapsize_mb"=>1023.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>847, "uptime"=>"0:14 hours"}, "timezone"=>"UTC", "uptime"=>"0:14 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>847, "virtual"=>"virtualbox", "clientcert"=>"localhost.localdomain", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'CentOS-5.11-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_CentOS-6.6-32_spec.rb b/.onceover/spec/classes/role__puppetserver_on_CentOS-6.6-32_spec.rb new file mode 100644 index 0000000..c64bd63 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_CentOS-6.6-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set CentOS-6.6-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"6C33275E-3132-4167-9318-9BDE31E82035"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext4,iso9660", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:feff:42e5", "ipaddress6_eth0"=>"fe80::a00:27ff:feff:42e5", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-504.el6.i686", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "macaddress"=>"08:00:27:ff:42:e5", "macaddress_eth0"=>"08:00:27:ff:42:e5", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"1.00 GiB", "available_bytes"=>1073737728, "capacity"=>"0%", "total"=>"1.00 GiB", "total_bytes"=>1073737728, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"451.91 MiB", "available_bytes"=>473862144, "capacity"=>"9.40%", "total"=>"498.82 MiB", "total_bytes"=>523051008, "used"=>"46.91 MiB", "used_bytes"=>49188864}}, "memoryfree"=>"451.91 MiB", "memoryfree_mb"=>451.91015625, "memorysize"=>"498.82 MiB", "memorysize_mb"=>498.8203125, "mountpoints"=>{"/"=>{"available"=>"1.02 GiB", "available_bytes"=>1099689984, "capacity"=>"51.05%", "device"=>"/dev/mapper/VolGroup-lv_root", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"2.09 GiB", "size_bytes"=>-2048442368, "used"=>"1.07 GiB", "used_bytes"=>1146834944}, "/boot"=>{"available"=>"450.39 MiB", "available_bytes"=>472266752, "capacity"=>"5.42%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"25.83 MiB", "used_bytes"=>27088896}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feff:42e5", "mac"=>"08:00:27:ff:42:e5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feff:42e5", "mac"=>"08:00:27:ff:42:e5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.6", "os"=>{"architecture"=>"i386", "family"=>"RedHat", "hardware"=>"i686", "name"=>"CentOS", "release"=>{"full"=>"6.6", "major"=>"6", "minor"=>"6"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/VolGroup-lv_root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"bc353fb2-82b1-4d41-a43e-6512030a2a28"}, "/dev/mapper/VolGroup-lv_swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"eb19f39e-a1cc-4e43-bf33-809fa7f52044"}, "/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"51727e98-6cd5-4fba-8a1f-7d4dfb575e1f"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>-525336576, "uuid"=>"vkG7sJ-bfu3-Cko3-YJ7v-jPys-3uHe-vki0jZ"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 5c44d0a9f52668fbaaf05e6957f058d90264adfe", "sha256"=>"SSHFP 2 2 de1d70753fc8dcce901b997fca065a08cdfcc9d7ba44f630e0e16be7a54df877"}, "key"=>"AAAAB3NzaC1kc3MAAACBAME6dtbuRJGNiBgp3QqD50a8LmJLduCTsifX5ST6RA5l+LHIx/UpCo66dsSY29mXVsMIK6tlZyu0MDR4iOz/4oFcKwkgHvbZ33WFY7G526IDrszdLdWnEqxPw7pUC+izWmD337K0gcZnDMJGZk1PVEjK6i5MeFYI4SwYkdd/m7DTAAAAFQCzZLb3M4+Y0TBLUVImfxc31+KXiQAAAIAbk33qNmIiB4+iHJ0coB4MfSdwoPnhU+vG7XpqiA0W/68U6lGIFFFHW0R1utZUQ28E8jUhSwzM0EGXtiSyFpTzjAnS44UiIWvulTkbpa9RnTn1gVzR2Tpbc24LMiKqiz/ZrvKmp8jLUO1/BPCmD80yNXXo+v59wXnVD8Yak4u07QAAAIB0lpeV5gShABSEIBXBuAPGW67mjCdUqbj6Ry1ZV3XTPtUXWVhCehWQrPh9yYCItpepKWp55t7neSqVjaxFo7W8O2gBkYwv24eQiqaqI8vgV3fJf4mdb10cdAb6IzM46WVhSxo1al2XPLBDVtx1z/4RH/7agKpbfmP6QrDgKkMKow=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1002ff7e5e42c3c9c9681d65afe0f195277d2a8", "sha256"=>"SSHFP 1 2 ac639861032637e9c24f0af7126242086540c3d1f41640576c011d6eb9f4bf24"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEArd8ro8164ykLYynBWxSiPBNUy1hLeh2S284vuYCbJwNC/naFBmcXORUFIsegfJpRxFKg3YsCbQUrHfZ6cfAc/xKUdoORUkF+8ixsVl4YzHg6vybxnRlaanBvS0eiR/wzxsVepqC/S3gd7YF3/Lca5sHNixNuqgxsd9iy9VEz7XMZ32mMxBqgTabR1KorBSufGMRADq/jauXpd2QRul+bih5uAL/Ilb2bZutcHUohnWi3UQnR10bO9MS1wr6c42VJBOHW6fZXvGjRvjd94AhNB7RTKvmRCucPCMvkgaDsr+z0cCjmpmptsdy119UpKmv4uCHalPbtHOWMYk2QVnqoQw=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAME6dtbuRJGNiBgp3QqD50a8LmJLduCTsifX5ST6RA5l+LHIx/UpCo66dsSY29mXVsMIK6tlZyu0MDR4iOz/4oFcKwkgHvbZ33WFY7G526IDrszdLdWnEqxPw7pUC+izWmD337K0gcZnDMJGZk1PVEjK6i5MeFYI4SwYkdd/m7DTAAAAFQCzZLb3M4+Y0TBLUVImfxc31+KXiQAAAIAbk33qNmIiB4+iHJ0coB4MfSdwoPnhU+vG7XpqiA0W/68U6lGIFFFHW0R1utZUQ28E8jUhSwzM0EGXtiSyFpTzjAnS44UiIWvulTkbpa9RnTn1gVzR2Tpbc24LMiKqiz/ZrvKmp8jLUO1/BPCmD80yNXXo+v59wXnVD8Yak4u07QAAAIB0lpeV5gShABSEIBXBuAPGW67mjCdUqbj6Ry1ZV3XTPtUXWVhCehWQrPh9yYCItpepKWp55t7neSqVjaxFo7W8O2gBkYwv24eQiqaqI8vgV3fJf4mdb10cdAb6IzM46WVhSxo1al2XPLBDVtx1z/4RH/7agKpbfmP6QrDgKkMKow==", "sshfp_dsa"=>"SSHFP 2 1 5c44d0a9f52668fbaaf05e6957f058d90264adfe\nSSHFP 2 2 de1d70753fc8dcce901b997fca065a08cdfcc9d7ba44f630e0e16be7a54df877", "sshfp_rsa"=>"SSHFP 1 1 d1002ff7e5e42c3c9c9681d65afe0f195277d2a8\nSSHFP 1 2 ac639861032637e9c24f0af7126242086540c3d1f41640576c011d6eb9f4bf24", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEArd8ro8164ykLYynBWxSiPBNUy1hLeh2S284vuYCbJwNC/naFBmcXORUFIsegfJpRxFKg3YsCbQUrHfZ6cfAc/xKUdoORUkF+8ixsVl4YzHg6vybxnRlaanBvS0eiR/wzxsVepqC/S3gd7YF3/Lca5sHNixNuqgxsd9iy9VEz7XMZ32mMxBqgTabR1KorBSufGMRADq/jauXpd2QRul+bih5uAL/Ilb2bZutcHUohnWi3UQnR10bO9MS1wr6c42VJBOHW6fZXvGjRvjd94AhNB7RTKvmRCucPCMvkgaDsr+z0cCjmpmptsdy119UpKmv4uCHalPbtHOWMYk2QVnqoQw==", "swapfree"=>"1.00 GiB", "swapfree_mb"=>1023.99609375, "swapsize"=>"1.00 GiB", "swapsize_mb"=>1023.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>430, "uptime"=>"0:07 hours"}, "timezone"=>"UTC", "uptime"=>"0:07 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>430, "uuid"=>"6C33275E-3132-4167-9318-9BDE31E82035", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'CentOS-6.6-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_CentOS-6.6-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_CentOS-6.6-64_spec.rb new file mode 100644 index 0000000..8ad6d72 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_CentOS-6.6-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set CentOS-6.6-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"DA4CD203-2C23-4E21-B169-293D1749C38C"}}, "domain"=>"pdx.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"ext4,iso9660", "fqdn"=>"centos6a.pdx.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"centos6a", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ip6tables_version"=>"1.4.7", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe0f:d276", "ipaddress6_eth0"=>"fe80::a00:27ff:fe0f:d276", "ipaddress6_eth1"=>"fe80::a00:27ff:fe66:988a", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"10.20.1.88", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.7", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-504.8.1.el6.x86_64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "macaddress"=>"08:00:27:0f:d2:76", "macaddress_eth0"=>"08:00:27:0f:d2:76", "macaddress_eth1"=>"08:00:27:66:98:8a", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"992.00 MiB", "available_bytes"=>1040183296, "capacity"=>"0%", "total"=>"992.00 MiB", "total_bytes"=>1040183296, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"348.41 MiB", "available_bytes"=>365338624, "capacity"=>"28.95%", "total"=>"490.39 MiB", "total_bytes"=>514215936, "used"=>"141.98 MiB", "used_bytes"=>148877312}}, "memoryfree"=>"348.41 MiB", "memoryfree_mb"=>348.4140625, "memorysize"=>"490.39 MiB", "memorysize_mb"=>490.39453125, "mountpoints"=>{"/"=>{"available"=>"16.94 GiB", "available_bytes"=>18193268736, "capacity"=>"6.51%", "device"=>"/dev/mapper/VolGroup-lv_root", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"18.12 GiB", "size_bytes"=>19459338240, "used"=>"1.18 GiB", "used_bytes"=>1266069504}, "/boot"=>{"available"=>"448.35 MiB", "available_bytes"=>470125568, "capacity"=>"5.85%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"27.88 MiB", "used_bytes"=>29230080}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8555670, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"pdx.puppetlabs.demo", "fqdn"=>"centos6a.pdx.puppetlabs.demo", "hostname"=>"centos6a", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe0f:d276", "mac"=>"08:00:27:0f:d2:76", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"ip"=>"10.20.1.88", "ip6"=>"fe80::a00:27ff:fe66:988a", "mac"=>"08:00:27:66:98:8a", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe0f:d276", "mac"=>"08:00:27:0f:d2:76", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.6", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"6.6", "major"=>"6", "minor"=>"6"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/VolGroup-lv_root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"a29409f8-0b58-4271-a348-032caefec8b8"}, "/dev/mapper/VolGroup-lv_swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b30b464a-8ac9-492a-a1c5-2da75bb7488a"}, "/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"da946872-1406-4ac1-9a4d-f7ce5f7be47e"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>20949499904, "uuid"=>"nRdWPh-INkA-aHPs-TNtk-HjJG-SxBU-DdqI8a"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_razor_server_version"=>"package pe-razor-server is not installed", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"el-6-x86_64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 5dad11db93cde6e3b1d5ce5a5fe5ad02825037e8", "sha256"=>"SSHFP 2 2 576fe2b6a8412ada50cb776e6f1da5dd4bc301f2aa682be2ff82c70558c14745"}, "key"=>"AAAAB3NzaC1kc3MAAACBAJSFgQJi2VfgHnp2MQsV2wNpONevQuhi1Jb/nX0EjHtrAgc8MNRXLQTmjunh5q4+mjcYMHXDIx6F0Oc4XCnR5g6uQwBOGg70oXJmUkmwCw/mdgu3ppepOQJssBKnKFCR7QsbrBL+U1YmYmV8eGYDB76eXWRBOd9LewcGkjhHYbpzAAAAFQCShhFDlgHvmj6kcr6XRUuYPNziNwAAAIBBjLzEbwqoedlUKXRGuKc7nU71qWAkahN8rI4lU7d6PrVS7XziNX3OTCXbRCF3wT/dlYBU+grjmOIF4dbOrjBCHmmYVzlntXsefyR6XIbJw/H08L2LdDT6aye+MDWdYGK0PqgV6AZ5pWUzu7wS+qJduOaNMts5YrzqvlhiFDO8EAAAAIAJoqYk2bkNTPnjYi4qhIP3o+7Lhpxh5akAkjPMpM4tf/BedBqzKimvWhtDNVTcNCOZwJuSkHL4SSafvPCoxbKY4YhFWYykS/Vdle9ixNtH+wMU5d8DsSsvZpfa4lvj9FpzgfcM+NT1aYHis/pIRpBblPfHHnFBsxGKX66v6webHg=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 e1e2811771eb093d9b74333a111e089bc8e434ef", "sha256"=>"SSHFP 1 2 4513b7ba6b47b22319ea40fe9e0f12e9ac200b367b78508364a80a2a9b92409c"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA3Gn072MPvlL1R0RpTGod7BxiCvm4Wp6p8gRYJgEba9FLtYTWYhx18ueLnuFWKnK6WMpwe24732ZGGCsagjBkEo8DFJZABZbfSHxW1gsmU6smUM9o2wt9ZEeYJ036DqIkg4DzsBLc206NKStuKCTOINFSwBtHAWkZCeGdon8ssEoery//yZchbHBXQB1f312Re42W4eLNpWm0T93eEwRRMOpnLtNFrVa9kvHv71eQx2crvDG2xd6BfN0PkU0tx0TBzDS2xUqBg5m1MdNbarxWH1Km8JUEH40jl3YKgh5g0lrfEE36xIItPtW2mFawsMBpMK0iPerqs60or9SjM1LwXQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAJSFgQJi2VfgHnp2MQsV2wNpONevQuhi1Jb/nX0EjHtrAgc8MNRXLQTmjunh5q4+mjcYMHXDIx6F0Oc4XCnR5g6uQwBOGg70oXJmUkmwCw/mdgu3ppepOQJssBKnKFCR7QsbrBL+U1YmYmV8eGYDB76eXWRBOd9LewcGkjhHYbpzAAAAFQCShhFDlgHvmj6kcr6XRUuYPNziNwAAAIBBjLzEbwqoedlUKXRGuKc7nU71qWAkahN8rI4lU7d6PrVS7XziNX3OTCXbRCF3wT/dlYBU+grjmOIF4dbOrjBCHmmYVzlntXsefyR6XIbJw/H08L2LdDT6aye+MDWdYGK0PqgV6AZ5pWUzu7wS+qJduOaNMts5YrzqvlhiFDO8EAAAAIAJoqYk2bkNTPnjYi4qhIP3o+7Lhpxh5akAkjPMpM4tf/BedBqzKimvWhtDNVTcNCOZwJuSkHL4SSafvPCoxbKY4YhFWYykS/Vdle9ixNtH+wMU5d8DsSsvZpfa4lvj9FpzgfcM+NT1aYHis/pIRpBblPfHHnFBsxGKX66v6webHg==", "sshfp_dsa"=>"SSHFP 2 1 5dad11db93cde6e3b1d5ce5a5fe5ad02825037e8\nSSHFP 2 2 576fe2b6a8412ada50cb776e6f1da5dd4bc301f2aa682be2ff82c70558c14745", "sshfp_rsa"=>"SSHFP 1 1 e1e2811771eb093d9b74333a111e089bc8e434ef\nSSHFP 1 2 4513b7ba6b47b22319ea40fe9e0f12e9ac200b367b78508364a80a2a9b92409c", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA3Gn072MPvlL1R0RpTGod7BxiCvm4Wp6p8gRYJgEba9FLtYTWYhx18ueLnuFWKnK6WMpwe24732ZGGCsagjBkEo8DFJZABZbfSHxW1gsmU6smUM9o2wt9ZEeYJ036DqIkg4DzsBLc206NKStuKCTOINFSwBtHAWkZCeGdon8ssEoery//yZchbHBXQB1f312Re42W4eLNpWm0T93eEwRRMOpnLtNFrVa9kvHv71eQx2crvDG2xd6BfN0PkU0tx0TBzDS2xUqBg5m1MdNbarxWH1Km8JUEH40jl3YKgh5g0lrfEE36xIItPtW2mFawsMBpMK0iPerqs60or9SjM1LwXQ==", "staging_http_get"=>"curl", "swapfree"=>"992.00 MiB", "swapfree_mb"=>991.99609375, "swapsize"=>"992.00 MiB", "swapsize_mb"=>991.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>352, "uptime"=>"0:05 hours"}, "timezone"=>"UTC", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>352, "uuid"=>"DA4CD203-2C23-4E21-B169-293D1749C38C", "virtual"=>"virtualbox", "clientcert"=>"centos6a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'CentOS-6.6-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_CentOS-7.0-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_CentOS-7.0-64_spec.rb new file mode 100644 index 0000000..7c3a007 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_CentOS-7.0-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set CentOS-7.0-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"sydney", "dhcp_servers"=>{"enp0s3"=>"10.0.2.2", "enp0s8"=>"192.168.56.100", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"9D7BE471-F3DA-47EE-B023-F659129270EF"}}, "domain"=>"syd.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"xfs", "fqdn"=>"centos7b.syd.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"centos7b", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"enp0s3,enp0s8,lo", "ip6tables_version"=>"1.4.21", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe39:183c", "ipaddress6_enp0s3"=>"fe80::a00:27ff:fe39:183c", "ipaddress6_enp0s8"=>"fe80::a00:27ff:fe39:832c", "ipaddress6_lo"=>"::1", "ipaddress_enp0s3"=>"10.0.2.15", "ipaddress_enp0s8"=>"10.20.1.92", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.21", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.10", "kernelrelease"=>"3.10.0-123.el7.x86_64", "kernelversion"=>"3.10.0", "load_averages"=>{"15m"=>0.05, "1m"=>0.26, "5m"=>0.12}, "macaddress"=>"08:00:27:39:18:3c", "macaddress_enp0s3"=>"08:00:27:39:18:3c", "macaddress_enp0s8"=>"08:00:27:39:83:2c", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"1.03 GiB", "available_bytes"=>1107292160, "capacity"=>"0%", "total"=>"1.03 GiB", "total_bytes"=>1107292160, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"297.76 MiB", "available_bytes"=>312225792, "capacity"=>"39.28%", "total"=>"490.41 MiB", "total_bytes"=>514228224, "used"=>"192.64 MiB", "used_bytes"=>202002432}}, "memoryfree"=>"297.76 MiB", "memoryfree_mb"=>297.76171875, "memorysize"=>"490.41 MiB", "memorysize_mb"=>490.40625, "mountpoints"=>{"/"=>{"available"=>"17.30 GiB", "available_bytes"=>18574749696, "capacity"=>"6.32%", "device"=>"/dev/mapper/centos-root", "filesystem"=>"xfs", "options"=>["rw", "relatime", "attr2", "inode64", "noquota"], "size"=>"18.47 GiB", "size_bytes"=>19828572160, "used"=>"1.17 GiB", "used_bytes"=>1253822464}, "/boot"=>{"available"=>"393.11 MiB", "available_bytes"=>412209152, "capacity"=>"20.85%", "device"=>"/dev/sda1", "filesystem"=>"xfs", "options"=>["rw", "relatime", "attr2", "inode64", "noquota"], "size"=>"496.67 MiB", "size_bytes"=>520794112, "used"=>"103.55 MiB", "used_bytes"=>108584960}}, "mtu_enp0s3"=>1500, "mtu_enp0s8"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8563388, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s3"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s8"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_enp0s3"=>"255.255.255.0", "netmask_enp0s8"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_enp0s3"=>"fe80::", "network6_enp0s8"=>"fe80::", "network6_lo"=>"::1", "network_enp0s3"=>"10.0.2.0", "network_enp0s8"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"syd.puppetlabs.demo", "fqdn"=>"centos7b.syd.puppetlabs.demo", "hostname"=>"centos7b", "interfaces"=>{"enp0s3"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe39:183c", "mac"=>"08:00:27:39:18:3c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "enp0s8"=>{"dhcp"=>"192.168.56.100", "ip"=>"10.20.1.92", "ip6"=>"fe80::a00:27ff:fe39:832c", "mac"=>"08:00:27:39:83:2c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe39:183c", "mac"=>"08:00:27:39:18:3c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.0.1406", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"7.0.1406", "major"=>"7", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/centos-root"=>{"filesystem"=>"xfs", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"db651e5f-a2c2-4236-9570-6226f63e1fcd"}, "/dev/mapper/centos-swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"ff4ec16c-28c0-4715-846d-11e7c9b4e53b"}, "/dev/sda1"=>{"filesystem"=>"xfs", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"39ce4ad1-4e9d-49a4-bce0-8a30b459490a"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>20949499904, "uuid"=>"pg7zVv-M3hI-zpjY-eYlZ-06aD-ZRO2-J30GLd"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_razor_server_version"=>"package pe-razor-server is not installed", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"el-7-x86_64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 91edfdf5e7e098f4392606865c017dabc26804bb", "sha256"=>"SSHFP 3 2 f00c65a1884bfec52db11de89254f0bfd46baf9e759546654c94371a05ee0dba"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcSUcHQOfBDZElr6PBmxc/4ZDaIhsugXM7OE2SQj35iOMCN/I3XfINMo8SvBIQ6CsBqPnzgbKRBs7e1FPFnsT4="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 f25e9ad2faddbe75263cfee4fa97dc965bc1d581", "sha256"=>"SSHFP 1 2 0173e386031a134e4cbfb7f6971788761a5aa3d9e39dafcf163f003de2537199"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMo35gwbuqQvRq1gy6L8vddeyMNBYr5WPVcftMKSJR1jmwzxcZ+h0AEb3KPfoMHkqe9Xy+3oN981qe5ZCE780HO884AaXzXry9zdWQjGysrI+zHQbqbpOkYAGsVbJiQ7VnH7lMVZo2jCbABj4OdsbeCOeP3oDXTNCTaWWdQChzqvYgNBvb0mg/na1l0naQ1nsJYD85O8ZRQ9U/JOADMaOjummfOb2z7MgskZ9abm5eFCCQl+wUUNXKqQx+uyVM4lyyoTHpW3M2IV0P9wxhWJF6eovwyREGuMgJCs6kbHCFty7HtAYbzziabgQav8pMe68aBqjshbpU6ll/+aXWhD1"}}, "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcSUcHQOfBDZElr6PBmxc/4ZDaIhsugXM7OE2SQj35iOMCN/I3XfINMo8SvBIQ6CsBqPnzgbKRBs7e1FPFnsT4=", "sshfp_ecdsa"=>"SSHFP 3 1 91edfdf5e7e098f4392606865c017dabc26804bb\nSSHFP 3 2 f00c65a1884bfec52db11de89254f0bfd46baf9e759546654c94371a05ee0dba", "sshfp_rsa"=>"SSHFP 1 1 f25e9ad2faddbe75263cfee4fa97dc965bc1d581\nSSHFP 1 2 0173e386031a134e4cbfb7f6971788761a5aa3d9e39dafcf163f003de2537199", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMo35gwbuqQvRq1gy6L8vddeyMNBYr5WPVcftMKSJR1jmwzxcZ+h0AEb3KPfoMHkqe9Xy+3oN981qe5ZCE780HO884AaXzXry9zdWQjGysrI+zHQbqbpOkYAGsVbJiQ7VnH7lMVZo2jCbABj4OdsbeCOeP3oDXTNCTaWWdQChzqvYgNBvb0mg/na1l0naQ1nsJYD85O8ZRQ9U/JOADMaOjummfOb2z7MgskZ9abm5eFCCQl+wUUNXKqQx+uyVM4lyyoTHpW3M2IV0P9wxhWJF6eovwyREGuMgJCs6kbHCFty7HtAYbzziabgQav8pMe68aBqjshbpU6ll/+aXWhD1", "staging_http_get"=>"curl", "swapfree"=>"1.03 GiB", "swapfree_mb"=>1055.99609375, "swapsize"=>"1.03 GiB", "swapsize_mb"=>1055.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>78, "uptime"=>"0:01 hours"}, "timezone"=>"UTC", "uptime"=>"0:01 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>78, "uuid"=>"9D7BE471-F3DA-47EE-B023-F659129270EF", "virtual"=>"virtualbox", "clientcert"=>"centos7b.syd.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'CentOS-7.0-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Debian-6.0.10-32_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Debian-6.0.10-32_spec.rb new file mode 100644 index 0000000..cc95ede --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Debian-6.0.10-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Debian-6.0.10-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"6E39B0C5-08BD-4595-AC3D-576DAA677DED"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fead:dc1c", "ipaddress6_eth0"=>"fe80::a00:27ff:fead:dc1c", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-5-686", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"squeeze", "lsbdistdescription"=>"Debian GNU/Linux 6.0.10 (squeeze)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"6.0.10", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"0", "macaddress"=>"08:00:27:ad:dc:1c", "macaddress_eth0"=>"08:00:27:ad:dc:1c", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"871.99 MiB", "available_bytes"=>914350080, "capacity"=>"0%", "total"=>"871.99 MiB", "total_bytes"=>914350080, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"434.46 MiB", "available_bytes"=>455565312, "capacity"=>"13.56%", "total"=>"502.63 MiB", "total_bytes"=>527040512, "used"=>"68.16 MiB", "used_bytes"=>71475200}}, "memoryfree"=>"434.46 MiB", "memoryfree_mb"=>434.4609375, "memorysize"=>"502.63 MiB", "memorysize_mb"=>502.625, "mountpoints"=>{"/"=>{"available"=>"1.69 GiB", "available_bytes"=>1819041792, "capacity"=>"35.07%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "errors=remount-ro"], "size"=>"2.61 GiB", "size_bytes"=>-1493307392, "used"=>"937.10 MiB", "used_bytes"=>982618112}, "/boot"=>{"available"=>"213.27 MiB", "available_bytes"=>223632384, "capacity"=>"6.35%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"14.45 MiB", "used_bytes"=>15155200}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fead:dc1c", "mac"=>"08:00:27:ad:dc:1c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fead:dc1c", "mac"=>"08:00:27:ad:dc:1c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.0.10", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"squeeze", "description"=>"Debian GNU/Linux 6.0.10 (squeeze)", "id"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"092d5625-eb03-443c-953f-006bec7d5476"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"f9e1cf7c-ab54-4949-8e55-290adc8d853f"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"2c798378-1738-426f-a847-c929a507fc73"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"cG2Syv-bT1d-2TyA-Wqgz-33I2-RnTz-jA2LxS"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 3e0f92fe3eb7ee9737cead81e7465b5903d6ce57", "sha256"=>"SSHFP 2 2 c67d0777eb694d679a1d24335e76dd0475ca92077ff8d02c91f26a4b9cf56b09"}, "key"=>"AAAAB3NzaC1kc3MAAACBAInFvAyGI1vy23JgBDC4/AZeO2jhNRqlX0kdL9utKPaMgrIzIiEN0aqdlSJY4uTFcYAdfYxMuIkYaMh0FM3EMDB0ZL/1k9W2dCVFYpSHgIa/zJwSEqY7sFHdXjRsD3mjOzEZwpjV+dFq8sHoIouIhMcTC4nejrDRno994JoJSyP3AAAAFQCjjYeNB9geUQHIrcE/nY90aiI9pQAAAIBDoY90WppP0db2EyCgnAsl9J70YQg6bCPHHxl61ktEwStzGu7eEZxXVBDCPtFDYKL2gtmIlF0lAbt5KoC9NnVCb0n9vV4qY+xdwxWAjQI3CtrOfEZTaSlsn7lbgcnjXCODnALL92/nS6ahcVRt1KfmWTjCYnP1We+9QBSz/mRD8wAAAIBT+9TbXOqhlfNP/J3X3rEzZ1HsYh7DoLGbh3krSO0vpdC0crj6vx6NTDfJhwye6axWAgQOXF8g87FFTFERgmxEHhZE/QH7YxueNllJxKPtC77uiDBfaHsGtpIhISirr1fPSRTOVeVN3aCqHMualyCCH2xaYC8yGYwvL8W+mgqG6g=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1795dbe0b42f87f01a7a9f822b8ceb40bd6420b", "sha256"=>"SSHFP 1 2 7a4b0b01598345e44894393168d2e803b2dfbae8795a844b02e7ac16a999417a"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCyhapWpsFVIKdKwjNSiqZQYx6m5w7k3+bsmaNs7YU6qg+HrmBXBR/HwckXTPDMAHPVmmDYwi80N89Gp8NPZvnYJnhZwyQPmMUfORWO0aW8SE/TQKgbpbatZOzKb7pYtLT7g7ZbaWBPJBEqU0aCKAl3AW8FX8Hfja7+GD4DBLUi+rPyGPCr+uxa//NL9PE5nO1mQGLsn0Sy1Z7ChECrFVL7mXZ4xVSfTM3v0HI/SNUuq8qCpw8ysZFmUEbRzVEwTFm5zff8IaTZPQi7e/RofgELzn4+cuXiYHYKyiZDSJVDoHnc61OGmPWVxRHzcxNZDJS4dnc1mO48wyKpaM9xZF7B"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAInFvAyGI1vy23JgBDC4/AZeO2jhNRqlX0kdL9utKPaMgrIzIiEN0aqdlSJY4uTFcYAdfYxMuIkYaMh0FM3EMDB0ZL/1k9W2dCVFYpSHgIa/zJwSEqY7sFHdXjRsD3mjOzEZwpjV+dFq8sHoIouIhMcTC4nejrDRno994JoJSyP3AAAAFQCjjYeNB9geUQHIrcE/nY90aiI9pQAAAIBDoY90WppP0db2EyCgnAsl9J70YQg6bCPHHxl61ktEwStzGu7eEZxXVBDCPtFDYKL2gtmIlF0lAbt5KoC9NnVCb0n9vV4qY+xdwxWAjQI3CtrOfEZTaSlsn7lbgcnjXCODnALL92/nS6ahcVRt1KfmWTjCYnP1We+9QBSz/mRD8wAAAIBT+9TbXOqhlfNP/J3X3rEzZ1HsYh7DoLGbh3krSO0vpdC0crj6vx6NTDfJhwye6axWAgQOXF8g87FFTFERgmxEHhZE/QH7YxueNllJxKPtC77uiDBfaHsGtpIhISirr1fPSRTOVeVN3aCqHMualyCCH2xaYC8yGYwvL8W+mgqG6g==", "sshfp_dsa"=>"SSHFP 2 1 3e0f92fe3eb7ee9737cead81e7465b5903d6ce57\nSSHFP 2 2 c67d0777eb694d679a1d24335e76dd0475ca92077ff8d02c91f26a4b9cf56b09", "sshfp_rsa"=>"SSHFP 1 1 d1795dbe0b42f87f01a7a9f822b8ceb40bd6420b\nSSHFP 1 2 7a4b0b01598345e44894393168d2e803b2dfbae8795a844b02e7ac16a999417a", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCyhapWpsFVIKdKwjNSiqZQYx6m5w7k3+bsmaNs7YU6qg+HrmBXBR/HwckXTPDMAHPVmmDYwi80N89Gp8NPZvnYJnhZwyQPmMUfORWO0aW8SE/TQKgbpbatZOzKb7pYtLT7g7ZbaWBPJBEqU0aCKAl3AW8FX8Hfja7+GD4DBLUi+rPyGPCr+uxa//NL9PE5nO1mQGLsn0Sy1Z7ChECrFVL7mXZ4xVSfTM3v0HI/SNUuq8qCpw8ysZFmUEbRzVEwTFm5zff8IaTZPQi7e/RofgELzn4+cuXiYHYKyiZDSJVDoHnc61OGmPWVxRHzcxNZDJS4dnc1mO48wyKpaM9xZF7B", "swapfree"=>"871.99 MiB", "swapfree_mb"=>871.9921875, "swapsize"=>"871.99 MiB", "swapsize_mb"=>871.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1441, "uptime"=>"0:24 hours"}, "timezone"=>"PST", "uptime"=>"0:24 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1441, "uuid"=>"6E39B0C5-08BD-4595-AC3D-576DAA677DED", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Debian-6.0.10-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Debian-6.0.10-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Debian-6.0.10-64_spec.rb new file mode 100644 index 0000000..f1ac437 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Debian-6.0.10-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Debian-6.0.10-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"8AFC52E0-2A7C-42BA-BAFA-62B8413FB7C2"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe62:fa69", "ipaddress6_eth0"=>"fe80::a00:27ff:fe62:fa69", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-5-amd64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"squeeze", "lsbdistdescription"=>"Debian GNU/Linux 6.0.10 (squeeze)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"6.0.10", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"0", "macaddress"=>"08:00:27:62:fa:69", "macaddress_eth0"=>"08:00:27:62:fa:69", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"871.99 MiB", "available_bytes"=>914350080, "capacity"=>"0%", "total"=>"871.99 MiB", "total_bytes"=>914350080, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"382.43 MiB", "available_bytes"=>401010688, "capacity"=>"23.04%", "total"=>"496.90 MiB", "total_bytes"=>521035776, "used"=>"114.46 MiB", "used_bytes"=>120025088}}, "memoryfree"=>"382.43 MiB", "memoryfree_mb"=>382.43359375, "memorysize"=>"496.90 MiB", "memorysize_mb"=>496.8984375, "mountpoints"=>{"/"=>{"available"=>"17.65 GiB", "available_bytes"=>18949697536, "capacity"=>"5.16%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "errors=remount-ro"], "size"=>"18.61 GiB", "size_bytes"=>19981529088, "used"=>"984.03 MiB", "used_bytes"=>1031831552}, "/boot"=>{"available"=>"212.24 MiB", "available_bytes"=>222552064, "capacity"=>"6.80%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"15.48 MiB", "used_bytes"=>16235520}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe62:fa69", "mac"=>"08:00:27:62:fa:69", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe62:fa69", "mac"=>"08:00:27:62:fa:69", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.0.10", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"squeeze", "description"=>"Debian GNU/Linux 6.0.10 (squeeze)", "id"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"d2763d16-5203-4625-8733-a6f2ecc94f5a"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b5661448-0339-4ba3-8593-21cc6a049d33"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"415531d6-6955-433f-921e-8f266ab56649"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"vGb2LM-M1SP-IynO-OZJV-sYKl-Pcfo-fAFbiz"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 c9683f8ef6dc226d83a014be6349f496b65d329f", "sha256"=>"SSHFP 2 2 23aa109e68ed1d1b6766259c72d5168a93df3b0818fc975727b203aa6c4eb6ad"}, "key"=>"AAAAB3NzaC1kc3MAAACBALw6MnSlMUiVwDHFe5OUWDLBt0OooRutGu9pH1L3Ir6oZRNCbeFf3qoi+WWBU0cradbi0H1vlwtApdxVwymseyn9OqzfSt8urWkZS0o87vrJ1Hrz8RJe/B0TrWqgI1lm8h3zVBYsR7OXVFlSQC4ljK/3yZXfkIWEDBn8yXAsVMv5AAAAFQDuMctG71BY6fTAWG754jypFIJ/QwAAAIEAkqkhJdtDwZKty47LzSKIPne0t4TfbY8zHRN6atEtEFuOjgSBJoeYY7ILJL8zK8G7YO6nNdY0gVJv5x/R2ac1mfn06cq7xR2I/rD+BICmRt69kyFNi9newk2C7cLG8Mi6JvIHMduU8DegYeqz0kjh8WPUZWPakY5nqbYob6NE6vMAAACBAKh42Jooiu2+P1yrHjuYmjB9Wq8CoDSUwyNslY47HcEvzCuMcEZ8sVutpP0gjvO72bvFUPDzLP4HwqzphLVbGvBCc2N9RPTgJzijnHryB/LFXWS6evePwo4LMLhUMgzPOyIyxXxhG4bTTLR2jBmQe75EDqz3ibKJgb3CKz+hf6SZ"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 8e4b010ef208a5d1ecbbef4999ddb1a20ec0b6d2", "sha256"=>"SSHFP 1 2 1819579b1d40afe00107ef9d153e916f443fbddbefdf7f77583e84f32a3503b3"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCx/7sL2SPCsd/gcIPPvJhhOwYZdZSboDWqbIyUzzothrO7aKGHf7bxRdn+zu4vWUwBMoueGB1lf3xnDbrbDMxdh5sTpKYHWGKvBdgat+sWlEH3YiRd9vkji28R0+GEWdvmRTKfUxGEoJ7/NVZ0RroCMKlWO7tsDIUPhWn2NDZ3z4V3FAv4WvaE0YF1g0+71kF263+9IJCoxx6ztWBQfdJvEdu/k9cvCIJ6IMxscZ48vAqLRali6QCKRNHUqZFOLattqKFvGHdU/WvX+xpEj2QLTD+Tuat2uImblM4wge44oS8nlhN+reO1Cjafjf6lh3cCfUWphndK3Wvv7a18l2av"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALw6MnSlMUiVwDHFe5OUWDLBt0OooRutGu9pH1L3Ir6oZRNCbeFf3qoi+WWBU0cradbi0H1vlwtApdxVwymseyn9OqzfSt8urWkZS0o87vrJ1Hrz8RJe/B0TrWqgI1lm8h3zVBYsR7OXVFlSQC4ljK/3yZXfkIWEDBn8yXAsVMv5AAAAFQDuMctG71BY6fTAWG754jypFIJ/QwAAAIEAkqkhJdtDwZKty47LzSKIPne0t4TfbY8zHRN6atEtEFuOjgSBJoeYY7ILJL8zK8G7YO6nNdY0gVJv5x/R2ac1mfn06cq7xR2I/rD+BICmRt69kyFNi9newk2C7cLG8Mi6JvIHMduU8DegYeqz0kjh8WPUZWPakY5nqbYob6NE6vMAAACBAKh42Jooiu2+P1yrHjuYmjB9Wq8CoDSUwyNslY47HcEvzCuMcEZ8sVutpP0gjvO72bvFUPDzLP4HwqzphLVbGvBCc2N9RPTgJzijnHryB/LFXWS6evePwo4LMLhUMgzPOyIyxXxhG4bTTLR2jBmQe75EDqz3ibKJgb3CKz+hf6SZ", "sshfp_dsa"=>"SSHFP 2 1 c9683f8ef6dc226d83a014be6349f496b65d329f\nSSHFP 2 2 23aa109e68ed1d1b6766259c72d5168a93df3b0818fc975727b203aa6c4eb6ad", "sshfp_rsa"=>"SSHFP 1 1 8e4b010ef208a5d1ecbbef4999ddb1a20ec0b6d2\nSSHFP 1 2 1819579b1d40afe00107ef9d153e916f443fbddbefdf7f77583e84f32a3503b3", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCx/7sL2SPCsd/gcIPPvJhhOwYZdZSboDWqbIyUzzothrO7aKGHf7bxRdn+zu4vWUwBMoueGB1lf3xnDbrbDMxdh5sTpKYHWGKvBdgat+sWlEH3YiRd9vkji28R0+GEWdvmRTKfUxGEoJ7/NVZ0RroCMKlWO7tsDIUPhWn2NDZ3z4V3FAv4WvaE0YF1g0+71kF263+9IJCoxx6ztWBQfdJvEdu/k9cvCIJ6IMxscZ48vAqLRali6QCKRNHUqZFOLattqKFvGHdU/WvX+xpEj2QLTD+Tuat2uImblM4wge44oS8nlhN+reO1Cjafjf6lh3cCfUWphndK3Wvv7a18l2av", "swapfree"=>"871.99 MiB", "swapfree_mb"=>871.9921875, "swapsize"=>"871.99 MiB", "swapsize_mb"=>871.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1211, "uptime"=>"0:20 hours"}, "timezone"=>"PST", "uptime"=>"0:20 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1211, "uuid"=>"8AFC52E0-2A7C-42BA-BAFA-62B8413FB7C2", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Debian-6.0.10-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Debian-7.8-32_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Debian-7.8-32_spec.rb new file mode 100644 index 0000000..e963d00 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Debian-7.8-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Debian-7.8-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"75AFEC9A-DECD-40F4-B25F-A737EE8BA7CA"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe18:59a5", "ipaddress6_eth0"=>"fe80::a00:27ff:fe18:59a5", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.2", "kernelrelease"=>"3.2.0-4-686-pae", "kernelversion"=>"3.2.0", "load_averages"=>{"15m"=>0.03, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"wheezy", "lsbdistdescription"=>"Debian GNU/Linux 7.8 (wheezy)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"7.8", "lsbmajdistrelease"=>"7", "lsbminordistrelease"=>"8", "macaddress"=>"08:00:27:18:59:a5", "macaddress_eth0"=>"08:00:27:18:59:a5", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"872.00 MiB", "available_bytes"=>914354176, "capacity"=>"0%", "total"=>"872.00 MiB", "total_bytes"=>914354176, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"432.02 MiB", "available_bytes"=>453001216, "capacity"=>"14.00%", "total"=>"502.32 MiB", "total_bytes"=>526725120, "used"=>"70.31 MiB", "used_bytes"=>73723904}}, "memoryfree"=>"432.02 MiB", "memoryfree_mb"=>432.015625, "memorysize"=>"502.32 MiB", "memorysize_mb"=>502.32421875, "mountpoints"=>{"/"=>{"available"=>"1.52 GiB", "available_bytes"=>1633996800, "capacity"=>"41.68%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=remount-ro", "user_xattr", "acl", "barrier=1", "data=ordered"], "size"=>"2.61 GiB", "size_bytes"=>-1493307392, "used"=>"1.09 GiB", "used_bytes"=>1167663104}, "/boot"=>{"available"=>"211.24 MiB", "available_bytes"=>221499392, "capacity"=>"7.24%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw", "relatime", "errors=continue"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"16.49 MiB", "used_bytes"=>17288192}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe18:59a5", "mac"=>"08:00:27:18:59:a5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe18:59a5", "mac"=>"08:00:27:18:59:a5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.8", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"wheezy", "description"=>"Debian GNU/Linux 7.8 (wheezy)", "id"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"c87cb2c9-ffb8-48d1-bc31-024a57d3e44e"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"864df30a-fc50-4a93-8cfd-4624251c1589"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"b8ab8500-a238-4554-8d11-9c194ebba70c"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"NvdPwA-esP3-xUuv-n9OR-Ep7r-kQAr-qyUAzr"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 ffc65c9d4e1956519935d902798fc58cbafde1fa", "sha256"=>"SSHFP 2 2 3a59447b36760803f33fdda5c1f58681b271a8a5e6fb4997ee7241cb29a59906"}, "key"=>"AAAAB3NzaC1kc3MAAACBANJna2zK1ufiBINsA3RgaBhVXUFlya5rxD6A2KkeYr1yWcDECATGcsSh6KDEC4asOEtoyIogsZx/5ygefXeR+0R1XYQghrFsZWSwIdVV+jrt6IWddub3KXp8UvfWYUUXKAm0fiGXzTJ7sodap1ep/FBM0cyyaWYXvQCgiBr/T+lLAAAAFQCGGv9dGnuyKCMssoWebZ7PRd41cQAAAIEAsmFTg56Q5KwsFyYrtUR+fZlL983DI4m+/PPWI/pZ4sgvRjA7NWfr+gfJrSObH88ZAccu7edbVSfOyRVcOqCjBYU3nybG9vuelacqm4qdTnZbUWlMZJ1clJ4GlRVPO9zEhuODBleyxQW13XiwgNe9h9vOXlu/xu8aogaIyLfXGZgAAACAMe0yNEoADrHDE8rXr6nvytfibxofPnCtZj7L54OY7HuaBv1I0OqdJVjLw7SjJQ3vIiiR2pMMFVioROgVWUokdskTT/M3RvEcoNG55iYFVe8p43Z1HY4NNLgHIoPZ4C3EDDxiwCxiFK0kmhbg9boyV0Dyra/rbEAyZH6xNZYBR/c="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 5222b070970562793c4df0db8916f7828334bad4", "sha256"=>"SSHFP 3 2 920d4e5ef5dc8064271df26a5cda37211772a9133537d4520addef0e2dc0a480"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOkAfihhbn6Ht/z9rqOPlshRbi8MFhg12kUUf9PBVvKOBA3wgmHzOlcwSdhpO9olPla92uplSlntiE+bqR7eZhA="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 5bd78bebc725f3afc34cff576f09eaa052ef6c3d", "sha256"=>"SSHFP 1 2 c9e8b904a928e59d86e90e84d972b95bc3eabbfcf465ce0bb9569547ac5c2aa6"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQD4eO7mc/0jHFMbrPCrT6ktvNPzIqceRoIo6Kf/E845UlOO0eX425jMKVLqmnQCorZnN168LyyRfBoKXCmC/EEe18BlTcosCBseh/RytFcOpaUcX5etnmaqf8yBg4Hcp2zkRQx4HsHJMK5/52Dha7ZU7FvgJBMfCJULaEL9t+eRp1bOLN7GnFsMkXAaLmUqI3d6cVI8rc10ocQMu1nhzzNX4FDjoSvRH/AKGTzcIm8LBXUAR3v1ubFf+8Qc8vYF/sGcyJAJ0Bhcmg9/KH9NQMT01u0cgCOsxzBXu56CF5zeKERrbi8k6OJzz0t+rT8/7mwJOgKx4QhHt69jqt4KVeJv"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBANJna2zK1ufiBINsA3RgaBhVXUFlya5rxD6A2KkeYr1yWcDECATGcsSh6KDEC4asOEtoyIogsZx/5ygefXeR+0R1XYQghrFsZWSwIdVV+jrt6IWddub3KXp8UvfWYUUXKAm0fiGXzTJ7sodap1ep/FBM0cyyaWYXvQCgiBr/T+lLAAAAFQCGGv9dGnuyKCMssoWebZ7PRd41cQAAAIEAsmFTg56Q5KwsFyYrtUR+fZlL983DI4m+/PPWI/pZ4sgvRjA7NWfr+gfJrSObH88ZAccu7edbVSfOyRVcOqCjBYU3nybG9vuelacqm4qdTnZbUWlMZJ1clJ4GlRVPO9zEhuODBleyxQW13XiwgNe9h9vOXlu/xu8aogaIyLfXGZgAAACAMe0yNEoADrHDE8rXr6nvytfibxofPnCtZj7L54OY7HuaBv1I0OqdJVjLw7SjJQ3vIiiR2pMMFVioROgVWUokdskTT/M3RvEcoNG55iYFVe8p43Z1HY4NNLgHIoPZ4C3EDDxiwCxiFK0kmhbg9boyV0Dyra/rbEAyZH6xNZYBR/c=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOkAfihhbn6Ht/z9rqOPlshRbi8MFhg12kUUf9PBVvKOBA3wgmHzOlcwSdhpO9olPla92uplSlntiE+bqR7eZhA=", "sshfp_dsa"=>"SSHFP 2 1 ffc65c9d4e1956519935d902798fc58cbafde1fa\nSSHFP 2 2 3a59447b36760803f33fdda5c1f58681b271a8a5e6fb4997ee7241cb29a59906", "sshfp_ecdsa"=>"SSHFP 3 1 5222b070970562793c4df0db8916f7828334bad4\nSSHFP 3 2 920d4e5ef5dc8064271df26a5cda37211772a9133537d4520addef0e2dc0a480", "sshfp_rsa"=>"SSHFP 1 1 5bd78bebc725f3afc34cff576f09eaa052ef6c3d\nSSHFP 1 2 c9e8b904a928e59d86e90e84d972b95bc3eabbfcf465ce0bb9569547ac5c2aa6", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQD4eO7mc/0jHFMbrPCrT6ktvNPzIqceRoIo6Kf/E845UlOO0eX425jMKVLqmnQCorZnN168LyyRfBoKXCmC/EEe18BlTcosCBseh/RytFcOpaUcX5etnmaqf8yBg4Hcp2zkRQx4HsHJMK5/52Dha7ZU7FvgJBMfCJULaEL9t+eRp1bOLN7GnFsMkXAaLmUqI3d6cVI8rc10ocQMu1nhzzNX4FDjoSvRH/AKGTzcIm8LBXUAR3v1ubFf+8Qc8vYF/sGcyJAJ0Bhcmg9/KH9NQMT01u0cgCOsxzBXu56CF5zeKERrbi8k6OJzz0t+rT8/7mwJOgKx4QhHt69jqt4KVeJv", "swapfree"=>"872.00 MiB", "swapfree_mb"=>871.99609375, "swapsize"=>"872.00 MiB", "swapsize_mb"=>871.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>800, "uptime"=>"0:13 hours"}, "timezone"=>"PST", "uptime"=>"0:13 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>800, "uuid"=>"75AFEC9A-DECD-40F4-B25F-A737EE8BA7CA", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Debian-7.8-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Debian-7.8-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Debian-7.8-64_spec.rb new file mode 100644 index 0000000..86b85ad --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Debian-7.8-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Debian-7.8-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"117385F3-E367-4C81-BEE6-78384BAAA1DB"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe83:ad56", "ipaddress6_eth0"=>"fe80::a00:27ff:fe83:ad56", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.2", "kernelrelease"=>"3.2.0-4-amd64", "kernelversion"=>"3.2.0", "load_averages"=>{"15m"=>0.01, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"wheezy", "lsbdistdescription"=>"Debian GNU/Linux 7.8 (wheezy)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"7.8", "lsbmajdistrelease"=>"7", "lsbminordistrelease"=>"8", "macaddress"=>"08:00:27:83:ad:56", "macaddress_eth0"=>"08:00:27:83:ad:56", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"872.00 MiB", "available_bytes"=>914354176, "capacity"=>"0%", "total"=>"872.00 MiB", "total_bytes"=>914354176, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"382.02 MiB", "available_bytes"=>400576512, "capacity"=>"23.13%", "total"=>"496.96 MiB", "total_bytes"=>521101312, "used"=>"114.94 MiB", "used_bytes"=>120524800}}, "memoryfree"=>"382.02 MiB", "memoryfree_mb"=>382.01953125, "memorysize"=>"496.96 MiB", "memorysize_mb"=>496.9609375, "mountpoints"=>{"/"=>{"available"=>"17.49 GiB", "available_bytes"=>18781380608, "capacity"=>"6.01%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=remount-ro", "user_xattr", "acl", "barrier=1", "data=ordered"], "size"=>"18.61 GiB", "size_bytes"=>19981529088, "used"=>"1.12 GiB", "used_bytes"=>1200148480}, "/boot"=>{"available"=>"210.36 MiB", "available_bytes"=>220575744, "capacity"=>"7.63%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw", "relatime", "errors=continue"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"17.37 MiB", "used_bytes"=>18211840}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe83:ad56", "mac"=>"08:00:27:83:ad:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe83:ad56", "mac"=>"08:00:27:83:ad:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.8", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"wheezy", "description"=>"Debian GNU/Linux 7.8 (wheezy)", "id"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"7b853135-fb91-48ff-a25c-8d34ada8d549"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"486756ce-bdd1-45f4-864d-e4b6fce59b9d"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"8aa50802-2811-43ec-9686-a30f6a1c3ade"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"eGBBBU-DZw3-wy0f-OMxw-Sf5d-jDyA-ctqcpx"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 36d929686c60f981438c3e708f76eaa8aea811ac", "sha256"=>"SSHFP 2 2 f509f25d24c474bf0f2b0fae387b1c798174632af84f7e7b064ead1d1e23b144"}, "key"=>"AAAAB3NzaC1kc3MAAACBAKo52UJRnjkvuOvraymZ2bDiTUEUexIZ50eR2hx47JpOCUW0OMFH443axvl4TeCpPwqTbf0MH3RdkdSqpGOSAAcBmDfOyI5o9dgzWwSIiplNTxO29tUB9YinkduLEe4pXL5FwZ20owYnvcbrlc8t+LNl8Vku3zWWMrng6mf620MVAAAAFQC5KtOLXLxKD3hk3ATXQbnli4wMRwAAAIAy3bLl4X5yk+WYssTadam8ScUdvzVBCXsrfK9o8HNHfdHCAQqYRYYlC7muDATZxhyw72IhZsFzw/Wswr+5K35hElvrH8j3pFXafe+5dp18CP3V+vXTAzVBiiOnA+AG1tvudBRsrh7bhD9oq1LnXqijLRiI9nD0Faem4uGcT7/jqgAAAIBudV2Q2VYl/N+pRv4/JTgsNLtNz3X12dMjeNXwbpM9LJZUVZDq/KsT1vdDTYOy42g/v14ucRU50QyyAxx78prRgyTIfyKFDEiff9i5uok0c/YN0t2w9ayYkYl6xBWVj+q2SiUM6WdqJdb7sltOLGwsjkroqAV0xdBpbiN6ZWvzKA=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 263f3632f018d8535aaf8374ff4e8bdfc2eb118a", "sha256"=>"SSHFP 3 2 f14b4e61f1569a8181800a082ce91452ce352122bffe4e39314888b280f598a6"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEspGa8fuYvtfy2pnBhKV/d/xfmUmvAVUhCJLOlwRURmszRQBW/+GwvhPIT1avptddqTUF2HeA1XKLkbabnxoHI="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3f543127df57aceb9be2259918ff9115e507be37", "sha256"=>"SSHFP 1 2 90114d6c22d6a759b85f4df1316c567828da41411ae36e8eb09e480bf3cd8ac3"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC8R/CbG0zr75BfoeoCv0GuLcxEIf8Yp5+s2OJKrYRqRmfD9gM6f4J3lVGB/+i5WRiQqJ61Mogstd4CSFmIUhq+opARvDQGxIz1mgV4aHAZDIAGYZ9b1nwS//JWb7nW5mMQqOW3fq59XWxssWjkW6kjJqNSvJtH24kDayxg3jB6Xt2jChz6NLq0t+WmRf24EKCymfnTOdXc4a2sSusAwSb1yl6iHnLpkd5efsUm/ZNCOzHbUtUsnAfDW4MNCUTzq8M/9SpCy2CRid4F29bD1jnJEvyPRrIRAwfPdJTuNZ06pzOWexvS0PcOY6tb0XbdFE78iDdUrVHqTGJiVrFHLoAx"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAKo52UJRnjkvuOvraymZ2bDiTUEUexIZ50eR2hx47JpOCUW0OMFH443axvl4TeCpPwqTbf0MH3RdkdSqpGOSAAcBmDfOyI5o9dgzWwSIiplNTxO29tUB9YinkduLEe4pXL5FwZ20owYnvcbrlc8t+LNl8Vku3zWWMrng6mf620MVAAAAFQC5KtOLXLxKD3hk3ATXQbnli4wMRwAAAIAy3bLl4X5yk+WYssTadam8ScUdvzVBCXsrfK9o8HNHfdHCAQqYRYYlC7muDATZxhyw72IhZsFzw/Wswr+5K35hElvrH8j3pFXafe+5dp18CP3V+vXTAzVBiiOnA+AG1tvudBRsrh7bhD9oq1LnXqijLRiI9nD0Faem4uGcT7/jqgAAAIBudV2Q2VYl/N+pRv4/JTgsNLtNz3X12dMjeNXwbpM9LJZUVZDq/KsT1vdDTYOy42g/v14ucRU50QyyAxx78prRgyTIfyKFDEiff9i5uok0c/YN0t2w9ayYkYl6xBWVj+q2SiUM6WdqJdb7sltOLGwsjkroqAV0xdBpbiN6ZWvzKA==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEspGa8fuYvtfy2pnBhKV/d/xfmUmvAVUhCJLOlwRURmszRQBW/+GwvhPIT1avptddqTUF2HeA1XKLkbabnxoHI=", "sshfp_dsa"=>"SSHFP 2 1 36d929686c60f981438c3e708f76eaa8aea811ac\nSSHFP 2 2 f509f25d24c474bf0f2b0fae387b1c798174632af84f7e7b064ead1d1e23b144", "sshfp_ecdsa"=>"SSHFP 3 1 263f3632f018d8535aaf8374ff4e8bdfc2eb118a\nSSHFP 3 2 f14b4e61f1569a8181800a082ce91452ce352122bffe4e39314888b280f598a6", "sshfp_rsa"=>"SSHFP 1 1 3f543127df57aceb9be2259918ff9115e507be37\nSSHFP 1 2 90114d6c22d6a759b85f4df1316c567828da41411ae36e8eb09e480bf3cd8ac3", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC8R/CbG0zr75BfoeoCv0GuLcxEIf8Yp5+s2OJKrYRqRmfD9gM6f4J3lVGB/+i5WRiQqJ61Mogstd4CSFmIUhq+opARvDQGxIz1mgV4aHAZDIAGYZ9b1nwS//JWb7nW5mMQqOW3fq59XWxssWjkW6kjJqNSvJtH24kDayxg3jB6Xt2jChz6NLq0t+WmRf24EKCymfnTOdXc4a2sSusAwSb1yl6iHnLpkd5efsUm/ZNCOzHbUtUsnAfDW4MNCUTzq8M/9SpCy2CRid4F29bD1jnJEvyPRrIRAwfPdJTuNZ06pzOWexvS0PcOY6tb0XbdFE78iDdUrVHqTGJiVrFHLoAx", "swapfree"=>"872.00 MiB", "swapfree_mb"=>871.99609375, "swapsize"=>"872.00 MiB", "swapsize_mb"=>871.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>650, "uptime"=>"0:10 hours"}, "timezone"=>"PST", "uptime"=>"0:10 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>650, "uuid"=>"117385F3-E367-4C81-BEE6-78384BAAA1DB", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Debian-7.8-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_RHEL-6.7_spec.rb b/.onceover/spec/classes/role__puppetserver_on_RHEL-6.7_spec.rb new file mode 100644 index 0000000..7e2d953 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_RHEL-6.7_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set RHEL-6.7" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"06/02/2017", "bios_vendor"=>"American Megatrends Inc.", "bios_version"=>"090007", "blockdevice_sda_model"=>"Virtual Disk", "blockdevice_sda_size"=>34359738368, "blockdevice_sda_vendor"=>"Msft", "blockdevice_sdb_model"=>"Virtual Disk", "blockdevice_sdb_size"=>53687091200, "blockdevice_sdb_vendor"=>"Msft", "blockdevice_sr0_model"=>"Virtual CD/ROM", "blockdevice_sr0_size"=>643072, "blockdevice_sr0_vendor"=>"Msft", "blockdevices"=>"sr0,sdb,sda", "boardmanufacturer"=>"Microsoft Corporation", "boardproductname"=>"Virtual Machine", "boardserialnumber"=>"0000-0010-9727-3914-2228-1494-64", "chassisassettag"=>"7783-7084-3265-9085-8269-3286-77", "chassistype"=>"Desktop", "dhcp_servers"=>{"eth0"=>"168.63.129.16", "system"=>"168.63.129.16"}, "disks"=>{"sda"=>{"model"=>"Virtual Disk", "size"=>"32.00 GiB", "size_bytes"=>34359738368, "vendor"=>"Msft"}, "sdb"=>{"model"=>"Virtual Disk", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"Msft"}, "sr0"=>{"model"=>"Virtual CD/ROM", "size"=>"628.00 KiB", "size_bytes"=>643072, "vendor"=>"Msft"}}, "dmi"=>{"bios"=>{"release_date"=>"06/02/2017", "vendor"=>"American Megatrends Inc.", "version"=>"090007"}, "board"=>{"manufacturer"=>"Microsoft Corporation", "product"=>"Virtual Machine", "serial_number"=>"0000-0010-9727-3914-2228-1494-64"}, "chassis"=>{"asset_tag"=>"7783-7084-3265-9085-8269-3286-77", "type"=>"Desktop"}, "manufacturer"=>"Microsoft Corporation", "product"=>{"name"=>"Virtual Machine", "serial_number"=>"0000-0016-4348-2410-5386-3288-39", "uuid"=>"723914E4-94CB-0743-9847-001D218884D8"}}, "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "facterversion"=>"3.12.4", "filesystems"=>"ext4,iso9660,udf", "fips_enabled"=>false, "fqdn"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"rhel6box", "hypervisors"=>{"hyperv"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.0.5", "ipaddress6"=>"fe80::20d:3aff:fe96:ed47", "ipaddress6_eth0"=>"fe80::20d:3aff:fe96:ed47", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.0.5", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-573.45.1.el6.x86_64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.06, "1m"=>0.15, "5m"=>0.14}, "lsbdistcodename"=>"Santiago", "lsbdistdescription"=>"Red Hat Enterprise Linux Server release 6.7 (Santiago)", "lsbdistid"=>"RedHatEnterpriseServer", "lsbdistrelease"=>"6.7", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"7", "lsbrelease"=>":base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch", "macaddress"=>"00:0d:3a:96:ed:47", "macaddress_eth0"=>"00:0d:3a:96:ed:47", "manufacturer"=>"Microsoft Corporation", "memory"=>{"swap"=>{"available"=>"2.00 GiB", "available_bytes"=>2147479552, "capacity"=>"0%", "total"=>"2.00 GiB", "total_bytes"=>2147479552, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"7.55 GiB", "available_bytes"=>8103010304, "capacity"=>"3.24%", "total"=>"7.80 GiB", "total_bytes"=>8374747136, "used"=>"259.15 MiB", "used_bytes"=>271736832}}, "memoryfree"=>"7.55 GiB", "memoryfree_mb"=>7727.6328125, "memorysize"=>"7.80 GiB", "memorysize_mb"=>7986.78125, "mountpoints"=>{"/"=>{"available"=>"27.90 GiB", "available_bytes"=>29956210688, "capacity"=>"9.68%", "device"=>"/dev/sda2", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"30.89 GiB", "size_bytes"=>33168420864, "used"=>"2.99 GiB", "used_bytes"=>3212210176}, "/boot"=>{"available"=>"402.87 MiB", "available_bytes"=>422435840, "capacity"=>"15.40%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"73.36 MiB", "used_bytes"=>76919808}, "/dev/shm"=>{"available"=>"3.90 GiB", "available_bytes"=>4187373568, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "rootcontext=\"system_u:object_r:tmpfs_t:s0\""], "size"=>"3.90 GiB", "size_bytes"=>4187373568, "used"=>"0 bytes", "used_bytes"=>0}, "/mnt/resource"=>{"available"=>"47.04 GiB", "available_bytes"=>50506543104, "capacity"=>"4.18%", "device"=>"/dev/sdb1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"49.09 GiB", "size_bytes"=>52708372480, "used"=>"2.05 GiB", "used_bytes"=>2201829376}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"168.63.129.16", "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "fqdn"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "hostname"=>"rhel6box", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.0.5", "netmask"=>"255.255.255.0", "network"=>"10.0.0.0"}], "bindings6"=>[{"address"=>"fe80::20d:3aff:fe96:ed47", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"168.63.129.16", "ip"=>"10.0.0.5", "ip6"=>"fe80::20d:3aff:fe96:ed47", "mac"=>"00:0d:3a:96:ed:47", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.0.5", "ip6"=>"fe80::20d:3aff:fe96:ed47", "mac"=>"00:0d:3a:96:ed:47", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"RedHat", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.7", "os"=>{"architecture"=>"x86_64", "distro"=>{"codename"=>"Santiago", "description"=>"Red Hat Enterprise Linux Server release 6.7 (Santiago)", "id"=>"RedHatEnterpriseServer", "release"=>{"full"=>"6.7", "major"=>"6", "minor"=>"7"}, "specification"=>":base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"RedHat", "release"=>{"full"=>"6.7", "major"=>"6", "minor"=>"7"}, "selinux"=>{"config_mode"=>"enforcing", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>"24"}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"ce2ad98e-bb9f-4603-abce-3db7fd857a6c"}, "/dev/sda2"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"31.51 GiB", "size_bytes"=>33834401792, "uuid"=>"be4cc18d-b110-4914-a6f9-52dc0dc66f68"}, "/dev/sdb1"=>{"filesystem"=>"ext4", "mount"=>"/mnt/resource", "size"=>"50.00 GiB", "size_bytes"=>53684994048, "uuid"=>"aafc7ffe-f0b2-4872-8174-a05f24f6c3d4"}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processor1"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz"], "physicalcount"=>1}, "productname"=>"Virtual Machine", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>true, "selinux_config_mode"=>"enforcing", "selinux_current_mode"=>"enforcing", "selinux_enforced"=>true, "selinux_policyversion"=>"24", "serialnumber"=>"0000-0016-4348-2410-5386-3288-39", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 2e57bf0a973182ca91a3a9da9df2d332e55624ce", "sha256"=>"SSHFP 2 2 e2bbc2a273c58f32c9680300045705133d3efc571bda04798fc67b74463126cd"}, "key"=>"AAAAB3NzaC1kc3MAAACBAL//vXVYQWUZ0FmIEo76fECXpnTXBM5k9XpvJ/hHo+C9AAhkDz8OIPKW/mWjJWkux4nGASNKeHLaya+3Y9vtNZ/MdGw4ivJOR4rCCOfcPzuo3PbBsRE2gKaqc53F6/SwLufGPW2WF8deD6vgTs/OfklbK1evvPBSFAEYrGXlGyJPAAAAFQDY6orVttfPBu50B7OUA5k9ObNLaQAAAIBwX43NbThII85Bv6et0FdeQftDwoLNCTjBI0+DFNqxTVH/LO10fwqcdOMI1jAmmUSe0Dt+PpWQ1ZosK1UKN+hq3jWc84vxyL7l4KYigrvZJoKWvljazNN2unetwLUiPE4X2KL/CmTnXv/N9SeWsSnr86thNVRioQx+znoy8WZHOAAAAIEAkNIj1FhjzCMK4/f2Wg6tJHsW8wRwcGEzAymIj++aBYGPy5BI5Fa6kOcMEyJ+nl+8U3Mps+mJY5EYE/FvsinOrSJzFqowofABd7NgtoRLTGQyohBHP41+RPqXdPGDzPHHvOnuFP/vSKe+sgtJ6j6OqpddLPVybv/7EbylU9n1OpA=", "type"=>"ssh-dss"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3c9465989548635bc20a034f98be3dd917074a7d", "sha256"=>"SSHFP 1 2 22cec87904c8057c2fa6b92e252b95496b678d042fe19d3f58332d67755bbb39"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAuHC1qI3c48QrKuSLHo54im7OIGQyFL/KwoP4jig+LbIdduwmGMlXejZr+E3yb/RKvwQJGkGJ8HCLf8hyz0AmQf2690rXD7M3Ibq8Q3OrpteC46N3JbvnAFockJPLkMt3g/4sWTTmQbMStBAsfhaergAhXHp8x/xmqYnXtYWbKLyY1aFynWiyXx0omJLd3n0zCnDpEDTRlwn/LAwotK/b/lZ58RXJhafA5AbquKYANtg3png+FYX2MAWj75NXwY4h5dQGtMa8dWqWyZYE4Z9bzWFx4A6YAQPwyheKs4GWCU7dCDuiE4z6oZ3BMbfnfO4oX7bnmDtFRoE2GUElBi46Bw==", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAL//vXVYQWUZ0FmIEo76fECXpnTXBM5k9XpvJ/hHo+C9AAhkDz8OIPKW/mWjJWkux4nGASNKeHLaya+3Y9vtNZ/MdGw4ivJOR4rCCOfcPzuo3PbBsRE2gKaqc53F6/SwLufGPW2WF8deD6vgTs/OfklbK1evvPBSFAEYrGXlGyJPAAAAFQDY6orVttfPBu50B7OUA5k9ObNLaQAAAIBwX43NbThII85Bv6et0FdeQftDwoLNCTjBI0+DFNqxTVH/LO10fwqcdOMI1jAmmUSe0Dt+PpWQ1ZosK1UKN+hq3jWc84vxyL7l4KYigrvZJoKWvljazNN2unetwLUiPE4X2KL/CmTnXv/N9SeWsSnr86thNVRioQx+znoy8WZHOAAAAIEAkNIj1FhjzCMK4/f2Wg6tJHsW8wRwcGEzAymIj++aBYGPy5BI5Fa6kOcMEyJ+nl+8U3Mps+mJY5EYE/FvsinOrSJzFqowofABd7NgtoRLTGQyohBHP41+RPqXdPGDzPHHvOnuFP/vSKe+sgtJ6j6OqpddLPVybv/7EbylU9n1OpA=", "sshfp_dsa"=>"SSHFP 2 1 2e57bf0a973182ca91a3a9da9df2d332e55624ce\nSSHFP 2 2 e2bbc2a273c58f32c9680300045705133d3efc571bda04798fc67b74463126cd", "sshfp_rsa"=>"SSHFP 1 1 3c9465989548635bc20a034f98be3dd917074a7d\nSSHFP 1 2 22cec87904c8057c2fa6b92e252b95496b678d042fe19d3f58332d67755bbb39", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAuHC1qI3c48QrKuSLHo54im7OIGQyFL/KwoP4jig+LbIdduwmGMlXejZr+E3yb/RKvwQJGkGJ8HCLf8hyz0AmQf2690rXD7M3Ibq8Q3OrpteC46N3JbvnAFockJPLkMt3g/4sWTTmQbMStBAsfhaergAhXHp8x/xmqYnXtYWbKLyY1aFynWiyXx0omJLd3n0zCnDpEDTRlwn/LAwotK/b/lZ58RXJhafA5AbquKYANtg3png+FYX2MAWj75NXwY4h5dQGtMa8dWqWyZYE4Z9bzWFx4A6YAQPwyheKs4GWCU7dCDuiE4z6oZ3BMbfnfO4oX7bnmDtFRoE2GUElBi46Bw==", "swapfree"=>"2.00 GiB", "swapfree_mb"=>2047.99609375, "swapsize"=>"2.00 GiB", "swapsize_mb"=>2047.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>239, "uptime"=>"0:03 hours"}, "timezone"=>"EDT", "uptime"=>"0:03 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>239, "uuid"=>"723914E4-94CB-0743-9847-001D218884D8", "virtual"=>"hyperv", "clientcert"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'RHEL-6.7' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_RHEL-7.4_spec.rb b/.onceover/spec/classes/role__puppetserver_on_RHEL-7.4_spec.rb new file mode 100644 index 0000000..58b0e2f --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_RHEL-7.4_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set RHEL-7.4" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"06/02/2017", "bios_vendor"=>"American Megatrends Inc.", "bios_version"=>"090007", "blockdevice_fd0_size"=>4096, "blockdevice_sda_model"=>"Virtual Disk", "blockdevice_sda_size"=>34359738368, "blockdevice_sda_vendor"=>"Msft", "blockdevice_sdb_model"=>"Virtual Disk", "blockdevice_sdb_size"=>53687091200, "blockdevice_sdb_vendor"=>"Msft", "blockdevice_sr0_model"=>"Virtual CD/ROM", "blockdevice_sr0_size"=>643072, "blockdevice_sr0_vendor"=>"Msft", "blockdevices"=>"fd0,sda,sdb,sr0", "boardmanufacturer"=>"Microsoft Corporation", "boardproductname"=>"Virtual Machine", "boardserialnumber"=>"0000-0010-6006-7746-5828-7871-43", "chassisassettag"=>"7783-7084-3265-9085-8269-3286-77", "chassistype"=>"Desktop", "dhcp_servers"=>{"eth0"=>"168.63.129.16", "system"=>"168.63.129.16"}, "disks"=>{"fd0"=>{"size"=>"4.00 KiB", "size_bytes"=>4096}, "sda"=>{"model"=>"Virtual Disk", "size"=>"32.00 GiB", "size_bytes"=>34359738368, "vendor"=>"Msft"}, "sdb"=>{"model"=>"Virtual Disk", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"Msft"}, "sr0"=>{"model"=>"Virtual CD/ROM", "size"=>"628.00 KiB", "size_bytes"=>643072, "vendor"=>"Msft"}}, "dmi"=>{"bios"=>{"release_date"=>"06/02/2017", "vendor"=>"American Megatrends Inc.", "version"=>"090007"}, "board"=>{"manufacturer"=>"Microsoft Corporation", "product"=>"Virtual Machine", "serial_number"=>"0000-0010-6006-7746-5828-7871-43"}, "chassis"=>{"asset_tag"=>"7783-7084-3265-9085-8269-3286-77", "type"=>"Desktop"}, "manufacturer"=>"Microsoft Corporation", "product"=>{"name"=>"Virtual Machine", "serial_number"=>"0000-0017-8302-7891-2115-8198-39", "uuid"=>"33E071F7-CDA2-3F45-931D-2BFD893683C7"}}, "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "facterversion"=>"3.12.4", "filesystems"=>"ext2,ext3,ext4,udf,xfs", "fips_enabled"=>false, "fqdn"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"rhel7test", "hypervisors"=>{"hyperv"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.0.6", "ipaddress6"=>"fe80::20d:3aff:fe90:5780", "ipaddress6_eth0"=>"fe80::20d:3aff:fe90:5780", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.0.6", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.10", "kernelrelease"=>"3.10.0-693.46.1.el7.x86_64", "kernelversion"=>"3.10.0", "load_averages"=>{"15m"=>0.08, "1m"=>0.32, "5m"=>0.19}, "macaddress"=>"00:0d:3a:90:57:80", "macaddress_eth0"=>"00:0d:3a:90:57:80", "manufacturer"=>"Microsoft Corporation", "memory"=>{"swap"=>{"available"=>"2.00 GiB", "available_bytes"=>2147479552, "capacity"=>"0%", "total"=>"2.00 GiB", "total_bytes"=>2147479552, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"7.42 GiB", "available_bytes"=>7963906048, "capacity"=>"4.67%", "total"=>"7.78 GiB", "total_bytes"=>8353742848, "used"=>"371.78 MiB", "used_bytes"=>389836800}}, "memoryfree"=>"7.42 GiB", "memoryfree_mb"=>7594.97265625, "memorysize"=>"7.78 GiB", "memorysize_mb"=>7966.75, "mountpoints"=>{"/"=>{"available"=>"29.95 GiB", "available_bytes"=>32156790784, "capacity"=>"4.91%", "device"=>"/dev/sda2", "filesystem"=>"xfs", "options"=>["rw", "seclabel", "relatime", "attr2", "inode64", "noquota"], "size"=>"31.50 GiB", "size_bytes"=>33817882624, "used"=>"1.55 GiB", "used_bytes"=>1661091840}, "/boot"=>{"available"=>"393.75 MiB", "available_bytes"=>412880896, "capacity"=>"20.72%", "device"=>"/dev/sda1", "filesystem"=>"xfs", "options"=>["rw", "seclabel", "relatime", "attr2", "inode64", "noquota"], "size"=>"496.66 MiB", "size_bytes"=>520785920, "used"=>"102.91 MiB", "used_bytes"=>107905024}, "/dev/shm"=>{"available"=>"3.89 GiB", "available_bytes"=>4176871424, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"0 bytes", "used_bytes"=>0}, "/mnt/resource"=>{"available"=>"47.04 GiB", "available_bytes"=>50506170368, "capacity"=>"4.18%", "device"=>"/dev/sdb1", "filesystem"=>"ext4", "options"=>["rw", "seclabel", "relatime", "data=ordered"], "size"=>"49.09 GiB", "size_bytes"=>52708212736, "used"=>"2.05 GiB", "used_bytes"=>2202042368}, "/run"=>{"available"=>"3.88 GiB", "available_bytes"=>4168146944, "capacity"=>"0.21%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev", "mode=755"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"8.32 MiB", "used_bytes"=>8724480}, "/run/user/1000"=>{"available"=>"796.68 MiB", "available_bytes"=>835375104, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev", "relatime", "size=815796k", "mode=700", "uid=1000", "gid=1000"], "size"=>"796.68 MiB", "size_bytes"=>835375104, "used"=>"0 bytes", "used_bytes"=>0}, "/sys/fs/cgroup"=>{"available"=>"3.89 GiB", "available_bytes"=>4176871424, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["ro", "seclabel", "nosuid", "nodev", "noexec", "mode=755"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"168.63.129.16", "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "fqdn"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "hostname"=>"rhel7test", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.0.6", "netmask"=>"255.255.255.0", "network"=>"10.0.0.0"}], "bindings6"=>[{"address"=>"fe80::20d:3aff:fe90:5780", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"168.63.129.16", "ip"=>"10.0.0.6", "ip6"=>"fe80::20d:3aff:fe90:5780", "mac"=>"00:0d:3a:90:57:80", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.0.6", "ip6"=>"fe80::20d:3aff:fe90:5780", "mac"=>"00:0d:3a:90:57:80", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"RedHat", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.4", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"RedHat", "release"=>{"full"=>"7.4", "major"=>"7", "minor"=>"4"}, "selinux"=>{"config_mode"=>"enforcing", "config_policy"=>"targeted", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>"28"}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"xfs", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"b3f65ad5-0571-4ae4-937a-13ef2fda43e3"}, "/dev/sda2"=>{"filesystem"=>"xfs", "mount"=>"/", "size"=>"31.51 GiB", "size_bytes"=>33834401792, "uuid"=>"e9643aa4-b339-43c4-afc5-fcac22af1584"}, "/dev/sdb1"=>{"filesystem"=>"ext4", "mount"=>"/mnt/resource", "size"=>"50.00 GiB", "size_bytes"=>53684994048, "uuid"=>"07908b37-1661-4130-9d5a-e1fdb0a4bdb2"}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processor1"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz"], "physicalcount"=>1}, "productname"=>"Virtual Machine", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>true, "selinux_config_mode"=>"enforcing", "selinux_config_policy"=>"targeted", "selinux_current_mode"=>"enforcing", "selinux_enforced"=>true, "selinux_policyversion"=>"28", "serialnumber"=>"0000-0017-8302-7891-2115-8198-39", "ssh"=>{"ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 8b4b534a70cc57bfbebb88a6d980c397fa9dddf7", "sha256"=>"SSHFP 3 2 ab2e72961bc6515482c34e7c8358f929026fc8af979d5a9fa16bd9a25bf4bcb2"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMYggL8slLxRmDxaMceOJ4c8pVKIVA4uUZ4b4jPo7+s8xUHEZkngmqSfHGJpJ4uaDSwO4rNOYVAyCZVK4sDJBuU=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 559ecc22a9b45200bd56dd86455250e203668929", "sha256"=>"SSHFP 4 2 d005f680bbb24dc3c670c16d4cc87a59a871c4bed2763a17141b03d10d480282"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAINswqLjeLueVwG3UgsjhTNQGUg2Y7zayfIXJd783I44K", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 ec0afe862095855d6ca6174cceec173e241afe6a", "sha256"=>"SSHFP 1 2 af54fb6de7ea67ba7e8b93f99af27d7984dc02224aee7de886d269797ae64b11"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDHfGHvDLYXMARhNOK21bV8ZWnwOSxtAcdenfMP/wVlLshAPtqXMzXiDeaFJKfXrKMuiP3aWEbqtERPQnmu+AGfvOekwM6YoHIHCszhnP4ASSpITEuY3ZgVM6qQLgdClBMSdbEoHQ2f6Lem3Uy/7fekA1ofvofp6BtqO5s/Sk3zQhYhDS/TfSw2wlB6J/VrmOimnqhoMq6JLDFJtbYtBFFPqlpf5CZfzOXwAGBnoAuSRO7rtRzXE7caAHMRAdFWlGX1S5zzCJueUyQm3cVvMfqyjbGWJmxDbtIUaDpE+63jLwMidaSu1ZF0Q3mMRvPP0x/g8EZ+EnATl5rPYvVJqcq1", "type"=>"ssh-rsa"}}, "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMYggL8slLxRmDxaMceOJ4c8pVKIVA4uUZ4b4jPo7+s8xUHEZkngmqSfHGJpJ4uaDSwO4rNOYVAyCZVK4sDJBuU=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAINswqLjeLueVwG3UgsjhTNQGUg2Y7zayfIXJd783I44K", "sshfp_ecdsa"=>"SSHFP 3 1 8b4b534a70cc57bfbebb88a6d980c397fa9dddf7\nSSHFP 3 2 ab2e72961bc6515482c34e7c8358f929026fc8af979d5a9fa16bd9a25bf4bcb2", "sshfp_ed25519"=>"SSHFP 4 1 559ecc22a9b45200bd56dd86455250e203668929\nSSHFP 4 2 d005f680bbb24dc3c670c16d4cc87a59a871c4bed2763a17141b03d10d480282", "sshfp_rsa"=>"SSHFP 1 1 ec0afe862095855d6ca6174cceec173e241afe6a\nSSHFP 1 2 af54fb6de7ea67ba7e8b93f99af27d7984dc02224aee7de886d269797ae64b11", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDHfGHvDLYXMARhNOK21bV8ZWnwOSxtAcdenfMP/wVlLshAPtqXMzXiDeaFJKfXrKMuiP3aWEbqtERPQnmu+AGfvOekwM6YoHIHCszhnP4ASSpITEuY3ZgVM6qQLgdClBMSdbEoHQ2f6Lem3Uy/7fekA1ofvofp6BtqO5s/Sk3zQhYhDS/TfSw2wlB6J/VrmOimnqhoMq6JLDFJtbYtBFFPqlpf5CZfzOXwAGBnoAuSRO7rtRzXE7caAHMRAdFWlGX1S5zzCJueUyQm3cVvMfqyjbGWJmxDbtIUaDpE+63jLwMidaSu1ZF0Q3mMRvPP0x/g8EZ+EnATl5rPYvVJqcq1", "swapfree"=>"2.00 GiB", "swapfree_mb"=>2047.99609375, "swapsize"=>"2.00 GiB", "swapsize_mb"=>2047.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>215, "uptime"=>"0:03 hours"}, "timezone"=>"UTC", "uptime"=>"0:03 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>215, "uuid"=>"33E071F7-CDA2-3F45-931D-2BFD893683C7", "virtual"=>"hyperv", "clientcert"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'RHEL-7.4' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_SLES-11.3-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_SLES-11.3-64_spec.rb new file mode 100644 index 0000000..9fd86a3 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_SLES-11.3-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set SLES-11.3-64" do + node_facts = {"aio_agent_version"=>"1.8.3", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>53687091200, "blockdevice_sda_vendor"=>"VBOX", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"8B82075A-B071-4035-A96A-3B5D08F6841D"}}, "domain"=>"lan.asio", "facterversion"=>"3.5.1", "filesystems"=>"ext3,iso9660,squashfs", "fqdn"=>"sles11-sp3.lan.asio", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"sles11-sp3", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::216:3eff:fe48:617f", "ipaddress6_eth0"=>"fe80::216:3eff:fe48:617f", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.0", "kernelrelease"=>"3.0.101-0.47.67-default", "kernelversion"=>"3.0.101", "load_averages"=>{"15m"=>0.06, "1m"=>0.18, "5m"=>0.08}, "macaddress"=>"00:16:3e:48:61:7f", "macaddress_eth0"=>"00:16:3e:48:61:7f", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"354.30 MiB", "available_bytes"=>371511296, "capacity"=>"27.78%", "total"=>"490.61 MiB", "total_bytes"=>514437120, "used"=>"136.30 MiB", "used_bytes"=>142925824}}, "memoryfree"=>"354.30 MiB", "memoryfree_mb"=>354.30078125, "memorysize"=>"490.61 MiB", "memorysize_mb"=>490.60546875, "mountpoints"=>{"/"=>{"available"=>"47.14 GiB", "available_bytes"=>50611761152, "capacity"=>"4.22%", "device"=>"/dev/sda1", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=continue", "barrier=1", "data=ordered"], "size"=>"49.21 GiB", "size_bytes"=>52843638784, "used"=>"2.08 GiB", "used_bytes"=>2231877632}, "/dev/shm"=>{"available"=>"245.29 MiB", "available_bytes"=>257208320, "capacity"=>"0.00%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "relatime"], "size"=>"245.30 MiB", "size_bytes"=>257216512, "used"=>"8.00 KiB", "used_bytes"=>8192}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"domain"=>"lan.asio", "fqdn"=>"sles11-sp3.lan.asio", "hostname"=>"sles11-sp3", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::216:3eff:fe48:617f", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe48:617f", "mac"=>"00:16:3e:48:61:7f", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, {"address"=>"127.0.0.2", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe48:617f", "mac"=>"00:16:3e:48:61:7f", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"SLES", "operatingsystemmajrelease"=>"11", "operatingsystemrelease"=>"11.3", "os"=>{"architecture"=>"x86_64", "family"=>"Suse", "hardware"=>"x86_64", "name"=>"SLES", "release"=>{"full"=>"11.3", "major"=>"11", "minor"=>"3"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Suse", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"50.00 GiB", "size_bytes"=>53686042624, "uuid"=>"586adc21-9cfc-4e12-93e6-c711ab2400b1"}}, "path"=>"/usr/bin:/bin:/usr/sbin:/sbin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.8.2", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 2f39a5ddd25d30676bceb1b99faec8330cb80cd5", "sha256"=>"SSHFP 2 2 d17b59f49908df6bd337918a31a4e38f8489a0c46ada06963cb67ab3a4bdfb11"}, "key"=>"AAAAB3NzaC1kc3MAAACBALvEn/P3Kfg/yFWplaqFsrUOk/Kh9aOZTNNCoJX7lsSQkWpLDkjz03IZZ1pUsykZp6HUhzfW1ZCOKme5503MAsflB78fjgsfGaVL2IcWOvPhurC8SXGivanS5+rL3CFqja/+nMJBPFg8oEyjJei6RJZCQtlEFSEJziKMVI368fxLAAAAFQCC8c+IrxPZc4zVe5EF6qsPnZtMiwAAAIEApfv1xS6ECWq1f8J43BXFdiRszBXQecgdPtf6STvabnYdLKScAPyu3JdosrPswlZWEXLz+srkqqai6xISeSxLKrlY570GNVPmgnBFmoz+iJRi6kakroNe5xjGT45aTyZ16cyg9LFHFLL3KadlzZXu+9XwS9kv09SFlvH6+9+XNGMAAACBALLbpqIZKISARdnFviWOWzFbvYzZHiO3ddAYnXVCGfW1ywmGDqc5kUNTZsBFNYVA56YcaHR/kwFHjOij3SJnvy6VxSG9sSZ4wex/FGBmTUmklelZQsywITGps3MWxiyO3TGfIEXJlqgyVxXZhXnIshN//NCCPbq2X7X7VyTyGjhI"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 7fc0ef4bb2d2d14db8fc0bc0b1b97a9d83c6dc17", "sha256"=>"SSHFP 3 2 a0b01ecd2461ed45e0b51ebec48f79957a9710c3ec441cde0e6c4e5d8939c15e"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK9w38lDcCpjkGqrTdhhsZCVzS2XKgC6Q9fTvkZn1RLhvvWjDBHyFg0KyTAqfepMNNjdgHqEBFumKc3w+L5xLuY="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 20cdd84628cfad3edff17edf9ce3c2f7f1756f41", "sha256"=>"SSHFP 1 2 f48e7e96ed7708c6225367ada2a29309f159a12443eeaed6c86efee0660f3f78"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC2nt/gDBidRKDNUmDDThXA+mMWQxq83odOXzx4/3NHMMfIfu3nuvcCaTI+Tp1EiNcbb6Q2ummoGdJpCXT6/W4cjfluuun1rBDeQzzFfthdBAasNKbSCy+cYKwda0zfP9X4Az0SqsbHM5DekNS0w0stCB+L5qqlhaKyunyid2PaeLfSalP5RbcAxGSy5ijLNcAZqbuNOEiq1v0IIySCPplvzvEv//Ht8PhPhXQiRRtKMeq5pAgqjLeUq5zRlXIVqTYfZPfa5tuteaZNxpRxbDvog7h57LWsHKZSjc8ND2ocoehIymNeL4kpFkLg6TMm6BEEOEks5Kue/SXdYUbHkRKN"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALvEn/P3Kfg/yFWplaqFsrUOk/Kh9aOZTNNCoJX7lsSQkWpLDkjz03IZZ1pUsykZp6HUhzfW1ZCOKme5503MAsflB78fjgsfGaVL2IcWOvPhurC8SXGivanS5+rL3CFqja/+nMJBPFg8oEyjJei6RJZCQtlEFSEJziKMVI368fxLAAAAFQCC8c+IrxPZc4zVe5EF6qsPnZtMiwAAAIEApfv1xS6ECWq1f8J43BXFdiRszBXQecgdPtf6STvabnYdLKScAPyu3JdosrPswlZWEXLz+srkqqai6xISeSxLKrlY570GNVPmgnBFmoz+iJRi6kakroNe5xjGT45aTyZ16cyg9LFHFLL3KadlzZXu+9XwS9kv09SFlvH6+9+XNGMAAACBALLbpqIZKISARdnFviWOWzFbvYzZHiO3ddAYnXVCGfW1ywmGDqc5kUNTZsBFNYVA56YcaHR/kwFHjOij3SJnvy6VxSG9sSZ4wex/FGBmTUmklelZQsywITGps3MWxiyO3TGfIEXJlqgyVxXZhXnIshN//NCCPbq2X7X7VyTyGjhI", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK9w38lDcCpjkGqrTdhhsZCVzS2XKgC6Q9fTvkZn1RLhvvWjDBHyFg0KyTAqfepMNNjdgHqEBFumKc3w+L5xLuY=", "sshfp_dsa"=>"SSHFP 2 1 2f39a5ddd25d30676bceb1b99faec8330cb80cd5\nSSHFP 2 2 d17b59f49908df6bd337918a31a4e38f8489a0c46ada06963cb67ab3a4bdfb11", "sshfp_ecdsa"=>"SSHFP 3 1 7fc0ef4bb2d2d14db8fc0bc0b1b97a9d83c6dc17\nSSHFP 3 2 a0b01ecd2461ed45e0b51ebec48f79957a9710c3ec441cde0e6c4e5d8939c15e", "sshfp_rsa"=>"SSHFP 1 1 20cdd84628cfad3edff17edf9ce3c2f7f1756f41\nSSHFP 1 2 f48e7e96ed7708c6225367ada2a29309f159a12443eeaed6c86efee0660f3f78", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC2nt/gDBidRKDNUmDDThXA+mMWQxq83odOXzx4/3NHMMfIfu3nuvcCaTI+Tp1EiNcbb6Q2ummoGdJpCXT6/W4cjfluuun1rBDeQzzFfthdBAasNKbSCy+cYKwda0zfP9X4Az0SqsbHM5DekNS0w0stCB+L5qqlhaKyunyid2PaeLfSalP5RbcAxGSy5ijLNcAZqbuNOEiq1v0IIySCPplvzvEv//Ht8PhPhXQiRRtKMeq5pAgqjLeUq5zRlXIVqTYfZPfa5tuteaZNxpRxbDvog7h57LWsHKZSjc8ND2ocoehIymNeL4kpFkLg6TMm6BEEOEks5Kue/SXdYUbHkRKN", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>524, "uptime"=>"0:08 hours"}, "timezone"=>"UTC", "uptime"=>"0:08 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>524, "uuid"=>"8B82075A-B071-4035-A96A-3B5D08F6841D", "virtual"=>"virtualbox", "clientcert"=>"sles11-sp3.lan.asio", "clientversion"=>"4.8.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'SLES-11.3-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_SLES-12.1-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_SLES-12.1-64_spec.rb new file mode 100644 index 0000000..a8c9033 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_SLES-12.1-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set SLES-12.1-64" do + node_facts = {"aio_agent_build"=>"1.7.2", "aio_agent_version"=>"1.7.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>53687091200, "blockdevice_sda_vendor"=>"VBOX", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"7733628A-3D10-4F0B-B6E2-DB6D0CBB8F7E"}}, "domain"=>"openstack.site", "facterversion"=>"3.4.2", "filesystems"=>"ext2,ext3,ext4", "fqdn"=>"sles12-sp1.openstack.site", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"sles12-sp1", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::216:3eff:fe72:f121", "ipaddress6_eth0"=>"fe80::216:3eff:fe72:f121", "ipaddress6_eth1"=>"fe80::a00:27ff:fe60:90e", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"192.168.33.15", "ipaddress_lo"=>"127.0.0.1", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.12", "kernelrelease"=>"3.12.62-60.64.8-default", "kernelversion"=>"3.12.62", "load_averages"=>{"15m"=>0.05, "1m"=>0.0, "5m"=>0.02}, "macaddress"=>"00:16:3e:72:f1:21", "macaddress_eth0"=>"00:16:3e:72:f1:21", "macaddress_eth1"=>"08:00:27:60:09:0e", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"1.78 GiB", "available_bytes"=>1907027968, "capacity"=>"68.84%", "total"=>"5.70 GiB", "total_bytes"=>6119927808, "used"=>"3.92 GiB", "used_bytes"=>4212899840}}, "memoryfree"=>"1.78 GiB", "memoryfree_mb"=>1818.68359375, "memorysize"=>"5.70 GiB", "memorysize_mb"=>5836.41796875, "mountpoints"=>{"/"=>{"available"=>"45.34 GiB", "available_bytes"=>48682504192, "capacity"=>"7.64%", "device"=>"/dev/sda1", "filesystem"=>"ext3", "options"=>["rw", "relatime", "data=ordered"], "size"=>"49.09 GiB", "size_bytes"=>52709421056, "used"=>"3.75 GiB", "used_bytes"=>4026916864}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"192.168.33.0", "network_lo"=>"127.0.0.0", "networking"=>{"domain"=>"openstack.site", "fqdn"=>"sles12-sp1.openstack.site", "hostname"=>"sles12-sp1", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::216:3eff:fe72:f121", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe72:f121", "mac"=>"00:16:3e:72:f1:21", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"bindings"=>[{"address"=>"192.168.33.15", "netmask"=>"255.255.255.0", "network"=>"192.168.33.0"}], "bindings6"=>[{"address"=>"fe80::a00:27ff:fe60:90e", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"192.168.33.15", "ip6"=>"fe80::a00:27ff:fe60:90e", "mac"=>"08:00:27:60:09:0e", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"192.168.33.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe72:f121", "mac"=>"00:16:3e:72:f1:21", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"SLES", "operatingsystemmajrelease"=>"12", "operatingsystemrelease"=>"12.1", "os"=>{"architecture"=>"x86_64", "family"=>"Suse", "hardware"=>"x86_64", "name"=>"SLES", "release"=>{"full"=>"12.1", "major"=>"12", "minor"=>"1"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Suse", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext3", "label"=>"ROOT", "mount"=>"/", "partuuid"=>"3d2745bf-01", "size"=>"50.00 GiB", "size_bytes"=>53686042624, "uuid"=>"dcf2494f-2b02-466b-aa2c-9e7c01bdbdd7"}}, "path"=>"/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin:/usr/games", "pe_build"=>"2016.4.3", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_server_version"=>"2016.4.3", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"sles-12-x86_64", "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor2"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor3"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>4, "processors"=>{"count"=>4, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppetversion"=>"4.7.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 4c29775fbdf4c3c3899d036510ced3a377023cd1", "sha256"=>"SSHFP 2 2 6b21d41b5df2640a9b710884c10d8f87dbc2944e639a5e46273bfb4aa76522c5"}, "key"=>"AAAAB3NzaC1kc3MAAACBAK+haL65A0ALR7nw0X5re26C23ncFgxvedmnE2iUbjbeM7F//EBeA4Gn3mjbtPkTVDu61Tfl45tCHKHa36l2w5rC2mt71yMGJQoHeDtA4ddO2uA+B19fmkfhAICtjrvYc8vj5jwwcVmmP0FUasIunM0/9uAhZ+97E7+I91bPhp/RAAAAFQDNpq248quBrulsV6qkoYv00XODZwAAAIBAe5mwq4iS3DH5ABJSJoGGrWZBrY2ZPYcpzqStDN12I+lNL0HqoZF3dRdXUiiAl0qGpO9vtaTtrJzQuahTpB0k/HkMP042Kqa/hhkobuPlvu5Xuuj5cNzLuditXn5ScKs8BXaoh6mvOAAIS1jY9BZ+dGxZfygvjjtcAWHWCVAxoQAAAIACBpgms8yMLnEd5qY7kF5hqO7DNJ6Q0xyFOB5zWKhj1nbCUmxKBiF2XjXZGZc+6LD0Hg1fs1EiW9ed9g7F7/7LLtlgzeJPIg8vuqsRvCj3JkwFDmGHfA2Z0EYU4sn8dmw1RLeoWY0fCaPM+x00hSa36VMMXAHEd2MCUPYTTiMmaQ=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 d1c37b4313689a7afe74eead74ea53699234505b", "sha256"=>"SSHFP 3 2 60246f4a32257320dc990997d7373eede1667aaead6ea95baa32fa07fec824cd"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGnNFUni4th60YWWMAHbe9fByciHV0mswnuc2CzGSzziVAUbsSKmJktAHNmcYKssztsMpBPsPMLM9j8ceD59jmI="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 37cbc33c742e357446b82735b529cd0d6dd5c459", "sha256"=>"SSHFP 4 2 2228771c3a8436da3436b331f293b2394f8e24f12cf6590d75d5077b37e7cacf"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIB9nMKgF7UeoNyuUwz3ifm0M4QjlEjGNSLxvFm6xXVhx"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1ccfdf4e0afc38d26ab2d3b44f37c1ec7eefe51", "sha256"=>"SSHFP 1 2 f492d7edf7cc14c5e8472aa10aa6e7cf049032f9a52584e07c10101af807fe38"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDjeTmNl1i5lo2aP6quMk+/thACsrOK50twMge6KfZ6J1Q6ncsjjpZNA745pgvUJuQx2STl2vCMT3aTbGIrw+FXGNbfRWRa9pUUTJE82mgcPnYsMqWo+JQwuJOjhdaDlV8r7U197ZIsOM+eo2CBYYUP/ZAFbGzFL4Wb29hld1MiHSACcRC7HozgAxPCUyOZ0mcckofFIW/XO289UmEJj27RSnM3YyaOXxg+xv7tjxjLaq7j4HlFR5HZt4OYdzoHMTSwexcNtyM8TyNu9OKSGSYuQNWxghltrElP+Hg1Zgw8Bxhyf+a9KqF9/Q7Z0zWvwoJE3II9kHij2M73eiadZPj/"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAK+haL65A0ALR7nw0X5re26C23ncFgxvedmnE2iUbjbeM7F//EBeA4Gn3mjbtPkTVDu61Tfl45tCHKHa36l2w5rC2mt71yMGJQoHeDtA4ddO2uA+B19fmkfhAICtjrvYc8vj5jwwcVmmP0FUasIunM0/9uAhZ+97E7+I91bPhp/RAAAAFQDNpq248quBrulsV6qkoYv00XODZwAAAIBAe5mwq4iS3DH5ABJSJoGGrWZBrY2ZPYcpzqStDN12I+lNL0HqoZF3dRdXUiiAl0qGpO9vtaTtrJzQuahTpB0k/HkMP042Kqa/hhkobuPlvu5Xuuj5cNzLuditXn5ScKs8BXaoh6mvOAAIS1jY9BZ+dGxZfygvjjtcAWHWCVAxoQAAAIACBpgms8yMLnEd5qY7kF5hqO7DNJ6Q0xyFOB5zWKhj1nbCUmxKBiF2XjXZGZc+6LD0Hg1fs1EiW9ed9g7F7/7LLtlgzeJPIg8vuqsRvCj3JkwFDmGHfA2Z0EYU4sn8dmw1RLeoWY0fCaPM+x00hSa36VMMXAHEd2MCUPYTTiMmaQ==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGnNFUni4th60YWWMAHbe9fByciHV0mswnuc2CzGSzziVAUbsSKmJktAHNmcYKssztsMpBPsPMLM9j8ceD59jmI=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIB9nMKgF7UeoNyuUwz3ifm0M4QjlEjGNSLxvFm6xXVhx", "sshfp_dsa"=>"SSHFP 2 1 4c29775fbdf4c3c3899d036510ced3a377023cd1\nSSHFP 2 2 6b21d41b5df2640a9b710884c10d8f87dbc2944e639a5e46273bfb4aa76522c5", "sshfp_ecdsa"=>"SSHFP 3 1 d1c37b4313689a7afe74eead74ea53699234505b\nSSHFP 3 2 60246f4a32257320dc990997d7373eede1667aaead6ea95baa32fa07fec824cd", "sshfp_ed25519"=>"SSHFP 4 1 37cbc33c742e357446b82735b529cd0d6dd5c459\nSSHFP 4 2 2228771c3a8436da3436b331f293b2394f8e24f12cf6590d75d5077b37e7cacf", "sshfp_rsa"=>"SSHFP 1 1 d1ccfdf4e0afc38d26ab2d3b44f37c1ec7eefe51\nSSHFP 1 2 f492d7edf7cc14c5e8472aa10aa6e7cf049032f9a52584e07c10101af807fe38", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDjeTmNl1i5lo2aP6quMk+/thACsrOK50twMge6KfZ6J1Q6ncsjjpZNA745pgvUJuQx2STl2vCMT3aTbGIrw+FXGNbfRWRa9pUUTJE82mgcPnYsMqWo+JQwuJOjhdaDlV8r7U197ZIsOM+eo2CBYYUP/ZAFbGzFL4Wb29hld1MiHSACcRC7HozgAxPCUyOZ0mcckofFIW/XO289UmEJj27RSnM3YyaOXxg+xv7tjxjLaq7j4HlFR5HZt4OYdzoHMTSwexcNtyM8TyNu9OKSGSYuQNWxghltrElP+Hg1Zgw8Bxhyf+a9KqF9/Q7Z0zWvwoJE3II9kHij2M73eiadZPj/", "staging_http_get"=>"curl", "system_uptime"=>{"days"=>1, "hours"=>41, "seconds"=>148058, "uptime"=>"1 day"}, "timezone"=>"UTC", "uptime"=>"1 day", "uptime_days"=>1, "uptime_hours"=>41, "uptime_seconds"=>148058, "uuid"=>"7733628A-3D10-4F0B-B6E2-DB6D0CBB8F7E", "virtual"=>"virtualbox", "clientcert"=>"sles12-sp1.openstack.site", "clientversion"=>"4.7.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'SLES-12.1-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Ubuntu-12.04-32_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Ubuntu-12.04-32_spec.rb new file mode 100644 index 0000000..561aac8 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Ubuntu-12.04-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Ubuntu-12.04-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"3A7F9D94-3B88-45AB-99A4-57745C934A08"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe8d:6188", "ipaddress6_eth0"=>"fe80::a00:27ff:fe8d:6188", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.13", "kernelrelease"=>"3.13.0-32-generic", "kernelversion"=>"3.13.0", "load_averages"=>{"15m"=>0.03, "1m"=>0.23, "5m"=>0.09}, "lsbdistcodename"=>"precise", "lsbdistdescription"=>"Ubuntu 12.04.5 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"12.04", "lsbmajdistrelease"=>"12.04", "macaddress"=>"08:00:27:8d:61:88", "macaddress_eth0"=>"08:00:27:8d:61:88", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"407.73 MiB", "available_bytes"=>427540480, "capacity"=>"17.64%", "total"=>"495.05 MiB", "total_bytes"=>519102464, "used"=>"87.32 MiB", "used_bytes"=>91561984}}, "memoryfree"=>"407.73 MiB", "memoryfree_mb"=>407.734375, "memorysize"=>"495.05 MiB", "memorysize_mb"=>495.0546875, "mountpoints"=>{"/"=>{"available"=>"1.81 GiB", "available_bytes"=>1940865024, "capacity"=>"36.14%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"2.83 GiB", "size_bytes"=>-1255694336, "used"=>"1.02 GiB", "used_bytes"=>1098407936}, "/boot"=>{"available"=>"203.56 MiB", "available_bytes"=>213447680, "capacity"=>"13.50%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"31.76 MiB", "used_bytes"=>33307648}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe8d:6188", "mac"=>"08:00:27:8d:61:88", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe8d:6188", "mac"=>"08:00:27:8d:61:88", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"12.04", "operatingsystemrelease"=>"12.04", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"precise", "description"=>"Ubuntu 12.04.5 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"3fff8935-622f-4e9a-944f-38108c71af34"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"185fbdf2-880c-4aa6-ada8-8dade7aa3fc6"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"31f2e84f-0e99-4531-9ecb-2b151fc6ce31"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"S8Vl05-TIfO-rk5Y-gIDu-TIwj-L8Ub-3OjoJb"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 9cb1f6d6a1730dcc9e02dc62be68874f11e5dd6b", "sha256"=>"SSHFP 2 2 6e391d8fc3ab5c57147ba946aafe236972ec89cca3dfb2937f6a874524f1bce0"}, "key"=>"AAAAB3NzaC1kc3MAAACBAOBWnH+OxYCpvG4X6e4AFQNUreLJ3AvvgUUyIirhJ+zhg3IgAoe0LGc1i8t1HPBrmnZDe0jLJJVzQU42jrfQZHlZSlydnkfjoa/Z8R2ruMa+972wODUvSTAtIkuJeYKTMdNQVJCTkiy6DwU2K8UT32uVb6nN/oLHLroM7rQGaZuXAAAAFQC+aaKJlj/9kRyIiQjmYWrMJiry5wAAAIB9Q1hRlr7ZIlDSpmXPk1cVh7e4s0B89NAd4M/49iM5ZXj4FyMtFvsO+tWlRrNhgVJYTK/2agwf9FhBVD0nTqqAKOnisjmRv6QD8jADoVdI7sxxqGRs+HneMjfSXe2sCD8LFQENB3+uY1fIgfvVqAgCRR7QOFA7Xm0xh/iiu2H6+AAAAIEAsnZ59SDy2ISkiaZu9s6TXnt+WrBqtkAqpLMr7Sy+lsV1zWkoEgHKPUrBW1Yfc4tByXCqJk/YrYbkPrVN7ng5E30QACV//YmCaBD76Jm+VDjHFGgaGzh18PhuR/vnhByQ+b+MAE22IE3kqMakxnLpxowWUVVbm0CTG3lFMGvGFnA="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 75fd3452191ff0c693a6e76d75a9a617230e8b21", "sha256"=>"SSHFP 3 2 0ae893992e316dcbed9e14b009a8f00df48a352377da435a4d75a97f7c8e6668"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF5AGWyOlygr7/VMxZepE9A7W5UxuQY9NqxokurV4IR0hWR3K3qZ+ro8ai55HE07W16EGHt5FPLi3ocnzr0U1R0="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 198e8faaf2a7b3c5d0d8071a5fb89d3673baa48f", "sha256"=>"SSHFP 1 2 3c8ba605220954898d29864d617d8e1330d5ac3df2bd73e718fb2ab97098f9ee"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDGzlnmGodUPjwICVkKWpSoIG47EJLT2SYCsCMFjHLUbD6mgXe2vAhgTSwaxxL8lEecc9lZRi1VCG/CaUZFCwirSysADa5pewIA6fFfYNiBqwg56MOEC2cyeQePshi73FRkvPpwQsisAhieW8XCA+93fDPbaQaQpDpc8lIeraVFRkhxSZ2MD2j+4/gMvTH+oIHFa12GidUoRpEryt6qXFrV0dg+L5OKvIGDntssFnBE+zG3lhlFcdm3CwQp34MaVolaDtkCt5klO2GaVLHxtcyG+8wM54urHuW7HK3jxaZwKBeAQJ00rQsuC2dRljOZ9RFFCUWPf/XuCP9nNXEu1hEN"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAOBWnH+OxYCpvG4X6e4AFQNUreLJ3AvvgUUyIirhJ+zhg3IgAoe0LGc1i8t1HPBrmnZDe0jLJJVzQU42jrfQZHlZSlydnkfjoa/Z8R2ruMa+972wODUvSTAtIkuJeYKTMdNQVJCTkiy6DwU2K8UT32uVb6nN/oLHLroM7rQGaZuXAAAAFQC+aaKJlj/9kRyIiQjmYWrMJiry5wAAAIB9Q1hRlr7ZIlDSpmXPk1cVh7e4s0B89NAd4M/49iM5ZXj4FyMtFvsO+tWlRrNhgVJYTK/2agwf9FhBVD0nTqqAKOnisjmRv6QD8jADoVdI7sxxqGRs+HneMjfSXe2sCD8LFQENB3+uY1fIgfvVqAgCRR7QOFA7Xm0xh/iiu2H6+AAAAIEAsnZ59SDy2ISkiaZu9s6TXnt+WrBqtkAqpLMr7Sy+lsV1zWkoEgHKPUrBW1Yfc4tByXCqJk/YrYbkPrVN7ng5E30QACV//YmCaBD76Jm+VDjHFGgaGzh18PhuR/vnhByQ+b+MAE22IE3kqMakxnLpxowWUVVbm0CTG3lFMGvGFnA=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF5AGWyOlygr7/VMxZepE9A7W5UxuQY9NqxokurV4IR0hWR3K3qZ+ro8ai55HE07W16EGHt5FPLi3ocnzr0U1R0=", "sshfp_dsa"=>"SSHFP 2 1 9cb1f6d6a1730dcc9e02dc62be68874f11e5dd6b\nSSHFP 2 2 6e391d8fc3ab5c57147ba946aafe236972ec89cca3dfb2937f6a874524f1bce0", "sshfp_ecdsa"=>"SSHFP 3 1 75fd3452191ff0c693a6e76d75a9a617230e8b21\nSSHFP 3 2 0ae893992e316dcbed9e14b009a8f00df48a352377da435a4d75a97f7c8e6668", "sshfp_rsa"=>"SSHFP 1 1 198e8faaf2a7b3c5d0d8071a5fb89d3673baa48f\nSSHFP 1 2 3c8ba605220954898d29864d617d8e1330d5ac3df2bd73e718fb2ab97098f9ee", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDGzlnmGodUPjwICVkKWpSoIG47EJLT2SYCsCMFjHLUbD6mgXe2vAhgTSwaxxL8lEecc9lZRi1VCG/CaUZFCwirSysADa5pewIA6fFfYNiBqwg56MOEC2cyeQePshi73FRkvPpwQsisAhieW8XCA+93fDPbaQaQpDpc8lIeraVFRkhxSZ2MD2j+4/gMvTH+oIHFa12GidUoRpEryt6qXFrV0dg+L5OKvIGDntssFnBE+zG3lhlFcdm3CwQp34MaVolaDtkCt5klO2GaVLHxtcyG+8wM54urHuW7HK3jxaZwKBeAQJ00rQsuC2dRljOZ9RFFCUWPf/XuCP9nNXEu1hEN", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>60, "uptime"=>"0:01 hours"}, "timezone"=>"PST", "uptime"=>"0:01 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>60, "uuid"=>"3A7F9D94-3B88-45AB-99A4-57745C934A08", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Ubuntu-12.04-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Ubuntu-12.04-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Ubuntu-12.04-64_spec.rb new file mode 100644 index 0000000..7aa4a91 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Ubuntu-12.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Ubuntu-12.04-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"47C86ACE-B882-46AD-8D6D-4260BF97C669"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe5f:df27", "ipaddress6_eth0"=>"fe80::a00:27ff:fe5f:df27", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.13", "kernelrelease"=>"3.13.0-32-generic", "kernelversion"=>"3.13.0", "load_averages"=>{"15m"=>0.01, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"precise", "lsbdistdescription"=>"Ubuntu 12.04.5 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"12.04", "lsbmajdistrelease"=>"12.04", "macaddress"=>"08:00:27:5f:df:27", "macaddress_eth0"=>"08:00:27:5f:df:27", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"350.97 MiB", "available_bytes"=>368017408, "capacity"=>"28.33%", "total"=>"489.72 MiB", "total_bytes"=>513507328, "used"=>"138.75 MiB", "used_bytes"=>145489920}}, "memoryfree"=>"350.97 MiB", "memoryfree_mb"=>350.96875, "memorysize"=>"489.72 MiB", "memorysize_mb"=>489.71875, "mountpoints"=>{"/"=>{"available"=>"17.68 GiB", "available_bytes"=>18981703680, "capacity"=>"6.12%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"18.83 GiB", "size_bytes"=>20219142144, "used"=>"1.15 GiB", "used_bytes"=>1237438464}, "/boot"=>{"available"=>"202.55 MiB", "available_bytes"=>212389888, "capacity"=>"13.93%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"32.77 MiB", "used_bytes"=>34365440}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe5f:df27", "mac"=>"08:00:27:5f:df:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe5f:df27", "mac"=>"08:00:27:5f:df:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"12.04", "operatingsystemrelease"=>"12.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"precise", "description"=>"Ubuntu 12.04.5 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"96092a10-847b-4a55-b5dc-87d2cc56ee5e"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"50695407-158d-4b0e-975a-b575fa5f5359"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"829f03e2-ceb8-4f8d-9f32-e1336456f719"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"P6GCnD-xaHj-APeE-m1Em-fr5a-z3Kk-iFVziN"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 59bc746d9ab774867521d076613863790a696630", "sha256"=>"SSHFP 2 2 8d5bdb7662b7b938beb6517c7d001cc68136d3f1ded5b240cbee1a89dad2d79f"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPHTvj71+XfT0li+zpLYPbY5wKyO36Mij5D4Otl1RMIbZK68No9pDhiPdxMgZrLSq9bHLYs+cxqtSrpZgnNLvT44P+BPZbbQE4HrfcYuv0o2ifa0bqzlyHYl+BT6qSmx8zgBh3iImuhAJhLPnGCzgQ2FkfjAiHKHT1LG4h2knvtTAAAAFQDHa6q8yJo47htrK8LG0D3iAfTT2QAAAIEAtFgO4Qw6K2fQnLSfxL7h98lRopA4tokzKinUjJAoQ86eu9oR4mHDh3FRQlaHJX52RT1GABctV5MyG9LJxUuJLdeyIA7bmJrIPi0TROlHCd3NaS+0r6d1BzmMy+v7cVZsDK+8fqYBjC3b3e+lr3khnUU9uz8GqtrGFrDxjkl8y8QAAACAIKPdIYNLGaoreSz/L0PLSE6xw6+bButDCuuODpGXtD6Q6Cwo+4bjvAwV/yNMVIbrZdic8xjWh1YLxaCx0622XX8wr8GPLr3HViJ74VryCRkvsgXXuZcDl3z5+eEq1YDd5ELzpCcpkW31f64VWYLOIqz3Uo5hXeeCrSEt2vmh+Eo="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 cc6522d24466d3704070e9fda54dc60147978420", "sha256"=>"SSHFP 3 2 9ac8780c7818c208926a847d5f2c3fc274a37a0ed8ae0276f96fb3203e0e0e00"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPZ7/g0ZAcDbNMyMEABW/giY5lPyalZ717tzqmt1baNzEXALYoFN2FMHL/Wid8DUl7oKnXHGSkc4JYYFgpvt11Q="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 0ea50bd46b70a8f9efae23a8bea49388972e9740", "sha256"=>"SSHFP 1 2 0c1c44799be36031d1a8da2d02b9ed4b299ab924c647605afecb1c73063fb307"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCvijE5JYtnXa4uibGq6UEqXn7fboZYCvwZ3RFSkkG6qQ51Q7685OJgayGAZkrbiTeEWOHN6MQPr3TKwSQD2YxoUw3qKQ+hsuTydPK/ZXtNxM0ejFvpIprG1U1NDwj2YVxwo4tQveUewbBQYzEyI1aNQaE2z/fPypQOEj0v9QNAapmGGlV8ab0q0izCM4Aen5pccRZLJuibUUY3nOEfE0QTIM3QmOZoKEmj/Ez3P3+16iGeRNId/+8Bf4R5eVrKhorUUt+H/y/WcCHT5KrbCWkEH6G3eEQ7UA6XCB/sQ5pC6ZKxBbyYjy8N5wySv+5PVpoUHhHjKoSuYy6qQDE2MwRz"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPHTvj71+XfT0li+zpLYPbY5wKyO36Mij5D4Otl1RMIbZK68No9pDhiPdxMgZrLSq9bHLYs+cxqtSrpZgnNLvT44P+BPZbbQE4HrfcYuv0o2ifa0bqzlyHYl+BT6qSmx8zgBh3iImuhAJhLPnGCzgQ2FkfjAiHKHT1LG4h2knvtTAAAAFQDHa6q8yJo47htrK8LG0D3iAfTT2QAAAIEAtFgO4Qw6K2fQnLSfxL7h98lRopA4tokzKinUjJAoQ86eu9oR4mHDh3FRQlaHJX52RT1GABctV5MyG9LJxUuJLdeyIA7bmJrIPi0TROlHCd3NaS+0r6d1BzmMy+v7cVZsDK+8fqYBjC3b3e+lr3khnUU9uz8GqtrGFrDxjkl8y8QAAACAIKPdIYNLGaoreSz/L0PLSE6xw6+bButDCuuODpGXtD6Q6Cwo+4bjvAwV/yNMVIbrZdic8xjWh1YLxaCx0622XX8wr8GPLr3HViJ74VryCRkvsgXXuZcDl3z5+eEq1YDd5ELzpCcpkW31f64VWYLOIqz3Uo5hXeeCrSEt2vmh+Eo=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPZ7/g0ZAcDbNMyMEABW/giY5lPyalZ717tzqmt1baNzEXALYoFN2FMHL/Wid8DUl7oKnXHGSkc4JYYFgpvt11Q=", "sshfp_dsa"=>"SSHFP 2 1 59bc746d9ab774867521d076613863790a696630\nSSHFP 2 2 8d5bdb7662b7b938beb6517c7d001cc68136d3f1ded5b240cbee1a89dad2d79f", "sshfp_ecdsa"=>"SSHFP 3 1 cc6522d24466d3704070e9fda54dc60147978420\nSSHFP 3 2 9ac8780c7818c208926a847d5f2c3fc274a37a0ed8ae0276f96fb3203e0e0e00", "sshfp_rsa"=>"SSHFP 1 1 0ea50bd46b70a8f9efae23a8bea49388972e9740\nSSHFP 1 2 0c1c44799be36031d1a8da2d02b9ed4b299ab924c647605afecb1c73063fb307", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCvijE5JYtnXa4uibGq6UEqXn7fboZYCvwZ3RFSkkG6qQ51Q7685OJgayGAZkrbiTeEWOHN6MQPr3TKwSQD2YxoUw3qKQ+hsuTydPK/ZXtNxM0ejFvpIprG1U1NDwj2YVxwo4tQveUewbBQYzEyI1aNQaE2z/fPypQOEj0v9QNAapmGGlV8ab0q0izCM4Aen5pccRZLJuibUUY3nOEfE0QTIM3QmOZoKEmj/Ez3P3+16iGeRNId/+8Bf4R5eVrKhorUUt+H/y/WcCHT5KrbCWkEH6G3eEQ7UA6XCB/sQ5pC6ZKxBbyYjy8N5wySv+5PVpoUHhHjKoSuYy6qQDE2MwRz", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>368, "uptime"=>"0:06 hours"}, "timezone"=>"PST", "uptime"=>"0:06 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>368, "uuid"=>"47C86ACE-B882-46AD-8D6D-4260BF97C669", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Ubuntu-12.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Ubuntu-14.04-32_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Ubuntu-14.04-32_spec.rb new file mode 100644 index 0000000..da6d88a --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Ubuntu-14.04-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Ubuntu-14.04-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"C138B01C-ADF6-4D36-8A3A-D9FCE21FF0C7"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe71:8945", "ipaddress6_eth0"=>"fe80::a00:27ff:fe71:8945", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.16", "kernelrelease"=>"3.16.0-30-generic", "kernelversion"=>"3.16.0", "load_averages"=>{"15m"=>0.05, "1m"=>0.0, "5m"=>0.07}, "lsbdistcodename"=>"trusty", "lsbdistdescription"=>"Ubuntu 14.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"14.04", "lsbmajdistrelease"=>"14.04", "macaddress"=>"08:00:27:71:89:45", "macaddress_eth0"=>"08:00:27:71:89:45", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"414.97 MiB", "available_bytes"=>435126272, "capacity"=>"16.34%", "total"=>"496.04 MiB", "total_bytes"=>520130560, "used"=>"81.07 MiB", "used_bytes"=>85004288}}, "memoryfree"=>"414.97 MiB", "memoryfree_mb"=>414.96875, "memorysize"=>"496.04 MiB", "memorysize_mb"=>496.03515625, "mountpoints"=>{"/"=>{"available"=>"1.72 GiB", "available_bytes"=>1846272000, "capacity"=>"39.25%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"2.83 GiB", "size_bytes"=>-1255694336, "used"=>"1.11 GiB", "used_bytes"=>1193000960}, "/boot"=>{"available"=>"200.06 MiB", "available_bytes"=>209779712, "capacity"=>"14.98%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"35.26 MiB", "used_bytes"=>36975616}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe71:8945", "mac"=>"08:00:27:71:89:45", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe71:8945", "mac"=>"08:00:27:71:89:45", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"14.04", "operatingsystemrelease"=>"14.04", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"trusty", "description"=>"Ubuntu 14.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b31f5de0-8805-43da-b3f2-da9e51c3401b"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"569bc4ac-b4e8-4e62-8503-551a63285383"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"f00f661b-b4b5-4e6f-bba3-3dcacf85fd8e"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"vF1RtV-BHmi-b0UW-QR1z-tJ48-g6Tn-aGgEn7"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1d072f5a62c6f3ecb283ca8a54906665550fb2cf", "sha256"=>"SSHFP 2 2 216358286cef61e3340afe60750513fc6bdbfc96a7190e32929fc11aeefcd375"}, "key"=>"AAAAB3NzaC1kc3MAAACBAKG/fk+L4qOg6yF5DOrNdiTsaSvD7lsYpJAFGR5AJqtmtXZsRckVuydvmsbLVDNi+P+XaO6Sr/dkFfj89vAx6gB+qZxtEbasdoUiddpjzONvjmvfzmGlFZhlptlYTSu3Ci89mY6ZergBMtGqLGh8VmcNPI54eNexasVdG4nbkcxPAAAAFQCaJGszl2tCCa6KY7GYCOisCeGwtwAAAIBDzQlFkAi7IZAQpaUS6V+1frDgnCipxXjDSZD+ObJ4Wgwrj01+vXdeHKj30mIRo7ZatXxZs2dkQHUeL0SJ/bpsdd1jOu4Mf8c+cHqSHcC4Qz2vtlARKNMXAY5vJHh7QBwaPf3/s8tWqX9lnyu1UdTjE/SgF322Nwkz9OFvCHbuuwAAAIBPA32N7qVPwEOsTBG8xVPcUXwguj6ube0n0OUsZB5i8PFjQ99nLbZce9ucLqVzPCYeClgbPrVH1MBtRc67QLKb6Kms8pseuFCtiB78j9A36PfNfTDervnF1Aw/nIb/DQImtmmDKbPhv4uniseqgSdnh2awLVy6UO7haf3Wz6maFA=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 a6f44c1518708b08d997c7a97cc75b0654b098d1", "sha256"=>"SSHFP 3 2 2ccda56b2fb9bd95c2327cceaaf8f868daebb1f7dfc5bd0a9d816fff06f7b474"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCK+3h6/GsmbpRd/xdgTi+vsoh+N6gTB5IZFpZdaJVK6H6cSwmhiEiby/3yqwQFGlSXug8aQiQJ3YZI471wScbU="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 4ca8bd8a83038bc1339ee7037ab2043f41e4b4e7", "sha256"=>"SSHFP 4 2 7326c4dfce373f219025f41f127535f0fb9aacc221adf34e75db8eccc118ab3d"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAICobX2RUot4PEA4s4fTvltDWEWIXFMehgbTwvLezavoq"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 9da876f061d5f203345c99b047a48b24775f77ae", "sha256"=>"SSHFP 1 2 90ca5e6b808b9f47c78e26f9c228dab88b19536d56f6c72443b1d06502646ecf"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC+fl/b51y7U6i6DGQ+FwkYKIzBSVV6DcIZj+Q3BVRLzviOQIQMfNJ0wvLMKKHK96gWaGlknnU0Tn/cvVShuWbaWFBpOTLDsM2cm0usZot8+EmYGnql8D3AFMxhgWBb7pBa5KJOfJidrprXLcSjW82bKhIYbLDDVWMgaoIEVAbufOCobffpwTBYSPS4OdF3WyqNJj2B9tklkUdeUFYKkCFO/mszwSZdY+0xxTyilmyrHr8evbmoA34LREnktKFiu/I5gPXts1CdVLVzvNsMt0VM+ldLEtGPy7qvcddXy34yax538n+A6VOOBg2wpKwEsmqjkCHdq8s/2eWeeu+xGFch"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAKG/fk+L4qOg6yF5DOrNdiTsaSvD7lsYpJAFGR5AJqtmtXZsRckVuydvmsbLVDNi+P+XaO6Sr/dkFfj89vAx6gB+qZxtEbasdoUiddpjzONvjmvfzmGlFZhlptlYTSu3Ci89mY6ZergBMtGqLGh8VmcNPI54eNexasVdG4nbkcxPAAAAFQCaJGszl2tCCa6KY7GYCOisCeGwtwAAAIBDzQlFkAi7IZAQpaUS6V+1frDgnCipxXjDSZD+ObJ4Wgwrj01+vXdeHKj30mIRo7ZatXxZs2dkQHUeL0SJ/bpsdd1jOu4Mf8c+cHqSHcC4Qz2vtlARKNMXAY5vJHh7QBwaPf3/s8tWqX9lnyu1UdTjE/SgF322Nwkz9OFvCHbuuwAAAIBPA32N7qVPwEOsTBG8xVPcUXwguj6ube0n0OUsZB5i8PFjQ99nLbZce9ucLqVzPCYeClgbPrVH1MBtRc67QLKb6Kms8pseuFCtiB78j9A36PfNfTDervnF1Aw/nIb/DQImtmmDKbPhv4uniseqgSdnh2awLVy6UO7haf3Wz6maFA==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCK+3h6/GsmbpRd/xdgTi+vsoh+N6gTB5IZFpZdaJVK6H6cSwmhiEiby/3yqwQFGlSXug8aQiQJ3YZI471wScbU=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAICobX2RUot4PEA4s4fTvltDWEWIXFMehgbTwvLezavoq", "sshfp_dsa"=>"SSHFP 2 1 1d072f5a62c6f3ecb283ca8a54906665550fb2cf\nSSHFP 2 2 216358286cef61e3340afe60750513fc6bdbfc96a7190e32929fc11aeefcd375", "sshfp_ecdsa"=>"SSHFP 3 1 a6f44c1518708b08d997c7a97cc75b0654b098d1\nSSHFP 3 2 2ccda56b2fb9bd95c2327cceaaf8f868daebb1f7dfc5bd0a9d816fff06f7b474", "sshfp_ed25519"=>"SSHFP 4 1 4ca8bd8a83038bc1339ee7037ab2043f41e4b4e7\nSSHFP 4 2 7326c4dfce373f219025f41f127535f0fb9aacc221adf34e75db8eccc118ab3d", "sshfp_rsa"=>"SSHFP 1 1 9da876f061d5f203345c99b047a48b24775f77ae\nSSHFP 1 2 90ca5e6b808b9f47c78e26f9c228dab88b19536d56f6c72443b1d06502646ecf", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC+fl/b51y7U6i6DGQ+FwkYKIzBSVV6DcIZj+Q3BVRLzviOQIQMfNJ0wvLMKKHK96gWaGlknnU0Tn/cvVShuWbaWFBpOTLDsM2cm0usZot8+EmYGnql8D3AFMxhgWBb7pBa5KJOfJidrprXLcSjW82bKhIYbLDDVWMgaoIEVAbufOCobffpwTBYSPS4OdF3WyqNJj2B9tklkUdeUFYKkCFO/mszwSZdY+0xxTyilmyrHr8evbmoA34LREnktKFiu/I5gPXts1CdVLVzvNsMt0VM+ldLEtGPy7qvcddXy34yax538n+A6VOOBg2wpKwEsmqjkCHdq8s/2eWeeu+xGFch", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>354, "uptime"=>"0:05 hours"}, "timezone"=>"PST", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>354, "uuid"=>"C138B01C-ADF6-4D36-8A3A-D9FCE21FF0C7", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Ubuntu-14.04-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Ubuntu-14.04-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Ubuntu-14.04-64_spec.rb new file mode 100644 index 0000000..ba11595 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Ubuntu-14.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Ubuntu-14.04-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"C3C98552-9F17-434C-866B-0E254F5CD115"}}, "domain"=>"pdx.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"ubuntu1404a.pdx.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"ubuntu1404a", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ip6tables_version"=>"1.4.21", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:feea:2027", "ipaddress6_eth0"=>"fe80::a00:27ff:feea:2027", "ipaddress6_eth1"=>"fe80::a00:27ff:fe61:1916", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"10.20.1.93", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.21", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.16", "kernelrelease"=>"3.16.0-30-generic", "kernelversion"=>"3.16.0", "load_averages"=>{"15m"=>0.06, "1m"=>0.49, "5m"=>0.17}, "lsbdistcodename"=>"trusty", "lsbdistdescription"=>"Ubuntu 14.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"14.04", "lsbmajdistrelease"=>"14.04", "macaddress"=>"08:00:27:ea:20:27", "macaddress_eth0"=>"08:00:27:ea:20:27", "macaddress_eth1"=>"08:00:27:61:19:16", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"331.30 MiB", "available_bytes"=>347394048, "capacity"=>"32.35%", "total"=>"489.74 MiB", "total_bytes"=>513531904, "used"=>"158.44 MiB", "used_bytes"=>166137856}}, "memoryfree"=>"331.30 MiB", "memoryfree_mb"=>331.30078125, "memorysize"=>"489.74 MiB", "memorysize_mb"=>489.7421875, "mountpoints"=>{"/"=>{"available"=>"17.58 GiB", "available_bytes"=>18880684032, "capacity"=>"6.62%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"18.83 GiB", "size_bytes"=>20219142144, "used"=>"1.25 GiB", "used_bytes"=>1338458112}, "/boot"=>{"available"=>"198.65 MiB", "available_bytes"=>208301056, "capacity"=>"15.58%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"36.67 MiB", "used_bytes"=>38454272}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8608807, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"pdx.puppetlabs.demo", "fqdn"=>"ubuntu1404a.pdx.puppetlabs.demo", "hostname"=>"ubuntu1404a", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feea:2027", "mac"=>"08:00:27:ea:20:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"ip"=>"10.20.1.93", "ip6"=>"fe80::a00:27ff:fe61:1916", "mac"=>"08:00:27:61:19:16", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feea:2027", "mac"=>"08:00:27:ea:20:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"14.04", "operatingsystemrelease"=>"14.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"trusty", "description"=>"Ubuntu 14.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"c94f234c-f947-450d-aaaf-d32be1b7f27f"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"5501b007-e44b-46cf-b22b-177428cbe5d6"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"3a97a5b0-ebd0-4ce6-ba62-d39b4fd0719e"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"vgfiUo-lVmS-57wx-qv4m-N3fR-efa0-iBI6Cn"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"ubuntu-14.04-amd64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 528b28369558620d8fb12d7bea179e437823154c", "sha256"=>"SSHFP 2 2 5a7688dbb06e4b0c72e6e78ae4ca8b379620ba14b019d5b3ae5670936e1acdf4"}, "key"=>"AAAAB3NzaC1kc3MAAACBAI8c8/RV/kAfEuo71eUt5O1BBbzk34v7b14bi3swzOnzJslJXt2KR/3Dy+8eazzkcw8nbmzZSHvcyo93yQ0LjsExXfG0EkzN7uiE840Fcpg5LFmeCHan0So3Cc1FLavcGu8N+RpWHYYLLmPjlQqPdHSS1rhhXdqKIoiTdlaocXD5AAAAFQCJ0mBV1SSayMNI6tTF4W0o1Y6+cQAAAIBWY05wbeTi/vFgkhH57X0/S7Kr86K3Q/BMz7ZmKF2XCzZW9LJ6Ou0T7tHKAr472DBwUm6IxGHoUXky0Q0+XDCVut9YLYXJK8L/P8SbGwhMfj1YPiv9uorECcrqJMB5W1GCFS+HIo4DvmKYzivcmpE25b/y0V1u5Oas9cQaNZnhxwAAAIBqvLMiEyQPpemji+p+p/9E3sdX6RMUeSHj7n3WSkRTdq09nZ0ewtH12LpbENCjoc4PFh02/qqdub0tjpbgJrMYgwJDADD/AsrdcDBd3gU7mDjyF8PFzWV9nEVYExu447svRt422OW6gkkJ6sn3fovBAvDaWy7OR5YYrg5JLp+/4A=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 505ac6e68fa78305f635f305e11fbb0cc597e8ad", "sha256"=>"SSHFP 3 2 d5840c440b5f52a582589e3b2b583ecea53fd6618851dbcfce2e5cca7624f3c8"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJKYyLqXe/n2LFUbqMkwhLyOpg10LYOx/MpdgFXTxUB67AP4/GoX8zfz5Lb6fOidSJTlrzD5FB584JiRlEGUGLo="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 53784fee8fc968dca5c5d17e731716a012e59234", "sha256"=>"SSHFP 4 2 95b82a785582818106bf403e53667fc559eeabf176f103a929a210a38e9c4e05"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIAAhP8P8zhiQrKmyV/U+e5M7nd5X+ZuIEYCPHDoza0rP"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 4d3d498c7a3377c8f95ac713db4866c32199be51", "sha256"=>"SSHFP 1 2 949c0790f27d5ef7e8b0c35ceabb23bdd50d81611093531c0354330a7234b833"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDIPayGCFe5RUpJ8/UsH6gf+ecMRWo1dc20+HAy0bV4KalYWN5jUB/wrs41rdJRwMKWczgSDi2gFMsJ7q8Vjvpm2hUy+3H3/AEASRij99+37X1T4A6vPpT45EhTpS6JgGROii1Q2+9AJ/6BE6fSawymgR7jDx5QNLbKRy/FiwZAG+A0n29iUALeKqEZMd/1fU0hQCy/V+9V4DgRbHcJz4lKgc6nYrMymj8tUivTd8zm+CQov+YsUAdaXHSxIGVofnFQYXzbPqWGVV8S3fpwvrn/IY6paZ2F/lHoWombHwE271Bw863oWdkKpzP1nhjR3+Q1z++Tl2ZXT+rp6mhS9Pwv"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAI8c8/RV/kAfEuo71eUt5O1BBbzk34v7b14bi3swzOnzJslJXt2KR/3Dy+8eazzkcw8nbmzZSHvcyo93yQ0LjsExXfG0EkzN7uiE840Fcpg5LFmeCHan0So3Cc1FLavcGu8N+RpWHYYLLmPjlQqPdHSS1rhhXdqKIoiTdlaocXD5AAAAFQCJ0mBV1SSayMNI6tTF4W0o1Y6+cQAAAIBWY05wbeTi/vFgkhH57X0/S7Kr86K3Q/BMz7ZmKF2XCzZW9LJ6Ou0T7tHKAr472DBwUm6IxGHoUXky0Q0+XDCVut9YLYXJK8L/P8SbGwhMfj1YPiv9uorECcrqJMB5W1GCFS+HIo4DvmKYzivcmpE25b/y0V1u5Oas9cQaNZnhxwAAAIBqvLMiEyQPpemji+p+p/9E3sdX6RMUeSHj7n3WSkRTdq09nZ0ewtH12LpbENCjoc4PFh02/qqdub0tjpbgJrMYgwJDADD/AsrdcDBd3gU7mDjyF8PFzWV9nEVYExu447svRt422OW6gkkJ6sn3fovBAvDaWy7OR5YYrg5JLp+/4A==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJKYyLqXe/n2LFUbqMkwhLyOpg10LYOx/MpdgFXTxUB67AP4/GoX8zfz5Lb6fOidSJTlrzD5FB584JiRlEGUGLo=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIAAhP8P8zhiQrKmyV/U+e5M7nd5X+ZuIEYCPHDoza0rP", "sshfp_dsa"=>"SSHFP 2 1 528b28369558620d8fb12d7bea179e437823154c\nSSHFP 2 2 5a7688dbb06e4b0c72e6e78ae4ca8b379620ba14b019d5b3ae5670936e1acdf4", "sshfp_ecdsa"=>"SSHFP 3 1 505ac6e68fa78305f635f305e11fbb0cc597e8ad\nSSHFP 3 2 d5840c440b5f52a582589e3b2b583ecea53fd6618851dbcfce2e5cca7624f3c8", "sshfp_ed25519"=>"SSHFP 4 1 53784fee8fc968dca5c5d17e731716a012e59234\nSSHFP 4 2 95b82a785582818106bf403e53667fc559eeabf176f103a929a210a38e9c4e05", "sshfp_rsa"=>"SSHFP 1 1 4d3d498c7a3377c8f95ac713db4866c32199be51\nSSHFP 1 2 949c0790f27d5ef7e8b0c35ceabb23bdd50d81611093531c0354330a7234b833", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDIPayGCFe5RUpJ8/UsH6gf+ecMRWo1dc20+HAy0bV4KalYWN5jUB/wrs41rdJRwMKWczgSDi2gFMsJ7q8Vjvpm2hUy+3H3/AEASRij99+37X1T4A6vPpT45EhTpS6JgGROii1Q2+9AJ/6BE6fSawymgR7jDx5QNLbKRy/FiwZAG+A0n29iUALeKqEZMd/1fU0hQCy/V+9V4DgRbHcJz4lKgc6nYrMymj8tUivTd8zm+CQov+YsUAdaXHSxIGVofnFQYXzbPqWGVV8S3fpwvrn/IY6paZ2F/lHoWombHwE271Bw863oWdkKpzP1nhjR3+Q1z++Tl2ZXT+rp6mhS9Pwv", "staging_http_get"=>"curl", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>47, "uptime"=>"0:00 hours"}, "timezone"=>"PDT", "uptime"=>"0:00 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>47, "uuid"=>"C3C98552-9F17-434C-866B-0E254F5CD115", "virtual"=>"virtualbox", "clientcert"=>"ubuntu1404a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Ubuntu-14.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Ubuntu-18.04-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Ubuntu-18.04-64_spec.rb new file mode 100644 index 0000000..e40f830 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Ubuntu-18.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Ubuntu-18.04-64" do + node_facts = {"aio_agent_version"=>"6.14.0", "architecture"=>"amd64", "augeas"=>{"version"=>"1.12.0"}, "augeasversion"=>"1.12.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>10737418240, "blockdevice_sda_vendor"=>"VBOX", "blockdevice_sdb_model"=>"HARDDISK", "blockdevice_sdb_size"=>10485760, "blockdevice_sdb_vendor"=>"VBOX", "blockdevices"=>"sdb,sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"enp0s3"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"10.00 GiB", "size_bytes"=>10737418240, "vendor"=>"VBOX"}, "sdb"=>{"model"=>"HARDDISK", "size"=>"10.00 MiB", "size_bytes"=>10485760, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"2C7D24ED-FB7D-4B4C-BC4B-B9FC32C8BDC3"}}, "domain"=>"lan.asio", "facterversion"=>"3.14.9", "filesystems"=>"btrfs,ext2,ext3,ext4,iso9660,squashfs,vfat", "fips_enabled"=>false, "fqdn"=>"ubuntu-bionic.lan.asio", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"ubuntu-bionic", "hypervisors"=>{"virtualbox"=>{"revision"=>"133895", "version"=>"6.0.14"}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"enp0s3,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::bb:7dff:fee8:e923", "ipaddress6_enp0s3"=>"fe80::bb:7dff:fee8:e923", "ipaddress6_lo"=>"::1", "ipaddress_enp0s3"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"4.15", "kernelrelease"=>"4.15.0-54-generic", "kernelversion"=>"4.15.0", "load_averages"=>{"15m"=>0.1, "1m"=>0.31, "5m"=>0.23}, "lsbdistcodename"=>"bionic", "lsbdistdescription"=>"Ubuntu 18.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"18.04", "lsbmajdistrelease"=>"18.04", "macaddress"=>"02:bb:7d:e8:e9:23", "macaddress_enp0s3"=>"02:bb:7d:e8:e9:23", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"776.53 MiB", "available_bytes"=>814247936, "capacity"=>"21.19%", "total"=>"985.26 MiB", "total_bytes"=>1033121792, "used"=>"208.73 MiB", "used_bytes"=>218873856}}, "memoryfree"=>"776.53 MiB", "memoryfree_mb"=>776.52734375, "memorysize"=>"985.26 MiB", "memorysize_mb"=>985.26171875, "mountpoints"=>{"/"=>{"available"=>"8.14 GiB", "available_bytes"=>8742756352, "capacity"=>"15.32%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw", "relatime", "data=ordered"], "size"=>"9.63 GiB", "size_bytes"=>10340794368, "used"=>"1.47 GiB", "used_bytes"=>1581260800}, "/dev"=>{"available"=>"480.22 MiB", "available_bytes"=>503545856, "capacity"=>"0%", "device"=>"udev", "filesystem"=>"devtmpfs", "options"=>["rw", "nosuid", "relatime", "size=491744k", "nr_inodes=122936", "mode=755"], "size"=>"480.22 MiB", "size_bytes"=>503545856, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/hugepages"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"hugetlbfs", "filesystem"=>"hugetlbfs", "options"=>["rw", "relatime", "pagesize=2M"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/mqueue"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mqueue", "filesystem"=>"mqueue", "options"=>["rw", "relatime"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/pts"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"devpts", "filesystem"=>"devpts", "options"=>["rw", "nosuid", "noexec", "relatime", "gid=5", "mode=620", "ptmxmode=000"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/shm"=>{"available"=>"492.63 MiB", "available_bytes"=>516558848, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev"], "size"=>"492.63 MiB", "size_bytes"=>516558848, "used"=>"0 bytes", "used_bytes"=>0}, "/run"=>{"available"=>"97.93 MiB", "available_bytes"=>102690816, "capacity"=>"0.60%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "noexec", "relatime", "size=100892k", "mode=755"], "size"=>"98.53 MiB", "size_bytes"=>103313408, "used"=>"608.00 KiB", "used_bytes"=>622592}, "/run/lock"=>{"available"=>"5.00 MiB", "available_bytes"=>5242880, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev", "noexec", "relatime", "size=5120k"], "size"=>"5.00 MiB", "size_bytes"=>5242880, "used"=>"0 bytes", "used_bytes"=>0}, "/run/user/1000"=>{"available"=>"98.52 MiB", "available_bytes"=>103309312, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev", "relatime", "size=100888k", "mode=700", "uid=1000", "gid=1000"], "size"=>"98.52 MiB", "size_bytes"=>103309312, "used"=>"0 bytes", "used_bytes"=>0}, "/sys/fs/cgroup"=>{"available"=>"492.63 MiB", "available_bytes"=>516558848, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["ro", "nosuid", "nodev", "noexec", "mode=755"], "size"=>"492.63 MiB", "size_bytes"=>516558848, "used"=>"0 bytes", "used_bytes"=>0}, "/vagrant"=>{"available"=>"122.93 GiB", "available_bytes"=>131996221440, "capacity"=>"85.01%", "device"=>"vagrant", "filesystem"=>"vboxsf", "options"=>["rw", "nodev", "relatime", "iocharset=utf8", "uid=1000", "gid=1000"], "size"=>"820.33 GiB", "size_bytes"=>880824786944, "used"=>"697.40 GiB", "used_bytes"=>748828565504}, "/var/lib/lxcfs"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"lxcfs", "filesystem"=>"fuse.lxcfs", "options"=>["rw", "nosuid", "nodev", "relatime", "user_id=0", "group_id=0", "allow_other"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_enp0s3"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s3"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_enp0s3"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_enp0s3"=>"fe80::", "network6_lo"=>"::1", "network_enp0s3"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"lan.asio", "fqdn"=>"ubuntu-bionic.lan.asio", "hostname"=>"ubuntu-bionic", "interfaces"=>{"enp0s3"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::bb:7dff:fee8:e923", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::bb:7dff:fee8:e923", "mac"=>"02:bb:7d:e8:e9:23", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "scope6"=>"link"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1", "scope6"=>"host"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::bb:7dff:fee8:e923", "mac"=>"02:bb:7d:e8:e9:23", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"enp0s3", "scope6"=>"link"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"18.04", "operatingsystemrelease"=>"18.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"bionic", "description"=>"Ubuntu 18.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"18.04", "major"=>"18.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"18.04", "major"=>"18.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext4", "label"=>"cloudimg-rootfs", "mount"=>"/", "partuuid"=>"654c6dc7-01", "size"=>"10.00 GiB", "size_bytes"=>10736352768, "uuid"=>"8de716dd-d9b2-477f-b818-bb0b1eb036ce"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"6.14.0", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.7"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.7", "scope6"=>"link", "scope6_enp0s3"=>"link", "scope6_lo"=>"host", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 7024118ae71eead4750a74d458472e89e38c7e7c", "sha256"=>"SSHFP 2 2 e5606c7ee1cf32f5591b42c98a9bc87d27cef4bc75c7802cd3f22bcb39333656"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPemHtx92WDon/zDA0oaO5wWOXCUx45+6X9QxJugdryqG3RV0J/ZkKhayANq7NO1GeC3/3EC8celhsHyZFILEEJpFPzW32053dVnOZ6JyQCGb4JKFaCH7DjVnZLlTPyqvraykF3beEhp7dArSpsgsIURJLDRvE3PJdd9DDNtOapXAAAAFQC27/RqfyRjrjSOjNrfsqLm6GoT0QAAAIAJm6rGXMlZ+xNfPfVHsugGNP7BdcFLSWnUGaBQ+51FGkRdVesun6HF5A9/TNBfQ6U2k1BE8Qtc3H8uHrwenIQKyWuhVejvpYVD3NA6hztMWYiidiQ7Ji0O3qkPv4CY5QhlmyPit1gR4aly/fG1H8p+J/XbwrJXMtfR6ND3OXbeYwAAAIEAzDOkrJJgq5f+oPSVaOOmvbNdJ0B003fTyJEH+2yCm3q41O7vakoWv9Qt9mH7T/ivqwMK3yzk1eIpozx8TPU1aOQC3OyehoEXXFY6U5Jcgp0K8WUvVgnC47hAKBkf562aGdWftWNu4GkjI6wcNtZqkeVN/wyazilHRF9GyPdsvHg=", "type"=>"ssh-dss"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 aa6b8ac4bccb5afded59e2bf680cc151bbb27ef9", "sha256"=>"SSHFP 3 2 4ee2dc2ded938a37ef44de4fd3f3add478abfe272f0a50dc7dbb1f9a4839ca99"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF02SaI3oPW6CVWEvzDuf/XqaUF+OAr4RKNW3hAR8RRBSDEjQGdoejQEYP8lEFa1KeVlkJYnvgrPYwxVSUI6hUA=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 a20e01cf434a802607e1aff21e621dd3ada6499f", "sha256"=>"SSHFP 4 2 569917b95c5299fe3cdd1cc4a37166d1e81106a22bb75a15b99bb8694b2ac8c4"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHmh1Z/od2mbHDUkAL2bXswdwp43dPXQOKo9DA8AUDO1", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3bc833bc8e3e259da03d37aa0c0244ae98f30622", "sha256"=>"SSHFP 1 2 f27f0e09326c1c8abc2b0691bc6444b77781c0a21e9d99933492f269e5163346"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+QuEhOY+IrmAaG1/PgO0nyxYY0VYilhjcM5daSKb61z+XBmBuAsgVxWaQ815OxlwYQunPJZlKnaXZ8yTlnjk8eekxvWnoSLtqKZWW1+RfMyy6n6MyXdno1mwez+5HG3tThC63xE4EWbmKH+fsWuNT2ZpQ49fuWnG8sObv/66QLyCjt+KHMpy9ClHjpYli+0hFhdHTwxGo9H/r4I2En9rBcTy3nQZhZGm1FFh6xnHxnSGm02r2fhsk2x0kw9K1pA7IFtr31hBOu5Po5CJBVJQBd1TEozmNELl2ZISmT0HK3sIV4AG/FmFEsd9+63ST5BbeurlcOEzvxudDJmuroZX", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPemHtx92WDon/zDA0oaO5wWOXCUx45+6X9QxJugdryqG3RV0J/ZkKhayANq7NO1GeC3/3EC8celhsHyZFILEEJpFPzW32053dVnOZ6JyQCGb4JKFaCH7DjVnZLlTPyqvraykF3beEhp7dArSpsgsIURJLDRvE3PJdd9DDNtOapXAAAAFQC27/RqfyRjrjSOjNrfsqLm6GoT0QAAAIAJm6rGXMlZ+xNfPfVHsugGNP7BdcFLSWnUGaBQ+51FGkRdVesun6HF5A9/TNBfQ6U2k1BE8Qtc3H8uHrwenIQKyWuhVejvpYVD3NA6hztMWYiidiQ7Ji0O3qkPv4CY5QhlmyPit1gR4aly/fG1H8p+J/XbwrJXMtfR6ND3OXbeYwAAAIEAzDOkrJJgq5f+oPSVaOOmvbNdJ0B003fTyJEH+2yCm3q41O7vakoWv9Qt9mH7T/ivqwMK3yzk1eIpozx8TPU1aOQC3OyehoEXXFY6U5Jcgp0K8WUvVgnC47hAKBkf562aGdWftWNu4GkjI6wcNtZqkeVN/wyazilHRF9GyPdsvHg=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF02SaI3oPW6CVWEvzDuf/XqaUF+OAr4RKNW3hAR8RRBSDEjQGdoejQEYP8lEFa1KeVlkJYnvgrPYwxVSUI6hUA=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHmh1Z/od2mbHDUkAL2bXswdwp43dPXQOKo9DA8AUDO1", "sshfp_dsa"=>"SSHFP 2 1 7024118ae71eead4750a74d458472e89e38c7e7c\nSSHFP 2 2 e5606c7ee1cf32f5591b42c98a9bc87d27cef4bc75c7802cd3f22bcb39333656", "sshfp_ecdsa"=>"SSHFP 3 1 aa6b8ac4bccb5afded59e2bf680cc151bbb27ef9\nSSHFP 3 2 4ee2dc2ded938a37ef44de4fd3f3add478abfe272f0a50dc7dbb1f9a4839ca99", "sshfp_ed25519"=>"SSHFP 4 1 a20e01cf434a802607e1aff21e621dd3ada6499f\nSSHFP 4 2 569917b95c5299fe3cdd1cc4a37166d1e81106a22bb75a15b99bb8694b2ac8c4", "sshfp_rsa"=>"SSHFP 1 1 3bc833bc8e3e259da03d37aa0c0244ae98f30622\nSSHFP 1 2 f27f0e09326c1c8abc2b0691bc6444b77781c0a21e9d99933492f269e5163346", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+QuEhOY+IrmAaG1/PgO0nyxYY0VYilhjcM5daSKb61z+XBmBuAsgVxWaQ815OxlwYQunPJZlKnaXZ8yTlnjk8eekxvWnoSLtqKZWW1+RfMyy6n6MyXdno1mwez+5HG3tThC63xE4EWbmKH+fsWuNT2ZpQ49fuWnG8sObv/66QLyCjt+KHMpy9ClHjpYli+0hFhdHTwxGo9H/r4I2En9rBcTy3nQZhZGm1FFh6xnHxnSGm02r2fhsk2x0kw9K1pA7IFtr31hBOu5Po5CJBVJQBd1TEozmNELl2ZISmT0HK3sIV4AG/FmFEsd9+63ST5BbeurlcOEzvxudDJmuroZX", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>336, "uptime"=>"0:05 hours"}, "timezone"=>"UTC", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>336, "uuid"=>"2C7D24ED-FB7D-4B4C-BC4B-B9FC32C8BDC3", "virtual"=>"virtualbox", "clientcert"=>"ubuntu-bionic.lan.asio", "clientversion"=>"6.14.0", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Ubuntu-18.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Windows_Server-2008r2-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Windows_Server-2008r2-64_spec.rb new file mode 100644 index 0000000..2f0d29a --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Windows_Server-2008r2-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Windows_Server-2008r2-64" do + node_facts = {"agent_specified_environment"=>"production", "aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x64", "common_appdata"=>"C:\\ProgramData", "concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"Local Area Connection"=>"10.0.2.2"}, "dmi"=>{"manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0"}}, "domain"=>"pdx.puppetlabs.demo", "env_windows_installdir"=>"C:\\Program Files\\Puppet Labs\\Puppet", "facterversion"=>"3.0.2", "fqdn"=>"server2008r2a.pdx.puppetlabs.demo", "hardwareisa"=>"x64", "hardwaremodel"=>"x86_64", "hostname"=>"server2008r2a", "id"=>"SERVER2008R2A\\vagrant", "identity"=>{"user"=>"SERVER2008R2A\\vagrant"}, "iis_version"=>"Get-ItemProperty : Cannot find path 'HKLM:\\SOFTWARE\\Microsoft\\InetStp\\' because it does not exist.\nAt line:1 char:18\n+ (Get-ItemProperty <<<< HKLM:\\SOFTWARE\\Microsoft\\InetStp\\ -Name VersionString).VersionString.SubString(8,3)\n + CategoryInfo : ObjectNotFound: (HKLM:\\SOFTWARE\\Microsoft\\InetStp\\:String) [Get-ItemProperty], ItemNotFo \n undException\n + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetItemPropertyCommand\n \nYou cannot call a method on a null-valued expression.\nAt line:1 char:97\n+ (Get-ItemProperty HKLM:\\SOFTWARE\\Microsoft\\InetStp\\ -Name VersionString).VersionString.SubString <<<< (8,3)\n + CategoryInfo : InvalidOperation: (SubString:String) [], RuntimeException\n + FullyQualifiedErrorId : InvokeMethodOnNull\n \n", "interfaces"=>"Local Area Connection 2,Local Area Connection", "ipaddress"=>"10.20.1.101", "ipaddress6"=>"fe80::2c34:c353:1aaa:a872%13", "ipaddress6_Local Area Connection"=>"fe80::50f8:86eb:f103:75b%12", "ipaddress6_Local Area Connection 2"=>"fe80::2c34:c353:1aaa:a872%13", "ipaddress_Local Area Connection"=>"10.0.2.15", "ipaddress_Local Area Connection 2"=>"10.20.1.101", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"windows", "kernelmajversion"=>"6.1", "kernelrelease"=>"6.1.7600", "kernelversion"=>"6.1.7600", "macaddress"=>"08:00:27:7B:C7:40", "macaddress_Local Area Connection"=>"08:00:27:AB:52:FB", "macaddress_Local Area Connection 2"=>"08:00:27:7B:C7:40", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"448.14 MiB", "available_bytes"=>469909504, "capacity"=>"56.22%", "total"=>"1023.55 MiB", "total_bytes"=>1073274880, "used"=>"575.41 MiB", "used_bytes"=>603365376}}, "memoryfree"=>"448.14 MiB", "memoryfree_mb"=>448.140625, "memorysize"=>"1023.55 MiB", "memorysize_mb"=>1023.5546875, "mtu_Local Area Connection"=>1500, "mtu_Local Area Connection 2"=>1500, "mysql_server_id"=>8583088, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_Local Area Connection"=>"ffff:ffff:ffff:ffff::", "netmask6_Local Area Connection 2"=>"ffff:ffff:ffff:ffff::", "netmask_Local Area Connection"=>"255.255.255.0", "netmask_Local Area Connection 2"=>"255.255.255.0", "network"=>"10.20.1.0", "network6"=>"fe80::%13", "network6_Local Area Connection"=>"fe80::%12", "network6_Local Area Connection 2"=>"fe80::%13", "network_Local Area Connection"=>"10.0.2.0", "network_Local Area Connection 2"=>"10.20.1.0", "networking"=>{"domain"=>"pdx.puppetlabs.demo", "fqdn"=>"server2008r2a.pdx.puppetlabs.demo", "hostname"=>"server2008r2a", "interfaces"=>{"Local Area Connection"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::50f8:86eb:f103:75b%12", "mac"=>"08:00:27:AB:52:FB", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12"}, "Local Area Connection 2"=>{"ip"=>"10.20.1.101", "ip6"=>"fe80::2c34:c353:1aaa:a872%13", "mac"=>"08:00:27:7B:C7:40", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::%13"}}, "ip"=>"10.20.1.101", "ip6"=>"fe80::2c34:c353:1aaa:a872%13", "mac"=>"08:00:27:7B:C7:40", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::%13"}, "operatingsystem"=>"windows", "operatingsystemmajrelease"=>"2008 R2", "operatingsystemrelease"=>"2008 R2", "os"=>{"architecture"=>"x64", "family"=>"windows", "hardware"=>"x86_64", "name"=>"windows", "release"=>{"full"=>"2008 R2", "major"=>"2008 R2"}, "windows"=>{"system32"=>"C:\\Windows\\system32"}}, "osfamily"=>"windows", "path"=>"C:/Program Files/Puppet Labs/Puppet/facter/bin;C:\\Program Files\\Puppet Labs\\Puppet\\puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\facter\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\hiera\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\mcollective\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\ruby\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\tools\\bin;%SystemRoot%\\system32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\ProgramData\\chocolatey\\bin;", "pe_concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>false, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"C:/ProgramData/PuppetLabs/puppet/cache", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x64-mingw32", "sitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "serialnumber"=>"0", "staging_http_get"=>"powershell", "staging_windir"=>"C:\\ProgramData\\staging", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>266, "uptime"=>"0:04 hours"}, "timezone"=>"Pacific Daylight Time", "uptime"=>"0:04 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>266, "virtual"=>"virtualbox", "clientcert"=>"server2008r2a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Windows_Server-2008r2-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_Windows_Server-2012r2-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_Windows_Server-2012r2-64_spec.rb new file mode 100644 index 0000000..6fe8550 --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_Windows_Server-2012r2-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set Windows_Server-2012r2-64" do + node_facts = {"agent_specified_environment"=>"production", "architecture"=>"x64", "dhcp_servers"=>{"Ethernet"=>"10.0.2.2", "system"=>"10.0.2.2"}, "dmi"=>{"manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0"}}, "env_windows_installdir"=>"C:\\Program Files\\Puppet Labs\\Puppet", "facterversion"=>"3.1.1", "fqdn"=>"WIN-E5K8TM30719", "hardwareisa"=>"x64", "hardwaremodel"=>"x86_64", "hostname"=>"WIN-E5K8TM30719", "id"=>"WIN-E5K8TM30719\\vagrant", "identity"=>{"user"=>"WIN-E5K8TM30719\\vagrant"}, "interfaces"=>"Ethernet", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a180:36e0:3a6e:1005%12", "ipaddress6_Ethernet"=>"fe80::a180:36e0:3a6e:1005%12", "ipaddress_Ethernet"=>"10.0.2.15", "is_virtual"=>true, "kernel"=>"windows", "kernelmajversion"=>"6.3", "kernelrelease"=>"6.3.9600", "kernelversion"=>"6.3.9600", "macaddress"=>"08:00:27:81:38:FA", "macaddress_Ethernet"=>"08:00:27:81:38:FA", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"1.42 GiB", "available_bytes"=>1521610752, "capacity"=>"29.13%", "total"=>"2.00 GiB", "total_bytes"=>2147012608, "used"=>"596.43 MiB", "used_bytes"=>625401856}}, "memoryfree"=>"1.42 GiB", "memoryfree_mb"=>1451.12109375, "memorysize"=>"2.00 GiB", "memorysize_mb"=>2047.55078125, "mtu_Ethernet"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_Ethernet"=>"ffff:ffff:ffff:ffff::", "netmask_Ethernet"=>"255.255.255.0", "network"=>"10.0.2.0", "network6"=>"fe80::%12", "network6_Ethernet"=>"fe80::%12", "network_Ethernet"=>"10.0.2.0", "networking"=>{"dhcp"=>"10.0.2.2", "fqdn"=>"WIN-E5K8TM30719", "hostname"=>"WIN-E5K8TM30719", "interfaces"=>{"Ethernet"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::a180:36e0:3a6e:1005%12", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::%12"}], "dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a180:36e0:3a6e:1005%12", "mac"=>"08:00:27:81:38:FA", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a180:36e0:3a6e:1005%12", "mac"=>"08:00:27:81:38:FA", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12", "primary"=>"Ethernet"}, "operatingsystem"=>"windows", "operatingsystemmajrelease"=>"2012 R2", "operatingsystemrelease"=>"2012 R2", "os"=>{"architecture"=>"x64", "family"=>"windows", "hardware"=>"x86_64", "name"=>"windows", "release"=>{"full"=>"2012 R2", "major"=>"2012 R2"}, "windows"=>{"system32"=>"C:\\Windows\\system32"}}, "osfamily"=>"windows", "path"=>"C:/Program Files/Puppet Labs/Puppet/facter/bin;C:\\Program Files\\Puppet Labs\\Puppet\\puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\facter\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\hiera\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\mcollective\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\ruby\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\tools\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files (x86)\\Git\\cmd;C:\\Program Files (x86)\\Git\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.3", "ruby"=>{"platform"=>"x64-mingw32", "sitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.7"}, "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.7", "serialnumber"=>"0", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>287, "uptime"=>"0:04 hours"}, "timezone"=>"Coordinated Universal Time", "uptime"=>"0:04 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>287, "virtual"=>"virtualbox", "clientcert"=>"win-e5k8tm30719", "clientversion"=>"4.2.3", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'Windows_Server-2012r2-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_solaris-10_u9-sparc-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_solaris-10_u9-sparc-64_spec.rb new file mode 100644 index 0000000..d1f773d --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_solaris-10_u9-sparc-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set solaris-10_u9-sparc-64" do + node_facts = {"aio_agent_build"=>"1.4.2", "aio_agent_version"=>"1.4.2", "architecture"=>"sun4v", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_sd4_size"=>-1168154624, "blockdevice_sd4_vendor"=>"HITACHI", "blockdevice_sd5_size"=>-647710720, "blockdevice_sd5_vendor"=>"HITACHI", "blockdevice_sd6_size"=>0, "blockdevice_sd6_vendor"=>"AMI", "blockdevice_sd7_size"=>0, "blockdevice_sd7_vendor"=>"TEAC", "blockdevice_sd8_size"=>-1168154624, "blockdevice_sd8_vendor"=>"HITACHI", "blockdevice_sd9_size"=>-647710720, "blockdevice_sd9_vendor"=>"HITACHI", "blockdevices"=>"sd4,sd5,sd8,sd9,sd7,sd6", "custom_auth_conf"=>false, "disks"=>{"sd4"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd5"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}, "sd6"=>{"product"=>"Virtual CDROM Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"AMI"}, "sd7"=>{"product"=>"DV-W28SS-W Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"TEAC"}, "sd8"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd9"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}}, "dmi"=>{"manufacturer"=>"Oracle Corporation"}, "domain"=>"puppet.example", "facterversion"=>"3.1.6", "fqdn"=>"solaris-10_u9-sparc-t4-64.puppet.example", "gid"=>"root", "hardwareisa"=>"sparc", "hardwaremodel"=>"sun4v", "hostname"=>"solaris-10_u9-sparc-t4-64", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,net0", "ipaddress"=>"10.32.77.42", "ipaddress_lo0"=>"127.0.0.1", "ipaddress_net0"=>"10.32.77.42", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"SunOS", "kernelmajversion"=>"Generic_Virtual", "kernelrelease"=>"5.10", "kernelversion"=>"Generic_Virtual", "load_averages"=>{"15m"=>1.015625, "1m"=>1.89453125, "5m"=>1.25390625}, "macaddress"=>"02:08:20:f1:97:4b", "macaddress_net0"=>"02:08:20:f1:97:4b", "manufacturer"=>"Oracle Corporation", "memory"=>{"swap"=>{"available"=>"4.00 GiB", "available_bytes"=>-8192, "capacity"=>"0%", "total"=>"4.00 GiB", "total_bytes"=>-8192, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"3.25 GiB", "available_bytes"=>-806297600, "capacity"=>"78.94%", "total"=>"15.43 GiB", "total_bytes"=>-611737600, "used"=>"12.18 GiB", "used_bytes"=>194560000}}, "memoryfree"=>"3.25 GiB", "memoryfree_mb"=>3327.0546875, "memorysize"=>"15.43 GiB", "memorysize_mb"=>15800.6015625, "mountpoints"=>{"/"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"1.14%", "device"=>"rpool/ROOT/zbe-0", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc10/root/", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950161"], "size"=>"480.01 GiB", "size_bytes"=>13566464, "used"=>"5.49 GiB", "used_bytes"=>1602503680}, "/.SUNWnative/lib"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/lib", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/platform"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/platform", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/sbin"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/sbin", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/usr"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/usr", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/dev"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"/dev", "filesystem"=>"dev", "options"=>["zone=cisparc10", "nozonemod", "sharezone=36", "dev=8e0001b"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/fd"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"fd", "filesystem"=>"fd", "options"=>["rw", "nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=9040025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/mnttab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mnttab", "filesystem"=>"mntfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8e80025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/svc/volatile"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.01%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc10", "sharezone=36", "dev=8ec0049"], "size"=>"5.48 GiB", "size_bytes"=>1591631872, "used"=>"448.00 KiB", "used_bytes"=>458752}, "/export"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool/export", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950163"], "size"=>"474.52 GiB", "size_bytes"=>-1588904448, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/export/home"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool/export/home", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950164"], "size"=>"474.52 GiB", "size_bytes"=>-1588905472, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/proc"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"proc", "filesystem"=>"proc", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8dc0024"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/rpool"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950165"], "size"=>"474.52 GiB", "size_bytes"=>-1588905472, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/system/contract"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"ctfs", "filesystem"=>"ctfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8e40025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/object"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"objfs", "filesystem"=>"objfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8f00025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/tmp"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.70%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc10", "sharezone=36", "dev=8ec004a"], "size"=>"5.52 GiB", "size_bytes"=>1632608256, "used"=>"39.52 MiB", "used_bytes"=>41435136}, "/var"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.03%", "device"=>"rpool/ROOT/zbe-0/var", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc10/root/var", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950162"], "size"=>"474.66 GiB", "size_bytes"=>-1436724224, "used"=>"145.16 MiB", "used_bytes"=>152212992}, "/var/run"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.01%", "device"=>"/etc/svc/volatile/", "filesystem"=>"lofs", "options"=>["rstchown", "zone=cisparc10", "sharezone=36", "dev=8ec0049"], "size"=>"5.48 GiB", "size_bytes"=>1591631872, "used"=>"448.00 KiB", "used_bytes"=>458752}}, "mtu_lo0"=>8232, "mtu_net0"=>1500, "netmask"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "netmask_net0"=>"255.255.255.0", "network"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "network_net0"=>"10.32.77.0", "networking"=>{"domain"=>"puppet.example", "fqdn"=>"solaris-10_u9-sparc-t4-64.puppet.example", "hostname"=>"solaris-10_u9-sparc-t4-64", "interfaces"=>{"lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "ip"=>"127.0.0.1", "mtu"=>8232, "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, "net0"=>{"bindings"=>[{"address"=>"10.32.77.42", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.42", "mac"=>"02:08:20:f1:97:4b", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}}, "ip"=>"10.32.77.42", "mac"=>"02:08:20:f1:97:4b", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"net0"}, "operatingsystem"=>"Solaris", "operatingsystemmajrelease"=>"10", "operatingsystemrelease"=>"10_u9", "os"=>{"architecture"=>"sun4v", "family"=>"Solaris", "hardware"=>"sun4v", "name"=>"Solaris", "release"=>{"full"=>"10_u9", "major"=>"10", "minor"=>"9"}}, "osfamily"=>"Solaris", "path"=>"/usr/local/bin:/usr/local/sbin:/opt/csw/bin:PATH:/opt/puppetlabs/bin:/usr/local/bin:/usr/local/sbin:/opt/csw/bin:/usr/sbin:/usr/bin:/sbin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"solaris-10-sparc", "processor0"=>"SPARC-T4", "processor1"=>"SPARC-T4", "processor10"=>"SPARC-T4", "processor11"=>"SPARC-T4", "processor12"=>"SPARC-T4", "processor13"=>"SPARC-T4", "processor14"=>"SPARC-T4", "processor15"=>"SPARC-T4", "processor16"=>"SPARC-T4", "processor17"=>"SPARC-T4", "processor18"=>"SPARC-T4", "processor19"=>"SPARC-T4", "processor2"=>"SPARC-T4", "processor20"=>"SPARC-T4", "processor21"=>"SPARC-T4", "processor22"=>"SPARC-T4", "processor23"=>"SPARC-T4", "processor24"=>"SPARC-T4", "processor25"=>"SPARC-T4", "processor26"=>"SPARC-T4", "processor27"=>"SPARC-T4", "processor28"=>"SPARC-T4", "processor29"=>"SPARC-T4", "processor3"=>"SPARC-T4", "processor30"=>"SPARC-T4", "processor31"=>"SPARC-T4", "processor32"=>"SPARC-T4", "processor33"=>"SPARC-T4", "processor34"=>"SPARC-T4", "processor35"=>"SPARC-T4", "processor36"=>"SPARC-T4", "processor37"=>"SPARC-T4", "processor38"=>"SPARC-T4", "processor39"=>"SPARC-T4", "processor4"=>"SPARC-T4", "processor40"=>"SPARC-T4", "processor41"=>"SPARC-T4", "processor42"=>"SPARC-T4", "processor43"=>"SPARC-T4", "processor44"=>"SPARC-T4", "processor45"=>"SPARC-T4", "processor46"=>"SPARC-T4", "processor47"=>"SPARC-T4", "processor48"=>"SPARC-T4", "processor49"=>"SPARC-T4", "processor5"=>"SPARC-T4", "processor50"=>"SPARC-T4", "processor51"=>"SPARC-T4", "processor52"=>"SPARC-T4", "processor53"=>"SPARC-T4", "processor54"=>"SPARC-T4", "processor55"=>"SPARC-T4", "processor56"=>"SPARC-T4", "processor57"=>"SPARC-T4", "processor58"=>"SPARC-T4", "processor59"=>"SPARC-T4", "processor6"=>"SPARC-T4", "processor60"=>"SPARC-T4", "processor61"=>"SPARC-T4", "processor62"=>"SPARC-T4", "processor63"=>"SPARC-T4", "processor7"=>" SPARC-T4", "processor8"=>"SPARC-T4", "processor9"=>"SPARC-T4", "processorcount"=>64, "processors"=>{"count"=>64, "isa"=>"sparc", "models"=>["SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4"], "physicalcount"=>1, "speed"=>"2.85 GHz"}, "puppet_files_dir_present"=>false, "puppetversion"=>"4.4.2", "ruby"=>{"platform"=>"sparc-solaris2.10", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.8"}, "rubyplatform"=>"sparc-solaris2.10", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.8", "solaris_zones"=>{"current"=>"solaris-10_u9-sparc-t4-64", "zones"=>{"solaris-10_u9-sparc-t4-64"=>{"brand"=>"solaris10", "id"=>"36", "ip_type"=>"excl", "path"=>"/", "status"=>"running"}}}, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 c9a8316e12052c89f9c8eea38c433c50950d5798", "sha256"=>"SSHFP 2 2 26773f31bd38b64224ee474eec7659dc05f23f8cb43e8352c1b58545bf5bbb15"}, "key"=>"AAAAB3NzaC1kc3MAAACBAIBt3ynjIBp7/uKbi9RdcO5DiIA0l7y4BmHsfm9042jYtMvIZkMF9cqwvxHjgoHW9JZGGNgIxUK/q0vjuGzctspVUovGBfL+m7F9Lp0rAHZVRkRm1wzGtjCPcdq35J9uVVj0YiHKvuuRvpooVtF55fe9ZfvwPBW41n9+eCX+yjY9AAAAFQC79jdm/KtE/8yXT6r1dMs63sF70wAAAIBC1yGHJcpRJt5NPi0t+eFQu6sDxxUeaaChW4u8BFLT4NXQ6SgBGW7FpT/zEaYEn2UZeQ8Mk3jAycUckyq5qSmWpunTHWdz8iKuuzPSyMgAYXwv0nGL+soRwGcjFdHIhCi2LGloN8JZpE/Kz2ry7yThwL7qMq3i8FFlovWDesAyzAAAAIATGYMDBcEnIY8+CvG3qFtsX4oM//ExuislYawqmChhp7A8IaMLeBoXmc3AdvvuZ/7CS/Kq/XwJApIPy9apRtqJp5zG5R9TvqEmCtCqtemvAmT0n9WsvDWev4YCIWj9wMiRlmT7HemL+5qFiKOmvo9lTd4NPRL3+gIPHCqXHyxacg=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 ea3ecdaaf4d5112fe3148cb52385f928a3cc53f4", "sha256"=>"SSHFP 1 2 961dddd0fb580a5c0d1db74c16560fa37529cf4d162c13de99a880b1e91fd424"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAIEAz60kx84oy4edq6Nt2/SMQfQVVXoic/64JQ45EnwGKlMYvU3Okp3pT7uqyl+I5mXFjTB7wzLfIxzK5beofKDUbXNM5BwVeFQuZLR/hRusuvR5ntOce2kFMnyFteuvBue7Tg8YMGHAEM7fjfcqvuQgxWMELMJFwq0yUcl/aOL/o+U="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAIBt3ynjIBp7/uKbi9RdcO5DiIA0l7y4BmHsfm9042jYtMvIZkMF9cqwvxHjgoHW9JZGGNgIxUK/q0vjuGzctspVUovGBfL+m7F9Lp0rAHZVRkRm1wzGtjCPcdq35J9uVVj0YiHKvuuRvpooVtF55fe9ZfvwPBW41n9+eCX+yjY9AAAAFQC79jdm/KtE/8yXT6r1dMs63sF70wAAAIBC1yGHJcpRJt5NPi0t+eFQu6sDxxUeaaChW4u8BFLT4NXQ6SgBGW7FpT/zEaYEn2UZeQ8Mk3jAycUckyq5qSmWpunTHWdz8iKuuzPSyMgAYXwv0nGL+soRwGcjFdHIhCi2LGloN8JZpE/Kz2ry7yThwL7qMq3i8FFlovWDesAyzAAAAIATGYMDBcEnIY8+CvG3qFtsX4oM//ExuislYawqmChhp7A8IaMLeBoXmc3AdvvuZ/7CS/Kq/XwJApIPy9apRtqJp5zG5R9TvqEmCtCqtemvAmT0n9WsvDWev4YCIWj9wMiRlmT7HemL+5qFiKOmvo9lTd4NPRL3+gIPHCqXHyxacg==", "sshfp_dsa"=>"SSHFP 2 1 c9a8316e12052c89f9c8eea38c433c50950d5798\nSSHFP 2 2 26773f31bd38b64224ee474eec7659dc05f23f8cb43e8352c1b58545bf5bbb15", "sshfp_rsa"=>"SSHFP 1 1 ea3ecdaaf4d5112fe3148cb52385f928a3cc53f4\nSSHFP 1 2 961dddd0fb580a5c0d1db74c16560fa37529cf4d162c13de99a880b1e91fd424", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAIEAz60kx84oy4edq6Nt2/SMQfQVVXoic/64JQ45EnwGKlMYvU3Okp3pT7uqyl+I5mXFjTB7wzLfIxzK5beofKDUbXNM5BwVeFQuZLR/hRusuvR5ntOce2kFMnyFteuvBue7Tg8YMGHAEM7fjfcqvuQgxWMELMJFwq0yUcl/aOL/o+U=", "staging_http_get"=>"curl", "swapfree"=>"4.00 GiB", "swapfree_mb"=>4095.9921875, "swapsize"=>"4.00 GiB", "swapsize_mb"=>4095.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1860, "uptime"=>"0:31 hours"}, "timezone"=>"PDT", "uptime"=>"0:31 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1860, "virtual"=>"zone", "zfs_featurenumbers"=>"1,2,3,4,5,6", "zfs_version"=>"6", "zone_cisparc10_brand"=>"solaris10", "zone_cisparc10_id"=>"36", "zone_cisparc10_iptype"=>"excl", "zone_cisparc10_name"=>"solaris-10_u9-sparc-t4-64", "zone_cisparc10_path"=>"/", "zone_cisparc10_status"=>"running", "zonename"=>"solaris-10_u9-sparc-t4-64", "zones"=>1, "zpool_featurenumbers"=>"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35", "zpool_version"=>"35", "clientcert"=>"solaris-10_u9-sparc-t4-64.puppet.example", "clientversion"=>"4.4.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'solaris-10_u9-sparc-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_solaris-11.2-sparc-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_solaris-11.2-sparc-64_spec.rb new file mode 100644 index 0000000..e1336fa --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_solaris-11.2-sparc-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set solaris-11.2-sparc-64" do + node_facts = {"aio_agent_build"=>"1.4.2", "aio_agent_version"=>"1.4.2", "architecture"=>"sun4v", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_sd4_size"=>-1168154624, "blockdevice_sd4_vendor"=>"HITACHI", "blockdevice_sd5_size"=>-647710720, "blockdevice_sd5_vendor"=>"HITACHI", "blockdevice_sd6_size"=>0, "blockdevice_sd6_vendor"=>"AMI", "blockdevice_sd7_size"=>0, "blockdevice_sd7_vendor"=>"TEAC", "blockdevice_sd8_size"=>-1168154624, "blockdevice_sd8_vendor"=>"HITACHI", "blockdevice_sd9_size"=>-647710720, "blockdevice_sd9_vendor"=>"HITACHI", "blockdevices"=>"sd4,sd5,sd8,sd9,sd7,sd6", "custom_auth_conf"=>false, "dhcp_servers"=>{"net0"=>"10.32.22.10", "system"=>"10.32.22.10"}, "disks"=>{"sd4"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd5"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}, "sd6"=>{"product"=>"Virtual CDROM Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"AMI"}, "sd7"=>{"product"=>"DV-W28SS-W Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"TEAC"}, "sd8"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd9"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}}, "dmi"=>{"manufacturer"=>"Oracle Corporation"}, "domain"=>"puppet.example", "facterversion"=>"3.1.6", "fqdn"=>"solaris-11_2-sparc-t4-64.puppet.example", "gid"=>"root", "hardwareisa"=>"sparc", "hardwaremodel"=>"sun4v", "hostname"=>"solaris-11_2-sparc-t4-64", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,net0", "ipaddress"=>"10.32.77.68", "ipaddress_lo0"=>"127.0.0.1", "ipaddress_net0"=>"10.32.77.68", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"SunOS", "kernelmajversion"=>"11", "kernelrelease"=>"5.11", "kernelversion"=>"11.2", "load_averages"=>{"15m"=>1.0234375, "1m"=>1.21875, "5m"=>1.28125}, "macaddress"=>"02:08:20:41:26:8c", "macaddress_net0"=>"02:08:20:41:26:8c", "manufacturer"=>"Oracle Corporation", "memory"=>{"swap"=>{"available"=>"4.00 GiB", "available_bytes"=>-8192, "capacity"=>"0%", "total"=>"4.00 GiB", "total_bytes"=>-8192, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"2.34 GiB", "available_bytes"=>-1777401856, "capacity"=>"84.80%", "total"=>"15.43 GiB", "total_bytes"=>-611737600, "used"=>"13.09 GiB", "used_bytes"=>1165664256}}, "memoryfree"=>"2.34 GiB", "memoryfree_mb"=>2400.9375, "memorysize"=>"15.43 GiB", "memorysize_mb"=>15800.6015625, "mountpoints"=>{"/"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.18%", "device"=>"rpool/ROOT/solaris-0", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc/root/", "zone=cisparc", "nozonemod", "sharezone=38", "dev=495017b"], "size"=>"476.16 GiB", "size_bytes"=>175171072, "used"=>"889.53 MiB", "used_bytes"=>932736000}, "/dev"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"/dev", "filesystem"=>"dev", "options"=>["zone=cisparc", "nozonemod", "sharezone=38", "dev=8e0001c"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/fd"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"fd", "filesystem"=>"fd", "options"=>["rw", "nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=9040027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/dfs/sharetab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"sharefs", "filesystem"=>"sharefs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8f40016"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/mnttab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mnttab", "filesystem"=>"mntfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8e80027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/export"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/export", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=495017f"], "size"=>"475.29 GiB", "size_bytes"=>-757532160, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/export/home"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/export/home", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950180"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/proc"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"proc", "filesystem"=>"proc", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8dc0026"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/rpool"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950181"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/system/contract"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"ctfs", "filesystem"=>"ctfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8e40027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/object"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"objfs", "filesystem"=>"objfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8f00027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/volatile"=>{"available"=>"4.53 GiB", "available_bytes"=>571752448, "capacity"=>"0.01%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc", "sharezone=38", "dev=8ec004d"], "size"=>"4.53 GiB", "size_bytes"=>572342272, "used"=>"576.00 KiB", "used_bytes"=>589824}, "/tmp"=>{"available"=>"4.53 GiB", "available_bytes"=>571752448, "capacity"=>"0.95%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc", "sharezone=38", "dev=8ec004e"], "size"=>"4.58 GiB", "size_bytes"=>618414080, "used"=>"44.50 MiB", "used_bytes"=>46661632}, "/var"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.05%", "device"=>"rpool/ROOT/solaris-0/var", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc/root/var", "zone=cisparc", "nozonemod", "sharezone=38", "dev=495017d"], "size"=>"475.51 GiB", "size_bytes"=>-521269760, "used"=>"225.35 MiB", "used_bytes"=>236295168}, "/var/share"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=495017e"], "size"=>"475.30 GiB", "size_bytes"=>-756610048, "used"=>"932.50 KiB", "used_bytes"=>954880}, "/var/share/pkg"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE/pkg", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950182"], "size"=>"475.29 GiB", "size_bytes"=>-757532160, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/var/share/pkg/repositories"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE/pkg/repositories", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950183"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}}, "mtu_lo0"=>8232, "mtu_net0"=>1500, "netmask"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "netmask_net0"=>"255.255.255.0", "network"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "network_net0"=>"10.32.77.0", "networking"=>{"dhcp"=>"10.32.22.10", "domain"=>"puppet.example", "fqdn"=>"solaris-11_2-sparc-t4-64.puppet.example", "hostname"=>"solaris-11_2-sparc-t4-64", "interfaces"=>{"lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "ip"=>"127.0.0.1", "mtu"=>8232, "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, "net0"=>{"bindings"=>[{"address"=>"10.32.77.68", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "dhcp"=>"10.32.22.10", "ip"=>"10.32.77.68", "mac"=>"02:08:20:41:26:8c", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}}, "ip"=>"10.32.77.68", "mac"=>"02:08:20:41:26:8c", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"net0"}, "operatingsystem"=>"Solaris", "operatingsystemmajrelease"=>"11", "operatingsystemrelease"=>"11.2", "os"=>{"architecture"=>"sun4v", "family"=>"Solaris", "hardware"=>"sun4v", "name"=>"Solaris", "release"=>{"full"=>"11.2", "major"=>"11", "minor"=>"2"}}, "osfamily"=>"Solaris", "path"=>"PATH:/opt/puppetlabs/bin:/usr/sbin:/usr/bin:/sbin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"solaris-11-sparc", "processor0"=>"SPARC-T4", "processor1"=>"SPARC-T4", "processor10"=>"SPARC-T4", "processor11"=>"SPARC-T4", "processor12"=>"SPARC-T4", "processor13"=>"SPARC-T4", "processor14"=>"SPARC-T4", "processor15"=>"SPARC-T4", "processor16"=>"SPARC-T4", "processor17"=>"SPARC-T4", "processor18"=>"SPARC-T4", "processor19"=>"SPARC-T4", "processor2"=>"SPARC-T4", "processor20"=>"SPARC-T4", "processor21"=>"SPARC-T4", "processor22"=>"SPARC-T4", "processor23"=>"SPARC-T4", "processor24"=>"SPARC-T4", "processor25"=>"SPARC-T4", "processor26"=>"SPARC-T4", "processor27"=>"SPARC-T4", "processor28"=>"SPARC-T4", "processor29"=>"SPARC-T4", "processor3"=>"SPARC-T4", "processor30"=>"SPARC-T4", "processor31"=>"SPARC-T4", "processor32"=>"SPARC-T4", "processor33"=>"SPARC-T4", "processor34"=>"SPARC-T4", "processor35"=>"SPARC-T4", "processor36"=>"SPARC-T4", "processor37"=>"SPARC-T4", "processor38"=>"SPARC-T4", "processor39"=>"SPARC-T4", "processor4"=>"SPARC-T4", "processor40"=>"SPARC-T4", "processor41"=>"SPARC-T4", "processor42"=>"SPARC-T4", "processor43"=>"SPARC-T4", "processor44"=>"SPARC-T4", "processor45"=>"SPARC-T4", "processor46"=>"SPARC-T4", "processor47"=>"SPARC-T4", "processor48"=>"SPARC-T4", "processor49"=>"SPARC-T4", "processor5"=>"SPARC-T4", "processor50"=>"SPARC-T4", "processor51"=>"SPARC-T4", "processor52"=>"SPARC-T4", "processor53"=>"SPARC-T4", "processor54"=>"SPARC-T4", "processor55"=>"SPARC-T4", "processor56"=>"SPARC-T4", "processor57"=>"SPARC-T4", "processor58"=>"SPARC-T4", "processor59"=>"SPARC-T4", "processor6"=>"SPARC-T4", "processor60"=>"SPARC-T4", "processor61"=>"SPARC-T4", "processor62"=>"SPARC-T4", "processor63"=>"SPARC-T4", "processor7"=>"SPARC-T4", "processor8"=>"SPARC-T4", "processor9"=>"SPARC-T4", "processorcount"=>64, "processors"=>{"count"=>64, "isa"=>"sparc", "models"=>["SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4"], "physicalcount"=>1, "speed"=>"2.85 GHz"}, "puppet_files_dir_present"=>false, "puppetversion"=>"4.4.2", "ruby"=>{"platform"=>"sparc-solaris2.11", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.8"}, "rubyplatform"=>"sparc-solaris2.11", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.8", "solaris_zones"=>{"current"=>"cisparc", "zones"=>{"cisparc"=>{"brand"=>"solaris", "id"=>"38", "ip_type"=>"excl", "path"=>"/", "status"=>"running", "uuid"=>"9903e75b-f048-4e38-83b3-977cde7b3782"}}}, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 db349d276f0d3465ddf320d4f39d91349f1b576f", "sha256"=>"SSHFP 2 2 b8e58d26d36f2ce088034a1ce3be70b03ef404671f0c6ed3256152af9c9ad607"}, "key"=>"AAAAB3NzaC1kc3MAAACBAMVAhiKM1nrem5tlbgwagi6NKV1e6RIpLxXj+vovBAb/vWf6+in2lBrxLqljbxYWq1XTOJoXUTybb24gpnDwZC2v/5TytqJ35P4ptOH1fY2zthRnkgyYUMfF7nLslOgoy24A19uwmR3lhFpklhCUe1xkMHOXkToujrfym+nwpFZ5AAAAFQDRqOSYA1u47UtVMg4zXL0txwFHIwAAAIBNxcSYfeOSQrkFawbG0GQpSNs2Z/iqFDbJFz/Ha1xkitkpmBBNizRva5tqNR8uaK/VHoIdaK7Rn1qS/D2Sl3w4Ps4UhEN9qOOylQplUmqb4JAFtAFInDMIHz/69SYMyBJ9eXQHh8mOeLX8s2lQow+Z/iOVpAlGIB0PxrHClqSN5AAAAIEAqHqE/Ry0hL98YpXRvMw0kpMl439iXQjzfx3IgJzSScNpNx3G5QDDysSu8dzanOvqXxJ0ynwc1LxuXhuvq4hJ990snyYLOgNOOJ5v86G1TkXTq3Ny0gb+7efiwI7u4xIY6WrQeXt32hbRY0kF/MswmKjz3NSBK6jozSNwHlP6jeA="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 865be76b66792c0d98006a6ed5227f19f8241cf3", "sha256"=>"SSHFP 1 2 c74d9f97237b06070909f30fbb68afbe0943450a8ea3d1b85fb16db53441a824"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA8bZpHkHvgZEBhn7qlupS61DjwXYOnTVFuaOaDI6eesXxU1yDJfEqO1eHp6YF6x5gmM/mDyfFU9hixMmH9yLRgi2/QUhoYa44z8NB3EBaHxFtLQLnoFTGq/VR5xZ+pyBcbwUswvDel3OfXTcepmT6lWLCBRLOfYTc6hzwRCfyrWgdVc3kruu9hh9pKIWFEyUUztHWuR7+akNH3nD+EcqsmuMowEzzssWC8msWnAX89geFPuhilAgz7Qcc1bJZUaWGgOzyaZKn3IVNNa3grOWzgKDE6gdLMefnk0dgndtIbB1E9iY1syosQCrBIiEfMMGEBjrDstcNKs+Ge8stRljjMw=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAMVAhiKM1nrem5tlbgwagi6NKV1e6RIpLxXj+vovBAb/vWf6+in2lBrxLqljbxYWq1XTOJoXUTybb24gpnDwZC2v/5TytqJ35P4ptOH1fY2zthRnkgyYUMfF7nLslOgoy24A19uwmR3lhFpklhCUe1xkMHOXkToujrfym+nwpFZ5AAAAFQDRqOSYA1u47UtVMg4zXL0txwFHIwAAAIBNxcSYfeOSQrkFawbG0GQpSNs2Z/iqFDbJFz/Ha1xkitkpmBBNizRva5tqNR8uaK/VHoIdaK7Rn1qS/D2Sl3w4Ps4UhEN9qOOylQplUmqb4JAFtAFInDMIHz/69SYMyBJ9eXQHh8mOeLX8s2lQow+Z/iOVpAlGIB0PxrHClqSN5AAAAIEAqHqE/Ry0hL98YpXRvMw0kpMl439iXQjzfx3IgJzSScNpNx3G5QDDysSu8dzanOvqXxJ0ynwc1LxuXhuvq4hJ990snyYLOgNOOJ5v86G1TkXTq3Ny0gb+7efiwI7u4xIY6WrQeXt32hbRY0kF/MswmKjz3NSBK6jozSNwHlP6jeA=", "sshfp_dsa"=>"SSHFP 2 1 db349d276f0d3465ddf320d4f39d91349f1b576f\nSSHFP 2 2 b8e58d26d36f2ce088034a1ce3be70b03ef404671f0c6ed3256152af9c9ad607", "sshfp_rsa"=>"SSHFP 1 1 865be76b66792c0d98006a6ed5227f19f8241cf3\nSSHFP 1 2 c74d9f97237b06070909f30fbb68afbe0943450a8ea3d1b85fb16db53441a824", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA8bZpHkHvgZEBhn7qlupS61DjwXYOnTVFuaOaDI6eesXxU1yDJfEqO1eHp6YF6x5gmM/mDyfFU9hixMmH9yLRgi2/QUhoYa44z8NB3EBaHxFtLQLnoFTGq/VR5xZ+pyBcbwUswvDel3OfXTcepmT6lWLCBRLOfYTc6hzwRCfyrWgdVc3kruu9hh9pKIWFEyUUztHWuR7+akNH3nD+EcqsmuMowEzzssWC8msWnAX89geFPuhilAgz7Qcc1bJZUaWGgOzyaZKn3IVNNa3grOWzgKDE6gdLMefnk0dgndtIbB1E9iY1syosQCrBIiEfMMGEBjrDstcNKs+Ge8stRljjMw==", "staging_http_get"=>"curl", "swapfree"=>"4.00 GiB", "swapfree_mb"=>4095.9921875, "swapsize"=>"4.00 GiB", "swapsize_mb"=>4095.9921875, "system_uptime"=>{"days"=>2, "hours"=>62, "seconds"=>225780, "uptime"=>"2 days"}, "timezone"=>"PDT", "uptime"=>"2 days", "uptime_days"=>2, "uptime_hours"=>62, "uptime_seconds"=>225780, "virtual"=>"zone", "zfs_featurenumbers"=>"1,2,3,4,5,6", "zfs_version"=>"6", "zone_cisparc_brand"=>"solaris", "zone_cisparc_id"=>"38", "zone_cisparc_iptype"=>"excl", "zone_cisparc_name"=>"cisparc", "zone_cisparc_path"=>"/", "zone_cisparc_status"=>"running", "zone_cisparc_uuid"=>"9903e75b-f048-4e38-83b3-977cde7b3782", "zonename"=>"cisparc", "zones"=>1, "zpool_featurenumbers"=>"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35", "zpool_version"=>"35", "clientcert"=>"solaris-11_2-sparc-t4-64.puppet.example", "clientversion"=>"4.4.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'solaris-11.2-sparc-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__puppetserver_on_windows-10-64_spec.rb b/.onceover/spec/classes/role__puppetserver_on_windows-10-64_spec.rb new file mode 100644 index 0000000..25d856a --- /dev/null +++ b/.onceover/spec/classes/role__puppetserver_on_windows-10-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::puppetserver" do + + context "using fact set windows-10-64" do + node_facts = {"puppetversion"=>"6.0.2", "puppet_inventory_metadata"=>{"packages"=>{"collection_enabled"=>false, "last_collection_time"=>"0.0s"}}, "package_provider"=>"windows", "pe_concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/pe_concat", "is_pe"=>false, "platform_symlink_writable"=>false, "puppet_files_dir_present"=>false, "puppet_vardir"=>"C:/ProgramData/PuppetLabs/puppet/cache", "puppet_environmentpath"=>"C:/ProgramData/PuppetLabs/code/environments", "puppet_server"=>"pe-puppet.localdomain", "service_provider"=>"windows", "staging_http_get"=>"curl", "common_appdata"=>"C:\\ProgramData", "architecture"=>"x64", "kernel"=>"windows", "virtual"=>"vmware", "is_virtual"=>true, "hardwaremodel"=>"x64", "operatingsystem"=>"windows", "os"=>{"name"=>"windows", "family"=>"windows", "release"=>{"major"=>"10", "full"=>"10"}}, "facterversion"=>"2.5.1", "fqdn"=>"VAGRANT-HB9G3RD", "hostname"=>"VAGRANT-HB9G3RD", "id"=>"vagrant-hb9g3rd\\vagrant", "interfaces"=>"Ethernet0_2", "ipaddress_ethernet0_2"=>"192.168.43.174", "ipaddress6_ethernet0_2"=>"fd72:b3ab:b8dd:0:f563:fac2:928c:6aa", "macaddress_ethernet0_2"=>"00:0C:29:A3:53:54", "netmask_ethernet0_2"=>"255.255.255.0", "mtu_ethernet0_2"=>0, "ipaddress"=>"192.168.43.174", "ipaddress6"=>"fd72:b3ab:b8dd:0:f563:fac2:928c:6aa", "kernelmajversion"=>"10.0", "kernelrelease"=>"10.0.17134", "kernelversion"=>"10.0.17134", "macaddress"=>"00:0C:29:A3:53:54", "manufacturer"=>"Phoenix Technologies LTD", "serialnumber"=>"VMware-56 4d 36 2e 2e a4 81 f9-0d 05 ae d0 e5 a3 53 54", "productname"=>"VMware Virtual Platform", "memorysize"=>"4.00 GB", "memoryfree"=>"2.30 GB", "memorysize_mb"=>"4095.49", "memoryfree_mb"=>"2360.00", "netmask"=>"255.255.255.0", "network_ethernet0_2"=>"192.168.43.0", "operatingsystemmajrelease"=>"10", "operatingsystemrelease"=>"10", "osfamily"=>"windows", "path"=>"C:\\tools\\ruby24\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;C:\\ProgramData\\chocolatey\\bin;C:\\Program Files (x86)\\vim\\vim80;C:\\Program Files\\Git\\cmd;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Users\\vagrant\\AppData\\Local\\Microsoft\\WindowsApps;", "physicalprocessorcount"=>4, "processors"=>{"models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "count"=>4, "physicalcount"=>4}, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor2"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor3"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>4, "ps"=>"tasklist.exe", "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/tools/ruby24/lib/ruby/site_ruby/2.4.0", "rubyversion"=>"2.4.3", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"seconds"=>1113359, "hours"=>309, "days"=>12, "uptime"=>"12 days"}, "timezone"=>"GMT Standard Time", "uptime"=>"12 days", "uptime_days"=>12, "uptime_hours"=>309, "uptime_seconds"=>1113359, "clientcert"=>"vagrant-hb9g3rd.lan.asio", "clientversion"=>"6.0.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::puppetserver' +$onceover_node = 'windows-10-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_AIX-6.1-powerpc_spec.rb b/.onceover/spec/classes/role__windows_on_AIX-6.1-powerpc_spec.rb new file mode 100644 index 0000000..ded2bd4 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_AIX-6.1-powerpc_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set AIX-6.1-powerpc" do + node_facts = {"aio_agent_version"=>"1.8.2", "architecture"=>"PowerPC_POWER7", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "domain"=>"delivery.puppetlabs.net", "facterversion"=>"3.5.0", "fqdn"=>"pe-aix-61-se.delivery.puppetlabs.net", "gid"=>"system", "hardwareisa"=>"powerpc", "hardwaremodel"=>"IBM,8231-E1D", "hostname"=>"pe-aix-61-se", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"system", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,en0", "ipaddress"=>"10.32.77.35", "ipaddress6_lo0"=>"::1", "ipaddress_en0"=>"10.32.77.35", "ipaddress_lo0"=>"127.0.0.1", "kernel"=>"AIX", "kernelmajversion"=>"6100", "kernelrelease"=>"6100-07-04-1216", "kernelversion"=>"6100", "macaddress"=>"66:a4:d9:f8:4a:04", "macaddress_en0"=>"66:a4:d9:f8:4a:04", "memory"=>{"swap"=>{"available"=>"410.43 MiB", "available_bytes"=>430366720, "capacity"=>"19.84%", "total"=>"512.00 MiB", "total_bytes"=>536870912, "used"=>"101.57 MiB", "used_bytes"=>106504192}, "system"=>{"available"=>"10.88 MiB", "available_bytes"=>11403264, "capacity"=>"98.94%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"1013.13 MiB", "used_bytes"=>1062338560}}, "memoryfree"=>"10.88 MiB", "memoryfree_mb"=>10.875, "memorysize"=>"1.00 GiB", "memorysize_mb"=>1024.0, "mtu_en0"=>1500, "mtu_lo0"=>16896, "netmask"=>"255.255.255.0", "netmask6_lo0"=>"::", "netmask_en0"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "network"=>"10.32.77.0", "network6_lo0"=>"::", "network_en0"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "networking"=>{"domain"=>"delivery.puppetlabs.net", "fqdn"=>"pe-aix-61-se.delivery.puppetlabs.net", "hostname"=>"pe-aix-61-se", "interfaces"=>{"en0"=>{"bindings"=>[{"address"=>"10.32.77.35", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.35", "mac"=>"66:a4:d9:f8:4a:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}, "lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"::", "network"=>"::"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16896, "netmask"=>"255.0.0.0", "netmask6"=>"::", "network"=>"127.0.0.0", "network6"=>"::"}}, "ip"=>"10.32.77.35", "mac"=>"66:a4:d9:f8:4a:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"en0"}, "operatingsystem"=>"AIX", "operatingsystemmajrelease"=>"6100", "operatingsystemrelease"=>"6100-07-04-1216", "os"=>{"architecture"=>"PowerPC_POWER7", "family"=>"AIX", "hardware"=>"IBM,8231-E1D", "name"=>"AIX", "release"=>{"full"=>"6100-07-04-1216", "major"=>"6100"}}, "osfamily"=>"AIX", "path"=>"::/usr/bin:/etc:/usr/sbin:/sbin", "processor0"=>"PowerPC_POWER7", "processor1"=>"PowerPC_POWER7", "processor2"=>"PowerPC_POWER7", "processor3"=>"PowerPC_POWER7", "processor4"=>"PowerPC_POWER7", "processor5"=>"PowerPC_POWER7", "processor6"=>"PowerPC_POWER7", "processor7"=>"PowerPC_POWER7", "processorcount"=>8, "processors"=>{"count"=>8, "isa"=>"powerpc", "models"=>["PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7"], "speed"=>"4.23 GHz"}, "puppetversion"=>"4.8.1", "ruby"=>{"platform"=>"powerpc-aix6.1.0.0", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"powerpc-aix6.1.0.0", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "serialnumber"=>"21280CV", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 571109ba578ea17c854dcefad0e667bbbe4232c2", "sha256"=>"SSHFP 2 2 acd6ea2ff8cc0a0a8be88e6dada2688a17b7adb2a52312745208696f99dce945"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPJEJEzFa4YmVyS17c4Cs8ZWFJIg+igYRWiG/oJ4KMAu9R+cq3TuokGp0h5/T69yNeOn32h1WPYPIjnr14FyOr5Bb6+h+ej3WKnS1IpAGSy2H8Z21r4Cz0qX+madm/dGrtN1TI+6OV1xXXICZB0F0Lg4xilzix431nGunqbm1XXLAAAAFQDjxidL5XtudVMcTUzGFQ33cVwdTwAAAIBUjvKhMQP1304lW+Fr7A35ypaQrCVbsJFQD4egb9fGKY5WKIlQo7UGS/jvDtPS7iRDaLdiC2K5D4MYM9EUHgkprIO1d/o0i2UsYgec8WCJSBja/I4n0slEl7XEwM3SmnYNT0xfZM01Caj9+AyJFtRoF7l00QjSoxyOGMlEfvbCDAAAAIEA8MTmNjwDneigJnnxK9ZL4cvW4zQ+PQDglCdjJ2sB/IcpSvVyu6R9jbHSnfKhergRmmNJzKNA1Oc/INvNr4i9FFAuXEKkafmUyMavgd19uMxdpTAcvOJxwhG8TCrLQtJbm8Rn1e5wFM+4wnpc2y7HsBYGonmK9O5p9Fd3qkUx4BY="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 2faed3b06ba31bcbf069dcdb759d36730a2c649d", "sha256"=>"SSHFP 1 2 51fbfd79200a8667eeb1a8a4eee2487bbdee663189a9ca86a07069f5d95f9826"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDP+DHJRMbR8a4WvTwUGnz9rq+hHDVcP26xG+WIvIC5vlBk/N2lcrD7qs45Ht1kpZo4k4td+PQmi2k6I3BSVEeR9FTwbHEtjv8op1F7VTPXSSdY+90/CiQ4MA5s7d2Lbm5jipMV6dCneYZWsEkHKHzcp/Qst3w+0JSAHpx1wEOAlk/uJuLHHvAFYPZtdwzxTOW8/di5CpBIz/Pl1gcO8vQrFygvkFdYKPL44/zS3MZbmi7Hi6Q0PdcarFlWn6IodAlVSrJ/hcBbMkXJWV2L3zCt5nX4tJkYoOU9IIjGQEh+1cmIcWGdXpyvyaUnbSXJsFP9yAzi+MszYLJq9mUKIYch"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPJEJEzFa4YmVyS17c4Cs8ZWFJIg+igYRWiG/oJ4KMAu9R+cq3TuokGp0h5/T69yNeOn32h1WPYPIjnr14FyOr5Bb6+h+ej3WKnS1IpAGSy2H8Z21r4Cz0qX+madm/dGrtN1TI+6OV1xXXICZB0F0Lg4xilzix431nGunqbm1XXLAAAAFQDjxidL5XtudVMcTUzGFQ33cVwdTwAAAIBUjvKhMQP1304lW+Fr7A35ypaQrCVbsJFQD4egb9fGKY5WKIlQo7UGS/jvDtPS7iRDaLdiC2K5D4MYM9EUHgkprIO1d/o0i2UsYgec8WCJSBja/I4n0slEl7XEwM3SmnYNT0xfZM01Caj9+AyJFtRoF7l00QjSoxyOGMlEfvbCDAAAAIEA8MTmNjwDneigJnnxK9ZL4cvW4zQ+PQDglCdjJ2sB/IcpSvVyu6R9jbHSnfKhergRmmNJzKNA1Oc/INvNr4i9FFAuXEKkafmUyMavgd19uMxdpTAcvOJxwhG8TCrLQtJbm8Rn1e5wFM+4wnpc2y7HsBYGonmK9O5p9Fd3qkUx4BY=", "sshfp_dsa"=>"SSHFP 2 1 571109ba578ea17c854dcefad0e667bbbe4232c2\nSSHFP 2 2 acd6ea2ff8cc0a0a8be88e6dada2688a17b7adb2a52312745208696f99dce945", "sshfp_rsa"=>"SSHFP 1 1 2faed3b06ba31bcbf069dcdb759d36730a2c649d\nSSHFP 1 2 51fbfd79200a8667eeb1a8a4eee2487bbdee663189a9ca86a07069f5d95f9826", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDP+DHJRMbR8a4WvTwUGnz9rq+hHDVcP26xG+WIvIC5vlBk/N2lcrD7qs45Ht1kpZo4k4td+PQmi2k6I3BSVEeR9FTwbHEtjv8op1F7VTPXSSdY+90/CiQ4MA5s7d2Lbm5jipMV6dCneYZWsEkHKHzcp/Qst3w+0JSAHpx1wEOAlk/uJuLHHvAFYPZtdwzxTOW8/di5CpBIz/Pl1gcO8vQrFygvkFdYKPL44/zS3MZbmi7Hi6Q0PdcarFlWn6IodAlVSrJ/hcBbMkXJWV2L3zCt5nX4tJkYoOU9IIjGQEh+1cmIcWGdXpyvyaUnbSXJsFP9yAzi+MszYLJq9mUKIYch", "swapfree"=>"410.43 MiB", "swapfree_mb"=>410.4296875, "swapsize"=>"512.00 MiB", "swapsize_mb"=>512.0, "system_uptime"=>{"days"=>418, "hours"=>10035, "seconds"=>36127200, "uptime"=>"418 days"}, "timezone"=>"PST", "uptime"=>"418 days", "uptime_days"=>418, "uptime_hours"=>10035, "uptime_seconds"=>36127200, "clientcert"=>"pe-aix-61-se.delivery.puppetlabs.net", "clientversion"=>"4.8.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'AIX-6.1-powerpc' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_AIX-7.1-powerpc_spec.rb b/.onceover/spec/classes/role__windows_on_AIX-7.1-powerpc_spec.rb new file mode 100644 index 0000000..70eda23 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_AIX-7.1-powerpc_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set AIX-7.1-powerpc" do + node_facts = {"aio_agent_version"=>"1.5.2", "architecture"=>"PowerPC_POWER7", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "domain"=>"delivery.puppetlabs.net", "facterversion"=>"3.2.0", "fqdn"=>"pe-aix-71-se.delivery.puppetlabs.net", "gid"=>"system", "hardwareisa"=>"powerpc", "hardwaremodel"=>"IBM,8231-E1D", "hostname"=>"pe-aix-71-se", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"system", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,en0", "ipaddress"=>"10.32.77.36", "ipaddress6_lo0"=>"::1", "ipaddress_en0"=>"10.32.77.36", "ipaddress_lo0"=>"127.0.0.1", "is_pe"=>false, "kernel"=>"AIX", "kernelmajversion"=>"7100", "kernelrelease"=>"7100-01-05-1228", "kernelversion"=>"7100", "macaddress"=>"66:a4:dc:28:bf:04", "macaddress_en0"=>"66:a4:dc:28:bf:04", "memory"=>{"swap"=>{"available"=>"1007.14 MiB", "available_bytes"=>1056063488, "capacity"=>"1.65%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"16.86 MiB", "used_bytes"=>17678336}, "system"=>{"available"=>"16.84 MiB", "available_bytes"=>17653760, "capacity"=>"98.36%", "total"=>"1.00 GiB", "total_bytes"=>1073741824, "used"=>"1007.16 MiB", "used_bytes"=>1056088064}}, "memoryfree"=>"16.84 MiB", "memoryfree_mb"=>16.8359375, "memorysize"=>"1.00 GiB", "memorysize_mb"=>1024.0, "mtu_en0"=>1500, "mtu_lo0"=>16896, "netmask"=>"255.255.255.0", "netmask6_lo0"=>"::", "netmask_en0"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "network"=>"10.32.77.0", "network6_lo0"=>"::", "network_en0"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "networking"=>{"domain"=>"delivery.puppetlabs.net", "fqdn"=>"pe-aix-71-se.delivery.puppetlabs.net", "hostname"=>"pe-aix-71-se", "interfaces"=>{"en0"=>{"bindings"=>[{"address"=>"10.32.77.36", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.36", "mac"=>"66:a4:dc:28:bf:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}, "lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"::", "network"=>"::"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16896, "netmask"=>"255.0.0.0", "netmask6"=>"::", "network"=>"127.0.0.0", "network6"=>"::"}}, "ip"=>"10.32.77.36", "mac"=>"66:a4:dc:28:bf:04", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"en0"}, "operatingsystem"=>"AIX", "operatingsystemmajrelease"=>"7100", "operatingsystemrelease"=>"7100-01-05-1228", "os"=>{"architecture"=>"PowerPC_POWER7", "family"=>"AIX", "hardware"=>"IBM,8231-E1D", "name"=>"AIX", "release"=>{"full"=>"7100-01-05-1228", "major"=>"7100"}}, "osfamily"=>"AIX", "package_provider"=>"aix", "path"=>"::/usr/bin:/etc:/usr/sbin:/sbin", "processor0"=>"PowerPC_POWER7", "processor1"=>"PowerPC_POWER7", "processor2"=>"PowerPC_POWER7", "processor3"=>"PowerPC_POWER7", "processor4"=>"PowerPC_POWER7", "processor5"=>"PowerPC_POWER7", "processor6"=>"PowerPC_POWER7", "processor7"=>"PowerPC_POWER7", "processorcount"=>8, "processors"=>{"count"=>8, "isa"=>"powerpc", "models"=>["PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7", "PowerPC_POWER7"], "speed"=>"4.23 GHz"}, "puppet_environmentpath"=>"/etc/puppetlabs/code/environments", "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.5.2", "root_home"=>"/root", "ruby"=>{"platform"=>"powerpc-aix7.1.0.0", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"powerpc-aix7.1.0.0", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "serialnumber"=>"21280CV", "service_provider"=>"src", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1bbfbd9caff8924d4584cbb2a748f1be2690d04c", "sha256"=>"SSHFP 2 2 73ec4c25ea880adfbb7f66c60e92fec0ff130c4988765b5799e4707a7cdde68a"}, "key"=>"AAAAB3NzaC1kc3MAAACBAI5I6MVkSh3bO0WVTWIxbB0VyoFrpIXjAtBBveHKQDiB5I9OmCGkzytyR7ERBG/yqFS04hcEX8JV//3DoJeLJ0vupRCDLr4HoTYDGS3Dkvb3wqLn8aaaadz4Ca8IgRbx0vr8ANQbu/XT0/eTv5fRs3YWeijPe4Zgto2x55Ap7UDlAAAAFQDtb/7QYsDVPUt0dVWhOehzBNvybwAAAIBTxxfl95ZRcFG7b2cWljphohnZGzZCJortjE76JBIhnXRlVnlXQFT98hrjkPwedjsj9KWM0RpiKOdas3QAM6iTWLoAv/4GcvAWDa7TuJ5fs3eeQO0yCsTzRzpPwkOv6dcHK6OWWLiGybf/kPxIb546COFONVekdyIdksfZzwJ41QAAAIEAgj+4V9gdRBZcOX7XchaNUPaezTc3pNG1HG8iYTiCTV28EkpkQgzMtW7pPU1Nzqv5CX0LnFS+QN4lTWtuqtADYWSu3soz+7GuL8u3vximAAp6RcmWYSRpIdIQkHGvcyAzT5LlNRhGc/bBPM6RNoCkPzjEDHJDOgTdPx+tRNWXb8Y="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 8957e5a6df12f351fd768ee9615b3906861ff4e5", "sha256"=>"SSHFP 1 2 5a2dddf4df75bc8f4f352d30a8192824e01386b4720708d249edec6f05c5eb81"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC38I+hMQxC/++t3XvgXPtpVglDV2Qp5Xqqp/ZmdJrW7gh3ylKWlOrJOlx72p9Qa2fTAU+eJpYeI8vAAKxtBqqoxVNfn9rGt8wR3eubcwm6CRLTCOqf2OoDJzyJw3RcgidhHuT2KPVYtNOpNEkFyTjtpru3RWrO08PLpT0simATc5XJrvSH9ODQCqzVi5Fhe58Kn1kyAmH9gr0vz/9zrhllBjxVhc3YFz2TKqnZD+zIYlYhoI1vm5zQSzUWA+8B9XBEGs3TUaSDKPANEwof2lt+auTHySlGRXTPL4D9mYw2BhrxRBESgLsbba23SVCMGPILDvb4JwI4vYc7E6AvrFIB"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAI5I6MVkSh3bO0WVTWIxbB0VyoFrpIXjAtBBveHKQDiB5I9OmCGkzytyR7ERBG/yqFS04hcEX8JV//3DoJeLJ0vupRCDLr4HoTYDGS3Dkvb3wqLn8aaaadz4Ca8IgRbx0vr8ANQbu/XT0/eTv5fRs3YWeijPe4Zgto2x55Ap7UDlAAAAFQDtb/7QYsDVPUt0dVWhOehzBNvybwAAAIBTxxfl95ZRcFG7b2cWljphohnZGzZCJortjE76JBIhnXRlVnlXQFT98hrjkPwedjsj9KWM0RpiKOdas3QAM6iTWLoAv/4GcvAWDa7TuJ5fs3eeQO0yCsTzRzpPwkOv6dcHK6OWWLiGybf/kPxIb546COFONVekdyIdksfZzwJ41QAAAIEAgj+4V9gdRBZcOX7XchaNUPaezTc3pNG1HG8iYTiCTV28EkpkQgzMtW7pPU1Nzqv5CX0LnFS+QN4lTWtuqtADYWSu3soz+7GuL8u3vximAAp6RcmWYSRpIdIQkHGvcyAzT5LlNRhGc/bBPM6RNoCkPzjEDHJDOgTdPx+tRNWXb8Y=", "sshfp_dsa"=>"SSHFP 2 1 1bbfbd9caff8924d4584cbb2a748f1be2690d04c\nSSHFP 2 2 73ec4c25ea880adfbb7f66c60e92fec0ff130c4988765b5799e4707a7cdde68a", "sshfp_rsa"=>"SSHFP 1 1 8957e5a6df12f351fd768ee9615b3906861ff4e5\nSSHFP 1 2 5a2dddf4df75bc8f4f352d30a8192824e01386b4720708d249edec6f05c5eb81", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC38I+hMQxC/++t3XvgXPtpVglDV2Qp5Xqqp/ZmdJrW7gh3ylKWlOrJOlx72p9Qa2fTAU+eJpYeI8vAAKxtBqqoxVNfn9rGt8wR3eubcwm6CRLTCOqf2OoDJzyJw3RcgidhHuT2KPVYtNOpNEkFyTjtpru3RWrO08PLpT0simATc5XJrvSH9ODQCqzVi5Fhe58Kn1kyAmH9gr0vz/9zrhllBjxVhc3YFz2TKqnZD+zIYlYhoI1vm5zQSzUWA+8B9XBEGs3TUaSDKPANEwof2lt+auTHySlGRXTPL4D9mYw2BhrxRBESgLsbba23SVCMGPILDvb4JwI4vYc7E6AvrFIB", "swapfree"=>"1007.14 MiB", "swapfree_mb"=>1007.140625, "swapsize"=>"1.00 GiB", "swapsize_mb"=>1024.0, "system_uptime"=>{"days"=>160, "hours"=>3847, "seconds"=>13852500, "uptime"=>"160 days"}, "timezone"=>"PST", "uptime"=>"160 days", "uptime_days"=>160, "uptime_hours"=>3847, "uptime_seconds"=>13852500, "clientcert"=>"pe-aix-71-se.delivery.puppetlabs.net", "clientversion"=>"4.5.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'AIX-7.1-powerpc' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Amazon-2018.03_spec.rb b/.onceover/spec/classes/role__windows_on_Amazon-2018.03_spec.rb new file mode 100644 index 0000000..d861a7b --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Amazon-2018.03_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Amazon-2018.03" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"10/16/2017", "bios_vendor"=>"Amazon EC2", "bios_version"=>"1.0", "blockdevice_nvme0n1_model"=>"Amazon Elastic Block Store", "blockdevice_nvme0n1_size"=>8589934592, "blockdevices"=>"nvme0n1", "boardassettag"=>"i-0816d4c53ff8dc6a2", "boardmanufacturer"=>"Amazon EC2", "chassisassettag"=>"Amazon EC2", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"172.31.0.1", "system"=>"172.31.0.1"}, "disks"=>{"nvme0n1"=>{"model"=>"Amazon Elastic Block Store", "size"=>"8.00 GiB", "size_bytes"=>8589934592}}, "dmi"=>{"bios"=>{"release_date"=>"10/16/2017", "vendor"=>"Amazon EC2", "version"=>"1.0"}, "board"=>{"asset_tag"=>"i-0816d4c53ff8dc6a2", "manufacturer"=>"Amazon EC2"}, "chassis"=>{"asset_tag"=>"Amazon EC2", "type"=>"Other"}, "manufacturer"=>"Amazon EC2", "product"=>{"name"=>"t3a.xlarge", "serial_number"=>"ec21b37d-28ce-a3c2-956e-527e2857aeda", "uuid"=>"EC21B37D-28CE-A3C2-956E-527E2857AEDA"}}, "domain"=>"us-west-2.compute.internal", "ec2_metadata"=>{"ami-id"=>"ami-01e24be29428c15b2", "ami-launch-index"=>"0", "ami-manifest-path"=>"(unknown)", "block-device-mapping"=>{"ami"=>"xvda", "root"=>"/dev/xvda"}, "events"=>{"maintenance"=>{"history"=>"[]", "scheduled"=>"[]"}}, "hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "identity-credentials"=>{"ec2"=>{"info"=>"{\n \"Code\" : \"Success\",\n \"LastUpdated\" : \"2019-05-07T01:03:28Z\",\n \"AccountId\" : \"581165678935\"\n}"}}, "instance-action"=>"none", "instance-id"=>"i-0816d4c53ff8dc6a2", "instance-type"=>"t3a.xlarge", "local-hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "local-ipv4"=>"172.31.3.153", "mac"=>"0a:ca:e0:39:c1:f6", "metrics"=>{"vhostmd"=>""}, "network"=>{"interfaces"=>{"macs"=>{"0a:ca:e0:39:c1:f6"=>{"device-number"=>"0", "interface-id"=>"eni-04e7710af3cf1699c", "ipv4-associations"=>{"34.209.204.164"=>"172.31.3.153"}, "local-hostname"=>"ip-172-31-3-153.us-west-2.compute.internal", "local-ipv4s"=>"172.31.3.153", "mac"=>"0a:ca:e0:39:c1:f6", "owner-id"=>"581165678935", "public-hostname"=>"ec2-34-209-204-164.us-west-2.compute.amazonaws.com", "public-ipv4s"=>"34.209.204.164", "security-group-ids"=>"sg-05a2c52388c24f3ae", "security-groups"=>"launch-wizard-2", "subnet-id"=>"subnet-3bafc660", "subnet-ipv4-cidr-block"=>"172.31.0.0/20", "vpc-id"=>"vpc-287af44e", "vpc-ipv4-cidr-block"=>"172.31.0.0/16", "vpc-ipv4-cidr-blocks"=>"172.31.0.0/16"}}}}, "placement"=>{"availability-zone"=>"us-west-2c"}, "profile"=>"default-hvm", "public-hostname"=>"ec2-34-209-204-164.us-west-2.compute.amazonaws.com", "public-ipv4"=>"34.209.204.164", "public-keys"=>{"0"=>{"openssh-key"=>"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDk1QR+MwLPRohIOiWbCC8xjJKFYeCjIh2g2wAKnZFCkPjCG9BD3L4URnszJXdv+5XylfWO1y9O1Z95etjWfObApRZ5Ej22Dz1EExWWRNOKl9QdrEfCACSlc5gbT5rflHd/He9eD5OFRHlMY8fNIApEKdQrlxZgr1/NOusVQggoS/MiszxCl0dob3kz86XX6PrAmMyGfv7j/mPeeEUzP3bGxtjJyaZGcwukjPvlgq1yI4AzZlveY8fnokRsh9uDHXUEVB2hLNaBBZB/Evw261J/+QsnKopAuqQpwct/n/ulbg+w1h/2ZBiDXDBK8DQ8kOC4zuum6qwri1KNKdX9zIif thinkpad"}}, "reservation-id"=>"r-0b89c0e198506ec1f", "security-groups"=>"launch-wizard-2", "services"=>{"domain"=>"amazonaws.com", "partition"=>"aws"}}, "facterversion"=>"3.12.4", "filesystems"=>"ext3,ext4", "fips_enabled"=>false, "fqdn"=>"ip-172-31-3-153.us-west-2.compute.internal", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"ip-172-31-3-153", "hypervisors"=>{"kvm"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"172.31.3.153", "ipaddress6"=>"fe80::8ca:e0ff:fe39:c1f6", "ipaddress6_eth0"=>"fe80::8ca:e0ff:fe39:c1f6", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"172.31.3.153", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"4.14", "kernelrelease"=>"4.14.77-70.59.amzn1.x86_64", "kernelversion"=>"4.14.77", "load_averages"=>{"15m"=>0.02, "1m"=>0.12, "5m"=>0.06}, "macaddress"=>"0a:ca:e0:39:c1:f6", "macaddress_eth0"=>"0a:ca:e0:39:c1:f6", "manufacturer"=>"Amazon EC2", "memory"=>{"system"=>{"available"=>"15.36 GiB", "available_bytes"=>16489611264, "capacity"=>"1.10%", "total"=>"15.53 GiB", "total_bytes"=>16673153024, "used"=>"175.04 MiB", "used_bytes"=>183541760}}, "memoryfree"=>"15.36 GiB", "memoryfree_mb"=>15725.71875, "memorysize"=>"15.53 GiB", "memorysize_mb"=>15900.7578125, "mountpoints"=>{"/"=>{"available"=>"6.55 GiB", "available_bytes"=>7033344000, "capacity"=>"15.45%", "device"=>"/dev/nvme0n1p1", "filesystem"=>"ext4", "options"=>["rw", "noatime", "data=ordered"], "size"=>"7.75 GiB", "size_bytes"=>8318783488, "used"=>"1.20 GiB", "used_bytes"=>1285439488}, "/dev/shm"=>{"available"=>"7.76 GiB", "available_bytes"=>8336576512, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "relatime"], "size"=>"7.76 GiB", "size_bytes"=>8336576512, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_eth0"=>9001, "mtu_lo"=>65536, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.240.0", "netmask_lo"=>"255.0.0.0", "network"=>"172.31.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"172.31.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"172.31.0.1", "domain"=>"us-west-2.compute.internal", "fqdn"=>"ip-172-31-3-153.us-west-2.compute.internal", "hostname"=>"ip-172-31-3-153", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"172.31.3.153", "netmask"=>"255.255.240.0", "network"=>"172.31.0.0"}], "bindings6"=>[{"address"=>"fe80::8ca:e0ff:fe39:c1f6", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"172.31.0.1", "ip"=>"172.31.3.153", "ip6"=>"fe80::8ca:e0ff:fe39:c1f6", "mac"=>"0a:ca:e0:39:c1:f6", "mtu"=>9001, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"172.31.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"172.31.3.153", "ip6"=>"fe80::8ca:e0ff:fe39:c1f6", "mac"=>"0a:ca:e0:39:c1:f6", "mtu"=>9001, "netmask"=>"255.255.240.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"172.31.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"Amazon", "operatingsystemmajrelease"=>"2018", "operatingsystemrelease"=>"2018.03", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"Amazon", "release"=>{"full"=>"2018.03", "major"=>"2018", "minor"=>"03"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/nvme0n1p1"=>{"filesystem"=>"ext4", "label"=>"/", "mount"=>"/", "partlabel"=>"Linux", "partuuid"=>"893c59db-bd86-4d67-b40f-221bc82c14c8", "size"=>"8.00 GiB", "size_bytes"=>8587820544, "uuid"=>"f25f5092-0401-4edb-9fac-c57f3c673803"}, "/dev/nvme0n1p128"=>{"partlabel"=>"BIOS Boot Partition", "partuuid"=>"9d1c14c8-e25b-4405-9171-de3c756f61b2", "size"=>"1.00 MiB", "size_bytes"=>1048576}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin", "physicalprocessorcount"=>1, "processor0"=>"AMD EPYC 7571", "processor1"=>"AMD EPYC 7571", "processor2"=>"AMD EPYC 7571", "processor3"=>"AMD EPYC 7571", "processorcount"=>4, "processors"=>{"count"=>4, "isa"=>"x86_64", "models"=>["AMD EPYC 7571", "AMD EPYC 7571", "AMD EPYC 7571", "AMD EPYC 7571"], "physicalcount"=>1}, "productname"=>"t3a.xlarge", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>false, "serialnumber"=>"ec21b37d-28ce-a3c2-956e-527e2857aeda", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 0b8e09e2fe5c820230d717a8f1c4bfd4bcb11dfd", "sha256"=>"SSHFP 2 2 956e88a3dd192f4a401c05deccf92985b16542027b7a77d36172a3c014c8491f"}, "key"=>"AAAAB3NzaC1kc3MAAACBALzgFDQ4Hu4sjtB0gYwh2uv/00U15avjHKLuffc1+rDmjnoW99OlbeijOb9nPBTDR/+OkAJuVzFdfP/EmPAajAMSE2bOPn5jgNBoKdw7g4LMhtRGomJ8ZxJ9kphYbFaq1JdX6a06HSJHn8RlkV6MV9WYnGQiE89e/7kf3krFssXJAAAAFQDuL8oufyAzYtkWvApZlOX+UlFvxwAAAIEAhibNA8agHCpQIrswmMj9PUOhEVx3OqS/F+0TB/vOqWdubFK97zlt56biu+2R2gHNCiqyiGorBA83xonkHrdjn44Nw2KsZVE9xR4BCbqIyrkwQkWbTHfGYwq0QCo9UyuTdrhen2FnFdZXsQw4b4mcedNDxSPzgLy9Pl/EAVINm6EAAACBAJOfk9MzOocneM35ROEMKRZV5oWFwkglRg/qT3Xcvc3PabEUKlTWQs65fVlVkyipri/0cIuPEo8NKUFJ614FHYGedgja2lFz4xEAonJX3wG3c4GSdbv9uMJT0K1p3zbfCuBoZ9my2nJvWBYPYrXvZgXMt48ewJHMy3HlTnhNSklI", "type"=>"ssh-dss"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 8fc1a45df472f27fd3fa19cd5e6df68434fa60d4", "sha256"=>"SSHFP 3 2 c4b4bb4362c47a3d0feaf030779e1bf06e2fd95911b1f8636ad2032b57cf087b"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL2ZVP/li7lMY6UrniJHcWOjBvTs1xdw2NQlmzLtuyaPhnolyh2uwoZctB5tOnlG97NlGqkBKV9pl7+fplDWip0=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 10e0fcb0020748f776ff7178310be3e8e1c788bc", "sha256"=>"SSHFP 4 2 ef9e38c12ab7fa4e4eb82e26d6707110352d82a5beae30887f3de96e7a83fb8f"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHtcpSu4oquHdhVu57O9BP/sHvy1vgMuEWZ2Aoq1elFP", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 70e536ec33e8312c25b6c606546d7acb2f471e28", "sha256"=>"SSHFP 1 2 ee810f2ab351653e9c2ca93270f9c73eb31dd824318b50af72d0afbe31d5d462"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDT/8RUum1jt8FZg8GJRvjjOQyU1VLn1199yjI4xr4aSx7yAmm3eHb5bsSPsxxPUMnlWcd8bq0hWQ5VI2G2WQfUpM4Tyx+wRnGdU1SB7xY8Flzg7w0JOIIIKf1ulxcscacCnGR2y/6rJUkdYVsiCKMADuQ6MUpqA6jLbWHAv8dJlvfq/vtCxBtTOzbhlWmmuvo0WPGXEmHW8Hvj94wcPkvRbf/Pohn+A5NrGs1SlIetn+N6tnK6CPK/g1dNMomPTwU+1+yAIUdTMedJPEeiB8pX5ydDhmO0X76KcXmaqIGvPWWMPEBoPKH8f/IFauOqkoaSAycdKBLYEUbb0iDIlXG1", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALzgFDQ4Hu4sjtB0gYwh2uv/00U15avjHKLuffc1+rDmjnoW99OlbeijOb9nPBTDR/+OkAJuVzFdfP/EmPAajAMSE2bOPn5jgNBoKdw7g4LMhtRGomJ8ZxJ9kphYbFaq1JdX6a06HSJHn8RlkV6MV9WYnGQiE89e/7kf3krFssXJAAAAFQDuL8oufyAzYtkWvApZlOX+UlFvxwAAAIEAhibNA8agHCpQIrswmMj9PUOhEVx3OqS/F+0TB/vOqWdubFK97zlt56biu+2R2gHNCiqyiGorBA83xonkHrdjn44Nw2KsZVE9xR4BCbqIyrkwQkWbTHfGYwq0QCo9UyuTdrhen2FnFdZXsQw4b4mcedNDxSPzgLy9Pl/EAVINm6EAAACBAJOfk9MzOocneM35ROEMKRZV5oWFwkglRg/qT3Xcvc3PabEUKlTWQs65fVlVkyipri/0cIuPEo8NKUFJ614FHYGedgja2lFz4xEAonJX3wG3c4GSdbv9uMJT0K1p3zbfCuBoZ9my2nJvWBYPYrXvZgXMt48ewJHMy3HlTnhNSklI", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBL2ZVP/li7lMY6UrniJHcWOjBvTs1xdw2NQlmzLtuyaPhnolyh2uwoZctB5tOnlG97NlGqkBKV9pl7+fplDWip0=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHtcpSu4oquHdhVu57O9BP/sHvy1vgMuEWZ2Aoq1elFP", "sshfp_dsa"=>"SSHFP 2 1 0b8e09e2fe5c820230d717a8f1c4bfd4bcb11dfd\nSSHFP 2 2 956e88a3dd192f4a401c05deccf92985b16542027b7a77d36172a3c014c8491f", "sshfp_ecdsa"=>"SSHFP 3 1 8fc1a45df472f27fd3fa19cd5e6df68434fa60d4\nSSHFP 3 2 c4b4bb4362c47a3d0feaf030779e1bf06e2fd95911b1f8636ad2032b57cf087b", "sshfp_ed25519"=>"SSHFP 4 1 10e0fcb0020748f776ff7178310be3e8e1c788bc\nSSHFP 4 2 ef9e38c12ab7fa4e4eb82e26d6707110352d82a5beae30887f3de96e7a83fb8f", "sshfp_rsa"=>"SSHFP 1 1 70e536ec33e8312c25b6c606546d7acb2f471e28\nSSHFP 1 2 ee810f2ab351653e9c2ca93270f9c73eb31dd824318b50af72d0afbe31d5d462", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDT/8RUum1jt8FZg8GJRvjjOQyU1VLn1199yjI4xr4aSx7yAmm3eHb5bsSPsxxPUMnlWcd8bq0hWQ5VI2G2WQfUpM4Tyx+wRnGdU1SB7xY8Flzg7w0JOIIIKf1ulxcscacCnGR2y/6rJUkdYVsiCKMADuQ6MUpqA6jLbWHAv8dJlvfq/vtCxBtTOzbhlWmmuvo0WPGXEmHW8Hvj94wcPkvRbf/Pohn+A5NrGs1SlIetn+N6tnK6CPK/g1dNMomPTwU+1+yAIUdTMedJPEeiB8pX5ydDhmO0X76KcXmaqIGvPWWMPEBoPKH8f/IFauOqkoaSAycdKBLYEUbb0iDIlXG1", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>136, "uptime"=>"0:02 hours"}, "timezone"=>"UTC", "uptime"=>"0:02 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>136, "uuid"=>"EC21B37D-28CE-A3C2-956E-527E2857AEDA", "virtual"=>"kvm", "clientcert"=>"ip-172-31-3-153.us-west-2.compute.internal", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Amazon-2018.03' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_CentOS-5.11-32_spec.rb b/.onceover/spec/classes/role__windows_on_CentOS-5.11-32_spec.rb new file mode 100644 index 0000000..075eaf3 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_CentOS-5.11-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set CentOS-5.11-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_hda_size"=>0, "blockdevices"=>"hda", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"hda"=>{"size"=>"20.00 GiB", "size_bytes"=>0}}, "domain"=>"localdomain", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,iso9660", "fqdn"=>"localhost.localdomain", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo,sit0", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:febf:56", "ipaddress6_eth0"=>"fe80::a00:27ff:febf:56", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.18-398.el5", "kernelversion"=>"2.6.18", "load_averages"=>{"15m"=>0.11, "1m"=>0.28, "5m"=>0.22}, "lsbdistcodename"=>"Final", "lsbdistdescription"=>"CentOS release 5.11 (Final)", "lsbdistid"=>"CentOS", "lsbdistrelease"=>"5.11", "lsbmajdistrelease"=>"5", "lsbminordistrelease"=>"11", "lsbrelease"=>":core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch", "macaddress"=>"08:00:27:bf:00:56", "macaddress_eth0"=>"08:00:27:bf:00:56", "memory"=>{"swap"=>{"available"=>"1023.99 MiB", "available_bytes"=>1073733632, "capacity"=>"0%", "total"=>"1023.99 MiB", "total_bytes"=>1073733632, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"429.48 MiB", "available_bytes"=>450342912, "capacity"=>"14.58%", "total"=>"502.80 MiB", "total_bytes"=>527220736, "used"=>"73.32 MiB", "used_bytes"=>76877824}}, "memoryfree"=>"429.48 MiB", "memoryfree_mb"=>429.48046875, "memorysize"=>"502.80 MiB", "memorysize_mb"=>502.796875, "mountpoints"=>{"/"=>{"available"=>"1.09 GiB", "available_bytes"=>1171632128, "capacity"=>"52.22%", "device"=>"/dev/mapper/VolGroup00-LogVol00", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"2.28 GiB", "size_bytes"=>-1842671616, "used"=>"1.19 GiB", "used_bytes"=>1280663552}, "/boot"=>{"available"=>"86.58 MiB", "available_bytes"=>90790912, "capacity"=>"12.29%", "device"=>"/dev/hda1", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"98.72 MiB", "size_bytes"=>103512064, "used"=>"12.13 MiB", "used_bytes"=>12721152}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "mtu_sit0"=>1480, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"localdomain", "fqdn"=>"localhost.localdomain", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:febf:56", "mac"=>"08:00:27:bf:00:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}, "sit0"=>{"mtu"=>1480}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:febf:56", "mac"=>"08:00:27:bf:00:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"5", "operatingsystemrelease"=>"5.11", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"Final", "description"=>"CentOS release 5.11 (Final)", "id"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "specification"=>":core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"i686", "name"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "path"=>"/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 3a63a36b70f2d9a56a9dc3a1159a64ff9f89536f", "sha256"=>"SSHFP 2 2 610f5aaa0dc46e30df3fb0ecac0eb3e00e7cac79d610c8c9a2a1eac341244940"}, "key"=>"AAAAB3NzaC1kc3MAAACBANIQgUl4dqCF84m1riBm7rlb5j6v6Dco/P7w0+AE0by81oHLA/i2V89okSrenm2scb4/u57ZpR/GeyVaLzicLyUjBICBwPOsv/+eLnVUtL/+vXwnVleBqaZn+2FUswdkz+J4QiDRSyl78kAkLMAFqEfNimMUB12DirtvgYIFqKaZAAAAFQDTiJhQ0rCPN0ax1rHbjLAMYYoCLwAAAIBWYAzgNYnG5TCzHWSdQZHeJPItH3MUrLFgggb3H9kFZBKCLSBW/EWV1s27G8a1Hd9JAsGEwDGBHn2VLz4uMSssEbJpdJY4jeRmeqeyqZ7My+83XLu0stm2xu6Tt7dwH//DPTTS1XmFXYdx/3tR5JWBIUm6yTb1WS43WUTSyxyPCQAAAIEAzyoULrHnqiBjuJeLB/2OF1vnRT58D53Vd3cQW1xZwyzsPSralv2lMGW0rGaduGrFQjCrDQk0k1fajZnjFX3qfdxaflFCgz2I1W46AcrGXeFy7AlRlCIE1LZtYGd04l3ERiqcUQT+vk2Jv54qMUwSQeyYWY67XcAnglf5GLqwqMo="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 6b3dbcd02fe71fb6106ad074454f8f16917327b5", "sha256"=>"SSHFP 1 2 913a32e7a0b2c81b5419903654c1dc42680df07f4fe04c82d7d70892b77b824b"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAsNcmWEvgjOkr4XA4uYa9aAfcxv1IygDmFnM/zIFbcMUmCxoza/WWZwm/mDO319xq71YqpVtvhgpSTHLGek6Iwb1rZukQvbwZnlzrIe0G8Bc4JpSAmyZkZceve1cau6nOXEI8eDrlbRLtrUNeptaIVHaa85KJqv7Ksc+NxGIRS/xBTWus3rxx3cQaurcyIK1rBHLiL5VpN+ove3Nl3zsHyyOym6FjbqIQuVMStr5j0+lQ3B+AqZpJixwbGKaxSIKZUcQla1pGCchBt7BuAq+A4XE+XIdsi2gRks2IjPGMkOXh0IiYud1ph7JaO7iLjSalylvF9qZSO/70J3w7nKLJYQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBANIQgUl4dqCF84m1riBm7rlb5j6v6Dco/P7w0+AE0by81oHLA/i2V89okSrenm2scb4/u57ZpR/GeyVaLzicLyUjBICBwPOsv/+eLnVUtL/+vXwnVleBqaZn+2FUswdkz+J4QiDRSyl78kAkLMAFqEfNimMUB12DirtvgYIFqKaZAAAAFQDTiJhQ0rCPN0ax1rHbjLAMYYoCLwAAAIBWYAzgNYnG5TCzHWSdQZHeJPItH3MUrLFgggb3H9kFZBKCLSBW/EWV1s27G8a1Hd9JAsGEwDGBHn2VLz4uMSssEbJpdJY4jeRmeqeyqZ7My+83XLu0stm2xu6Tt7dwH//DPTTS1XmFXYdx/3tR5JWBIUm6yTb1WS43WUTSyxyPCQAAAIEAzyoULrHnqiBjuJeLB/2OF1vnRT58D53Vd3cQW1xZwyzsPSralv2lMGW0rGaduGrFQjCrDQk0k1fajZnjFX3qfdxaflFCgz2I1W46AcrGXeFy7AlRlCIE1LZtYGd04l3ERiqcUQT+vk2Jv54qMUwSQeyYWY67XcAnglf5GLqwqMo=", "sshfp_dsa"=>"SSHFP 2 1 3a63a36b70f2d9a56a9dc3a1159a64ff9f89536f\nSSHFP 2 2 610f5aaa0dc46e30df3fb0ecac0eb3e00e7cac79d610c8c9a2a1eac341244940", "sshfp_rsa"=>"SSHFP 1 1 6b3dbcd02fe71fb6106ad074454f8f16917327b5\nSSHFP 1 2 913a32e7a0b2c81b5419903654c1dc42680df07f4fe04c82d7d70892b77b824b", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAsNcmWEvgjOkr4XA4uYa9aAfcxv1IygDmFnM/zIFbcMUmCxoza/WWZwm/mDO319xq71YqpVtvhgpSTHLGek6Iwb1rZukQvbwZnlzrIe0G8Bc4JpSAmyZkZceve1cau6nOXEI8eDrlbRLtrUNeptaIVHaa85KJqv7Ksc+NxGIRS/xBTWus3rxx3cQaurcyIK1rBHLiL5VpN+ove3Nl3zsHyyOym6FjbqIQuVMStr5j0+lQ3B+AqZpJixwbGKaxSIKZUcQla1pGCchBt7BuAq+A4XE+XIdsi2gRks2IjPGMkOXh0IiYud1ph7JaO7iLjSalylvF9qZSO/70J3w7nKLJYQ==", "swapfree"=>"1023.99 MiB", "swapfree_mb"=>1023.9921875, "swapsize"=>"1023.99 MiB", "swapsize_mb"=>1023.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1067, "uptime"=>"0:17 hours"}, "timezone"=>"UTC", "uptime"=>"0:17 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1067, "virtual"=>"virtualbox", "clientcert"=>"localhost.localdomain", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'CentOS-5.11-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_CentOS-5.11-64_spec.rb b/.onceover/spec/classes/role__windows_on_CentOS-5.11-64_spec.rb new file mode 100644 index 0000000..5a862bc --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_CentOS-5.11-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set CentOS-5.11-64" do + node_facts = {"architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_hda_size"=>21474836480, "blockdevices"=>"hda", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"hda"=>{"size"=>"20.00 GiB", "size_bytes"=>21474836480}}, "domain"=>"localdomain", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,iso9660", "fqdn"=>"localhost.localdomain", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo,sit0", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe3e:4987", "ipaddress6_eth0"=>"fe80::a00:27ff:fe3e:4987", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.18-398.el5", "kernelversion"=>"2.6.18", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"Final", "lsbdistdescription"=>"CentOS release 5.11 (Final)", "lsbdistid"=>"CentOS", "lsbdistrelease"=>"5.11", "lsbmajdistrelease"=>"5", "lsbminordistrelease"=>"11", "lsbrelease"=>":core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch", "macaddress"=>"08:00:27:3e:49:87", "macaddress_eth0"=>"08:00:27:3e:49:87", "memory"=>{"swap"=>{"available"=>"1023.99 MiB", "available_bytes"=>1073733632, "capacity"=>"0%", "total"=>"1023.99 MiB", "total_bytes"=>1073733632, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"389.45 MiB", "available_bytes"=>408363008, "capacity"=>"21.76%", "total"=>"497.78 MiB", "total_bytes"=>521961472, "used"=>"108.34 MiB", "used_bytes"=>113598464}}, "memoryfree"=>"389.45 MiB", "memoryfree_mb"=>389.4453125, "memorysize"=>"497.78 MiB", "memorysize_mb"=>497.78125, "mountpoints"=>{"/"=>{"available"=>"16.96 GiB", "available_bytes"=>18212638720, "capacity"=>"7.23%", "device"=>"/dev/mapper/VolGroup00-LogVol00", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"18.28 GiB", "size_bytes"=>19632164864, "used"=>"1.32 GiB", "used_bytes"=>1419526144}, "/boot"=>{"available"=>"86.04 MiB", "available_bytes"=>90215424, "capacity"=>"12.85%", "device"=>"/dev/hda1", "filesystem"=>"ext3", "options"=>["rw"], "size"=>"98.72 MiB", "size_bytes"=>103512064, "used"=>"12.68 MiB", "used_bytes"=>13296640}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "mtu_sit0"=>1480, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"localdomain", "fqdn"=>"localhost.localdomain", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe3e:4987", "mac"=>"08:00:27:3e:49:87", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}, "sit0"=>{"mtu"=>1480}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe3e:4987", "mac"=>"08:00:27:3e:49:87", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"5", "operatingsystemrelease"=>"5.11", "os"=>{"architecture"=>"x86_64", "distro"=>{"codename"=>"Final", "description"=>"CentOS release 5.11 (Final)", "id"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "specification"=>":core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"5.11", "major"=>"5", "minor"=>"11"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "path"=>"/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1139f2967264a610088812d1ed3ea8db448c417d", "sha256"=>"SSHFP 2 2 ddb6064607ac29a8c83978d33e46ed56e677f27ed727341142a08156906bc9bb"}, "key"=>"AAAAB3NzaC1kc3MAAACBAK4mrAWHX3BUGyimNDl6+rtP3BXx8hvZ8UCfySeFw3vliSb5uzCLSdbcLmNZxqVrYv9skhO7wIaRFo4xwLSBPbwMffwuO8/2kIXGxkkVKnucsYmsNNaaLAgrfTR+d2lj089fs/PBDGUiJThPPsbNLMVxDEy1SOuby5FAZvNGQTlxAAAAFQCivnpYKhk5wFrpmn1mZv7ayD8HLwAAAIBQ64m92s3WWK+tdChTH2rEvfn3lJlatruRDeZaXrTuuzA7K9uJhtfqg3KAs9gtZup6vOGNJbJWZVxTG+I3jLXgA2Mfd/lAcbtA1RXnqgUITgg2/sd/TkEkCrke/NVjBaiiXVhsly63OIv/JAvq4ulmNxvUT7Pj6Fz9dKvV1elbJQAAAIBqHveIC7RZnN4bGEc+rZZ63aOYI7Pm/9OE2soVjjvGYgk9Iew9S7xwDmcrDKICqSCwzE3ISalkGAkqXKBJnKx/gKziLWdj1VOoNv16X4nVTwxaL7u9nAg1cQ+H5whnWQ+KDoLJPtc8bCpnamGMY4W89a08Qv0U5RECNhv92AQcqQ=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 29e63bdd87c88c24251d791b474a8f3b56d581f7", "sha256"=>"SSHFP 1 2 cfc171e3db64806593cd26571556b360882507938c9a71e477478837cfa6ea9c"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA7Z6GmWepCT3oXq1qGkIq736GM5oXr4ISMuJtGF2+8yOyM+qqvM83zgnZVkCSkNwtiLOODfzbFmmfKKdLoN30xE6oRP+hu9LH7dzRnnIwsx2DBgaX6QPdbcsIG1dnfH34PO1/AvZGRU4YRwrBSVsURR5wow6BYTs56qznYUd6VALvDg0iOLde7eniqQlVbzfLsR+GFeQ9zp9qMI4JjL17RJYBeVam0wP3cYXglE5PsMYuJwVLP6aOIFx3nQPem76bh5fyTVFsav+jsdamw+dZ7uZn6lkRlCtqyxQzFyyT3RgCUW1qVwdus42xsJm8GPojfIcqhQ3HUEDZ61D5dgZjIQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAK4mrAWHX3BUGyimNDl6+rtP3BXx8hvZ8UCfySeFw3vliSb5uzCLSdbcLmNZxqVrYv9skhO7wIaRFo4xwLSBPbwMffwuO8/2kIXGxkkVKnucsYmsNNaaLAgrfTR+d2lj089fs/PBDGUiJThPPsbNLMVxDEy1SOuby5FAZvNGQTlxAAAAFQCivnpYKhk5wFrpmn1mZv7ayD8HLwAAAIBQ64m92s3WWK+tdChTH2rEvfn3lJlatruRDeZaXrTuuzA7K9uJhtfqg3KAs9gtZup6vOGNJbJWZVxTG+I3jLXgA2Mfd/lAcbtA1RXnqgUITgg2/sd/TkEkCrke/NVjBaiiXVhsly63OIv/JAvq4ulmNxvUT7Pj6Fz9dKvV1elbJQAAAIBqHveIC7RZnN4bGEc+rZZ63aOYI7Pm/9OE2soVjjvGYgk9Iew9S7xwDmcrDKICqSCwzE3ISalkGAkqXKBJnKx/gKziLWdj1VOoNv16X4nVTwxaL7u9nAg1cQ+H5whnWQ+KDoLJPtc8bCpnamGMY4W89a08Qv0U5RECNhv92AQcqQ==", "sshfp_dsa"=>"SSHFP 2 1 1139f2967264a610088812d1ed3ea8db448c417d\nSSHFP 2 2 ddb6064607ac29a8c83978d33e46ed56e677f27ed727341142a08156906bc9bb", "sshfp_rsa"=>"SSHFP 1 1 29e63bdd87c88c24251d791b474a8f3b56d581f7\nSSHFP 1 2 cfc171e3db64806593cd26571556b360882507938c9a71e477478837cfa6ea9c", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA7Z6GmWepCT3oXq1qGkIq736GM5oXr4ISMuJtGF2+8yOyM+qqvM83zgnZVkCSkNwtiLOODfzbFmmfKKdLoN30xE6oRP+hu9LH7dzRnnIwsx2DBgaX6QPdbcsIG1dnfH34PO1/AvZGRU4YRwrBSVsURR5wow6BYTs56qznYUd6VALvDg0iOLde7eniqQlVbzfLsR+GFeQ9zp9qMI4JjL17RJYBeVam0wP3cYXglE5PsMYuJwVLP6aOIFx3nQPem76bh5fyTVFsav+jsdamw+dZ7uZn6lkRlCtqyxQzFyyT3RgCUW1qVwdus42xsJm8GPojfIcqhQ3HUEDZ61D5dgZjIQ==", "swapfree"=>"1023.99 MiB", "swapfree_mb"=>1023.9921875, "swapsize"=>"1023.99 MiB", "swapsize_mb"=>1023.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>847, "uptime"=>"0:14 hours"}, "timezone"=>"UTC", "uptime"=>"0:14 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>847, "virtual"=>"virtualbox", "clientcert"=>"localhost.localdomain", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'CentOS-5.11-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_CentOS-6.6-32_spec.rb b/.onceover/spec/classes/role__windows_on_CentOS-6.6-32_spec.rb new file mode 100644 index 0000000..e7f4c56 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_CentOS-6.6-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set CentOS-6.6-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"6C33275E-3132-4167-9318-9BDE31E82035"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext4,iso9660", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:feff:42e5", "ipaddress6_eth0"=>"fe80::a00:27ff:feff:42e5", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-504.el6.i686", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "macaddress"=>"08:00:27:ff:42:e5", "macaddress_eth0"=>"08:00:27:ff:42:e5", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"1.00 GiB", "available_bytes"=>1073737728, "capacity"=>"0%", "total"=>"1.00 GiB", "total_bytes"=>1073737728, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"451.91 MiB", "available_bytes"=>473862144, "capacity"=>"9.40%", "total"=>"498.82 MiB", "total_bytes"=>523051008, "used"=>"46.91 MiB", "used_bytes"=>49188864}}, "memoryfree"=>"451.91 MiB", "memoryfree_mb"=>451.91015625, "memorysize"=>"498.82 MiB", "memorysize_mb"=>498.8203125, "mountpoints"=>{"/"=>{"available"=>"1.02 GiB", "available_bytes"=>1099689984, "capacity"=>"51.05%", "device"=>"/dev/mapper/VolGroup-lv_root", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"2.09 GiB", "size_bytes"=>-2048442368, "used"=>"1.07 GiB", "used_bytes"=>1146834944}, "/boot"=>{"available"=>"450.39 MiB", "available_bytes"=>472266752, "capacity"=>"5.42%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"25.83 MiB", "used_bytes"=>27088896}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feff:42e5", "mac"=>"08:00:27:ff:42:e5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feff:42e5", "mac"=>"08:00:27:ff:42:e5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.6", "os"=>{"architecture"=>"i386", "family"=>"RedHat", "hardware"=>"i686", "name"=>"CentOS", "release"=>{"full"=>"6.6", "major"=>"6", "minor"=>"6"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/VolGroup-lv_root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"bc353fb2-82b1-4d41-a43e-6512030a2a28"}, "/dev/mapper/VolGroup-lv_swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"eb19f39e-a1cc-4e43-bf33-809fa7f52044"}, "/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"51727e98-6cd5-4fba-8a1f-7d4dfb575e1f"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>-525336576, "uuid"=>"vkG7sJ-bfu3-Cko3-YJ7v-jPys-3uHe-vki0jZ"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/puppetlabs/bin:/root/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 5c44d0a9f52668fbaaf05e6957f058d90264adfe", "sha256"=>"SSHFP 2 2 de1d70753fc8dcce901b997fca065a08cdfcc9d7ba44f630e0e16be7a54df877"}, "key"=>"AAAAB3NzaC1kc3MAAACBAME6dtbuRJGNiBgp3QqD50a8LmJLduCTsifX5ST6RA5l+LHIx/UpCo66dsSY29mXVsMIK6tlZyu0MDR4iOz/4oFcKwkgHvbZ33WFY7G526IDrszdLdWnEqxPw7pUC+izWmD337K0gcZnDMJGZk1PVEjK6i5MeFYI4SwYkdd/m7DTAAAAFQCzZLb3M4+Y0TBLUVImfxc31+KXiQAAAIAbk33qNmIiB4+iHJ0coB4MfSdwoPnhU+vG7XpqiA0W/68U6lGIFFFHW0R1utZUQ28E8jUhSwzM0EGXtiSyFpTzjAnS44UiIWvulTkbpa9RnTn1gVzR2Tpbc24LMiKqiz/ZrvKmp8jLUO1/BPCmD80yNXXo+v59wXnVD8Yak4u07QAAAIB0lpeV5gShABSEIBXBuAPGW67mjCdUqbj6Ry1ZV3XTPtUXWVhCehWQrPh9yYCItpepKWp55t7neSqVjaxFo7W8O2gBkYwv24eQiqaqI8vgV3fJf4mdb10cdAb6IzM46WVhSxo1al2XPLBDVtx1z/4RH/7agKpbfmP6QrDgKkMKow=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1002ff7e5e42c3c9c9681d65afe0f195277d2a8", "sha256"=>"SSHFP 1 2 ac639861032637e9c24f0af7126242086540c3d1f41640576c011d6eb9f4bf24"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEArd8ro8164ykLYynBWxSiPBNUy1hLeh2S284vuYCbJwNC/naFBmcXORUFIsegfJpRxFKg3YsCbQUrHfZ6cfAc/xKUdoORUkF+8ixsVl4YzHg6vybxnRlaanBvS0eiR/wzxsVepqC/S3gd7YF3/Lca5sHNixNuqgxsd9iy9VEz7XMZ32mMxBqgTabR1KorBSufGMRADq/jauXpd2QRul+bih5uAL/Ilb2bZutcHUohnWi3UQnR10bO9MS1wr6c42VJBOHW6fZXvGjRvjd94AhNB7RTKvmRCucPCMvkgaDsr+z0cCjmpmptsdy119UpKmv4uCHalPbtHOWMYk2QVnqoQw=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAME6dtbuRJGNiBgp3QqD50a8LmJLduCTsifX5ST6RA5l+LHIx/UpCo66dsSY29mXVsMIK6tlZyu0MDR4iOz/4oFcKwkgHvbZ33WFY7G526IDrszdLdWnEqxPw7pUC+izWmD337K0gcZnDMJGZk1PVEjK6i5MeFYI4SwYkdd/m7DTAAAAFQCzZLb3M4+Y0TBLUVImfxc31+KXiQAAAIAbk33qNmIiB4+iHJ0coB4MfSdwoPnhU+vG7XpqiA0W/68U6lGIFFFHW0R1utZUQ28E8jUhSwzM0EGXtiSyFpTzjAnS44UiIWvulTkbpa9RnTn1gVzR2Tpbc24LMiKqiz/ZrvKmp8jLUO1/BPCmD80yNXXo+v59wXnVD8Yak4u07QAAAIB0lpeV5gShABSEIBXBuAPGW67mjCdUqbj6Ry1ZV3XTPtUXWVhCehWQrPh9yYCItpepKWp55t7neSqVjaxFo7W8O2gBkYwv24eQiqaqI8vgV3fJf4mdb10cdAb6IzM46WVhSxo1al2XPLBDVtx1z/4RH/7agKpbfmP6QrDgKkMKow==", "sshfp_dsa"=>"SSHFP 2 1 5c44d0a9f52668fbaaf05e6957f058d90264adfe\nSSHFP 2 2 de1d70753fc8dcce901b997fca065a08cdfcc9d7ba44f630e0e16be7a54df877", "sshfp_rsa"=>"SSHFP 1 1 d1002ff7e5e42c3c9c9681d65afe0f195277d2a8\nSSHFP 1 2 ac639861032637e9c24f0af7126242086540c3d1f41640576c011d6eb9f4bf24", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEArd8ro8164ykLYynBWxSiPBNUy1hLeh2S284vuYCbJwNC/naFBmcXORUFIsegfJpRxFKg3YsCbQUrHfZ6cfAc/xKUdoORUkF+8ixsVl4YzHg6vybxnRlaanBvS0eiR/wzxsVepqC/S3gd7YF3/Lca5sHNixNuqgxsd9iy9VEz7XMZ32mMxBqgTabR1KorBSufGMRADq/jauXpd2QRul+bih5uAL/Ilb2bZutcHUohnWi3UQnR10bO9MS1wr6c42VJBOHW6fZXvGjRvjd94AhNB7RTKvmRCucPCMvkgaDsr+z0cCjmpmptsdy119UpKmv4uCHalPbtHOWMYk2QVnqoQw==", "swapfree"=>"1.00 GiB", "swapfree_mb"=>1023.99609375, "swapsize"=>"1.00 GiB", "swapsize_mb"=>1023.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>430, "uptime"=>"0:07 hours"}, "timezone"=>"UTC", "uptime"=>"0:07 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>430, "uuid"=>"6C33275E-3132-4167-9318-9BDE31E82035", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'CentOS-6.6-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_CentOS-6.6-64_spec.rb b/.onceover/spec/classes/role__windows_on_CentOS-6.6-64_spec.rb new file mode 100644 index 0000000..d24227a --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_CentOS-6.6-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set CentOS-6.6-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"DA4CD203-2C23-4E21-B169-293D1749C38C"}}, "domain"=>"pdx.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"ext4,iso9660", "fqdn"=>"centos6a.pdx.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"centos6a", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ip6tables_version"=>"1.4.7", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe0f:d276", "ipaddress6_eth0"=>"fe80::a00:27ff:fe0f:d276", "ipaddress6_eth1"=>"fe80::a00:27ff:fe66:988a", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"10.20.1.88", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.7", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-504.8.1.el6.x86_64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "macaddress"=>"08:00:27:0f:d2:76", "macaddress_eth0"=>"08:00:27:0f:d2:76", "macaddress_eth1"=>"08:00:27:66:98:8a", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"992.00 MiB", "available_bytes"=>1040183296, "capacity"=>"0%", "total"=>"992.00 MiB", "total_bytes"=>1040183296, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"348.41 MiB", "available_bytes"=>365338624, "capacity"=>"28.95%", "total"=>"490.39 MiB", "total_bytes"=>514215936, "used"=>"141.98 MiB", "used_bytes"=>148877312}}, "memoryfree"=>"348.41 MiB", "memoryfree_mb"=>348.4140625, "memorysize"=>"490.39 MiB", "memorysize_mb"=>490.39453125, "mountpoints"=>{"/"=>{"available"=>"16.94 GiB", "available_bytes"=>18193268736, "capacity"=>"6.51%", "device"=>"/dev/mapper/VolGroup-lv_root", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"18.12 GiB", "size_bytes"=>19459338240, "used"=>"1.18 GiB", "used_bytes"=>1266069504}, "/boot"=>{"available"=>"448.35 MiB", "available_bytes"=>470125568, "capacity"=>"5.85%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"27.88 MiB", "used_bytes"=>29230080}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8555670, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"pdx.puppetlabs.demo", "fqdn"=>"centos6a.pdx.puppetlabs.demo", "hostname"=>"centos6a", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe0f:d276", "mac"=>"08:00:27:0f:d2:76", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"ip"=>"10.20.1.88", "ip6"=>"fe80::a00:27ff:fe66:988a", "mac"=>"08:00:27:66:98:8a", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe0f:d276", "mac"=>"08:00:27:0f:d2:76", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.6", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"6.6", "major"=>"6", "minor"=>"6"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/VolGroup-lv_root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"a29409f8-0b58-4271-a348-032caefec8b8"}, "/dev/mapper/VolGroup-lv_swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b30b464a-8ac9-492a-a1c5-2da75bb7488a"}, "/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"da946872-1406-4ac1-9a4d-f7ce5f7be47e"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>20949499904, "uuid"=>"nRdWPh-INkA-aHPs-TNtk-HjJG-SxBU-DdqI8a"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_razor_server_version"=>"package pe-razor-server is not installed", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"el-6-x86_64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 5dad11db93cde6e3b1d5ce5a5fe5ad02825037e8", "sha256"=>"SSHFP 2 2 576fe2b6a8412ada50cb776e6f1da5dd4bc301f2aa682be2ff82c70558c14745"}, "key"=>"AAAAB3NzaC1kc3MAAACBAJSFgQJi2VfgHnp2MQsV2wNpONevQuhi1Jb/nX0EjHtrAgc8MNRXLQTmjunh5q4+mjcYMHXDIx6F0Oc4XCnR5g6uQwBOGg70oXJmUkmwCw/mdgu3ppepOQJssBKnKFCR7QsbrBL+U1YmYmV8eGYDB76eXWRBOd9LewcGkjhHYbpzAAAAFQCShhFDlgHvmj6kcr6XRUuYPNziNwAAAIBBjLzEbwqoedlUKXRGuKc7nU71qWAkahN8rI4lU7d6PrVS7XziNX3OTCXbRCF3wT/dlYBU+grjmOIF4dbOrjBCHmmYVzlntXsefyR6XIbJw/H08L2LdDT6aye+MDWdYGK0PqgV6AZ5pWUzu7wS+qJduOaNMts5YrzqvlhiFDO8EAAAAIAJoqYk2bkNTPnjYi4qhIP3o+7Lhpxh5akAkjPMpM4tf/BedBqzKimvWhtDNVTcNCOZwJuSkHL4SSafvPCoxbKY4YhFWYykS/Vdle9ixNtH+wMU5d8DsSsvZpfa4lvj9FpzgfcM+NT1aYHis/pIRpBblPfHHnFBsxGKX66v6webHg=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 e1e2811771eb093d9b74333a111e089bc8e434ef", "sha256"=>"SSHFP 1 2 4513b7ba6b47b22319ea40fe9e0f12e9ac200b367b78508364a80a2a9b92409c"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA3Gn072MPvlL1R0RpTGod7BxiCvm4Wp6p8gRYJgEba9FLtYTWYhx18ueLnuFWKnK6WMpwe24732ZGGCsagjBkEo8DFJZABZbfSHxW1gsmU6smUM9o2wt9ZEeYJ036DqIkg4DzsBLc206NKStuKCTOINFSwBtHAWkZCeGdon8ssEoery//yZchbHBXQB1f312Re42W4eLNpWm0T93eEwRRMOpnLtNFrVa9kvHv71eQx2crvDG2xd6BfN0PkU0tx0TBzDS2xUqBg5m1MdNbarxWH1Km8JUEH40jl3YKgh5g0lrfEE36xIItPtW2mFawsMBpMK0iPerqs60or9SjM1LwXQ=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAJSFgQJi2VfgHnp2MQsV2wNpONevQuhi1Jb/nX0EjHtrAgc8MNRXLQTmjunh5q4+mjcYMHXDIx6F0Oc4XCnR5g6uQwBOGg70oXJmUkmwCw/mdgu3ppepOQJssBKnKFCR7QsbrBL+U1YmYmV8eGYDB76eXWRBOd9LewcGkjhHYbpzAAAAFQCShhFDlgHvmj6kcr6XRUuYPNziNwAAAIBBjLzEbwqoedlUKXRGuKc7nU71qWAkahN8rI4lU7d6PrVS7XziNX3OTCXbRCF3wT/dlYBU+grjmOIF4dbOrjBCHmmYVzlntXsefyR6XIbJw/H08L2LdDT6aye+MDWdYGK0PqgV6AZ5pWUzu7wS+qJduOaNMts5YrzqvlhiFDO8EAAAAIAJoqYk2bkNTPnjYi4qhIP3o+7Lhpxh5akAkjPMpM4tf/BedBqzKimvWhtDNVTcNCOZwJuSkHL4SSafvPCoxbKY4YhFWYykS/Vdle9ixNtH+wMU5d8DsSsvZpfa4lvj9FpzgfcM+NT1aYHis/pIRpBblPfHHnFBsxGKX66v6webHg==", "sshfp_dsa"=>"SSHFP 2 1 5dad11db93cde6e3b1d5ce5a5fe5ad02825037e8\nSSHFP 2 2 576fe2b6a8412ada50cb776e6f1da5dd4bc301f2aa682be2ff82c70558c14745", "sshfp_rsa"=>"SSHFP 1 1 e1e2811771eb093d9b74333a111e089bc8e434ef\nSSHFP 1 2 4513b7ba6b47b22319ea40fe9e0f12e9ac200b367b78508364a80a2a9b92409c", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA3Gn072MPvlL1R0RpTGod7BxiCvm4Wp6p8gRYJgEba9FLtYTWYhx18ueLnuFWKnK6WMpwe24732ZGGCsagjBkEo8DFJZABZbfSHxW1gsmU6smUM9o2wt9ZEeYJ036DqIkg4DzsBLc206NKStuKCTOINFSwBtHAWkZCeGdon8ssEoery//yZchbHBXQB1f312Re42W4eLNpWm0T93eEwRRMOpnLtNFrVa9kvHv71eQx2crvDG2xd6BfN0PkU0tx0TBzDS2xUqBg5m1MdNbarxWH1Km8JUEH40jl3YKgh5g0lrfEE36xIItPtW2mFawsMBpMK0iPerqs60or9SjM1LwXQ==", "staging_http_get"=>"curl", "swapfree"=>"992.00 MiB", "swapfree_mb"=>991.99609375, "swapsize"=>"992.00 MiB", "swapsize_mb"=>991.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>352, "uptime"=>"0:05 hours"}, "timezone"=>"UTC", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>352, "uuid"=>"DA4CD203-2C23-4E21-B169-293D1749C38C", "virtual"=>"virtualbox", "clientcert"=>"centos6a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'CentOS-6.6-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_CentOS-7.0-64_spec.rb b/.onceover/spec/classes/role__windows_on_CentOS-7.0-64_spec.rb new file mode 100644 index 0000000..bc0f5a1 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_CentOS-7.0-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set CentOS-7.0-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"sydney", "dhcp_servers"=>{"enp0s3"=>"10.0.2.2", "enp0s8"=>"192.168.56.100", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"9D7BE471-F3DA-47EE-B023-F659129270EF"}}, "domain"=>"syd.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"xfs", "fqdn"=>"centos7b.syd.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"centos7b", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"enp0s3,enp0s8,lo", "ip6tables_version"=>"1.4.21", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe39:183c", "ipaddress6_enp0s3"=>"fe80::a00:27ff:fe39:183c", "ipaddress6_enp0s8"=>"fe80::a00:27ff:fe39:832c", "ipaddress6_lo"=>"::1", "ipaddress_enp0s3"=>"10.0.2.15", "ipaddress_enp0s8"=>"10.20.1.92", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.21", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.10", "kernelrelease"=>"3.10.0-123.el7.x86_64", "kernelversion"=>"3.10.0", "load_averages"=>{"15m"=>0.05, "1m"=>0.26, "5m"=>0.12}, "macaddress"=>"08:00:27:39:18:3c", "macaddress_enp0s3"=>"08:00:27:39:18:3c", "macaddress_enp0s8"=>"08:00:27:39:83:2c", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"1.03 GiB", "available_bytes"=>1107292160, "capacity"=>"0%", "total"=>"1.03 GiB", "total_bytes"=>1107292160, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"297.76 MiB", "available_bytes"=>312225792, "capacity"=>"39.28%", "total"=>"490.41 MiB", "total_bytes"=>514228224, "used"=>"192.64 MiB", "used_bytes"=>202002432}}, "memoryfree"=>"297.76 MiB", "memoryfree_mb"=>297.76171875, "memorysize"=>"490.41 MiB", "memorysize_mb"=>490.40625, "mountpoints"=>{"/"=>{"available"=>"17.30 GiB", "available_bytes"=>18574749696, "capacity"=>"6.32%", "device"=>"/dev/mapper/centos-root", "filesystem"=>"xfs", "options"=>["rw", "relatime", "attr2", "inode64", "noquota"], "size"=>"18.47 GiB", "size_bytes"=>19828572160, "used"=>"1.17 GiB", "used_bytes"=>1253822464}, "/boot"=>{"available"=>"393.11 MiB", "available_bytes"=>412209152, "capacity"=>"20.85%", "device"=>"/dev/sda1", "filesystem"=>"xfs", "options"=>["rw", "relatime", "attr2", "inode64", "noquota"], "size"=>"496.67 MiB", "size_bytes"=>520794112, "used"=>"103.55 MiB", "used_bytes"=>108584960}}, "mtu_enp0s3"=>1500, "mtu_enp0s8"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8563388, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s3"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s8"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_enp0s3"=>"255.255.255.0", "netmask_enp0s8"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_enp0s3"=>"fe80::", "network6_enp0s8"=>"fe80::", "network6_lo"=>"::1", "network_enp0s3"=>"10.0.2.0", "network_enp0s8"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"syd.puppetlabs.demo", "fqdn"=>"centos7b.syd.puppetlabs.demo", "hostname"=>"centos7b", "interfaces"=>{"enp0s3"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe39:183c", "mac"=>"08:00:27:39:18:3c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "enp0s8"=>{"dhcp"=>"192.168.56.100", "ip"=>"10.20.1.92", "ip6"=>"fe80::a00:27ff:fe39:832c", "mac"=>"08:00:27:39:83:2c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe39:183c", "mac"=>"08:00:27:39:18:3c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"CentOS", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.0.1406", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"CentOS", "release"=>{"full"=>"7.0.1406", "major"=>"7", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/mapper/centos-root"=>{"filesystem"=>"xfs", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"db651e5f-a2c2-4236-9570-6226f63e1fcd"}, "/dev/mapper/centos-swap"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"ff4ec16c-28c0-4715-846d-11e7c9b4e53b"}, "/dev/sda1"=>{"filesystem"=>"xfs", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"39ce4ad1-4e9d-49a4-bce0-8a30b459490a"}, "/dev/sda2"=>{"filesystem"=>"LVM2_member", "size"=>"19.51 GiB", "size_bytes"=>20949499904, "uuid"=>"pg7zVv-M3hI-zpjY-eYlZ-06aD-ZRO2-J30GLd"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_razor_server_version"=>"package pe-razor-server is not installed", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"el-7-x86_64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 91edfdf5e7e098f4392606865c017dabc26804bb", "sha256"=>"SSHFP 3 2 f00c65a1884bfec52db11de89254f0bfd46baf9e759546654c94371a05ee0dba"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcSUcHQOfBDZElr6PBmxc/4ZDaIhsugXM7OE2SQj35iOMCN/I3XfINMo8SvBIQ6CsBqPnzgbKRBs7e1FPFnsT4="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 f25e9ad2faddbe75263cfee4fa97dc965bc1d581", "sha256"=>"SSHFP 1 2 0173e386031a134e4cbfb7f6971788761a5aa3d9e39dafcf163f003de2537199"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMo35gwbuqQvRq1gy6L8vddeyMNBYr5WPVcftMKSJR1jmwzxcZ+h0AEb3KPfoMHkqe9Xy+3oN981qe5ZCE780HO884AaXzXry9zdWQjGysrI+zHQbqbpOkYAGsVbJiQ7VnH7lMVZo2jCbABj4OdsbeCOeP3oDXTNCTaWWdQChzqvYgNBvb0mg/na1l0naQ1nsJYD85O8ZRQ9U/JOADMaOjummfOb2z7MgskZ9abm5eFCCQl+wUUNXKqQx+uyVM4lyyoTHpW3M2IV0P9wxhWJF6eovwyREGuMgJCs6kbHCFty7HtAYbzziabgQav8pMe68aBqjshbpU6ll/+aXWhD1"}}, "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcSUcHQOfBDZElr6PBmxc/4ZDaIhsugXM7OE2SQj35iOMCN/I3XfINMo8SvBIQ6CsBqPnzgbKRBs7e1FPFnsT4=", "sshfp_ecdsa"=>"SSHFP 3 1 91edfdf5e7e098f4392606865c017dabc26804bb\nSSHFP 3 2 f00c65a1884bfec52db11de89254f0bfd46baf9e759546654c94371a05ee0dba", "sshfp_rsa"=>"SSHFP 1 1 f25e9ad2faddbe75263cfee4fa97dc965bc1d581\nSSHFP 1 2 0173e386031a134e4cbfb7f6971788761a5aa3d9e39dafcf163f003de2537199", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMo35gwbuqQvRq1gy6L8vddeyMNBYr5WPVcftMKSJR1jmwzxcZ+h0AEb3KPfoMHkqe9Xy+3oN981qe5ZCE780HO884AaXzXry9zdWQjGysrI+zHQbqbpOkYAGsVbJiQ7VnH7lMVZo2jCbABj4OdsbeCOeP3oDXTNCTaWWdQChzqvYgNBvb0mg/na1l0naQ1nsJYD85O8ZRQ9U/JOADMaOjummfOb2z7MgskZ9abm5eFCCQl+wUUNXKqQx+uyVM4lyyoTHpW3M2IV0P9wxhWJF6eovwyREGuMgJCs6kbHCFty7HtAYbzziabgQav8pMe68aBqjshbpU6ll/+aXWhD1", "staging_http_get"=>"curl", "swapfree"=>"1.03 GiB", "swapfree_mb"=>1055.99609375, "swapsize"=>"1.03 GiB", "swapsize_mb"=>1055.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>78, "uptime"=>"0:01 hours"}, "timezone"=>"UTC", "uptime"=>"0:01 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>78, "uuid"=>"9D7BE471-F3DA-47EE-B023-F659129270EF", "virtual"=>"virtualbox", "clientcert"=>"centos7b.syd.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'CentOS-7.0-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Debian-6.0.10-32_spec.rb b/.onceover/spec/classes/role__windows_on_Debian-6.0.10-32_spec.rb new file mode 100644 index 0000000..0626ea7 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Debian-6.0.10-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Debian-6.0.10-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"6E39B0C5-08BD-4595-AC3D-576DAA677DED"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fead:dc1c", "ipaddress6_eth0"=>"fe80::a00:27ff:fead:dc1c", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-5-686", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"squeeze", "lsbdistdescription"=>"Debian GNU/Linux 6.0.10 (squeeze)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"6.0.10", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"0", "macaddress"=>"08:00:27:ad:dc:1c", "macaddress_eth0"=>"08:00:27:ad:dc:1c", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"871.99 MiB", "available_bytes"=>914350080, "capacity"=>"0%", "total"=>"871.99 MiB", "total_bytes"=>914350080, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"434.46 MiB", "available_bytes"=>455565312, "capacity"=>"13.56%", "total"=>"502.63 MiB", "total_bytes"=>527040512, "used"=>"68.16 MiB", "used_bytes"=>71475200}}, "memoryfree"=>"434.46 MiB", "memoryfree_mb"=>434.4609375, "memorysize"=>"502.63 MiB", "memorysize_mb"=>502.625, "mountpoints"=>{"/"=>{"available"=>"1.69 GiB", "available_bytes"=>1819041792, "capacity"=>"35.07%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "errors=remount-ro"], "size"=>"2.61 GiB", "size_bytes"=>-1493307392, "used"=>"937.10 MiB", "used_bytes"=>982618112}, "/boot"=>{"available"=>"213.27 MiB", "available_bytes"=>223632384, "capacity"=>"6.35%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"14.45 MiB", "used_bytes"=>15155200}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fead:dc1c", "mac"=>"08:00:27:ad:dc:1c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fead:dc1c", "mac"=>"08:00:27:ad:dc:1c", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.0.10", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"squeeze", "description"=>"Debian GNU/Linux 6.0.10 (squeeze)", "id"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"092d5625-eb03-443c-953f-006bec7d5476"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"f9e1cf7c-ab54-4949-8e55-290adc8d853f"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"2c798378-1738-426f-a847-c929a507fc73"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"cG2Syv-bT1d-2TyA-Wqgz-33I2-RnTz-jA2LxS"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 3e0f92fe3eb7ee9737cead81e7465b5903d6ce57", "sha256"=>"SSHFP 2 2 c67d0777eb694d679a1d24335e76dd0475ca92077ff8d02c91f26a4b9cf56b09"}, "key"=>"AAAAB3NzaC1kc3MAAACBAInFvAyGI1vy23JgBDC4/AZeO2jhNRqlX0kdL9utKPaMgrIzIiEN0aqdlSJY4uTFcYAdfYxMuIkYaMh0FM3EMDB0ZL/1k9W2dCVFYpSHgIa/zJwSEqY7sFHdXjRsD3mjOzEZwpjV+dFq8sHoIouIhMcTC4nejrDRno994JoJSyP3AAAAFQCjjYeNB9geUQHIrcE/nY90aiI9pQAAAIBDoY90WppP0db2EyCgnAsl9J70YQg6bCPHHxl61ktEwStzGu7eEZxXVBDCPtFDYKL2gtmIlF0lAbt5KoC9NnVCb0n9vV4qY+xdwxWAjQI3CtrOfEZTaSlsn7lbgcnjXCODnALL92/nS6ahcVRt1KfmWTjCYnP1We+9QBSz/mRD8wAAAIBT+9TbXOqhlfNP/J3X3rEzZ1HsYh7DoLGbh3krSO0vpdC0crj6vx6NTDfJhwye6axWAgQOXF8g87FFTFERgmxEHhZE/QH7YxueNllJxKPtC77uiDBfaHsGtpIhISirr1fPSRTOVeVN3aCqHMualyCCH2xaYC8yGYwvL8W+mgqG6g=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1795dbe0b42f87f01a7a9f822b8ceb40bd6420b", "sha256"=>"SSHFP 1 2 7a4b0b01598345e44894393168d2e803b2dfbae8795a844b02e7ac16a999417a"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCyhapWpsFVIKdKwjNSiqZQYx6m5w7k3+bsmaNs7YU6qg+HrmBXBR/HwckXTPDMAHPVmmDYwi80N89Gp8NPZvnYJnhZwyQPmMUfORWO0aW8SE/TQKgbpbatZOzKb7pYtLT7g7ZbaWBPJBEqU0aCKAl3AW8FX8Hfja7+GD4DBLUi+rPyGPCr+uxa//NL9PE5nO1mQGLsn0Sy1Z7ChECrFVL7mXZ4xVSfTM3v0HI/SNUuq8qCpw8ysZFmUEbRzVEwTFm5zff8IaTZPQi7e/RofgELzn4+cuXiYHYKyiZDSJVDoHnc61OGmPWVxRHzcxNZDJS4dnc1mO48wyKpaM9xZF7B"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAInFvAyGI1vy23JgBDC4/AZeO2jhNRqlX0kdL9utKPaMgrIzIiEN0aqdlSJY4uTFcYAdfYxMuIkYaMh0FM3EMDB0ZL/1k9W2dCVFYpSHgIa/zJwSEqY7sFHdXjRsD3mjOzEZwpjV+dFq8sHoIouIhMcTC4nejrDRno994JoJSyP3AAAAFQCjjYeNB9geUQHIrcE/nY90aiI9pQAAAIBDoY90WppP0db2EyCgnAsl9J70YQg6bCPHHxl61ktEwStzGu7eEZxXVBDCPtFDYKL2gtmIlF0lAbt5KoC9NnVCb0n9vV4qY+xdwxWAjQI3CtrOfEZTaSlsn7lbgcnjXCODnALL92/nS6ahcVRt1KfmWTjCYnP1We+9QBSz/mRD8wAAAIBT+9TbXOqhlfNP/J3X3rEzZ1HsYh7DoLGbh3krSO0vpdC0crj6vx6NTDfJhwye6axWAgQOXF8g87FFTFERgmxEHhZE/QH7YxueNllJxKPtC77uiDBfaHsGtpIhISirr1fPSRTOVeVN3aCqHMualyCCH2xaYC8yGYwvL8W+mgqG6g==", "sshfp_dsa"=>"SSHFP 2 1 3e0f92fe3eb7ee9737cead81e7465b5903d6ce57\nSSHFP 2 2 c67d0777eb694d679a1d24335e76dd0475ca92077ff8d02c91f26a4b9cf56b09", "sshfp_rsa"=>"SSHFP 1 1 d1795dbe0b42f87f01a7a9f822b8ceb40bd6420b\nSSHFP 1 2 7a4b0b01598345e44894393168d2e803b2dfbae8795a844b02e7ac16a999417a", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCyhapWpsFVIKdKwjNSiqZQYx6m5w7k3+bsmaNs7YU6qg+HrmBXBR/HwckXTPDMAHPVmmDYwi80N89Gp8NPZvnYJnhZwyQPmMUfORWO0aW8SE/TQKgbpbatZOzKb7pYtLT7g7ZbaWBPJBEqU0aCKAl3AW8FX8Hfja7+GD4DBLUi+rPyGPCr+uxa//NL9PE5nO1mQGLsn0Sy1Z7ChECrFVL7mXZ4xVSfTM3v0HI/SNUuq8qCpw8ysZFmUEbRzVEwTFm5zff8IaTZPQi7e/RofgELzn4+cuXiYHYKyiZDSJVDoHnc61OGmPWVxRHzcxNZDJS4dnc1mO48wyKpaM9xZF7B", "swapfree"=>"871.99 MiB", "swapfree_mb"=>871.9921875, "swapsize"=>"871.99 MiB", "swapsize_mb"=>871.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1441, "uptime"=>"0:24 hours"}, "timezone"=>"PST", "uptime"=>"0:24 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1441, "uuid"=>"6E39B0C5-08BD-4595-AC3D-576DAA677DED", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Debian-6.0.10-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Debian-6.0.10-64_spec.rb b/.onceover/spec/classes/role__windows_on_Debian-6.0.10-64_spec.rb new file mode 100644 index 0000000..a199251 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Debian-6.0.10-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Debian-6.0.10-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"8AFC52E0-2A7C-42BA-BAFA-62B8413FB7C2"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe62:fa69", "ipaddress6_eth0"=>"fe80::a00:27ff:fe62:fa69", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-5-amd64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.0, "1m"=>0.0, "5m"=>0.0}, "lsbdistcodename"=>"squeeze", "lsbdistdescription"=>"Debian GNU/Linux 6.0.10 (squeeze)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"6.0.10", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"0", "macaddress"=>"08:00:27:62:fa:69", "macaddress_eth0"=>"08:00:27:62:fa:69", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"871.99 MiB", "available_bytes"=>914350080, "capacity"=>"0%", "total"=>"871.99 MiB", "total_bytes"=>914350080, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"382.43 MiB", "available_bytes"=>401010688, "capacity"=>"23.04%", "total"=>"496.90 MiB", "total_bytes"=>521035776, "used"=>"114.46 MiB", "used_bytes"=>120025088}}, "memoryfree"=>"382.43 MiB", "memoryfree_mb"=>382.43359375, "memorysize"=>"496.90 MiB", "memorysize_mb"=>496.8984375, "mountpoints"=>{"/"=>{"available"=>"17.65 GiB", "available_bytes"=>18949697536, "capacity"=>"5.16%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "errors=remount-ro"], "size"=>"18.61 GiB", "size_bytes"=>19981529088, "used"=>"984.03 MiB", "used_bytes"=>1031831552}, "/boot"=>{"available"=>"212.24 MiB", "available_bytes"=>222552064, "capacity"=>"6.80%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"15.48 MiB", "used_bytes"=>16235520}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe62:fa69", "mac"=>"08:00:27:62:fa:69", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe62:fa69", "mac"=>"08:00:27:62:fa:69", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.0.10", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"squeeze", "description"=>"Debian GNU/Linux 6.0.10 (squeeze)", "id"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Debian", "release"=>{"full"=>"6.0.10", "major"=>"6", "minor"=>"0"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"d2763d16-5203-4625-8733-a6f2ecc94f5a"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b5661448-0339-4ba3-8593-21cc6a049d33"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"415531d6-6955-433f-921e-8f266ab56649"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"vGb2LM-M1SP-IynO-OZJV-sYKl-Pcfo-fAFbiz"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 c9683f8ef6dc226d83a014be6349f496b65d329f", "sha256"=>"SSHFP 2 2 23aa109e68ed1d1b6766259c72d5168a93df3b0818fc975727b203aa6c4eb6ad"}, "key"=>"AAAAB3NzaC1kc3MAAACBALw6MnSlMUiVwDHFe5OUWDLBt0OooRutGu9pH1L3Ir6oZRNCbeFf3qoi+WWBU0cradbi0H1vlwtApdxVwymseyn9OqzfSt8urWkZS0o87vrJ1Hrz8RJe/B0TrWqgI1lm8h3zVBYsR7OXVFlSQC4ljK/3yZXfkIWEDBn8yXAsVMv5AAAAFQDuMctG71BY6fTAWG754jypFIJ/QwAAAIEAkqkhJdtDwZKty47LzSKIPne0t4TfbY8zHRN6atEtEFuOjgSBJoeYY7ILJL8zK8G7YO6nNdY0gVJv5x/R2ac1mfn06cq7xR2I/rD+BICmRt69kyFNi9newk2C7cLG8Mi6JvIHMduU8DegYeqz0kjh8WPUZWPakY5nqbYob6NE6vMAAACBAKh42Jooiu2+P1yrHjuYmjB9Wq8CoDSUwyNslY47HcEvzCuMcEZ8sVutpP0gjvO72bvFUPDzLP4HwqzphLVbGvBCc2N9RPTgJzijnHryB/LFXWS6evePwo4LMLhUMgzPOyIyxXxhG4bTTLR2jBmQe75EDqz3ibKJgb3CKz+hf6SZ"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 8e4b010ef208a5d1ecbbef4999ddb1a20ec0b6d2", "sha256"=>"SSHFP 1 2 1819579b1d40afe00107ef9d153e916f443fbddbefdf7f77583e84f32a3503b3"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCx/7sL2SPCsd/gcIPPvJhhOwYZdZSboDWqbIyUzzothrO7aKGHf7bxRdn+zu4vWUwBMoueGB1lf3xnDbrbDMxdh5sTpKYHWGKvBdgat+sWlEH3YiRd9vkji28R0+GEWdvmRTKfUxGEoJ7/NVZ0RroCMKlWO7tsDIUPhWn2NDZ3z4V3FAv4WvaE0YF1g0+71kF263+9IJCoxx6ztWBQfdJvEdu/k9cvCIJ6IMxscZ48vAqLRali6QCKRNHUqZFOLattqKFvGHdU/WvX+xpEj2QLTD+Tuat2uImblM4wge44oS8nlhN+reO1Cjafjf6lh3cCfUWphndK3Wvv7a18l2av"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALw6MnSlMUiVwDHFe5OUWDLBt0OooRutGu9pH1L3Ir6oZRNCbeFf3qoi+WWBU0cradbi0H1vlwtApdxVwymseyn9OqzfSt8urWkZS0o87vrJ1Hrz8RJe/B0TrWqgI1lm8h3zVBYsR7OXVFlSQC4ljK/3yZXfkIWEDBn8yXAsVMv5AAAAFQDuMctG71BY6fTAWG754jypFIJ/QwAAAIEAkqkhJdtDwZKty47LzSKIPne0t4TfbY8zHRN6atEtEFuOjgSBJoeYY7ILJL8zK8G7YO6nNdY0gVJv5x/R2ac1mfn06cq7xR2I/rD+BICmRt69kyFNi9newk2C7cLG8Mi6JvIHMduU8DegYeqz0kjh8WPUZWPakY5nqbYob6NE6vMAAACBAKh42Jooiu2+P1yrHjuYmjB9Wq8CoDSUwyNslY47HcEvzCuMcEZ8sVutpP0gjvO72bvFUPDzLP4HwqzphLVbGvBCc2N9RPTgJzijnHryB/LFXWS6evePwo4LMLhUMgzPOyIyxXxhG4bTTLR2jBmQe75EDqz3ibKJgb3CKz+hf6SZ", "sshfp_dsa"=>"SSHFP 2 1 c9683f8ef6dc226d83a014be6349f496b65d329f\nSSHFP 2 2 23aa109e68ed1d1b6766259c72d5168a93df3b0818fc975727b203aa6c4eb6ad", "sshfp_rsa"=>"SSHFP 1 1 8e4b010ef208a5d1ecbbef4999ddb1a20ec0b6d2\nSSHFP 1 2 1819579b1d40afe00107ef9d153e916f443fbddbefdf7f77583e84f32a3503b3", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCx/7sL2SPCsd/gcIPPvJhhOwYZdZSboDWqbIyUzzothrO7aKGHf7bxRdn+zu4vWUwBMoueGB1lf3xnDbrbDMxdh5sTpKYHWGKvBdgat+sWlEH3YiRd9vkji28R0+GEWdvmRTKfUxGEoJ7/NVZ0RroCMKlWO7tsDIUPhWn2NDZ3z4V3FAv4WvaE0YF1g0+71kF263+9IJCoxx6ztWBQfdJvEdu/k9cvCIJ6IMxscZ48vAqLRali6QCKRNHUqZFOLattqKFvGHdU/WvX+xpEj2QLTD+Tuat2uImblM4wge44oS8nlhN+reO1Cjafjf6lh3cCfUWphndK3Wvv7a18l2av", "swapfree"=>"871.99 MiB", "swapfree_mb"=>871.9921875, "swapsize"=>"871.99 MiB", "swapsize_mb"=>871.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1211, "uptime"=>"0:20 hours"}, "timezone"=>"PST", "uptime"=>"0:20 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1211, "uuid"=>"8AFC52E0-2A7C-42BA-BAFA-62B8413FB7C2", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Debian-6.0.10-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Debian-7.8-32_spec.rb b/.onceover/spec/classes/role__windows_on_Debian-7.8-32_spec.rb new file mode 100644 index 0000000..5168c8e --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Debian-7.8-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Debian-7.8-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"75AFEC9A-DECD-40F4-B25F-A737EE8BA7CA"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe18:59a5", "ipaddress6_eth0"=>"fe80::a00:27ff:fe18:59a5", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.2", "kernelrelease"=>"3.2.0-4-686-pae", "kernelversion"=>"3.2.0", "load_averages"=>{"15m"=>0.03, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"wheezy", "lsbdistdescription"=>"Debian GNU/Linux 7.8 (wheezy)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"7.8", "lsbmajdistrelease"=>"7", "lsbminordistrelease"=>"8", "macaddress"=>"08:00:27:18:59:a5", "macaddress_eth0"=>"08:00:27:18:59:a5", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"872.00 MiB", "available_bytes"=>914354176, "capacity"=>"0%", "total"=>"872.00 MiB", "total_bytes"=>914354176, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"432.02 MiB", "available_bytes"=>453001216, "capacity"=>"14.00%", "total"=>"502.32 MiB", "total_bytes"=>526725120, "used"=>"70.31 MiB", "used_bytes"=>73723904}}, "memoryfree"=>"432.02 MiB", "memoryfree_mb"=>432.015625, "memorysize"=>"502.32 MiB", "memorysize_mb"=>502.32421875, "mountpoints"=>{"/"=>{"available"=>"1.52 GiB", "available_bytes"=>1633996800, "capacity"=>"41.68%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=remount-ro", "user_xattr", "acl", "barrier=1", "data=ordered"], "size"=>"2.61 GiB", "size_bytes"=>-1493307392, "used"=>"1.09 GiB", "used_bytes"=>1167663104}, "/boot"=>{"available"=>"211.24 MiB", "available_bytes"=>221499392, "capacity"=>"7.24%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw", "relatime", "errors=continue"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"16.49 MiB", "used_bytes"=>17288192}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe18:59a5", "mac"=>"08:00:27:18:59:a5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe18:59a5", "mac"=>"08:00:27:18:59:a5", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.8", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"wheezy", "description"=>"Debian GNU/Linux 7.8 (wheezy)", "id"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"c87cb2c9-ffb8-48d1-bc31-024a57d3e44e"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"864df30a-fc50-4a93-8cfd-4624251c1589"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"b8ab8500-a238-4554-8d11-9c194ebba70c"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"NvdPwA-esP3-xUuv-n9OR-Ep7r-kQAr-qyUAzr"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 ffc65c9d4e1956519935d902798fc58cbafde1fa", "sha256"=>"SSHFP 2 2 3a59447b36760803f33fdda5c1f58681b271a8a5e6fb4997ee7241cb29a59906"}, "key"=>"AAAAB3NzaC1kc3MAAACBANJna2zK1ufiBINsA3RgaBhVXUFlya5rxD6A2KkeYr1yWcDECATGcsSh6KDEC4asOEtoyIogsZx/5ygefXeR+0R1XYQghrFsZWSwIdVV+jrt6IWddub3KXp8UvfWYUUXKAm0fiGXzTJ7sodap1ep/FBM0cyyaWYXvQCgiBr/T+lLAAAAFQCGGv9dGnuyKCMssoWebZ7PRd41cQAAAIEAsmFTg56Q5KwsFyYrtUR+fZlL983DI4m+/PPWI/pZ4sgvRjA7NWfr+gfJrSObH88ZAccu7edbVSfOyRVcOqCjBYU3nybG9vuelacqm4qdTnZbUWlMZJ1clJ4GlRVPO9zEhuODBleyxQW13XiwgNe9h9vOXlu/xu8aogaIyLfXGZgAAACAMe0yNEoADrHDE8rXr6nvytfibxofPnCtZj7L54OY7HuaBv1I0OqdJVjLw7SjJQ3vIiiR2pMMFVioROgVWUokdskTT/M3RvEcoNG55iYFVe8p43Z1HY4NNLgHIoPZ4C3EDDxiwCxiFK0kmhbg9boyV0Dyra/rbEAyZH6xNZYBR/c="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 5222b070970562793c4df0db8916f7828334bad4", "sha256"=>"SSHFP 3 2 920d4e5ef5dc8064271df26a5cda37211772a9133537d4520addef0e2dc0a480"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOkAfihhbn6Ht/z9rqOPlshRbi8MFhg12kUUf9PBVvKOBA3wgmHzOlcwSdhpO9olPla92uplSlntiE+bqR7eZhA="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 5bd78bebc725f3afc34cff576f09eaa052ef6c3d", "sha256"=>"SSHFP 1 2 c9e8b904a928e59d86e90e84d972b95bc3eabbfcf465ce0bb9569547ac5c2aa6"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQD4eO7mc/0jHFMbrPCrT6ktvNPzIqceRoIo6Kf/E845UlOO0eX425jMKVLqmnQCorZnN168LyyRfBoKXCmC/EEe18BlTcosCBseh/RytFcOpaUcX5etnmaqf8yBg4Hcp2zkRQx4HsHJMK5/52Dha7ZU7FvgJBMfCJULaEL9t+eRp1bOLN7GnFsMkXAaLmUqI3d6cVI8rc10ocQMu1nhzzNX4FDjoSvRH/AKGTzcIm8LBXUAR3v1ubFf+8Qc8vYF/sGcyJAJ0Bhcmg9/KH9NQMT01u0cgCOsxzBXu56CF5zeKERrbi8k6OJzz0t+rT8/7mwJOgKx4QhHt69jqt4KVeJv"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBANJna2zK1ufiBINsA3RgaBhVXUFlya5rxD6A2KkeYr1yWcDECATGcsSh6KDEC4asOEtoyIogsZx/5ygefXeR+0R1XYQghrFsZWSwIdVV+jrt6IWddub3KXp8UvfWYUUXKAm0fiGXzTJ7sodap1ep/FBM0cyyaWYXvQCgiBr/T+lLAAAAFQCGGv9dGnuyKCMssoWebZ7PRd41cQAAAIEAsmFTg56Q5KwsFyYrtUR+fZlL983DI4m+/PPWI/pZ4sgvRjA7NWfr+gfJrSObH88ZAccu7edbVSfOyRVcOqCjBYU3nybG9vuelacqm4qdTnZbUWlMZJ1clJ4GlRVPO9zEhuODBleyxQW13XiwgNe9h9vOXlu/xu8aogaIyLfXGZgAAACAMe0yNEoADrHDE8rXr6nvytfibxofPnCtZj7L54OY7HuaBv1I0OqdJVjLw7SjJQ3vIiiR2pMMFVioROgVWUokdskTT/M3RvEcoNG55iYFVe8p43Z1HY4NNLgHIoPZ4C3EDDxiwCxiFK0kmhbg9boyV0Dyra/rbEAyZH6xNZYBR/c=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOkAfihhbn6Ht/z9rqOPlshRbi8MFhg12kUUf9PBVvKOBA3wgmHzOlcwSdhpO9olPla92uplSlntiE+bqR7eZhA=", "sshfp_dsa"=>"SSHFP 2 1 ffc65c9d4e1956519935d902798fc58cbafde1fa\nSSHFP 2 2 3a59447b36760803f33fdda5c1f58681b271a8a5e6fb4997ee7241cb29a59906", "sshfp_ecdsa"=>"SSHFP 3 1 5222b070970562793c4df0db8916f7828334bad4\nSSHFP 3 2 920d4e5ef5dc8064271df26a5cda37211772a9133537d4520addef0e2dc0a480", "sshfp_rsa"=>"SSHFP 1 1 5bd78bebc725f3afc34cff576f09eaa052ef6c3d\nSSHFP 1 2 c9e8b904a928e59d86e90e84d972b95bc3eabbfcf465ce0bb9569547ac5c2aa6", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQD4eO7mc/0jHFMbrPCrT6ktvNPzIqceRoIo6Kf/E845UlOO0eX425jMKVLqmnQCorZnN168LyyRfBoKXCmC/EEe18BlTcosCBseh/RytFcOpaUcX5etnmaqf8yBg4Hcp2zkRQx4HsHJMK5/52Dha7ZU7FvgJBMfCJULaEL9t+eRp1bOLN7GnFsMkXAaLmUqI3d6cVI8rc10ocQMu1nhzzNX4FDjoSvRH/AKGTzcIm8LBXUAR3v1ubFf+8Qc8vYF/sGcyJAJ0Bhcmg9/KH9NQMT01u0cgCOsxzBXu56CF5zeKERrbi8k6OJzz0t+rT8/7mwJOgKx4QhHt69jqt4KVeJv", "swapfree"=>"872.00 MiB", "swapfree_mb"=>871.99609375, "swapsize"=>"872.00 MiB", "swapsize_mb"=>871.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>800, "uptime"=>"0:13 hours"}, "timezone"=>"PST", "uptime"=>"0:13 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>800, "uuid"=>"75AFEC9A-DECD-40F4-B25F-A737EE8BA7CA", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Debian-7.8-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Debian-7.8-64_spec.rb b/.onceover/spec/classes/role__windows_on_Debian-7.8-64_spec.rb new file mode 100644 index 0000000..55cb488 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Debian-7.8-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Debian-7.8-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"117385F3-E367-4C81-BEE6-78384BAAA1DB"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"unknown", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe83:ad56", "ipaddress6_eth0"=>"fe80::a00:27ff:fe83:ad56", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.2", "kernelrelease"=>"3.2.0-4-amd64", "kernelversion"=>"3.2.0", "load_averages"=>{"15m"=>0.01, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"wheezy", "lsbdistdescription"=>"Debian GNU/Linux 7.8 (wheezy)", "lsbdistid"=>"Debian", "lsbdistrelease"=>"7.8", "lsbmajdistrelease"=>"7", "lsbminordistrelease"=>"8", "macaddress"=>"08:00:27:83:ad:56", "macaddress_eth0"=>"08:00:27:83:ad:56", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"872.00 MiB", "available_bytes"=>914354176, "capacity"=>"0%", "total"=>"872.00 MiB", "total_bytes"=>914354176, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"382.02 MiB", "available_bytes"=>400576512, "capacity"=>"23.13%", "total"=>"496.96 MiB", "total_bytes"=>521101312, "used"=>"114.94 MiB", "used_bytes"=>120524800}}, "memoryfree"=>"382.02 MiB", "memoryfree_mb"=>382.01953125, "memorysize"=>"496.96 MiB", "memorysize_mb"=>496.9609375, "mountpoints"=>{"/"=>{"available"=>"17.49 GiB", "available_bytes"=>18781380608, "capacity"=>"6.01%", "device"=>"/dev/mapper/localhost-root", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=remount-ro", "user_xattr", "acl", "barrier=1", "data=ordered"], "size"=>"18.61 GiB", "size_bytes"=>19981529088, "used"=>"1.12 GiB", "used_bytes"=>1200148480}, "/boot"=>{"available"=>"210.36 MiB", "available_bytes"=>220575744, "capacity"=>"7.63%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw", "relatime", "errors=continue"], "size"=>"227.73 MiB", "size_bytes"=>238787584, "used"=>"17.37 MiB", "used_bytes"=>18211840}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe83:ad56", "mac"=>"08:00:27:83:ad:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe83:ad56", "mac"=>"08:00:27:83:ad:56", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Debian", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.8", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"wheezy", "description"=>"Debian GNU/Linux 7.8 (wheezy)", "id"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Debian", "release"=>{"full"=>"7.8", "major"=>"7", "minor"=>"8"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost-root"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"7b853135-fb91-48ff-a25c-8d34ada8d549"}, "/dev/mapper/localhost-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"486756ce-bdd1-45f4-864d-e4b6fce59b9d"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"8aa50802-2811-43ec-9686-a30f6a1c3ade"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"eGBBBU-DZw3-wy0f-OMxw-Sf5d-jDyA-ctqcpx"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"unknown", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 36d929686c60f981438c3e708f76eaa8aea811ac", "sha256"=>"SSHFP 2 2 f509f25d24c474bf0f2b0fae387b1c798174632af84f7e7b064ead1d1e23b144"}, "key"=>"AAAAB3NzaC1kc3MAAACBAKo52UJRnjkvuOvraymZ2bDiTUEUexIZ50eR2hx47JpOCUW0OMFH443axvl4TeCpPwqTbf0MH3RdkdSqpGOSAAcBmDfOyI5o9dgzWwSIiplNTxO29tUB9YinkduLEe4pXL5FwZ20owYnvcbrlc8t+LNl8Vku3zWWMrng6mf620MVAAAAFQC5KtOLXLxKD3hk3ATXQbnli4wMRwAAAIAy3bLl4X5yk+WYssTadam8ScUdvzVBCXsrfK9o8HNHfdHCAQqYRYYlC7muDATZxhyw72IhZsFzw/Wswr+5K35hElvrH8j3pFXafe+5dp18CP3V+vXTAzVBiiOnA+AG1tvudBRsrh7bhD9oq1LnXqijLRiI9nD0Faem4uGcT7/jqgAAAIBudV2Q2VYl/N+pRv4/JTgsNLtNz3X12dMjeNXwbpM9LJZUVZDq/KsT1vdDTYOy42g/v14ucRU50QyyAxx78prRgyTIfyKFDEiff9i5uok0c/YN0t2w9ayYkYl6xBWVj+q2SiUM6WdqJdb7sltOLGwsjkroqAV0xdBpbiN6ZWvzKA=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 263f3632f018d8535aaf8374ff4e8bdfc2eb118a", "sha256"=>"SSHFP 3 2 f14b4e61f1569a8181800a082ce91452ce352122bffe4e39314888b280f598a6"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEspGa8fuYvtfy2pnBhKV/d/xfmUmvAVUhCJLOlwRURmszRQBW/+GwvhPIT1avptddqTUF2HeA1XKLkbabnxoHI="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3f543127df57aceb9be2259918ff9115e507be37", "sha256"=>"SSHFP 1 2 90114d6c22d6a759b85f4df1316c567828da41411ae36e8eb09e480bf3cd8ac3"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC8R/CbG0zr75BfoeoCv0GuLcxEIf8Yp5+s2OJKrYRqRmfD9gM6f4J3lVGB/+i5WRiQqJ61Mogstd4CSFmIUhq+opARvDQGxIz1mgV4aHAZDIAGYZ9b1nwS//JWb7nW5mMQqOW3fq59XWxssWjkW6kjJqNSvJtH24kDayxg3jB6Xt2jChz6NLq0t+WmRf24EKCymfnTOdXc4a2sSusAwSb1yl6iHnLpkd5efsUm/ZNCOzHbUtUsnAfDW4MNCUTzq8M/9SpCy2CRid4F29bD1jnJEvyPRrIRAwfPdJTuNZ06pzOWexvS0PcOY6tb0XbdFE78iDdUrVHqTGJiVrFHLoAx"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAKo52UJRnjkvuOvraymZ2bDiTUEUexIZ50eR2hx47JpOCUW0OMFH443axvl4TeCpPwqTbf0MH3RdkdSqpGOSAAcBmDfOyI5o9dgzWwSIiplNTxO29tUB9YinkduLEe4pXL5FwZ20owYnvcbrlc8t+LNl8Vku3zWWMrng6mf620MVAAAAFQC5KtOLXLxKD3hk3ATXQbnli4wMRwAAAIAy3bLl4X5yk+WYssTadam8ScUdvzVBCXsrfK9o8HNHfdHCAQqYRYYlC7muDATZxhyw72IhZsFzw/Wswr+5K35hElvrH8j3pFXafe+5dp18CP3V+vXTAzVBiiOnA+AG1tvudBRsrh7bhD9oq1LnXqijLRiI9nD0Faem4uGcT7/jqgAAAIBudV2Q2VYl/N+pRv4/JTgsNLtNz3X12dMjeNXwbpM9LJZUVZDq/KsT1vdDTYOy42g/v14ucRU50QyyAxx78prRgyTIfyKFDEiff9i5uok0c/YN0t2w9ayYkYl6xBWVj+q2SiUM6WdqJdb7sltOLGwsjkroqAV0xdBpbiN6ZWvzKA==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEspGa8fuYvtfy2pnBhKV/d/xfmUmvAVUhCJLOlwRURmszRQBW/+GwvhPIT1avptddqTUF2HeA1XKLkbabnxoHI=", "sshfp_dsa"=>"SSHFP 2 1 36d929686c60f981438c3e708f76eaa8aea811ac\nSSHFP 2 2 f509f25d24c474bf0f2b0fae387b1c798174632af84f7e7b064ead1d1e23b144", "sshfp_ecdsa"=>"SSHFP 3 1 263f3632f018d8535aaf8374ff4e8bdfc2eb118a\nSSHFP 3 2 f14b4e61f1569a8181800a082ce91452ce352122bffe4e39314888b280f598a6", "sshfp_rsa"=>"SSHFP 1 1 3f543127df57aceb9be2259918ff9115e507be37\nSSHFP 1 2 90114d6c22d6a759b85f4df1316c567828da41411ae36e8eb09e480bf3cd8ac3", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC8R/CbG0zr75BfoeoCv0GuLcxEIf8Yp5+s2OJKrYRqRmfD9gM6f4J3lVGB/+i5WRiQqJ61Mogstd4CSFmIUhq+opARvDQGxIz1mgV4aHAZDIAGYZ9b1nwS//JWb7nW5mMQqOW3fq59XWxssWjkW6kjJqNSvJtH24kDayxg3jB6Xt2jChz6NLq0t+WmRf24EKCymfnTOdXc4a2sSusAwSb1yl6iHnLpkd5efsUm/ZNCOzHbUtUsnAfDW4MNCUTzq8M/9SpCy2CRid4F29bD1jnJEvyPRrIRAwfPdJTuNZ06pzOWexvS0PcOY6tb0XbdFE78iDdUrVHqTGJiVrFHLoAx", "swapfree"=>"872.00 MiB", "swapfree_mb"=>871.99609375, "swapsize"=>"872.00 MiB", "swapsize_mb"=>871.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>650, "uptime"=>"0:10 hours"}, "timezone"=>"PST", "uptime"=>"0:10 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>650, "uuid"=>"117385F3-E367-4C81-BEE6-78384BAAA1DB", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Debian-7.8-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_RHEL-6.7_spec.rb b/.onceover/spec/classes/role__windows_on_RHEL-6.7_spec.rb new file mode 100644 index 0000000..ee3d586 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_RHEL-6.7_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set RHEL-6.7" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"06/02/2017", "bios_vendor"=>"American Megatrends Inc.", "bios_version"=>"090007", "blockdevice_sda_model"=>"Virtual Disk", "blockdevice_sda_size"=>34359738368, "blockdevice_sda_vendor"=>"Msft", "blockdevice_sdb_model"=>"Virtual Disk", "blockdevice_sdb_size"=>53687091200, "blockdevice_sdb_vendor"=>"Msft", "blockdevice_sr0_model"=>"Virtual CD/ROM", "blockdevice_sr0_size"=>643072, "blockdevice_sr0_vendor"=>"Msft", "blockdevices"=>"sr0,sdb,sda", "boardmanufacturer"=>"Microsoft Corporation", "boardproductname"=>"Virtual Machine", "boardserialnumber"=>"0000-0010-9727-3914-2228-1494-64", "chassisassettag"=>"7783-7084-3265-9085-8269-3286-77", "chassistype"=>"Desktop", "dhcp_servers"=>{"eth0"=>"168.63.129.16", "system"=>"168.63.129.16"}, "disks"=>{"sda"=>{"model"=>"Virtual Disk", "size"=>"32.00 GiB", "size_bytes"=>34359738368, "vendor"=>"Msft"}, "sdb"=>{"model"=>"Virtual Disk", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"Msft"}, "sr0"=>{"model"=>"Virtual CD/ROM", "size"=>"628.00 KiB", "size_bytes"=>643072, "vendor"=>"Msft"}}, "dmi"=>{"bios"=>{"release_date"=>"06/02/2017", "vendor"=>"American Megatrends Inc.", "version"=>"090007"}, "board"=>{"manufacturer"=>"Microsoft Corporation", "product"=>"Virtual Machine", "serial_number"=>"0000-0010-9727-3914-2228-1494-64"}, "chassis"=>{"asset_tag"=>"7783-7084-3265-9085-8269-3286-77", "type"=>"Desktop"}, "manufacturer"=>"Microsoft Corporation", "product"=>{"name"=>"Virtual Machine", "serial_number"=>"0000-0016-4348-2410-5386-3288-39", "uuid"=>"723914E4-94CB-0743-9847-001D218884D8"}}, "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "facterversion"=>"3.12.4", "filesystems"=>"ext4,iso9660,udf", "fips_enabled"=>false, "fqdn"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"rhel6box", "hypervisors"=>{"hyperv"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.0.5", "ipaddress6"=>"fe80::20d:3aff:fe96:ed47", "ipaddress6_eth0"=>"fe80::20d:3aff:fe96:ed47", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.0.5", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"2.6", "kernelrelease"=>"2.6.32-573.45.1.el6.x86_64", "kernelversion"=>"2.6.32", "load_averages"=>{"15m"=>0.06, "1m"=>0.15, "5m"=>0.14}, "lsbdistcodename"=>"Santiago", "lsbdistdescription"=>"Red Hat Enterprise Linux Server release 6.7 (Santiago)", "lsbdistid"=>"RedHatEnterpriseServer", "lsbdistrelease"=>"6.7", "lsbmajdistrelease"=>"6", "lsbminordistrelease"=>"7", "lsbrelease"=>":base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch", "macaddress"=>"00:0d:3a:96:ed:47", "macaddress_eth0"=>"00:0d:3a:96:ed:47", "manufacturer"=>"Microsoft Corporation", "memory"=>{"swap"=>{"available"=>"2.00 GiB", "available_bytes"=>2147479552, "capacity"=>"0%", "total"=>"2.00 GiB", "total_bytes"=>2147479552, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"7.55 GiB", "available_bytes"=>8103010304, "capacity"=>"3.24%", "total"=>"7.80 GiB", "total_bytes"=>8374747136, "used"=>"259.15 MiB", "used_bytes"=>271736832}}, "memoryfree"=>"7.55 GiB", "memoryfree_mb"=>7727.6328125, "memorysize"=>"7.80 GiB", "memorysize_mb"=>7986.78125, "mountpoints"=>{"/"=>{"available"=>"27.90 GiB", "available_bytes"=>29956210688, "capacity"=>"9.68%", "device"=>"/dev/sda2", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"30.89 GiB", "size_bytes"=>33168420864, "used"=>"2.99 GiB", "used_bytes"=>3212210176}, "/boot"=>{"available"=>"402.87 MiB", "available_bytes"=>422435840, "capacity"=>"15.40%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"476.22 MiB", "size_bytes"=>499355648, "used"=>"73.36 MiB", "used_bytes"=>76919808}, "/dev/shm"=>{"available"=>"3.90 GiB", "available_bytes"=>4187373568, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "rootcontext=\"system_u:object_r:tmpfs_t:s0\""], "size"=>"3.90 GiB", "size_bytes"=>4187373568, "used"=>"0 bytes", "used_bytes"=>0}, "/mnt/resource"=>{"available"=>"47.04 GiB", "available_bytes"=>50506543104, "capacity"=>"4.18%", "device"=>"/dev/sdb1", "filesystem"=>"ext4", "options"=>["rw"], "size"=>"49.09 GiB", "size_bytes"=>52708372480, "used"=>"2.05 GiB", "used_bytes"=>2201829376}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"168.63.129.16", "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "fqdn"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "hostname"=>"rhel6box", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.0.5", "netmask"=>"255.255.255.0", "network"=>"10.0.0.0"}], "bindings6"=>[{"address"=>"fe80::20d:3aff:fe96:ed47", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"168.63.129.16", "ip"=>"10.0.0.5", "ip6"=>"fe80::20d:3aff:fe96:ed47", "mac"=>"00:0d:3a:96:ed:47", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.0.5", "ip6"=>"fe80::20d:3aff:fe96:ed47", "mac"=>"00:0d:3a:96:ed:47", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"RedHat", "operatingsystemmajrelease"=>"6", "operatingsystemrelease"=>"6.7", "os"=>{"architecture"=>"x86_64", "distro"=>{"codename"=>"Santiago", "description"=>"Red Hat Enterprise Linux Server release 6.7 (Santiago)", "id"=>"RedHatEnterpriseServer", "release"=>{"full"=>"6.7", "major"=>"6", "minor"=>"7"}, "specification"=>":base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch"}, "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"RedHat", "release"=>{"full"=>"6.7", "major"=>"6", "minor"=>"7"}, "selinux"=>{"config_mode"=>"enforcing", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>"24"}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext4", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"ce2ad98e-bb9f-4603-abce-3db7fd857a6c"}, "/dev/sda2"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"31.51 GiB", "size_bytes"=>33834401792, "uuid"=>"be4cc18d-b110-4914-a6f9-52dc0dc66f68"}, "/dev/sdb1"=>{"filesystem"=>"ext4", "mount"=>"/mnt/resource", "size"=>"50.00 GiB", "size_bytes"=>53684994048, "uuid"=>"aafc7ffe-f0b2-4872-8174-a05f24f6c3d4"}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processor1"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz"], "physicalcount"=>1}, "productname"=>"Virtual Machine", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>true, "selinux_config_mode"=>"enforcing", "selinux_current_mode"=>"enforcing", "selinux_enforced"=>true, "selinux_policyversion"=>"24", "serialnumber"=>"0000-0016-4348-2410-5386-3288-39", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 2e57bf0a973182ca91a3a9da9df2d332e55624ce", "sha256"=>"SSHFP 2 2 e2bbc2a273c58f32c9680300045705133d3efc571bda04798fc67b74463126cd"}, "key"=>"AAAAB3NzaC1kc3MAAACBAL//vXVYQWUZ0FmIEo76fECXpnTXBM5k9XpvJ/hHo+C9AAhkDz8OIPKW/mWjJWkux4nGASNKeHLaya+3Y9vtNZ/MdGw4ivJOR4rCCOfcPzuo3PbBsRE2gKaqc53F6/SwLufGPW2WF8deD6vgTs/OfklbK1evvPBSFAEYrGXlGyJPAAAAFQDY6orVttfPBu50B7OUA5k9ObNLaQAAAIBwX43NbThII85Bv6et0FdeQftDwoLNCTjBI0+DFNqxTVH/LO10fwqcdOMI1jAmmUSe0Dt+PpWQ1ZosK1UKN+hq3jWc84vxyL7l4KYigrvZJoKWvljazNN2unetwLUiPE4X2KL/CmTnXv/N9SeWsSnr86thNVRioQx+znoy8WZHOAAAAIEAkNIj1FhjzCMK4/f2Wg6tJHsW8wRwcGEzAymIj++aBYGPy5BI5Fa6kOcMEyJ+nl+8U3Mps+mJY5EYE/FvsinOrSJzFqowofABd7NgtoRLTGQyohBHP41+RPqXdPGDzPHHvOnuFP/vSKe+sgtJ6j6OqpddLPVybv/7EbylU9n1OpA=", "type"=>"ssh-dss"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3c9465989548635bc20a034f98be3dd917074a7d", "sha256"=>"SSHFP 1 2 22cec87904c8057c2fa6b92e252b95496b678d042fe19d3f58332d67755bbb39"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAuHC1qI3c48QrKuSLHo54im7OIGQyFL/KwoP4jig+LbIdduwmGMlXejZr+E3yb/RKvwQJGkGJ8HCLf8hyz0AmQf2690rXD7M3Ibq8Q3OrpteC46N3JbvnAFockJPLkMt3g/4sWTTmQbMStBAsfhaergAhXHp8x/xmqYnXtYWbKLyY1aFynWiyXx0omJLd3n0zCnDpEDTRlwn/LAwotK/b/lZ58RXJhafA5AbquKYANtg3png+FYX2MAWj75NXwY4h5dQGtMa8dWqWyZYE4Z9bzWFx4A6YAQPwyheKs4GWCU7dCDuiE4z6oZ3BMbfnfO4oX7bnmDtFRoE2GUElBi46Bw==", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAL//vXVYQWUZ0FmIEo76fECXpnTXBM5k9XpvJ/hHo+C9AAhkDz8OIPKW/mWjJWkux4nGASNKeHLaya+3Y9vtNZ/MdGw4ivJOR4rCCOfcPzuo3PbBsRE2gKaqc53F6/SwLufGPW2WF8deD6vgTs/OfklbK1evvPBSFAEYrGXlGyJPAAAAFQDY6orVttfPBu50B7OUA5k9ObNLaQAAAIBwX43NbThII85Bv6et0FdeQftDwoLNCTjBI0+DFNqxTVH/LO10fwqcdOMI1jAmmUSe0Dt+PpWQ1ZosK1UKN+hq3jWc84vxyL7l4KYigrvZJoKWvljazNN2unetwLUiPE4X2KL/CmTnXv/N9SeWsSnr86thNVRioQx+znoy8WZHOAAAAIEAkNIj1FhjzCMK4/f2Wg6tJHsW8wRwcGEzAymIj++aBYGPy5BI5Fa6kOcMEyJ+nl+8U3Mps+mJY5EYE/FvsinOrSJzFqowofABd7NgtoRLTGQyohBHP41+RPqXdPGDzPHHvOnuFP/vSKe+sgtJ6j6OqpddLPVybv/7EbylU9n1OpA=", "sshfp_dsa"=>"SSHFP 2 1 2e57bf0a973182ca91a3a9da9df2d332e55624ce\nSSHFP 2 2 e2bbc2a273c58f32c9680300045705133d3efc571bda04798fc67b74463126cd", "sshfp_rsa"=>"SSHFP 1 1 3c9465989548635bc20a034f98be3dd917074a7d\nSSHFP 1 2 22cec87904c8057c2fa6b92e252b95496b678d042fe19d3f58332d67755bbb39", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEAuHC1qI3c48QrKuSLHo54im7OIGQyFL/KwoP4jig+LbIdduwmGMlXejZr+E3yb/RKvwQJGkGJ8HCLf8hyz0AmQf2690rXD7M3Ibq8Q3OrpteC46N3JbvnAFockJPLkMt3g/4sWTTmQbMStBAsfhaergAhXHp8x/xmqYnXtYWbKLyY1aFynWiyXx0omJLd3n0zCnDpEDTRlwn/LAwotK/b/lZ58RXJhafA5AbquKYANtg3png+FYX2MAWj75NXwY4h5dQGtMa8dWqWyZYE4Z9bzWFx4A6YAQPwyheKs4GWCU7dCDuiE4z6oZ3BMbfnfO4oX7bnmDtFRoE2GUElBi46Bw==", "swapfree"=>"2.00 GiB", "swapfree_mb"=>2047.99609375, "swapsize"=>"2.00 GiB", "swapsize_mb"=>2047.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>239, "uptime"=>"0:03 hours"}, "timezone"=>"EDT", "uptime"=>"0:03 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>239, "uuid"=>"723914E4-94CB-0743-9847-001D218884D8", "virtual"=>"hyperv", "clientcert"=>"rhel6box.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'RHEL-6.7' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_RHEL-7.4_spec.rb b/.onceover/spec/classes/role__windows_on_RHEL-7.4_spec.rb new file mode 100644 index 0000000..c76765f --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_RHEL-7.4_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set RHEL-7.4" do + node_facts = {"aio_agent_version"=>"6.0.9", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.11.0"}, "augeasversion"=>"1.11.0", "bios_release_date"=>"06/02/2017", "bios_vendor"=>"American Megatrends Inc.", "bios_version"=>"090007", "blockdevice_fd0_size"=>4096, "blockdevice_sda_model"=>"Virtual Disk", "blockdevice_sda_size"=>34359738368, "blockdevice_sda_vendor"=>"Msft", "blockdevice_sdb_model"=>"Virtual Disk", "blockdevice_sdb_size"=>53687091200, "blockdevice_sdb_vendor"=>"Msft", "blockdevice_sr0_model"=>"Virtual CD/ROM", "blockdevice_sr0_size"=>643072, "blockdevice_sr0_vendor"=>"Msft", "blockdevices"=>"fd0,sda,sdb,sr0", "boardmanufacturer"=>"Microsoft Corporation", "boardproductname"=>"Virtual Machine", "boardserialnumber"=>"0000-0010-6006-7746-5828-7871-43", "chassisassettag"=>"7783-7084-3265-9085-8269-3286-77", "chassistype"=>"Desktop", "dhcp_servers"=>{"eth0"=>"168.63.129.16", "system"=>"168.63.129.16"}, "disks"=>{"fd0"=>{"size"=>"4.00 KiB", "size_bytes"=>4096}, "sda"=>{"model"=>"Virtual Disk", "size"=>"32.00 GiB", "size_bytes"=>34359738368, "vendor"=>"Msft"}, "sdb"=>{"model"=>"Virtual Disk", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"Msft"}, "sr0"=>{"model"=>"Virtual CD/ROM", "size"=>"628.00 KiB", "size_bytes"=>643072, "vendor"=>"Msft"}}, "dmi"=>{"bios"=>{"release_date"=>"06/02/2017", "vendor"=>"American Megatrends Inc.", "version"=>"090007"}, "board"=>{"manufacturer"=>"Microsoft Corporation", "product"=>"Virtual Machine", "serial_number"=>"0000-0010-6006-7746-5828-7871-43"}, "chassis"=>{"asset_tag"=>"7783-7084-3265-9085-8269-3286-77", "type"=>"Desktop"}, "manufacturer"=>"Microsoft Corporation", "product"=>{"name"=>"Virtual Machine", "serial_number"=>"0000-0017-8302-7891-2115-8198-39", "uuid"=>"33E071F7-CDA2-3F45-931D-2BFD893683C7"}}, "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "facterversion"=>"3.12.4", "filesystems"=>"ext2,ext3,ext4,udf,xfs", "fips_enabled"=>false, "fqdn"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"rhel7test", "hypervisors"=>{"hyperv"=>{}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.0.6", "ipaddress6"=>"fe80::20d:3aff:fe90:5780", "ipaddress6_eth0"=>"fe80::20d:3aff:fe90:5780", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.0.6", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.10", "kernelrelease"=>"3.10.0-693.46.1.el7.x86_64", "kernelversion"=>"3.10.0", "load_averages"=>{"15m"=>0.08, "1m"=>0.32, "5m"=>0.19}, "macaddress"=>"00:0d:3a:90:57:80", "macaddress_eth0"=>"00:0d:3a:90:57:80", "manufacturer"=>"Microsoft Corporation", "memory"=>{"swap"=>{"available"=>"2.00 GiB", "available_bytes"=>2147479552, "capacity"=>"0%", "total"=>"2.00 GiB", "total_bytes"=>2147479552, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"7.42 GiB", "available_bytes"=>7963906048, "capacity"=>"4.67%", "total"=>"7.78 GiB", "total_bytes"=>8353742848, "used"=>"371.78 MiB", "used_bytes"=>389836800}}, "memoryfree"=>"7.42 GiB", "memoryfree_mb"=>7594.97265625, "memorysize"=>"7.78 GiB", "memorysize_mb"=>7966.75, "mountpoints"=>{"/"=>{"available"=>"29.95 GiB", "available_bytes"=>32156790784, "capacity"=>"4.91%", "device"=>"/dev/sda2", "filesystem"=>"xfs", "options"=>["rw", "seclabel", "relatime", "attr2", "inode64", "noquota"], "size"=>"31.50 GiB", "size_bytes"=>33817882624, "used"=>"1.55 GiB", "used_bytes"=>1661091840}, "/boot"=>{"available"=>"393.75 MiB", "available_bytes"=>412880896, "capacity"=>"20.72%", "device"=>"/dev/sda1", "filesystem"=>"xfs", "options"=>["rw", "seclabel", "relatime", "attr2", "inode64", "noquota"], "size"=>"496.66 MiB", "size_bytes"=>520785920, "used"=>"102.91 MiB", "used_bytes"=>107905024}, "/dev/shm"=>{"available"=>"3.89 GiB", "available_bytes"=>4176871424, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"0 bytes", "used_bytes"=>0}, "/mnt/resource"=>{"available"=>"47.04 GiB", "available_bytes"=>50506170368, "capacity"=>"4.18%", "device"=>"/dev/sdb1", "filesystem"=>"ext4", "options"=>["rw", "seclabel", "relatime", "data=ordered"], "size"=>"49.09 GiB", "size_bytes"=>52708212736, "used"=>"2.05 GiB", "used_bytes"=>2202042368}, "/run"=>{"available"=>"3.88 GiB", "available_bytes"=>4168146944, "capacity"=>"0.21%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev", "mode=755"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"8.32 MiB", "used_bytes"=>8724480}, "/run/user/1000"=>{"available"=>"796.68 MiB", "available_bytes"=>835375104, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "seclabel", "nosuid", "nodev", "relatime", "size=815796k", "mode=700", "uid=1000", "gid=1000"], "size"=>"796.68 MiB", "size_bytes"=>835375104, "used"=>"0 bytes", "used_bytes"=>0}, "/sys/fs/cgroup"=>{"available"=>"3.89 GiB", "available_bytes"=>4176871424, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["ro", "seclabel", "nosuid", "nodev", "noexec", "mode=755"], "size"=>"3.89 GiB", "size_bytes"=>4176871424, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.0.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.0.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"168.63.129.16", "domain"=>"104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "fqdn"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "hostname"=>"rhel7test", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.0.6", "netmask"=>"255.255.255.0", "network"=>"10.0.0.0"}], "bindings6"=>[{"address"=>"fe80::20d:3aff:fe90:5780", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"168.63.129.16", "ip"=>"10.0.0.6", "ip6"=>"fe80::20d:3aff:fe90:5780", "mac"=>"00:0d:3a:90:57:80", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.0.6", "ip6"=>"fe80::20d:3aff:fe90:5780", "mac"=>"00:0d:3a:90:57:80", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.0.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"RedHat", "operatingsystemmajrelease"=>"7", "operatingsystemrelease"=>"7.4", "os"=>{"architecture"=>"x86_64", "family"=>"RedHat", "hardware"=>"x86_64", "name"=>"RedHat", "release"=>{"full"=>"7.4", "major"=>"7", "minor"=>"4"}, "selinux"=>{"config_mode"=>"enforcing", "config_policy"=>"targeted", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>"28"}}, "osfamily"=>"RedHat", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"xfs", "mount"=>"/boot", "size"=>"500.00 MiB", "size_bytes"=>524288000, "uuid"=>"b3f65ad5-0571-4ae4-937a-13ef2fda43e3"}, "/dev/sda2"=>{"filesystem"=>"xfs", "mount"=>"/", "size"=>"31.51 GiB", "size_bytes"=>33834401792, "uuid"=>"e9643aa4-b339-43c4-afc5-fcac22af1584"}, "/dev/sdb1"=>{"filesystem"=>"ext4", "mount"=>"/mnt/resource", "size"=>"50.00 GiB", "size_bytes"=>53684994048, "uuid"=>"07908b37-1661-4130-9d5a-e1fdb0a4bdb2"}}, "path"=>"/sbin:/bin:/usr/sbin:/usr/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processor1"=>"Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz", "Intel(R) Xeon(R) CPU E5-2673 v3 @ 2.40GHz"], "physicalcount"=>1}, "productname"=>"Virtual Machine", "puppetversion"=>"6.0.9", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.3"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.3", "selinux"=>true, "selinux_config_mode"=>"enforcing", "selinux_config_policy"=>"targeted", "selinux_current_mode"=>"enforcing", "selinux_enforced"=>true, "selinux_policyversion"=>"28", "serialnumber"=>"0000-0017-8302-7891-2115-8198-39", "ssh"=>{"ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 8b4b534a70cc57bfbebb88a6d980c397fa9dddf7", "sha256"=>"SSHFP 3 2 ab2e72961bc6515482c34e7c8358f929026fc8af979d5a9fa16bd9a25bf4bcb2"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMYggL8slLxRmDxaMceOJ4c8pVKIVA4uUZ4b4jPo7+s8xUHEZkngmqSfHGJpJ4uaDSwO4rNOYVAyCZVK4sDJBuU=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 559ecc22a9b45200bd56dd86455250e203668929", "sha256"=>"SSHFP 4 2 d005f680bbb24dc3c670c16d4cc87a59a871c4bed2763a17141b03d10d480282"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAINswqLjeLueVwG3UgsjhTNQGUg2Y7zayfIXJd783I44K", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 ec0afe862095855d6ca6174cceec173e241afe6a", "sha256"=>"SSHFP 1 2 af54fb6de7ea67ba7e8b93f99af27d7984dc02224aee7de886d269797ae64b11"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDHfGHvDLYXMARhNOK21bV8ZWnwOSxtAcdenfMP/wVlLshAPtqXMzXiDeaFJKfXrKMuiP3aWEbqtERPQnmu+AGfvOekwM6YoHIHCszhnP4ASSpITEuY3ZgVM6qQLgdClBMSdbEoHQ2f6Lem3Uy/7fekA1ofvofp6BtqO5s/Sk3zQhYhDS/TfSw2wlB6J/VrmOimnqhoMq6JLDFJtbYtBFFPqlpf5CZfzOXwAGBnoAuSRO7rtRzXE7caAHMRAdFWlGX1S5zzCJueUyQm3cVvMfqyjbGWJmxDbtIUaDpE+63jLwMidaSu1ZF0Q3mMRvPP0x/g8EZ+EnATl5rPYvVJqcq1", "type"=>"ssh-rsa"}}, "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMYggL8slLxRmDxaMceOJ4c8pVKIVA4uUZ4b4jPo7+s8xUHEZkngmqSfHGJpJ4uaDSwO4rNOYVAyCZVK4sDJBuU=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAINswqLjeLueVwG3UgsjhTNQGUg2Y7zayfIXJd783I44K", "sshfp_ecdsa"=>"SSHFP 3 1 8b4b534a70cc57bfbebb88a6d980c397fa9dddf7\nSSHFP 3 2 ab2e72961bc6515482c34e7c8358f929026fc8af979d5a9fa16bd9a25bf4bcb2", "sshfp_ed25519"=>"SSHFP 4 1 559ecc22a9b45200bd56dd86455250e203668929\nSSHFP 4 2 d005f680bbb24dc3c670c16d4cc87a59a871c4bed2763a17141b03d10d480282", "sshfp_rsa"=>"SSHFP 1 1 ec0afe862095855d6ca6174cceec173e241afe6a\nSSHFP 1 2 af54fb6de7ea67ba7e8b93f99af27d7984dc02224aee7de886d269797ae64b11", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDHfGHvDLYXMARhNOK21bV8ZWnwOSxtAcdenfMP/wVlLshAPtqXMzXiDeaFJKfXrKMuiP3aWEbqtERPQnmu+AGfvOekwM6YoHIHCszhnP4ASSpITEuY3ZgVM6qQLgdClBMSdbEoHQ2f6Lem3Uy/7fekA1ofvofp6BtqO5s/Sk3zQhYhDS/TfSw2wlB6J/VrmOimnqhoMq6JLDFJtbYtBFFPqlpf5CZfzOXwAGBnoAuSRO7rtRzXE7caAHMRAdFWlGX1S5zzCJueUyQm3cVvMfqyjbGWJmxDbtIUaDpE+63jLwMidaSu1ZF0Q3mMRvPP0x/g8EZ+EnATl5rPYvVJqcq1", "swapfree"=>"2.00 GiB", "swapfree_mb"=>2047.99609375, "swapsize"=>"2.00 GiB", "swapsize_mb"=>2047.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>215, "uptime"=>"0:03 hours"}, "timezone"=>"UTC", "uptime"=>"0:03 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>215, "uuid"=>"33E071F7-CDA2-3F45-931D-2BFD893683C7", "virtual"=>"hyperv", "clientcert"=>"rhel7test.104sjco4dnxe3mx0wbzfwnbl1h.gx.internal.cloudapp.net", "clientversion"=>"6.0.9", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'RHEL-7.4' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_SLES-11.3-64_spec.rb b/.onceover/spec/classes/role__windows_on_SLES-11.3-64_spec.rb new file mode 100644 index 0000000..2405603 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_SLES-11.3-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set SLES-11.3-64" do + node_facts = {"aio_agent_version"=>"1.8.3", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>53687091200, "blockdevice_sda_vendor"=>"VBOX", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"8B82075A-B071-4035-A96A-3B5D08F6841D"}}, "domain"=>"lan.asio", "facterversion"=>"3.5.1", "filesystems"=>"ext3,iso9660,squashfs", "fqdn"=>"sles11-sp3.lan.asio", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"sles11-sp3", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::216:3eff:fe48:617f", "ipaddress6_eth0"=>"fe80::216:3eff:fe48:617f", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.0", "kernelrelease"=>"3.0.101-0.47.67-default", "kernelversion"=>"3.0.101", "load_averages"=>{"15m"=>0.06, "1m"=>0.18, "5m"=>0.08}, "macaddress"=>"00:16:3e:48:61:7f", "macaddress_eth0"=>"00:16:3e:48:61:7f", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"354.30 MiB", "available_bytes"=>371511296, "capacity"=>"27.78%", "total"=>"490.61 MiB", "total_bytes"=>514437120, "used"=>"136.30 MiB", "used_bytes"=>142925824}}, "memoryfree"=>"354.30 MiB", "memoryfree_mb"=>354.30078125, "memorysize"=>"490.61 MiB", "memorysize_mb"=>490.60546875, "mountpoints"=>{"/"=>{"available"=>"47.14 GiB", "available_bytes"=>50611761152, "capacity"=>"4.22%", "device"=>"/dev/sda1", "filesystem"=>"ext3", "options"=>["rw", "relatime", "errors=continue", "barrier=1", "data=ordered"], "size"=>"49.21 GiB", "size_bytes"=>52843638784, "used"=>"2.08 GiB", "used_bytes"=>2231877632}, "/dev/shm"=>{"available"=>"245.29 MiB", "available_bytes"=>257208320, "capacity"=>"0.00%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "relatime"], "size"=>"245.30 MiB", "size_bytes"=>257216512, "used"=>"8.00 KiB", "used_bytes"=>8192}}, "mtu_eth0"=>1500, "mtu_lo"=>16436, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"domain"=>"lan.asio", "fqdn"=>"sles11-sp3.lan.asio", "hostname"=>"sles11-sp3", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::216:3eff:fe48:617f", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe48:617f", "mac"=>"00:16:3e:48:61:7f", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, {"address"=>"127.0.0.2", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>16436, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe48:617f", "mac"=>"00:16:3e:48:61:7f", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"SLES", "operatingsystemmajrelease"=>"11", "operatingsystemrelease"=>"11.3", "os"=>{"architecture"=>"x86_64", "family"=>"Suse", "hardware"=>"x86_64", "name"=>"SLES", "release"=>{"full"=>"11.3", "major"=>"11", "minor"=>"3"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Suse", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext3", "mount"=>"/", "size"=>"50.00 GiB", "size_bytes"=>53686042624, "uuid"=>"586adc21-9cfc-4e12-93e6-c711ab2400b1"}}, "path"=>"/usr/bin:/bin:/usr/sbin:/sbin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.8.2", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 2f39a5ddd25d30676bceb1b99faec8330cb80cd5", "sha256"=>"SSHFP 2 2 d17b59f49908df6bd337918a31a4e38f8489a0c46ada06963cb67ab3a4bdfb11"}, "key"=>"AAAAB3NzaC1kc3MAAACBALvEn/P3Kfg/yFWplaqFsrUOk/Kh9aOZTNNCoJX7lsSQkWpLDkjz03IZZ1pUsykZp6HUhzfW1ZCOKme5503MAsflB78fjgsfGaVL2IcWOvPhurC8SXGivanS5+rL3CFqja/+nMJBPFg8oEyjJei6RJZCQtlEFSEJziKMVI368fxLAAAAFQCC8c+IrxPZc4zVe5EF6qsPnZtMiwAAAIEApfv1xS6ECWq1f8J43BXFdiRszBXQecgdPtf6STvabnYdLKScAPyu3JdosrPswlZWEXLz+srkqqai6xISeSxLKrlY570GNVPmgnBFmoz+iJRi6kakroNe5xjGT45aTyZ16cyg9LFHFLL3KadlzZXu+9XwS9kv09SFlvH6+9+XNGMAAACBALLbpqIZKISARdnFviWOWzFbvYzZHiO3ddAYnXVCGfW1ywmGDqc5kUNTZsBFNYVA56YcaHR/kwFHjOij3SJnvy6VxSG9sSZ4wex/FGBmTUmklelZQsywITGps3MWxiyO3TGfIEXJlqgyVxXZhXnIshN//NCCPbq2X7X7VyTyGjhI"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 7fc0ef4bb2d2d14db8fc0bc0b1b97a9d83c6dc17", "sha256"=>"SSHFP 3 2 a0b01ecd2461ed45e0b51ebec48f79957a9710c3ec441cde0e6c4e5d8939c15e"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK9w38lDcCpjkGqrTdhhsZCVzS2XKgC6Q9fTvkZn1RLhvvWjDBHyFg0KyTAqfepMNNjdgHqEBFumKc3w+L5xLuY="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 20cdd84628cfad3edff17edf9ce3c2f7f1756f41", "sha256"=>"SSHFP 1 2 f48e7e96ed7708c6225367ada2a29309f159a12443eeaed6c86efee0660f3f78"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC2nt/gDBidRKDNUmDDThXA+mMWQxq83odOXzx4/3NHMMfIfu3nuvcCaTI+Tp1EiNcbb6Q2ummoGdJpCXT6/W4cjfluuun1rBDeQzzFfthdBAasNKbSCy+cYKwda0zfP9X4Az0SqsbHM5DekNS0w0stCB+L5qqlhaKyunyid2PaeLfSalP5RbcAxGSy5ijLNcAZqbuNOEiq1v0IIySCPplvzvEv//Ht8PhPhXQiRRtKMeq5pAgqjLeUq5zRlXIVqTYfZPfa5tuteaZNxpRxbDvog7h57LWsHKZSjc8ND2ocoehIymNeL4kpFkLg6TMm6BEEOEks5Kue/SXdYUbHkRKN"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBALvEn/P3Kfg/yFWplaqFsrUOk/Kh9aOZTNNCoJX7lsSQkWpLDkjz03IZZ1pUsykZp6HUhzfW1ZCOKme5503MAsflB78fjgsfGaVL2IcWOvPhurC8SXGivanS5+rL3CFqja/+nMJBPFg8oEyjJei6RJZCQtlEFSEJziKMVI368fxLAAAAFQCC8c+IrxPZc4zVe5EF6qsPnZtMiwAAAIEApfv1xS6ECWq1f8J43BXFdiRszBXQecgdPtf6STvabnYdLKScAPyu3JdosrPswlZWEXLz+srkqqai6xISeSxLKrlY570GNVPmgnBFmoz+iJRi6kakroNe5xjGT45aTyZ16cyg9LFHFLL3KadlzZXu+9XwS9kv09SFlvH6+9+XNGMAAACBALLbpqIZKISARdnFviWOWzFbvYzZHiO3ddAYnXVCGfW1ywmGDqc5kUNTZsBFNYVA56YcaHR/kwFHjOij3SJnvy6VxSG9sSZ4wex/FGBmTUmklelZQsywITGps3MWxiyO3TGfIEXJlqgyVxXZhXnIshN//NCCPbq2X7X7VyTyGjhI", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK9w38lDcCpjkGqrTdhhsZCVzS2XKgC6Q9fTvkZn1RLhvvWjDBHyFg0KyTAqfepMNNjdgHqEBFumKc3w+L5xLuY=", "sshfp_dsa"=>"SSHFP 2 1 2f39a5ddd25d30676bceb1b99faec8330cb80cd5\nSSHFP 2 2 d17b59f49908df6bd337918a31a4e38f8489a0c46ada06963cb67ab3a4bdfb11", "sshfp_ecdsa"=>"SSHFP 3 1 7fc0ef4bb2d2d14db8fc0bc0b1b97a9d83c6dc17\nSSHFP 3 2 a0b01ecd2461ed45e0b51ebec48f79957a9710c3ec441cde0e6c4e5d8939c15e", "sshfp_rsa"=>"SSHFP 1 1 20cdd84628cfad3edff17edf9ce3c2f7f1756f41\nSSHFP 1 2 f48e7e96ed7708c6225367ada2a29309f159a12443eeaed6c86efee0660f3f78", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC2nt/gDBidRKDNUmDDThXA+mMWQxq83odOXzx4/3NHMMfIfu3nuvcCaTI+Tp1EiNcbb6Q2ummoGdJpCXT6/W4cjfluuun1rBDeQzzFfthdBAasNKbSCy+cYKwda0zfP9X4Az0SqsbHM5DekNS0w0stCB+L5qqlhaKyunyid2PaeLfSalP5RbcAxGSy5ijLNcAZqbuNOEiq1v0IIySCPplvzvEv//Ht8PhPhXQiRRtKMeq5pAgqjLeUq5zRlXIVqTYfZPfa5tuteaZNxpRxbDvog7h57LWsHKZSjc8ND2ocoehIymNeL4kpFkLg6TMm6BEEOEks5Kue/SXdYUbHkRKN", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>524, "uptime"=>"0:08 hours"}, "timezone"=>"UTC", "uptime"=>"0:08 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>524, "uuid"=>"8B82075A-B071-4035-A96A-3B5D08F6841D", "virtual"=>"virtualbox", "clientcert"=>"sles11-sp3.lan.asio", "clientversion"=>"4.8.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'SLES-11.3-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_SLES-12.1-64_spec.rb b/.onceover/spec/classes/role__windows_on_SLES-12.1-64_spec.rb new file mode 100644 index 0000000..3d0cb2d --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_SLES-12.1-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set SLES-12.1-64" do + node_facts = {"aio_agent_build"=>"1.7.2", "aio_agent_version"=>"1.7.2", "architecture"=>"x86_64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>53687091200, "blockdevice_sda_vendor"=>"VBOX", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"50.00 GiB", "size_bytes"=>53687091200, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"7733628A-3D10-4F0B-B6E2-DB6D0CBB8F7E"}}, "domain"=>"openstack.site", "facterversion"=>"3.4.2", "filesystems"=>"ext2,ext3,ext4", "fqdn"=>"sles12-sp1.openstack.site", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"sles12-sp1", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::216:3eff:fe72:f121", "ipaddress6_eth0"=>"fe80::216:3eff:fe72:f121", "ipaddress6_eth1"=>"fe80::a00:27ff:fe60:90e", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"192.168.33.15", "ipaddress_lo"=>"127.0.0.1", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.12", "kernelrelease"=>"3.12.62-60.64.8-default", "kernelversion"=>"3.12.62", "load_averages"=>{"15m"=>0.05, "1m"=>0.0, "5m"=>0.02}, "macaddress"=>"00:16:3e:72:f1:21", "macaddress_eth0"=>"00:16:3e:72:f1:21", "macaddress_eth1"=>"08:00:27:60:09:0e", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"1.78 GiB", "available_bytes"=>1907027968, "capacity"=>"68.84%", "total"=>"5.70 GiB", "total_bytes"=>6119927808, "used"=>"3.92 GiB", "used_bytes"=>4212899840}}, "memoryfree"=>"1.78 GiB", "memoryfree_mb"=>1818.68359375, "memorysize"=>"5.70 GiB", "memorysize_mb"=>5836.41796875, "mountpoints"=>{"/"=>{"available"=>"45.34 GiB", "available_bytes"=>48682504192, "capacity"=>"7.64%", "device"=>"/dev/sda1", "filesystem"=>"ext3", "options"=>["rw", "relatime", "data=ordered"], "size"=>"49.09 GiB", "size_bytes"=>52709421056, "used"=>"3.75 GiB", "used_bytes"=>4026916864}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"192.168.33.0", "network_lo"=>"127.0.0.0", "networking"=>{"domain"=>"openstack.site", "fqdn"=>"sles12-sp1.openstack.site", "hostname"=>"sles12-sp1", "interfaces"=>{"eth0"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::216:3eff:fe72:f121", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe72:f121", "mac"=>"00:16:3e:72:f1:21", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"bindings"=>[{"address"=>"192.168.33.15", "netmask"=>"255.255.255.0", "network"=>"192.168.33.0"}], "bindings6"=>[{"address"=>"fe80::a00:27ff:fe60:90e", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "ip"=>"192.168.33.15", "ip6"=>"fe80::a00:27ff:fe60:90e", "mac"=>"08:00:27:60:09:0e", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"192.168.33.0", "network6"=>"fe80::"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::216:3eff:fe72:f121", "mac"=>"00:16:3e:72:f1:21", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"eth0"}, "operatingsystem"=>"SLES", "operatingsystemmajrelease"=>"12", "operatingsystemrelease"=>"12.1", "os"=>{"architecture"=>"x86_64", "family"=>"Suse", "hardware"=>"x86_64", "name"=>"SLES", "release"=>{"full"=>"12.1", "major"=>"12", "minor"=>"1"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Suse", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext3", "label"=>"ROOT", "mount"=>"/", "partuuid"=>"3d2745bf-01", "size"=>"50.00 GiB", "size_bytes"=>53686042624, "uuid"=>"dcf2494f-2b02-466b-aa2c-9e7c01bdbdd7"}}, "path"=>"/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin:/usr/games", "pe_build"=>"2016.4.3", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "pe_server_version"=>"2016.4.3", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"sles-12-x86_64", "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor2"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor3"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>4, "processors"=>{"count"=>4, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppetversion"=>"4.7.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.9"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.9", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 4c29775fbdf4c3c3899d036510ced3a377023cd1", "sha256"=>"SSHFP 2 2 6b21d41b5df2640a9b710884c10d8f87dbc2944e639a5e46273bfb4aa76522c5"}, "key"=>"AAAAB3NzaC1kc3MAAACBAK+haL65A0ALR7nw0X5re26C23ncFgxvedmnE2iUbjbeM7F//EBeA4Gn3mjbtPkTVDu61Tfl45tCHKHa36l2w5rC2mt71yMGJQoHeDtA4ddO2uA+B19fmkfhAICtjrvYc8vj5jwwcVmmP0FUasIunM0/9uAhZ+97E7+I91bPhp/RAAAAFQDNpq248quBrulsV6qkoYv00XODZwAAAIBAe5mwq4iS3DH5ABJSJoGGrWZBrY2ZPYcpzqStDN12I+lNL0HqoZF3dRdXUiiAl0qGpO9vtaTtrJzQuahTpB0k/HkMP042Kqa/hhkobuPlvu5Xuuj5cNzLuditXn5ScKs8BXaoh6mvOAAIS1jY9BZ+dGxZfygvjjtcAWHWCVAxoQAAAIACBpgms8yMLnEd5qY7kF5hqO7DNJ6Q0xyFOB5zWKhj1nbCUmxKBiF2XjXZGZc+6LD0Hg1fs1EiW9ed9g7F7/7LLtlgzeJPIg8vuqsRvCj3JkwFDmGHfA2Z0EYU4sn8dmw1RLeoWY0fCaPM+x00hSa36VMMXAHEd2MCUPYTTiMmaQ=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 d1c37b4313689a7afe74eead74ea53699234505b", "sha256"=>"SSHFP 3 2 60246f4a32257320dc990997d7373eede1667aaead6ea95baa32fa07fec824cd"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGnNFUni4th60YWWMAHbe9fByciHV0mswnuc2CzGSzziVAUbsSKmJktAHNmcYKssztsMpBPsPMLM9j8ceD59jmI="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 37cbc33c742e357446b82735b529cd0d6dd5c459", "sha256"=>"SSHFP 4 2 2228771c3a8436da3436b331f293b2394f8e24f12cf6590d75d5077b37e7cacf"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIB9nMKgF7UeoNyuUwz3ifm0M4QjlEjGNSLxvFm6xXVhx"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 d1ccfdf4e0afc38d26ab2d3b44f37c1ec7eefe51", "sha256"=>"SSHFP 1 2 f492d7edf7cc14c5e8472aa10aa6e7cf049032f9a52584e07c10101af807fe38"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDjeTmNl1i5lo2aP6quMk+/thACsrOK50twMge6KfZ6J1Q6ncsjjpZNA745pgvUJuQx2STl2vCMT3aTbGIrw+FXGNbfRWRa9pUUTJE82mgcPnYsMqWo+JQwuJOjhdaDlV8r7U197ZIsOM+eo2CBYYUP/ZAFbGzFL4Wb29hld1MiHSACcRC7HozgAxPCUyOZ0mcckofFIW/XO289UmEJj27RSnM3YyaOXxg+xv7tjxjLaq7j4HlFR5HZt4OYdzoHMTSwexcNtyM8TyNu9OKSGSYuQNWxghltrElP+Hg1Zgw8Bxhyf+a9KqF9/Q7Z0zWvwoJE3II9kHij2M73eiadZPj/"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAK+haL65A0ALR7nw0X5re26C23ncFgxvedmnE2iUbjbeM7F//EBeA4Gn3mjbtPkTVDu61Tfl45tCHKHa36l2w5rC2mt71yMGJQoHeDtA4ddO2uA+B19fmkfhAICtjrvYc8vj5jwwcVmmP0FUasIunM0/9uAhZ+97E7+I91bPhp/RAAAAFQDNpq248quBrulsV6qkoYv00XODZwAAAIBAe5mwq4iS3DH5ABJSJoGGrWZBrY2ZPYcpzqStDN12I+lNL0HqoZF3dRdXUiiAl0qGpO9vtaTtrJzQuahTpB0k/HkMP042Kqa/hhkobuPlvu5Xuuj5cNzLuditXn5ScKs8BXaoh6mvOAAIS1jY9BZ+dGxZfygvjjtcAWHWCVAxoQAAAIACBpgms8yMLnEd5qY7kF5hqO7DNJ6Q0xyFOB5zWKhj1nbCUmxKBiF2XjXZGZc+6LD0Hg1fs1EiW9ed9g7F7/7LLtlgzeJPIg8vuqsRvCj3JkwFDmGHfA2Z0EYU4sn8dmw1RLeoWY0fCaPM+x00hSa36VMMXAHEd2MCUPYTTiMmaQ==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGnNFUni4th60YWWMAHbe9fByciHV0mswnuc2CzGSzziVAUbsSKmJktAHNmcYKssztsMpBPsPMLM9j8ceD59jmI=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIB9nMKgF7UeoNyuUwz3ifm0M4QjlEjGNSLxvFm6xXVhx", "sshfp_dsa"=>"SSHFP 2 1 4c29775fbdf4c3c3899d036510ced3a377023cd1\nSSHFP 2 2 6b21d41b5df2640a9b710884c10d8f87dbc2944e639a5e46273bfb4aa76522c5", "sshfp_ecdsa"=>"SSHFP 3 1 d1c37b4313689a7afe74eead74ea53699234505b\nSSHFP 3 2 60246f4a32257320dc990997d7373eede1667aaead6ea95baa32fa07fec824cd", "sshfp_ed25519"=>"SSHFP 4 1 37cbc33c742e357446b82735b529cd0d6dd5c459\nSSHFP 4 2 2228771c3a8436da3436b331f293b2394f8e24f12cf6590d75d5077b37e7cacf", "sshfp_rsa"=>"SSHFP 1 1 d1ccfdf4e0afc38d26ab2d3b44f37c1ec7eefe51\nSSHFP 1 2 f492d7edf7cc14c5e8472aa10aa6e7cf049032f9a52584e07c10101af807fe38", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDjeTmNl1i5lo2aP6quMk+/thACsrOK50twMge6KfZ6J1Q6ncsjjpZNA745pgvUJuQx2STl2vCMT3aTbGIrw+FXGNbfRWRa9pUUTJE82mgcPnYsMqWo+JQwuJOjhdaDlV8r7U197ZIsOM+eo2CBYYUP/ZAFbGzFL4Wb29hld1MiHSACcRC7HozgAxPCUyOZ0mcckofFIW/XO289UmEJj27RSnM3YyaOXxg+xv7tjxjLaq7j4HlFR5HZt4OYdzoHMTSwexcNtyM8TyNu9OKSGSYuQNWxghltrElP+Hg1Zgw8Bxhyf+a9KqF9/Q7Z0zWvwoJE3II9kHij2M73eiadZPj/", "staging_http_get"=>"curl", "system_uptime"=>{"days"=>1, "hours"=>41, "seconds"=>148058, "uptime"=>"1 day"}, "timezone"=>"UTC", "uptime"=>"1 day", "uptime_days"=>1, "uptime_hours"=>41, "uptime_seconds"=>148058, "uuid"=>"7733628A-3D10-4F0B-B6E2-DB6D0CBB8F7E", "virtual"=>"virtualbox", "clientcert"=>"sles12-sp1.openstack.site", "clientversion"=>"4.7.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'SLES-12.1-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Ubuntu-12.04-32_spec.rb b/.onceover/spec/classes/role__windows_on_Ubuntu-12.04-32_spec.rb new file mode 100644 index 0000000..80c9dd7 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Ubuntu-12.04-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Ubuntu-12.04-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"3A7F9D94-3B88-45AB-99A4-57745C934A08"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe8d:6188", "ipaddress6_eth0"=>"fe80::a00:27ff:fe8d:6188", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.13", "kernelrelease"=>"3.13.0-32-generic", "kernelversion"=>"3.13.0", "load_averages"=>{"15m"=>0.03, "1m"=>0.23, "5m"=>0.09}, "lsbdistcodename"=>"precise", "lsbdistdescription"=>"Ubuntu 12.04.5 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"12.04", "lsbmajdistrelease"=>"12.04", "macaddress"=>"08:00:27:8d:61:88", "macaddress_eth0"=>"08:00:27:8d:61:88", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"407.73 MiB", "available_bytes"=>427540480, "capacity"=>"17.64%", "total"=>"495.05 MiB", "total_bytes"=>519102464, "used"=>"87.32 MiB", "used_bytes"=>91561984}}, "memoryfree"=>"407.73 MiB", "memoryfree_mb"=>407.734375, "memorysize"=>"495.05 MiB", "memorysize_mb"=>495.0546875, "mountpoints"=>{"/"=>{"available"=>"1.81 GiB", "available_bytes"=>1940865024, "capacity"=>"36.14%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"2.83 GiB", "size_bytes"=>-1255694336, "used"=>"1.02 GiB", "used_bytes"=>1098407936}, "/boot"=>{"available"=>"203.56 MiB", "available_bytes"=>213447680, "capacity"=>"13.50%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"31.76 MiB", "used_bytes"=>33307648}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe8d:6188", "mac"=>"08:00:27:8d:61:88", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe8d:6188", "mac"=>"08:00:27:8d:61:88", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"12.04", "operatingsystemrelease"=>"12.04", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"precise", "description"=>"Ubuntu 12.04.5 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"3fff8935-622f-4e9a-944f-38108c71af34"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"185fbdf2-880c-4aa6-ada8-8dade7aa3fc6"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"31f2e84f-0e99-4531-9ecb-2b151fc6ce31"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"S8Vl05-TIfO-rk5Y-gIDu-TIwj-L8Ub-3OjoJb"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 9cb1f6d6a1730dcc9e02dc62be68874f11e5dd6b", "sha256"=>"SSHFP 2 2 6e391d8fc3ab5c57147ba946aafe236972ec89cca3dfb2937f6a874524f1bce0"}, "key"=>"AAAAB3NzaC1kc3MAAACBAOBWnH+OxYCpvG4X6e4AFQNUreLJ3AvvgUUyIirhJ+zhg3IgAoe0LGc1i8t1HPBrmnZDe0jLJJVzQU42jrfQZHlZSlydnkfjoa/Z8R2ruMa+972wODUvSTAtIkuJeYKTMdNQVJCTkiy6DwU2K8UT32uVb6nN/oLHLroM7rQGaZuXAAAAFQC+aaKJlj/9kRyIiQjmYWrMJiry5wAAAIB9Q1hRlr7ZIlDSpmXPk1cVh7e4s0B89NAd4M/49iM5ZXj4FyMtFvsO+tWlRrNhgVJYTK/2agwf9FhBVD0nTqqAKOnisjmRv6QD8jADoVdI7sxxqGRs+HneMjfSXe2sCD8LFQENB3+uY1fIgfvVqAgCRR7QOFA7Xm0xh/iiu2H6+AAAAIEAsnZ59SDy2ISkiaZu9s6TXnt+WrBqtkAqpLMr7Sy+lsV1zWkoEgHKPUrBW1Yfc4tByXCqJk/YrYbkPrVN7ng5E30QACV//YmCaBD76Jm+VDjHFGgaGzh18PhuR/vnhByQ+b+MAE22IE3kqMakxnLpxowWUVVbm0CTG3lFMGvGFnA="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 75fd3452191ff0c693a6e76d75a9a617230e8b21", "sha256"=>"SSHFP 3 2 0ae893992e316dcbed9e14b009a8f00df48a352377da435a4d75a97f7c8e6668"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF5AGWyOlygr7/VMxZepE9A7W5UxuQY9NqxokurV4IR0hWR3K3qZ+ro8ai55HE07W16EGHt5FPLi3ocnzr0U1R0="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 198e8faaf2a7b3c5d0d8071a5fb89d3673baa48f", "sha256"=>"SSHFP 1 2 3c8ba605220954898d29864d617d8e1330d5ac3df2bd73e718fb2ab97098f9ee"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDGzlnmGodUPjwICVkKWpSoIG47EJLT2SYCsCMFjHLUbD6mgXe2vAhgTSwaxxL8lEecc9lZRi1VCG/CaUZFCwirSysADa5pewIA6fFfYNiBqwg56MOEC2cyeQePshi73FRkvPpwQsisAhieW8XCA+93fDPbaQaQpDpc8lIeraVFRkhxSZ2MD2j+4/gMvTH+oIHFa12GidUoRpEryt6qXFrV0dg+L5OKvIGDntssFnBE+zG3lhlFcdm3CwQp34MaVolaDtkCt5klO2GaVLHxtcyG+8wM54urHuW7HK3jxaZwKBeAQJ00rQsuC2dRljOZ9RFFCUWPf/XuCP9nNXEu1hEN"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAOBWnH+OxYCpvG4X6e4AFQNUreLJ3AvvgUUyIirhJ+zhg3IgAoe0LGc1i8t1HPBrmnZDe0jLJJVzQU42jrfQZHlZSlydnkfjoa/Z8R2ruMa+972wODUvSTAtIkuJeYKTMdNQVJCTkiy6DwU2K8UT32uVb6nN/oLHLroM7rQGaZuXAAAAFQC+aaKJlj/9kRyIiQjmYWrMJiry5wAAAIB9Q1hRlr7ZIlDSpmXPk1cVh7e4s0B89NAd4M/49iM5ZXj4FyMtFvsO+tWlRrNhgVJYTK/2agwf9FhBVD0nTqqAKOnisjmRv6QD8jADoVdI7sxxqGRs+HneMjfSXe2sCD8LFQENB3+uY1fIgfvVqAgCRR7QOFA7Xm0xh/iiu2H6+AAAAIEAsnZ59SDy2ISkiaZu9s6TXnt+WrBqtkAqpLMr7Sy+lsV1zWkoEgHKPUrBW1Yfc4tByXCqJk/YrYbkPrVN7ng5E30QACV//YmCaBD76Jm+VDjHFGgaGzh18PhuR/vnhByQ+b+MAE22IE3kqMakxnLpxowWUVVbm0CTG3lFMGvGFnA=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF5AGWyOlygr7/VMxZepE9A7W5UxuQY9NqxokurV4IR0hWR3K3qZ+ro8ai55HE07W16EGHt5FPLi3ocnzr0U1R0=", "sshfp_dsa"=>"SSHFP 2 1 9cb1f6d6a1730dcc9e02dc62be68874f11e5dd6b\nSSHFP 2 2 6e391d8fc3ab5c57147ba946aafe236972ec89cca3dfb2937f6a874524f1bce0", "sshfp_ecdsa"=>"SSHFP 3 1 75fd3452191ff0c693a6e76d75a9a617230e8b21\nSSHFP 3 2 0ae893992e316dcbed9e14b009a8f00df48a352377da435a4d75a97f7c8e6668", "sshfp_rsa"=>"SSHFP 1 1 198e8faaf2a7b3c5d0d8071a5fb89d3673baa48f\nSSHFP 1 2 3c8ba605220954898d29864d617d8e1330d5ac3df2bd73e718fb2ab97098f9ee", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDGzlnmGodUPjwICVkKWpSoIG47EJLT2SYCsCMFjHLUbD6mgXe2vAhgTSwaxxL8lEecc9lZRi1VCG/CaUZFCwirSysADa5pewIA6fFfYNiBqwg56MOEC2cyeQePshi73FRkvPpwQsisAhieW8XCA+93fDPbaQaQpDpc8lIeraVFRkhxSZ2MD2j+4/gMvTH+oIHFa12GidUoRpEryt6qXFrV0dg+L5OKvIGDntssFnBE+zG3lhlFcdm3CwQp34MaVolaDtkCt5klO2GaVLHxtcyG+8wM54urHuW7HK3jxaZwKBeAQJ00rQsuC2dRljOZ9RFFCUWPf/XuCP9nNXEu1hEN", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>60, "uptime"=>"0:01 hours"}, "timezone"=>"PST", "uptime"=>"0:01 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>60, "uuid"=>"3A7F9D94-3B88-45AB-99A4-57745C934A08", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Ubuntu-12.04-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Ubuntu-12.04-64_spec.rb b/.onceover/spec/classes/role__windows_on_Ubuntu-12.04-64_spec.rb new file mode 100644 index 0000000..0b06e76 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Ubuntu-12.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Ubuntu-12.04-64" do + node_facts = {"architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"47C86ACE-B882-46AD-8D6D-4260BF97C669"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe5f:df27", "ipaddress6_eth0"=>"fe80::a00:27ff:fe5f:df27", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.13", "kernelrelease"=>"3.13.0-32-generic", "kernelversion"=>"3.13.0", "load_averages"=>{"15m"=>0.01, "1m"=>0.0, "5m"=>0.01}, "lsbdistcodename"=>"precise", "lsbdistdescription"=>"Ubuntu 12.04.5 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"12.04", "lsbmajdistrelease"=>"12.04", "macaddress"=>"08:00:27:5f:df:27", "macaddress_eth0"=>"08:00:27:5f:df:27", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"350.97 MiB", "available_bytes"=>368017408, "capacity"=>"28.33%", "total"=>"489.72 MiB", "total_bytes"=>513507328, "used"=>"138.75 MiB", "used_bytes"=>145489920}}, "memoryfree"=>"350.97 MiB", "memoryfree_mb"=>350.96875, "memorysize"=>"489.72 MiB", "memorysize_mb"=>489.71875, "mountpoints"=>{"/"=>{"available"=>"17.68 GiB", "available_bytes"=>18981703680, "capacity"=>"6.12%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"18.83 GiB", "size_bytes"=>20219142144, "used"=>"1.15 GiB", "used_bytes"=>1237438464}, "/boot"=>{"available"=>"202.55 MiB", "available_bytes"=>212389888, "capacity"=>"13.93%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"32.77 MiB", "used_bytes"=>34365440}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe5f:df27", "mac"=>"08:00:27:5f:df:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe5f:df27", "mac"=>"08:00:27:5f:df:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"12.04", "operatingsystemrelease"=>"12.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"precise", "description"=>"Ubuntu 12.04.5 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"12.04", "major"=>"12.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"96092a10-847b-4a55-b5dc-87d2cc56ee5e"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"50695407-158d-4b0e-975a-b575fa5f5359"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"829f03e2-ceb8-4f8d-9f32-e1336456f719"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"P6GCnD-xaHj-APeE-m1Em-fr5a-z3Kk-iFVziN"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 59bc746d9ab774867521d076613863790a696630", "sha256"=>"SSHFP 2 2 8d5bdb7662b7b938beb6517c7d001cc68136d3f1ded5b240cbee1a89dad2d79f"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPHTvj71+XfT0li+zpLYPbY5wKyO36Mij5D4Otl1RMIbZK68No9pDhiPdxMgZrLSq9bHLYs+cxqtSrpZgnNLvT44P+BPZbbQE4HrfcYuv0o2ifa0bqzlyHYl+BT6qSmx8zgBh3iImuhAJhLPnGCzgQ2FkfjAiHKHT1LG4h2knvtTAAAAFQDHa6q8yJo47htrK8LG0D3iAfTT2QAAAIEAtFgO4Qw6K2fQnLSfxL7h98lRopA4tokzKinUjJAoQ86eu9oR4mHDh3FRQlaHJX52RT1GABctV5MyG9LJxUuJLdeyIA7bmJrIPi0TROlHCd3NaS+0r6d1BzmMy+v7cVZsDK+8fqYBjC3b3e+lr3khnUU9uz8GqtrGFrDxjkl8y8QAAACAIKPdIYNLGaoreSz/L0PLSE6xw6+bButDCuuODpGXtD6Q6Cwo+4bjvAwV/yNMVIbrZdic8xjWh1YLxaCx0622XX8wr8GPLr3HViJ74VryCRkvsgXXuZcDl3z5+eEq1YDd5ELzpCcpkW31f64VWYLOIqz3Uo5hXeeCrSEt2vmh+Eo="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 cc6522d24466d3704070e9fda54dc60147978420", "sha256"=>"SSHFP 3 2 9ac8780c7818c208926a847d5f2c3fc274a37a0ed8ae0276f96fb3203e0e0e00"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPZ7/g0ZAcDbNMyMEABW/giY5lPyalZ717tzqmt1baNzEXALYoFN2FMHL/Wid8DUl7oKnXHGSkc4JYYFgpvt11Q="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 0ea50bd46b70a8f9efae23a8bea49388972e9740", "sha256"=>"SSHFP 1 2 0c1c44799be36031d1a8da2d02b9ed4b299ab924c647605afecb1c73063fb307"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCvijE5JYtnXa4uibGq6UEqXn7fboZYCvwZ3RFSkkG6qQ51Q7685OJgayGAZkrbiTeEWOHN6MQPr3TKwSQD2YxoUw3qKQ+hsuTydPK/ZXtNxM0ejFvpIprG1U1NDwj2YVxwo4tQveUewbBQYzEyI1aNQaE2z/fPypQOEj0v9QNAapmGGlV8ab0q0izCM4Aen5pccRZLJuibUUY3nOEfE0QTIM3QmOZoKEmj/Ez3P3+16iGeRNId/+8Bf4R5eVrKhorUUt+H/y/WcCHT5KrbCWkEH6G3eEQ7UA6XCB/sQ5pC6ZKxBbyYjy8N5wySv+5PVpoUHhHjKoSuYy6qQDE2MwRz"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPHTvj71+XfT0li+zpLYPbY5wKyO36Mij5D4Otl1RMIbZK68No9pDhiPdxMgZrLSq9bHLYs+cxqtSrpZgnNLvT44P+BPZbbQE4HrfcYuv0o2ifa0bqzlyHYl+BT6qSmx8zgBh3iImuhAJhLPnGCzgQ2FkfjAiHKHT1LG4h2knvtTAAAAFQDHa6q8yJo47htrK8LG0D3iAfTT2QAAAIEAtFgO4Qw6K2fQnLSfxL7h98lRopA4tokzKinUjJAoQ86eu9oR4mHDh3FRQlaHJX52RT1GABctV5MyG9LJxUuJLdeyIA7bmJrIPi0TROlHCd3NaS+0r6d1BzmMy+v7cVZsDK+8fqYBjC3b3e+lr3khnUU9uz8GqtrGFrDxjkl8y8QAAACAIKPdIYNLGaoreSz/L0PLSE6xw6+bButDCuuODpGXtD6Q6Cwo+4bjvAwV/yNMVIbrZdic8xjWh1YLxaCx0622XX8wr8GPLr3HViJ74VryCRkvsgXXuZcDl3z5+eEq1YDd5ELzpCcpkW31f64VWYLOIqz3Uo5hXeeCrSEt2vmh+Eo=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPZ7/g0ZAcDbNMyMEABW/giY5lPyalZ717tzqmt1baNzEXALYoFN2FMHL/Wid8DUl7oKnXHGSkc4JYYFgpvt11Q=", "sshfp_dsa"=>"SSHFP 2 1 59bc746d9ab774867521d076613863790a696630\nSSHFP 2 2 8d5bdb7662b7b938beb6517c7d001cc68136d3f1ded5b240cbee1a89dad2d79f", "sshfp_ecdsa"=>"SSHFP 3 1 cc6522d24466d3704070e9fda54dc60147978420\nSSHFP 3 2 9ac8780c7818c208926a847d5f2c3fc274a37a0ed8ae0276f96fb3203e0e0e00", "sshfp_rsa"=>"SSHFP 1 1 0ea50bd46b70a8f9efae23a8bea49388972e9740\nSSHFP 1 2 0c1c44799be36031d1a8da2d02b9ed4b299ab924c647605afecb1c73063fb307", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCvijE5JYtnXa4uibGq6UEqXn7fboZYCvwZ3RFSkkG6qQ51Q7685OJgayGAZkrbiTeEWOHN6MQPr3TKwSQD2YxoUw3qKQ+hsuTydPK/ZXtNxM0ejFvpIprG1U1NDwj2YVxwo4tQveUewbBQYzEyI1aNQaE2z/fPypQOEj0v9QNAapmGGlV8ab0q0izCM4Aen5pccRZLJuibUUY3nOEfE0QTIM3QmOZoKEmj/Ez3P3+16iGeRNId/+8Bf4R5eVrKhorUUt+H/y/WcCHT5KrbCWkEH6G3eEQ7UA6XCB/sQ5pC6ZKxBbyYjy8N5wySv+5PVpoUHhHjKoSuYy6qQDE2MwRz", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>368, "uptime"=>"0:06 hours"}, "timezone"=>"PST", "uptime"=>"0:06 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>368, "uuid"=>"47C86ACE-B882-46AD-8D6D-4260BF97C669", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Ubuntu-12.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Ubuntu-14.04-32_spec.rb b/.onceover/spec/classes/role__windows_on_Ubuntu-14.04-32_spec.rb new file mode 100644 index 0000000..b2dcb9c --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Ubuntu-14.04-32_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Ubuntu-14.04-32" do + node_facts = {"architecture"=>"i386", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>0, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>0, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"C138B01C-ADF6-4D36-8A3A-D9FCE21FF0C7"}}, "domain"=>"wifredrick.local", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"localhost.wifredrick.local", "gid"=>"root", "hardwareisa"=>"i686", "hardwaremodel"=>"i686", "hostname"=>"localhost", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:fe71:8945", "ipaddress6_eth0"=>"fe80::a00:27ff:fe71:8945", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.16", "kernelrelease"=>"3.16.0-30-generic", "kernelversion"=>"3.16.0", "load_averages"=>{"15m"=>0.05, "1m"=>0.0, "5m"=>0.07}, "lsbdistcodename"=>"trusty", "lsbdistdescription"=>"Ubuntu 14.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"14.04", "lsbmajdistrelease"=>"14.04", "macaddress"=>"08:00:27:71:89:45", "macaddress_eth0"=>"08:00:27:71:89:45", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"414.97 MiB", "available_bytes"=>435126272, "capacity"=>"16.34%", "total"=>"496.04 MiB", "total_bytes"=>520130560, "used"=>"81.07 MiB", "used_bytes"=>85004288}}, "memoryfree"=>"414.97 MiB", "memoryfree_mb"=>414.96875, "memorysize"=>"496.04 MiB", "memorysize_mb"=>496.03515625, "mountpoints"=>{"/"=>{"available"=>"1.72 GiB", "available_bytes"=>1846272000, "capacity"=>"39.25%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"2.83 GiB", "size_bytes"=>-1255694336, "used"=>"1.11 GiB", "used_bytes"=>1193000960}, "/boot"=>{"available"=>"200.06 MiB", "available_bytes"=>209779712, "capacity"=>"14.98%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"35.26 MiB", "used_bytes"=>36975616}}, "mtu_eth0"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"wifredrick.local", "fqdn"=>"localhost.wifredrick.local", "hostname"=>"localhost", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe71:8945", "mac"=>"08:00:27:71:89:45", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:fe71:8945", "mac"=>"08:00:27:71:89:45", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"14.04", "operatingsystemrelease"=>"14.04", "os"=>{"architecture"=>"i386", "distro"=>{"codename"=>"trusty", "description"=>"Ubuntu 14.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}}, "family"=>"Debian", "hardware"=>"i686", "name"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"b31f5de0-8805-43da-b3f2-da9e51c3401b"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"569bc4ac-b4e8-4e62-8503-551a63285383"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"f00f661b-b4b5-4e6f-bba3-3dcacf85fd8e"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>-257949696, "uuid"=>"vF1RtV-BHmi-b0UW-QR1z-tJ48-g6Tn-aGgEn7"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"i686", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"i686-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"i686-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 1d072f5a62c6f3ecb283ca8a54906665550fb2cf", "sha256"=>"SSHFP 2 2 216358286cef61e3340afe60750513fc6bdbfc96a7190e32929fc11aeefcd375"}, "key"=>"AAAAB3NzaC1kc3MAAACBAKG/fk+L4qOg6yF5DOrNdiTsaSvD7lsYpJAFGR5AJqtmtXZsRckVuydvmsbLVDNi+P+XaO6Sr/dkFfj89vAx6gB+qZxtEbasdoUiddpjzONvjmvfzmGlFZhlptlYTSu3Ci89mY6ZergBMtGqLGh8VmcNPI54eNexasVdG4nbkcxPAAAAFQCaJGszl2tCCa6KY7GYCOisCeGwtwAAAIBDzQlFkAi7IZAQpaUS6V+1frDgnCipxXjDSZD+ObJ4Wgwrj01+vXdeHKj30mIRo7ZatXxZs2dkQHUeL0SJ/bpsdd1jOu4Mf8c+cHqSHcC4Qz2vtlARKNMXAY5vJHh7QBwaPf3/s8tWqX9lnyu1UdTjE/SgF322Nwkz9OFvCHbuuwAAAIBPA32N7qVPwEOsTBG8xVPcUXwguj6ube0n0OUsZB5i8PFjQ99nLbZce9ucLqVzPCYeClgbPrVH1MBtRc67QLKb6Kms8pseuFCtiB78j9A36PfNfTDervnF1Aw/nIb/DQImtmmDKbPhv4uniseqgSdnh2awLVy6UO7haf3Wz6maFA=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 a6f44c1518708b08d997c7a97cc75b0654b098d1", "sha256"=>"SSHFP 3 2 2ccda56b2fb9bd95c2327cceaaf8f868daebb1f7dfc5bd0a9d816fff06f7b474"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCK+3h6/GsmbpRd/xdgTi+vsoh+N6gTB5IZFpZdaJVK6H6cSwmhiEiby/3yqwQFGlSXug8aQiQJ3YZI471wScbU="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 4ca8bd8a83038bc1339ee7037ab2043f41e4b4e7", "sha256"=>"SSHFP 4 2 7326c4dfce373f219025f41f127535f0fb9aacc221adf34e75db8eccc118ab3d"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAICobX2RUot4PEA4s4fTvltDWEWIXFMehgbTwvLezavoq"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 9da876f061d5f203345c99b047a48b24775f77ae", "sha256"=>"SSHFP 1 2 90ca5e6b808b9f47c78e26f9c228dab88b19536d56f6c72443b1d06502646ecf"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC+fl/b51y7U6i6DGQ+FwkYKIzBSVV6DcIZj+Q3BVRLzviOQIQMfNJ0wvLMKKHK96gWaGlknnU0Tn/cvVShuWbaWFBpOTLDsM2cm0usZot8+EmYGnql8D3AFMxhgWBb7pBa5KJOfJidrprXLcSjW82bKhIYbLDDVWMgaoIEVAbufOCobffpwTBYSPS4OdF3WyqNJj2B9tklkUdeUFYKkCFO/mszwSZdY+0xxTyilmyrHr8evbmoA34LREnktKFiu/I5gPXts1CdVLVzvNsMt0VM+ldLEtGPy7qvcddXy34yax538n+A6VOOBg2wpKwEsmqjkCHdq8s/2eWeeu+xGFch"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAKG/fk+L4qOg6yF5DOrNdiTsaSvD7lsYpJAFGR5AJqtmtXZsRckVuydvmsbLVDNi+P+XaO6Sr/dkFfj89vAx6gB+qZxtEbasdoUiddpjzONvjmvfzmGlFZhlptlYTSu3Ci89mY6ZergBMtGqLGh8VmcNPI54eNexasVdG4nbkcxPAAAAFQCaJGszl2tCCa6KY7GYCOisCeGwtwAAAIBDzQlFkAi7IZAQpaUS6V+1frDgnCipxXjDSZD+ObJ4Wgwrj01+vXdeHKj30mIRo7ZatXxZs2dkQHUeL0SJ/bpsdd1jOu4Mf8c+cHqSHcC4Qz2vtlARKNMXAY5vJHh7QBwaPf3/s8tWqX9lnyu1UdTjE/SgF322Nwkz9OFvCHbuuwAAAIBPA32N7qVPwEOsTBG8xVPcUXwguj6ube0n0OUsZB5i8PFjQ99nLbZce9ucLqVzPCYeClgbPrVH1MBtRc67QLKb6Kms8pseuFCtiB78j9A36PfNfTDervnF1Aw/nIb/DQImtmmDKbPhv4uniseqgSdnh2awLVy6UO7haf3Wz6maFA==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCK+3h6/GsmbpRd/xdgTi+vsoh+N6gTB5IZFpZdaJVK6H6cSwmhiEiby/3yqwQFGlSXug8aQiQJ3YZI471wScbU=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAICobX2RUot4PEA4s4fTvltDWEWIXFMehgbTwvLezavoq", "sshfp_dsa"=>"SSHFP 2 1 1d072f5a62c6f3ecb283ca8a54906665550fb2cf\nSSHFP 2 2 216358286cef61e3340afe60750513fc6bdbfc96a7190e32929fc11aeefcd375", "sshfp_ecdsa"=>"SSHFP 3 1 a6f44c1518708b08d997c7a97cc75b0654b098d1\nSSHFP 3 2 2ccda56b2fb9bd95c2327cceaaf8f868daebb1f7dfc5bd0a9d816fff06f7b474", "sshfp_ed25519"=>"SSHFP 4 1 4ca8bd8a83038bc1339ee7037ab2043f41e4b4e7\nSSHFP 4 2 7326c4dfce373f219025f41f127535f0fb9aacc221adf34e75db8eccc118ab3d", "sshfp_rsa"=>"SSHFP 1 1 9da876f061d5f203345c99b047a48b24775f77ae\nSSHFP 1 2 90ca5e6b808b9f47c78e26f9c228dab88b19536d56f6c72443b1d06502646ecf", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQC+fl/b51y7U6i6DGQ+FwkYKIzBSVV6DcIZj+Q3BVRLzviOQIQMfNJ0wvLMKKHK96gWaGlknnU0Tn/cvVShuWbaWFBpOTLDsM2cm0usZot8+EmYGnql8D3AFMxhgWBb7pBa5KJOfJidrprXLcSjW82bKhIYbLDDVWMgaoIEVAbufOCobffpwTBYSPS4OdF3WyqNJj2B9tklkUdeUFYKkCFO/mszwSZdY+0xxTyilmyrHr8evbmoA34LREnktKFiu/I5gPXts1CdVLVzvNsMt0VM+ldLEtGPy7qvcddXy34yax538n+A6VOOBg2wpKwEsmqjkCHdq8s/2eWeeu+xGFch", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>354, "uptime"=>"0:05 hours"}, "timezone"=>"PST", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>354, "uuid"=>"C138B01C-ADF6-4D36-8A3A-D9FCE21FF0C7", "virtual"=>"virtualbox", "clientcert"=>"localhost.wifredrick.local", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Ubuntu-14.04-32' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Ubuntu-14.04-64_spec.rb b/.onceover/spec/classes/role__windows_on_Ubuntu-14.04-64_spec.rb new file mode 100644 index 0000000..ddaa893 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Ubuntu-14.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Ubuntu-14.04-64" do + node_facts = {"aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"amd64", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"VBOX HARDDISK", "blockdevice_sda_size"=>21474836480, "blockdevice_sda_vendor"=>"ATA", "blockdevices"=>"sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "concat_basedir"=>"/opt/puppetlabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"eth0"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"VBOX HARDDISK", "size"=>"20.00 GiB", "size_bytes"=>21474836480, "vendor"=>"ATA"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"C3C98552-9F17-434C-866B-0E254F5CD115"}}, "domain"=>"pdx.puppetlabs.demo", "facterversion"=>"3.0.2", "filesystems"=>"ext2,ext3,ext4,vfat", "fqdn"=>"ubuntu1404a.pdx.puppetlabs.demo", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "homedir"=>"/root", "hostname"=>"ubuntu1404a", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"eth0,eth1,lo", "ip6tables_version"=>"1.4.21", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a00:27ff:feea:2027", "ipaddress6_eth0"=>"fe80::a00:27ff:feea:2027", "ipaddress6_eth1"=>"fe80::a00:27ff:fe61:1916", "ipaddress6_lo"=>"::1", "ipaddress_eth0"=>"10.0.2.15", "ipaddress_eth1"=>"10.20.1.93", "ipaddress_lo"=>"127.0.0.1", "iptables_version"=>"1.4.21", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"3.16", "kernelrelease"=>"3.16.0-30-generic", "kernelversion"=>"3.16.0", "load_averages"=>{"15m"=>0.06, "1m"=>0.49, "5m"=>0.17}, "lsbdistcodename"=>"trusty", "lsbdistdescription"=>"Ubuntu 14.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"14.04", "lsbmajdistrelease"=>"14.04", "macaddress"=>"08:00:27:ea:20:27", "macaddress_eth0"=>"08:00:27:ea:20:27", "macaddress_eth1"=>"08:00:27:61:19:16", "manufacturer"=>"innotek GmbH", "memory"=>{"swap"=>{"available"=>"512.00 MiB", "available_bytes"=>536866816, "capacity"=>"0%", "total"=>"512.00 MiB", "total_bytes"=>536866816, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"331.30 MiB", "available_bytes"=>347394048, "capacity"=>"32.35%", "total"=>"489.74 MiB", "total_bytes"=>513531904, "used"=>"158.44 MiB", "used_bytes"=>166137856}}, "memoryfree"=>"331.30 MiB", "memoryfree_mb"=>331.30078125, "memorysize"=>"489.74 MiB", "memorysize_mb"=>489.7421875, "mountpoints"=>{"/"=>{"available"=>"17.58 GiB", "available_bytes"=>18880684032, "capacity"=>"6.62%", "device"=>"/dev/mapper/localhost--vg-root", "filesystem"=>"ext4", "options"=>["rw", "errors=remount-ro"], "size"=>"18.83 GiB", "size_bytes"=>20219142144, "used"=>"1.25 GiB", "used_bytes"=>1338458112}, "/boot"=>{"available"=>"198.65 MiB", "available_bytes"=>208301056, "capacity"=>"15.58%", "device"=>"/dev/sda1", "filesystem"=>"ext2", "options"=>["rw"], "size"=>"235.32 MiB", "size_bytes"=>246755328, "used"=>"36.67 MiB", "used_bytes"=>38454272}}, "mtu_eth0"=>1500, "mtu_eth1"=>1500, "mtu_lo"=>65536, "mysql_server_id"=>8608807, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_eth0"=>"ffff:ffff:ffff:ffff::", "netmask6_eth1"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_eth0"=>"255.255.255.0", "netmask_eth1"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_eth0"=>"fe80::", "network6_eth1"=>"fe80::", "network6_lo"=>"::1", "network_eth0"=>"10.0.2.0", "network_eth1"=>"10.20.1.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"pdx.puppetlabs.demo", "fqdn"=>"ubuntu1404a.pdx.puppetlabs.demo", "hostname"=>"ubuntu1404a", "interfaces"=>{"eth0"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feea:2027", "mac"=>"08:00:27:ea:20:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "eth1"=>{"ip"=>"10.20.1.93", "ip6"=>"fe80::a00:27ff:fe61:1916", "mac"=>"08:00:27:61:19:16", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::"}, "lo"=>{"ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a00:27ff:feea:2027", "mac"=>"08:00:27:ea:20:27", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"14.04", "operatingsystemrelease"=>"14.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"trusty", "description"=>"Ubuntu 14.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"14.04", "major"=>"14.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/mapper/localhost--vg-root"=>{"filesystem"=>"ext4", "mount"=>"/", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"c94f234c-f947-450d-aaaf-d32be1b7f27f"}, "/dev/mapper/localhost--vg-swap_1"=>{"filesystem"=>"swap", "size"=>"0 bytes", "size_bytes"=>0, "uuid"=>"5501b007-e44b-46cf-b22b-177428cbe5d6"}, "/dev/sda1"=>{"filesystem"=>"ext2", "mount"=>"/boot", "size"=>"243.00 MiB", "size_bytes"=>254803968, "uuid"=>"3a97a5b0-ebd0-4ce6-ba62-d39b4fd0719e"}, "/dev/sda5"=>{"filesystem"=>"LVM2_member", "size"=>"19.76 GiB", "size_bytes"=>21216886784, "uuid"=>"vgfiUo-lVmS-57wx-qv4m-N3fR-efa0-iBI6Cn"}}, "path"=>"/opt/puppetlabs/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"ubuntu-14.04-amd64", "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"/opt/puppetlabs/puppet/cache", "puppetversion"=>"4.2.1", "root_home"=>"/root", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 528b28369558620d8fb12d7bea179e437823154c", "sha256"=>"SSHFP 2 2 5a7688dbb06e4b0c72e6e78ae4ca8b379620ba14b019d5b3ae5670936e1acdf4"}, "key"=>"AAAAB3NzaC1kc3MAAACBAI8c8/RV/kAfEuo71eUt5O1BBbzk34v7b14bi3swzOnzJslJXt2KR/3Dy+8eazzkcw8nbmzZSHvcyo93yQ0LjsExXfG0EkzN7uiE840Fcpg5LFmeCHan0So3Cc1FLavcGu8N+RpWHYYLLmPjlQqPdHSS1rhhXdqKIoiTdlaocXD5AAAAFQCJ0mBV1SSayMNI6tTF4W0o1Y6+cQAAAIBWY05wbeTi/vFgkhH57X0/S7Kr86K3Q/BMz7ZmKF2XCzZW9LJ6Ou0T7tHKAr472DBwUm6IxGHoUXky0Q0+XDCVut9YLYXJK8L/P8SbGwhMfj1YPiv9uorECcrqJMB5W1GCFS+HIo4DvmKYzivcmpE25b/y0V1u5Oas9cQaNZnhxwAAAIBqvLMiEyQPpemji+p+p/9E3sdX6RMUeSHj7n3WSkRTdq09nZ0ewtH12LpbENCjoc4PFh02/qqdub0tjpbgJrMYgwJDADD/AsrdcDBd3gU7mDjyF8PFzWV9nEVYExu447svRt422OW6gkkJ6sn3fovBAvDaWy7OR5YYrg5JLp+/4A=="}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 505ac6e68fa78305f635f305e11fbb0cc597e8ad", "sha256"=>"SSHFP 3 2 d5840c440b5f52a582589e3b2b583ecea53fd6618851dbcfce2e5cca7624f3c8"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJKYyLqXe/n2LFUbqMkwhLyOpg10LYOx/MpdgFXTxUB67AP4/GoX8zfz5Lb6fOidSJTlrzD5FB584JiRlEGUGLo="}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 53784fee8fc968dca5c5d17e731716a012e59234", "sha256"=>"SSHFP 4 2 95b82a785582818106bf403e53667fc559eeabf176f103a929a210a38e9c4e05"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIAAhP8P8zhiQrKmyV/U+e5M7nd5X+ZuIEYCPHDoza0rP"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 4d3d498c7a3377c8f95ac713db4866c32199be51", "sha256"=>"SSHFP 1 2 949c0790f27d5ef7e8b0c35ceabb23bdd50d81611093531c0354330a7234b833"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDIPayGCFe5RUpJ8/UsH6gf+ecMRWo1dc20+HAy0bV4KalYWN5jUB/wrs41rdJRwMKWczgSDi2gFMsJ7q8Vjvpm2hUy+3H3/AEASRij99+37X1T4A6vPpT45EhTpS6JgGROii1Q2+9AJ/6BE6fSawymgR7jDx5QNLbKRy/FiwZAG+A0n29iUALeKqEZMd/1fU0hQCy/V+9V4DgRbHcJz4lKgc6nYrMymj8tUivTd8zm+CQov+YsUAdaXHSxIGVofnFQYXzbPqWGVV8S3fpwvrn/IY6paZ2F/lHoWombHwE271Bw863oWdkKpzP1nhjR3+Q1z++Tl2ZXT+rp6mhS9Pwv"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAI8c8/RV/kAfEuo71eUt5O1BBbzk34v7b14bi3swzOnzJslJXt2KR/3Dy+8eazzkcw8nbmzZSHvcyo93yQ0LjsExXfG0EkzN7uiE840Fcpg5LFmeCHan0So3Cc1FLavcGu8N+RpWHYYLLmPjlQqPdHSS1rhhXdqKIoiTdlaocXD5AAAAFQCJ0mBV1SSayMNI6tTF4W0o1Y6+cQAAAIBWY05wbeTi/vFgkhH57X0/S7Kr86K3Q/BMz7ZmKF2XCzZW9LJ6Ou0T7tHKAr472DBwUm6IxGHoUXky0Q0+XDCVut9YLYXJK8L/P8SbGwhMfj1YPiv9uorECcrqJMB5W1GCFS+HIo4DvmKYzivcmpE25b/y0V1u5Oas9cQaNZnhxwAAAIBqvLMiEyQPpemji+p+p/9E3sdX6RMUeSHj7n3WSkRTdq09nZ0ewtH12LpbENCjoc4PFh02/qqdub0tjpbgJrMYgwJDADD/AsrdcDBd3gU7mDjyF8PFzWV9nEVYExu447svRt422OW6gkkJ6sn3fovBAvDaWy7OR5YYrg5JLp+/4A==", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJKYyLqXe/n2LFUbqMkwhLyOpg10LYOx/MpdgFXTxUB67AP4/GoX8zfz5Lb6fOidSJTlrzD5FB584JiRlEGUGLo=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIAAhP8P8zhiQrKmyV/U+e5M7nd5X+ZuIEYCPHDoza0rP", "sshfp_dsa"=>"SSHFP 2 1 528b28369558620d8fb12d7bea179e437823154c\nSSHFP 2 2 5a7688dbb06e4b0c72e6e78ae4ca8b379620ba14b019d5b3ae5670936e1acdf4", "sshfp_ecdsa"=>"SSHFP 3 1 505ac6e68fa78305f635f305e11fbb0cc597e8ad\nSSHFP 3 2 d5840c440b5f52a582589e3b2b583ecea53fd6618851dbcfce2e5cca7624f3c8", "sshfp_ed25519"=>"SSHFP 4 1 53784fee8fc968dca5c5d17e731716a012e59234\nSSHFP 4 2 95b82a785582818106bf403e53667fc559eeabf176f103a929a210a38e9c4e05", "sshfp_rsa"=>"SSHFP 1 1 4d3d498c7a3377c8f95ac713db4866c32199be51\nSSHFP 1 2 949c0790f27d5ef7e8b0c35ceabb23bdd50d81611093531c0354330a7234b833", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQDIPayGCFe5RUpJ8/UsH6gf+ecMRWo1dc20+HAy0bV4KalYWN5jUB/wrs41rdJRwMKWczgSDi2gFMsJ7q8Vjvpm2hUy+3H3/AEASRij99+37X1T4A6vPpT45EhTpS6JgGROii1Q2+9AJ/6BE6fSawymgR7jDx5QNLbKRy/FiwZAG+A0n29iUALeKqEZMd/1fU0hQCy/V+9V4DgRbHcJz4lKgc6nYrMymj8tUivTd8zm+CQov+YsUAdaXHSxIGVofnFQYXzbPqWGVV8S3fpwvrn/IY6paZ2F/lHoWombHwE271Bw863oWdkKpzP1nhjR3+Q1z++Tl2ZXT+rp6mhS9Pwv", "staging_http_get"=>"curl", "swapfree"=>"512.00 MiB", "swapfree_mb"=>511.99609375, "swapsize"=>"512.00 MiB", "swapsize_mb"=>511.99609375, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>47, "uptime"=>"0:00 hours"}, "timezone"=>"PDT", "uptime"=>"0:00 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>47, "uuid"=>"C3C98552-9F17-434C-866B-0E254F5CD115", "virtual"=>"virtualbox", "clientcert"=>"ubuntu1404a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Ubuntu-14.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Ubuntu-18.04-64_spec.rb b/.onceover/spec/classes/role__windows_on_Ubuntu-18.04-64_spec.rb new file mode 100644 index 0000000..c8cd316 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Ubuntu-18.04-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Ubuntu-18.04-64" do + node_facts = {"aio_agent_version"=>"6.14.0", "architecture"=>"amd64", "augeas"=>{"version"=>"1.12.0"}, "augeasversion"=>"1.12.0", "bios_release_date"=>"12/01/2006", "bios_vendor"=>"innotek GmbH", "bios_version"=>"VirtualBox", "blockdevice_sda_model"=>"HARDDISK", "blockdevice_sda_size"=>10737418240, "blockdevice_sda_vendor"=>"VBOX", "blockdevice_sdb_model"=>"HARDDISK", "blockdevice_sdb_size"=>10485760, "blockdevice_sdb_vendor"=>"VBOX", "blockdevices"=>"sdb,sda", "boardmanufacturer"=>"Oracle Corporation", "boardproductname"=>"VirtualBox", "boardserialnumber"=>"0", "chassistype"=>"Other", "dhcp_servers"=>{"enp0s3"=>"10.0.2.2", "system"=>"10.0.2.2"}, "disks"=>{"sda"=>{"model"=>"HARDDISK", "size"=>"10.00 GiB", "size_bytes"=>10737418240, "vendor"=>"VBOX"}, "sdb"=>{"model"=>"HARDDISK", "size"=>"10.00 MiB", "size_bytes"=>10485760, "vendor"=>"VBOX"}}, "dmi"=>{"bios"=>{"release_date"=>"12/01/2006", "vendor"=>"innotek GmbH", "version"=>"VirtualBox"}, "board"=>{"manufacturer"=>"Oracle Corporation", "product"=>"VirtualBox", "serial_number"=>"0"}, "chassis"=>{"type"=>"Other"}, "manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0", "uuid"=>"2C7D24ED-FB7D-4B4C-BC4B-B9FC32C8BDC3"}}, "domain"=>"lan.asio", "facterversion"=>"3.14.9", "filesystems"=>"btrfs,ext2,ext3,ext4,iso9660,squashfs,vfat", "fips_enabled"=>false, "fqdn"=>"ubuntu-bionic.lan.asio", "gid"=>"root", "hardwareisa"=>"x86_64", "hardwaremodel"=>"x86_64", "hostname"=>"ubuntu-bionic", "hypervisors"=>{"virtualbox"=>{"revision"=>"133895", "version"=>"6.0.14"}}, "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "privileged"=>true, "uid"=>0, "user"=>"root"}, "interfaces"=>"enp0s3,lo", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::bb:7dff:fee8:e923", "ipaddress6_enp0s3"=>"fe80::bb:7dff:fee8:e923", "ipaddress6_lo"=>"::1", "ipaddress_enp0s3"=>"10.0.2.15", "ipaddress_lo"=>"127.0.0.1", "is_virtual"=>true, "kernel"=>"Linux", "kernelmajversion"=>"4.15", "kernelrelease"=>"4.15.0-54-generic", "kernelversion"=>"4.15.0", "load_averages"=>{"15m"=>0.1, "1m"=>0.31, "5m"=>0.23}, "lsbdistcodename"=>"bionic", "lsbdistdescription"=>"Ubuntu 18.04.2 LTS", "lsbdistid"=>"Ubuntu", "lsbdistrelease"=>"18.04", "lsbmajdistrelease"=>"18.04", "macaddress"=>"02:bb:7d:e8:e9:23", "macaddress_enp0s3"=>"02:bb:7d:e8:e9:23", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"776.53 MiB", "available_bytes"=>814247936, "capacity"=>"21.19%", "total"=>"985.26 MiB", "total_bytes"=>1033121792, "used"=>"208.73 MiB", "used_bytes"=>218873856}}, "memoryfree"=>"776.53 MiB", "memoryfree_mb"=>776.52734375, "memorysize"=>"985.26 MiB", "memorysize_mb"=>985.26171875, "mountpoints"=>{"/"=>{"available"=>"8.14 GiB", "available_bytes"=>8742756352, "capacity"=>"15.32%", "device"=>"/dev/sda1", "filesystem"=>"ext4", "options"=>["rw", "relatime", "data=ordered"], "size"=>"9.63 GiB", "size_bytes"=>10340794368, "used"=>"1.47 GiB", "used_bytes"=>1581260800}, "/dev"=>{"available"=>"480.22 MiB", "available_bytes"=>503545856, "capacity"=>"0%", "device"=>"udev", "filesystem"=>"devtmpfs", "options"=>["rw", "nosuid", "relatime", "size=491744k", "nr_inodes=122936", "mode=755"], "size"=>"480.22 MiB", "size_bytes"=>503545856, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/hugepages"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"hugetlbfs", "filesystem"=>"hugetlbfs", "options"=>["rw", "relatime", "pagesize=2M"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/mqueue"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mqueue", "filesystem"=>"mqueue", "options"=>["rw", "relatime"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/pts"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"devpts", "filesystem"=>"devpts", "options"=>["rw", "nosuid", "noexec", "relatime", "gid=5", "mode=620", "ptmxmode=000"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/shm"=>{"available"=>"492.63 MiB", "available_bytes"=>516558848, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev"], "size"=>"492.63 MiB", "size_bytes"=>516558848, "used"=>"0 bytes", "used_bytes"=>0}, "/run"=>{"available"=>"97.93 MiB", "available_bytes"=>102690816, "capacity"=>"0.60%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "noexec", "relatime", "size=100892k", "mode=755"], "size"=>"98.53 MiB", "size_bytes"=>103313408, "used"=>"608.00 KiB", "used_bytes"=>622592}, "/run/lock"=>{"available"=>"5.00 MiB", "available_bytes"=>5242880, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev", "noexec", "relatime", "size=5120k"], "size"=>"5.00 MiB", "size_bytes"=>5242880, "used"=>"0 bytes", "used_bytes"=>0}, "/run/user/1000"=>{"available"=>"98.52 MiB", "available_bytes"=>103309312, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["rw", "nosuid", "nodev", "relatime", "size=100888k", "mode=700", "uid=1000", "gid=1000"], "size"=>"98.52 MiB", "size_bytes"=>103309312, "used"=>"0 bytes", "used_bytes"=>0}, "/sys/fs/cgroup"=>{"available"=>"492.63 MiB", "available_bytes"=>516558848, "capacity"=>"0%", "device"=>"tmpfs", "filesystem"=>"tmpfs", "options"=>["ro", "nosuid", "nodev", "noexec", "mode=755"], "size"=>"492.63 MiB", "size_bytes"=>516558848, "used"=>"0 bytes", "used_bytes"=>0}, "/vagrant"=>{"available"=>"122.93 GiB", "available_bytes"=>131996221440, "capacity"=>"85.01%", "device"=>"vagrant", "filesystem"=>"vboxsf", "options"=>["rw", "nodev", "relatime", "iocharset=utf8", "uid=1000", "gid=1000"], "size"=>"820.33 GiB", "size_bytes"=>880824786944, "used"=>"697.40 GiB", "used_bytes"=>748828565504}, "/var/lib/lxcfs"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"lxcfs", "filesystem"=>"fuse.lxcfs", "options"=>["rw", "nosuid", "nodev", "relatime", "user_id=0", "group_id=0", "allow_other"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}}, "mtu_enp0s3"=>1500, "mtu_lo"=>65536, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_enp0s3"=>"ffff:ffff:ffff:ffff::", "netmask6_lo"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "netmask_enp0s3"=>"255.255.255.0", "netmask_lo"=>"255.0.0.0", "network"=>"10.0.2.0", "network6"=>"fe80::", "network6_enp0s3"=>"fe80::", "network6_lo"=>"::1", "network_enp0s3"=>"10.0.2.0", "network_lo"=>"127.0.0.0", "networking"=>{"dhcp"=>"10.0.2.2", "domain"=>"lan.asio", "fqdn"=>"ubuntu-bionic.lan.asio", "hostname"=>"ubuntu-bionic", "interfaces"=>{"enp0s3"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::bb:7dff:fee8:e923", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::"}], "dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::bb:7dff:fee8:e923", "mac"=>"02:bb:7d:e8:e9:23", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "scope6"=>"link"}, "lo"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "bindings6"=>[{"address"=>"::1", "netmask"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"::1"}], "ip"=>"127.0.0.1", "ip6"=>"::1", "mtu"=>65536, "netmask"=>"255.0.0.0", "netmask6"=>"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", "network"=>"127.0.0.0", "network6"=>"::1", "scope6"=>"host"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::bb:7dff:fee8:e923", "mac"=>"02:bb:7d:e8:e9:23", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::", "primary"=>"enp0s3", "scope6"=>"link"}, "operatingsystem"=>"Ubuntu", "operatingsystemmajrelease"=>"18.04", "operatingsystemrelease"=>"18.04", "os"=>{"architecture"=>"amd64", "distro"=>{"codename"=>"bionic", "description"=>"Ubuntu 18.04.2 LTS", "id"=>"Ubuntu", "release"=>{"full"=>"18.04", "major"=>"18.04"}}, "family"=>"Debian", "hardware"=>"x86_64", "name"=>"Ubuntu", "release"=>{"full"=>"18.04", "major"=>"18.04"}, "selinux"=>{"enabled"=>false}}, "osfamily"=>"Debian", "partitions"=>{"/dev/sda1"=>{"filesystem"=>"ext4", "label"=>"cloudimg-rootfs", "mount"=>"/", "partuuid"=>"654c6dc7-01", "size"=>"10.00 GiB", "size_bytes"=>10736352768, "uuid"=>"8de716dd-d9b2-477f-b818-bb0b1eb036ce"}}, "path"=>"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/opt/puppetlabs/bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>2, "processors"=>{"count"=>2, "isa"=>"x86_64", "models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"6.14.0", "ruby"=>{"platform"=>"x86_64-linux", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "version"=>"2.5.7"}, "rubyplatform"=>"x86_64-linux", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.5.0", "rubyversion"=>"2.5.7", "scope6"=>"link", "scope6_enp0s3"=>"link", "scope6_lo"=>"host", "selinux"=>false, "serialnumber"=>"0", "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 7024118ae71eead4750a74d458472e89e38c7e7c", "sha256"=>"SSHFP 2 2 e5606c7ee1cf32f5591b42c98a9bc87d27cef4bc75c7802cd3f22bcb39333656"}, "key"=>"AAAAB3NzaC1kc3MAAACBAPemHtx92WDon/zDA0oaO5wWOXCUx45+6X9QxJugdryqG3RV0J/ZkKhayANq7NO1GeC3/3EC8celhsHyZFILEEJpFPzW32053dVnOZ6JyQCGb4JKFaCH7DjVnZLlTPyqvraykF3beEhp7dArSpsgsIURJLDRvE3PJdd9DDNtOapXAAAAFQC27/RqfyRjrjSOjNrfsqLm6GoT0QAAAIAJm6rGXMlZ+xNfPfVHsugGNP7BdcFLSWnUGaBQ+51FGkRdVesun6HF5A9/TNBfQ6U2k1BE8Qtc3H8uHrwenIQKyWuhVejvpYVD3NA6hztMWYiidiQ7Ji0O3qkPv4CY5QhlmyPit1gR4aly/fG1H8p+J/XbwrJXMtfR6ND3OXbeYwAAAIEAzDOkrJJgq5f+oPSVaOOmvbNdJ0B003fTyJEH+2yCm3q41O7vakoWv9Qt9mH7T/ivqwMK3yzk1eIpozx8TPU1aOQC3OyehoEXXFY6U5Jcgp0K8WUvVgnC47hAKBkf562aGdWftWNu4GkjI6wcNtZqkeVN/wyazilHRF9GyPdsvHg=", "type"=>"ssh-dss"}, "ecdsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 3 1 aa6b8ac4bccb5afded59e2bf680cc151bbb27ef9", "sha256"=>"SSHFP 3 2 4ee2dc2ded938a37ef44de4fd3f3add478abfe272f0a50dc7dbb1f9a4839ca99"}, "key"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF02SaI3oPW6CVWEvzDuf/XqaUF+OAr4RKNW3hAR8RRBSDEjQGdoejQEYP8lEFa1KeVlkJYnvgrPYwxVSUI6hUA=", "type"=>"ecdsa-sha2-nistp256"}, "ed25519"=>{"fingerprints"=>{"sha1"=>"SSHFP 4 1 a20e01cf434a802607e1aff21e621dd3ada6499f", "sha256"=>"SSHFP 4 2 569917b95c5299fe3cdd1cc4a37166d1e81106a22bb75a15b99bb8694b2ac8c4"}, "key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHmh1Z/od2mbHDUkAL2bXswdwp43dPXQOKo9DA8AUDO1", "type"=>"ssh-ed25519"}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 3bc833bc8e3e259da03d37aa0c0244ae98f30622", "sha256"=>"SSHFP 1 2 f27f0e09326c1c8abc2b0691bc6444b77781c0a21e9d99933492f269e5163346"}, "key"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+QuEhOY+IrmAaG1/PgO0nyxYY0VYilhjcM5daSKb61z+XBmBuAsgVxWaQ815OxlwYQunPJZlKnaXZ8yTlnjk8eekxvWnoSLtqKZWW1+RfMyy6n6MyXdno1mwez+5HG3tThC63xE4EWbmKH+fsWuNT2ZpQ49fuWnG8sObv/66QLyCjt+KHMpy9ClHjpYli+0hFhdHTwxGo9H/r4I2En9rBcTy3nQZhZGm1FFh6xnHxnSGm02r2fhsk2x0kw9K1pA7IFtr31hBOu5Po5CJBVJQBd1TEozmNELl2ZISmT0HK3sIV4AG/FmFEsd9+63ST5BbeurlcOEzvxudDJmuroZX", "type"=>"ssh-rsa"}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAPemHtx92WDon/zDA0oaO5wWOXCUx45+6X9QxJugdryqG3RV0J/ZkKhayANq7NO1GeC3/3EC8celhsHyZFILEEJpFPzW32053dVnOZ6JyQCGb4JKFaCH7DjVnZLlTPyqvraykF3beEhp7dArSpsgsIURJLDRvE3PJdd9DDNtOapXAAAAFQC27/RqfyRjrjSOjNrfsqLm6GoT0QAAAIAJm6rGXMlZ+xNfPfVHsugGNP7BdcFLSWnUGaBQ+51FGkRdVesun6HF5A9/TNBfQ6U2k1BE8Qtc3H8uHrwenIQKyWuhVejvpYVD3NA6hztMWYiidiQ7Ji0O3qkPv4CY5QhlmyPit1gR4aly/fG1H8p+J/XbwrJXMtfR6ND3OXbeYwAAAIEAzDOkrJJgq5f+oPSVaOOmvbNdJ0B003fTyJEH+2yCm3q41O7vakoWv9Qt9mH7T/ivqwMK3yzk1eIpozx8TPU1aOQC3OyehoEXXFY6U5Jcgp0K8WUvVgnC47hAKBkf562aGdWftWNu4GkjI6wcNtZqkeVN/wyazilHRF9GyPdsvHg=", "sshecdsakey"=>"AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF02SaI3oPW6CVWEvzDuf/XqaUF+OAr4RKNW3hAR8RRBSDEjQGdoejQEYP8lEFa1KeVlkJYnvgrPYwxVSUI6hUA=", "sshed25519key"=>"AAAAC3NzaC1lZDI1NTE5AAAAIHmh1Z/od2mbHDUkAL2bXswdwp43dPXQOKo9DA8AUDO1", "sshfp_dsa"=>"SSHFP 2 1 7024118ae71eead4750a74d458472e89e38c7e7c\nSSHFP 2 2 e5606c7ee1cf32f5591b42c98a9bc87d27cef4bc75c7802cd3f22bcb39333656", "sshfp_ecdsa"=>"SSHFP 3 1 aa6b8ac4bccb5afded59e2bf680cc151bbb27ef9\nSSHFP 3 2 4ee2dc2ded938a37ef44de4fd3f3add478abfe272f0a50dc7dbb1f9a4839ca99", "sshfp_ed25519"=>"SSHFP 4 1 a20e01cf434a802607e1aff21e621dd3ada6499f\nSSHFP 4 2 569917b95c5299fe3cdd1cc4a37166d1e81106a22bb75a15b99bb8694b2ac8c4", "sshfp_rsa"=>"SSHFP 1 1 3bc833bc8e3e259da03d37aa0c0244ae98f30622\nSSHFP 1 2 f27f0e09326c1c8abc2b0691bc6444b77781c0a21e9d99933492f269e5163346", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+QuEhOY+IrmAaG1/PgO0nyxYY0VYilhjcM5daSKb61z+XBmBuAsgVxWaQ815OxlwYQunPJZlKnaXZ8yTlnjk8eekxvWnoSLtqKZWW1+RfMyy6n6MyXdno1mwez+5HG3tThC63xE4EWbmKH+fsWuNT2ZpQ49fuWnG8sObv/66QLyCjt+KHMpy9ClHjpYli+0hFhdHTwxGo9H/r4I2En9rBcTy3nQZhZGm1FFh6xnHxnSGm02r2fhsk2x0kw9K1pA7IFtr31hBOu5Po5CJBVJQBd1TEozmNELl2ZISmT0HK3sIV4AG/FmFEsd9+63ST5BbeurlcOEzvxudDJmuroZX", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>336, "uptime"=>"0:05 hours"}, "timezone"=>"UTC", "uptime"=>"0:05 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>336, "uuid"=>"2C7D24ED-FB7D-4B4C-BC4B-B9FC32C8BDC3", "virtual"=>"virtualbox", "clientcert"=>"ubuntu-bionic.lan.asio", "clientversion"=>"6.14.0", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Ubuntu-18.04-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Windows_Server-2008r2-64_spec.rb b/.onceover/spec/classes/role__windows_on_Windows_Server-2008r2-64_spec.rb new file mode 100644 index 0000000..044c319 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Windows_Server-2008r2-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Windows_Server-2008r2-64" do + node_facts = {"agent_specified_environment"=>"production", "aio_agent_build"=>"1.2.2", "aio_agent_version"=>"1.2.2", "architecture"=>"x64", "common_appdata"=>"C:\\ProgramData", "concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/concat", "custom_auth_conf"=>"false", "datacenter"=>"portland", "dhcp_servers"=>{"Local Area Connection"=>"10.0.2.2"}, "dmi"=>{"manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0"}}, "domain"=>"pdx.puppetlabs.demo", "env_windows_installdir"=>"C:\\Program Files\\Puppet Labs\\Puppet", "facterversion"=>"3.0.2", "fqdn"=>"server2008r2a.pdx.puppetlabs.demo", "hardwareisa"=>"x64", "hardwaremodel"=>"x86_64", "hostname"=>"server2008r2a", "id"=>"SERVER2008R2A\\vagrant", "identity"=>{"user"=>"SERVER2008R2A\\vagrant"}, "iis_version"=>"Get-ItemProperty : Cannot find path 'HKLM:\\SOFTWARE\\Microsoft\\InetStp\\' because it does not exist.\nAt line:1 char:18\n+ (Get-ItemProperty <<<< HKLM:\\SOFTWARE\\Microsoft\\InetStp\\ -Name VersionString).VersionString.SubString(8,3)\n + CategoryInfo : ObjectNotFound: (HKLM:\\SOFTWARE\\Microsoft\\InetStp\\:String) [Get-ItemProperty], ItemNotFo \n undException\n + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetItemPropertyCommand\n \nYou cannot call a method on a null-valued expression.\nAt line:1 char:97\n+ (Get-ItemProperty HKLM:\\SOFTWARE\\Microsoft\\InetStp\\ -Name VersionString).VersionString.SubString <<<< (8,3)\n + CategoryInfo : InvalidOperation: (SubString:String) [], RuntimeException\n + FullyQualifiedErrorId : InvokeMethodOnNull\n \n", "interfaces"=>"Local Area Connection 2,Local Area Connection", "ipaddress"=>"10.20.1.101", "ipaddress6"=>"fe80::2c34:c353:1aaa:a872%13", "ipaddress6_Local Area Connection"=>"fe80::50f8:86eb:f103:75b%12", "ipaddress6_Local Area Connection 2"=>"fe80::2c34:c353:1aaa:a872%13", "ipaddress_Local Area Connection"=>"10.0.2.15", "ipaddress_Local Area Connection 2"=>"10.20.1.101", "is_admin"=>true, "is_pe"=>false, "is_virtual"=>true, "kernel"=>"windows", "kernelmajversion"=>"6.1", "kernelrelease"=>"6.1.7600", "kernelversion"=>"6.1.7600", "macaddress"=>"08:00:27:7B:C7:40", "macaddress_Local Area Connection"=>"08:00:27:AB:52:FB", "macaddress_Local Area Connection 2"=>"08:00:27:7B:C7:40", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"448.14 MiB", "available_bytes"=>469909504, "capacity"=>"56.22%", "total"=>"1023.55 MiB", "total_bytes"=>1073274880, "used"=>"575.41 MiB", "used_bytes"=>603365376}}, "memoryfree"=>"448.14 MiB", "memoryfree_mb"=>448.140625, "memorysize"=>"1023.55 MiB", "memorysize_mb"=>1023.5546875, "mtu_Local Area Connection"=>1500, "mtu_Local Area Connection 2"=>1500, "mysql_server_id"=>8583088, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_Local Area Connection"=>"ffff:ffff:ffff:ffff::", "netmask6_Local Area Connection 2"=>"ffff:ffff:ffff:ffff::", "netmask_Local Area Connection"=>"255.255.255.0", "netmask_Local Area Connection 2"=>"255.255.255.0", "network"=>"10.20.1.0", "network6"=>"fe80::%13", "network6_Local Area Connection"=>"fe80::%12", "network6_Local Area Connection 2"=>"fe80::%13", "network_Local Area Connection"=>"10.0.2.0", "network_Local Area Connection 2"=>"10.20.1.0", "networking"=>{"domain"=>"pdx.puppetlabs.demo", "fqdn"=>"server2008r2a.pdx.puppetlabs.demo", "hostname"=>"server2008r2a", "interfaces"=>{"Local Area Connection"=>{"dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::50f8:86eb:f103:75b%12", "mac"=>"08:00:27:AB:52:FB", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12"}, "Local Area Connection 2"=>{"ip"=>"10.20.1.101", "ip6"=>"fe80::2c34:c353:1aaa:a872%13", "mac"=>"08:00:27:7B:C7:40", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::%13"}}, "ip"=>"10.20.1.101", "ip6"=>"fe80::2c34:c353:1aaa:a872%13", "mac"=>"08:00:27:7B:C7:40", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.20.1.0", "network6"=>"fe80::%13"}, "operatingsystem"=>"windows", "operatingsystemmajrelease"=>"2008 R2", "operatingsystemrelease"=>"2008 R2", "os"=>{"architecture"=>"x64", "family"=>"windows", "hardware"=>"x86_64", "name"=>"windows", "release"=>{"full"=>"2008 R2", "major"=>"2008 R2"}, "windows"=>{"system32"=>"C:\\Windows\\system32"}}, "osfamily"=>"windows", "path"=>"C:/Program Files/Puppet Labs/Puppet/facter/bin;C:\\Program Files\\Puppet Labs\\Puppet\\puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\facter\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\hiera\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\mcollective\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\ruby\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\tools\\bin;%SystemRoot%\\system32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\ProgramData\\chocolatey\\bin;", "pe_concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>false, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppet_files_dir_present"=>false, "puppet_vardir"=>"C:/ProgramData/PuppetLabs/puppet/cache", "puppetversion"=>"4.2.1", "ruby"=>{"platform"=>"x64-mingw32", "sitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.6"}, "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.6", "serialnumber"=>"0", "staging_http_get"=>"powershell", "staging_windir"=>"C:\\ProgramData\\staging", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>266, "uptime"=>"0:04 hours"}, "timezone"=>"Pacific Daylight Time", "uptime"=>"0:04 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>266, "virtual"=>"virtualbox", "clientcert"=>"server2008r2a.pdx.puppetlabs.demo", "clientversion"=>"4.2.1", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Windows_Server-2008r2-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_Windows_Server-2012r2-64_spec.rb b/.onceover/spec/classes/role__windows_on_Windows_Server-2012r2-64_spec.rb new file mode 100644 index 0000000..9826e00 --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_Windows_Server-2012r2-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set Windows_Server-2012r2-64" do + node_facts = {"agent_specified_environment"=>"production", "architecture"=>"x64", "dhcp_servers"=>{"Ethernet"=>"10.0.2.2", "system"=>"10.0.2.2"}, "dmi"=>{"manufacturer"=>"innotek GmbH", "product"=>{"name"=>"VirtualBox", "serial_number"=>"0"}}, "env_windows_installdir"=>"C:\\Program Files\\Puppet Labs\\Puppet", "facterversion"=>"3.1.1", "fqdn"=>"WIN-E5K8TM30719", "hardwareisa"=>"x64", "hardwaremodel"=>"x86_64", "hostname"=>"WIN-E5K8TM30719", "id"=>"WIN-E5K8TM30719\\vagrant", "identity"=>{"user"=>"WIN-E5K8TM30719\\vagrant"}, "interfaces"=>"Ethernet", "ipaddress"=>"10.0.2.15", "ipaddress6"=>"fe80::a180:36e0:3a6e:1005%12", "ipaddress6_Ethernet"=>"fe80::a180:36e0:3a6e:1005%12", "ipaddress_Ethernet"=>"10.0.2.15", "is_virtual"=>true, "kernel"=>"windows", "kernelmajversion"=>"6.3", "kernelrelease"=>"6.3.9600", "kernelversion"=>"6.3.9600", "macaddress"=>"08:00:27:81:38:FA", "macaddress_Ethernet"=>"08:00:27:81:38:FA", "manufacturer"=>"innotek GmbH", "memory"=>{"system"=>{"available"=>"1.42 GiB", "available_bytes"=>1521610752, "capacity"=>"29.13%", "total"=>"2.00 GiB", "total_bytes"=>2147012608, "used"=>"596.43 MiB", "used_bytes"=>625401856}}, "memoryfree"=>"1.42 GiB", "memoryfree_mb"=>1451.12109375, "memorysize"=>"2.00 GiB", "memorysize_mb"=>2047.55078125, "mtu_Ethernet"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "netmask6_Ethernet"=>"ffff:ffff:ffff:ffff::", "netmask_Ethernet"=>"255.255.255.0", "network"=>"10.0.2.0", "network6"=>"fe80::%12", "network6_Ethernet"=>"fe80::%12", "network_Ethernet"=>"10.0.2.0", "networking"=>{"dhcp"=>"10.0.2.2", "fqdn"=>"WIN-E5K8TM30719", "hostname"=>"WIN-E5K8TM30719", "interfaces"=>{"Ethernet"=>{"bindings"=>[{"address"=>"10.0.2.15", "netmask"=>"255.255.255.0", "network"=>"10.0.2.0"}], "bindings6"=>[{"address"=>"fe80::a180:36e0:3a6e:1005%12", "netmask"=>"ffff:ffff:ffff:ffff::", "network"=>"fe80::%12"}], "dhcp"=>"10.0.2.2", "ip"=>"10.0.2.15", "ip6"=>"fe80::a180:36e0:3a6e:1005%12", "mac"=>"08:00:27:81:38:FA", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12"}}, "ip"=>"10.0.2.15", "ip6"=>"fe80::a180:36e0:3a6e:1005%12", "mac"=>"08:00:27:81:38:FA", "mtu"=>1500, "netmask"=>"255.255.255.0", "netmask6"=>"ffff:ffff:ffff:ffff::", "network"=>"10.0.2.0", "network6"=>"fe80::%12", "primary"=>"Ethernet"}, "operatingsystem"=>"windows", "operatingsystemmajrelease"=>"2012 R2", "operatingsystemrelease"=>"2012 R2", "os"=>{"architecture"=>"x64", "family"=>"windows", "hardware"=>"x86_64", "name"=>"windows", "release"=>{"full"=>"2012 R2", "major"=>"2012 R2"}, "windows"=>{"system32"=>"C:\\Windows\\system32"}}, "osfamily"=>"windows", "path"=>"C:/Program Files/Puppet Labs/Puppet/facter/bin;C:\\Program Files\\Puppet Labs\\Puppet\\puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\facter\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\hiera\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\mcollective\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\ruby\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\sys\\tools\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files (x86)\\Git\\cmd;C:\\Program Files (x86)\\Git\\bin;C:\\Program Files\\Puppet Labs\\Puppet\\bin", "physicalprocessorcount"=>1, "processor0"=>"Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz", "processorcount"=>1, "processors"=>{"count"=>1, "isa"=>"x64", "models"=>["Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz"], "physicalcount"=>1}, "productname"=>"VirtualBox", "puppetversion"=>"4.2.3", "ruby"=>{"platform"=>"x64-mingw32", "sitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.7"}, "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/Program Files/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.7", "serialnumber"=>"0", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>287, "uptime"=>"0:04 hours"}, "timezone"=>"Coordinated Universal Time", "uptime"=>"0:04 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>287, "virtual"=>"virtualbox", "clientcert"=>"win-e5k8tm30719", "clientversion"=>"4.2.3", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'Windows_Server-2012r2-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_solaris-10_u9-sparc-64_spec.rb b/.onceover/spec/classes/role__windows_on_solaris-10_u9-sparc-64_spec.rb new file mode 100644 index 0000000..0f9966e --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_solaris-10_u9-sparc-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set solaris-10_u9-sparc-64" do + node_facts = {"aio_agent_build"=>"1.4.2", "aio_agent_version"=>"1.4.2", "architecture"=>"sun4v", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_sd4_size"=>-1168154624, "blockdevice_sd4_vendor"=>"HITACHI", "blockdevice_sd5_size"=>-647710720, "blockdevice_sd5_vendor"=>"HITACHI", "blockdevice_sd6_size"=>0, "blockdevice_sd6_vendor"=>"AMI", "blockdevice_sd7_size"=>0, "blockdevice_sd7_vendor"=>"TEAC", "blockdevice_sd8_size"=>-1168154624, "blockdevice_sd8_vendor"=>"HITACHI", "blockdevice_sd9_size"=>-647710720, "blockdevice_sd9_vendor"=>"HITACHI", "blockdevices"=>"sd4,sd5,sd8,sd9,sd7,sd6", "custom_auth_conf"=>false, "disks"=>{"sd4"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd5"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}, "sd6"=>{"product"=>"Virtual CDROM Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"AMI"}, "sd7"=>{"product"=>"DV-W28SS-W Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"TEAC"}, "sd8"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd9"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}}, "dmi"=>{"manufacturer"=>"Oracle Corporation"}, "domain"=>"puppet.example", "facterversion"=>"3.1.6", "fqdn"=>"solaris-10_u9-sparc-t4-64.puppet.example", "gid"=>"root", "hardwareisa"=>"sparc", "hardwaremodel"=>"sun4v", "hostname"=>"solaris-10_u9-sparc-t4-64", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,net0", "ipaddress"=>"10.32.77.42", "ipaddress_lo0"=>"127.0.0.1", "ipaddress_net0"=>"10.32.77.42", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"SunOS", "kernelmajversion"=>"Generic_Virtual", "kernelrelease"=>"5.10", "kernelversion"=>"Generic_Virtual", "load_averages"=>{"15m"=>1.015625, "1m"=>1.89453125, "5m"=>1.25390625}, "macaddress"=>"02:08:20:f1:97:4b", "macaddress_net0"=>"02:08:20:f1:97:4b", "manufacturer"=>"Oracle Corporation", "memory"=>{"swap"=>{"available"=>"4.00 GiB", "available_bytes"=>-8192, "capacity"=>"0%", "total"=>"4.00 GiB", "total_bytes"=>-8192, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"3.25 GiB", "available_bytes"=>-806297600, "capacity"=>"78.94%", "total"=>"15.43 GiB", "total_bytes"=>-611737600, "used"=>"12.18 GiB", "used_bytes"=>194560000}}, "memoryfree"=>"3.25 GiB", "memoryfree_mb"=>3327.0546875, "memorysize"=>"15.43 GiB", "memorysize_mb"=>15800.6015625, "mountpoints"=>{"/"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"1.14%", "device"=>"rpool/ROOT/zbe-0", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc10/root/", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950161"], "size"=>"480.01 GiB", "size_bytes"=>13566464, "used"=>"5.49 GiB", "used_bytes"=>1602503680}, "/.SUNWnative/lib"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/lib", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/platform"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/platform", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/sbin"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/sbin", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/.SUNWnative/usr"=>{"available"=>"212.34 GiB", "available_bytes"=>361699840, "capacity"=>"13.19%", "device"=>"/.SUNWnative/usr", "filesystem"=>"lofs", "options"=>["ro", "nodevices", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950002"], "size"=>"244.59 GiB", "size_bytes"=>629606400, "used"=>"32.25 GiB", "used_bytes"=>267906560}, "/dev"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"/dev", "filesystem"=>"dev", "options"=>["zone=cisparc10", "nozonemod", "sharezone=36", "dev=8e0001b"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/fd"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"fd", "filesystem"=>"fd", "options"=>["rw", "nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=9040025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/mnttab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mnttab", "filesystem"=>"mntfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8e80025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/svc/volatile"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.01%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc10", "sharezone=36", "dev=8ec0049"], "size"=>"5.48 GiB", "size_bytes"=>1591631872, "used"=>"448.00 KiB", "used_bytes"=>458752}, "/export"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool/export", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950163"], "size"=>"474.52 GiB", "size_bytes"=>-1588904448, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/export/home"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool/export/home", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950164"], "size"=>"474.52 GiB", "size_bytes"=>-1588905472, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/proc"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"proc", "filesystem"=>"proc", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8dc0024"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/rpool"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.00%", "device"=>"rpool", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc10", "sharezone=36", "dev=4950165"], "size"=>"474.52 GiB", "size_bytes"=>-1588905472, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/system/contract"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"ctfs", "filesystem"=>"ctfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8e40025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/object"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"objfs", "filesystem"=>"objfs", "options"=>["nodevices", "rstchown", "zone=cisparc10", "sharezone=36", "dev=8f00025"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/tmp"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.70%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc10", "sharezone=36", "dev=8ec004a"], "size"=>"5.52 GiB", "size_bytes"=>1632608256, "used"=>"39.52 MiB", "used_bytes"=>41435136}, "/var"=>{"available"=>"474.52 GiB", "available_bytes"=>-1588937216, "capacity"=>"0.03%", "device"=>"rpool/ROOT/zbe-0/var", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc10/root/var", "zone=cisparc10", "nozonemod", "sharezone=36", "dev=4950162"], "size"=>"474.66 GiB", "size_bytes"=>-1436724224, "used"=>"145.16 MiB", "used_bytes"=>152212992}, "/var/run"=>{"available"=>"5.48 GiB", "available_bytes"=>1591173120, "capacity"=>"0.01%", "device"=>"/etc/svc/volatile/", "filesystem"=>"lofs", "options"=>["rstchown", "zone=cisparc10", "sharezone=36", "dev=8ec0049"], "size"=>"5.48 GiB", "size_bytes"=>1591631872, "used"=>"448.00 KiB", "used_bytes"=>458752}}, "mtu_lo0"=>8232, "mtu_net0"=>1500, "netmask"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "netmask_net0"=>"255.255.255.0", "network"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "network_net0"=>"10.32.77.0", "networking"=>{"domain"=>"puppet.example", "fqdn"=>"solaris-10_u9-sparc-t4-64.puppet.example", "hostname"=>"solaris-10_u9-sparc-t4-64", "interfaces"=>{"lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "ip"=>"127.0.0.1", "mtu"=>8232, "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, "net0"=>{"bindings"=>[{"address"=>"10.32.77.42", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "ip"=>"10.32.77.42", "mac"=>"02:08:20:f1:97:4b", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}}, "ip"=>"10.32.77.42", "mac"=>"02:08:20:f1:97:4b", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"net0"}, "operatingsystem"=>"Solaris", "operatingsystemmajrelease"=>"10", "operatingsystemrelease"=>"10_u9", "os"=>{"architecture"=>"sun4v", "family"=>"Solaris", "hardware"=>"sun4v", "name"=>"Solaris", "release"=>{"full"=>"10_u9", "major"=>"10", "minor"=>"9"}}, "osfamily"=>"Solaris", "path"=>"/usr/local/bin:/usr/local/sbin:/opt/csw/bin:PATH:/opt/puppetlabs/bin:/usr/local/bin:/usr/local/sbin:/opt/csw/bin:/usr/sbin:/usr/bin:/sbin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"solaris-10-sparc", "processor0"=>"SPARC-T4", "processor1"=>"SPARC-T4", "processor10"=>"SPARC-T4", "processor11"=>"SPARC-T4", "processor12"=>"SPARC-T4", "processor13"=>"SPARC-T4", "processor14"=>"SPARC-T4", "processor15"=>"SPARC-T4", "processor16"=>"SPARC-T4", "processor17"=>"SPARC-T4", "processor18"=>"SPARC-T4", "processor19"=>"SPARC-T4", "processor2"=>"SPARC-T4", "processor20"=>"SPARC-T4", "processor21"=>"SPARC-T4", "processor22"=>"SPARC-T4", "processor23"=>"SPARC-T4", "processor24"=>"SPARC-T4", "processor25"=>"SPARC-T4", "processor26"=>"SPARC-T4", "processor27"=>"SPARC-T4", "processor28"=>"SPARC-T4", "processor29"=>"SPARC-T4", "processor3"=>"SPARC-T4", "processor30"=>"SPARC-T4", "processor31"=>"SPARC-T4", "processor32"=>"SPARC-T4", "processor33"=>"SPARC-T4", "processor34"=>"SPARC-T4", "processor35"=>"SPARC-T4", "processor36"=>"SPARC-T4", "processor37"=>"SPARC-T4", "processor38"=>"SPARC-T4", "processor39"=>"SPARC-T4", "processor4"=>"SPARC-T4", "processor40"=>"SPARC-T4", "processor41"=>"SPARC-T4", "processor42"=>"SPARC-T4", "processor43"=>"SPARC-T4", "processor44"=>"SPARC-T4", "processor45"=>"SPARC-T4", "processor46"=>"SPARC-T4", "processor47"=>"SPARC-T4", "processor48"=>"SPARC-T4", "processor49"=>"SPARC-T4", "processor5"=>"SPARC-T4", "processor50"=>"SPARC-T4", "processor51"=>"SPARC-T4", "processor52"=>"SPARC-T4", "processor53"=>"SPARC-T4", "processor54"=>"SPARC-T4", "processor55"=>"SPARC-T4", "processor56"=>"SPARC-T4", "processor57"=>"SPARC-T4", "processor58"=>"SPARC-T4", "processor59"=>"SPARC-T4", "processor6"=>"SPARC-T4", "processor60"=>"SPARC-T4", "processor61"=>"SPARC-T4", "processor62"=>"SPARC-T4", "processor63"=>"SPARC-T4", "processor7"=>" SPARC-T4", "processor8"=>"SPARC-T4", "processor9"=>"SPARC-T4", "processorcount"=>64, "processors"=>{"count"=>64, "isa"=>"sparc", "models"=>["SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4"], "physicalcount"=>1, "speed"=>"2.85 GHz"}, "puppet_files_dir_present"=>false, "puppetversion"=>"4.4.2", "ruby"=>{"platform"=>"sparc-solaris2.10", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.8"}, "rubyplatform"=>"sparc-solaris2.10", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.8", "solaris_zones"=>{"current"=>"solaris-10_u9-sparc-t4-64", "zones"=>{"solaris-10_u9-sparc-t4-64"=>{"brand"=>"solaris10", "id"=>"36", "ip_type"=>"excl", "path"=>"/", "status"=>"running"}}}, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 c9a8316e12052c89f9c8eea38c433c50950d5798", "sha256"=>"SSHFP 2 2 26773f31bd38b64224ee474eec7659dc05f23f8cb43e8352c1b58545bf5bbb15"}, "key"=>"AAAAB3NzaC1kc3MAAACBAIBt3ynjIBp7/uKbi9RdcO5DiIA0l7y4BmHsfm9042jYtMvIZkMF9cqwvxHjgoHW9JZGGNgIxUK/q0vjuGzctspVUovGBfL+m7F9Lp0rAHZVRkRm1wzGtjCPcdq35J9uVVj0YiHKvuuRvpooVtF55fe9ZfvwPBW41n9+eCX+yjY9AAAAFQC79jdm/KtE/8yXT6r1dMs63sF70wAAAIBC1yGHJcpRJt5NPi0t+eFQu6sDxxUeaaChW4u8BFLT4NXQ6SgBGW7FpT/zEaYEn2UZeQ8Mk3jAycUckyq5qSmWpunTHWdz8iKuuzPSyMgAYXwv0nGL+soRwGcjFdHIhCi2LGloN8JZpE/Kz2ry7yThwL7qMq3i8FFlovWDesAyzAAAAIATGYMDBcEnIY8+CvG3qFtsX4oM//ExuislYawqmChhp7A8IaMLeBoXmc3AdvvuZ/7CS/Kq/XwJApIPy9apRtqJp5zG5R9TvqEmCtCqtemvAmT0n9WsvDWev4YCIWj9wMiRlmT7HemL+5qFiKOmvo9lTd4NPRL3+gIPHCqXHyxacg=="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 ea3ecdaaf4d5112fe3148cb52385f928a3cc53f4", "sha256"=>"SSHFP 1 2 961dddd0fb580a5c0d1db74c16560fa37529cf4d162c13de99a880b1e91fd424"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAIEAz60kx84oy4edq6Nt2/SMQfQVVXoic/64JQ45EnwGKlMYvU3Okp3pT7uqyl+I5mXFjTB7wzLfIxzK5beofKDUbXNM5BwVeFQuZLR/hRusuvR5ntOce2kFMnyFteuvBue7Tg8YMGHAEM7fjfcqvuQgxWMELMJFwq0yUcl/aOL/o+U="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAIBt3ynjIBp7/uKbi9RdcO5DiIA0l7y4BmHsfm9042jYtMvIZkMF9cqwvxHjgoHW9JZGGNgIxUK/q0vjuGzctspVUovGBfL+m7F9Lp0rAHZVRkRm1wzGtjCPcdq35J9uVVj0YiHKvuuRvpooVtF55fe9ZfvwPBW41n9+eCX+yjY9AAAAFQC79jdm/KtE/8yXT6r1dMs63sF70wAAAIBC1yGHJcpRJt5NPi0t+eFQu6sDxxUeaaChW4u8BFLT4NXQ6SgBGW7FpT/zEaYEn2UZeQ8Mk3jAycUckyq5qSmWpunTHWdz8iKuuzPSyMgAYXwv0nGL+soRwGcjFdHIhCi2LGloN8JZpE/Kz2ry7yThwL7qMq3i8FFlovWDesAyzAAAAIATGYMDBcEnIY8+CvG3qFtsX4oM//ExuislYawqmChhp7A8IaMLeBoXmc3AdvvuZ/7CS/Kq/XwJApIPy9apRtqJp5zG5R9TvqEmCtCqtemvAmT0n9WsvDWev4YCIWj9wMiRlmT7HemL+5qFiKOmvo9lTd4NPRL3+gIPHCqXHyxacg==", "sshfp_dsa"=>"SSHFP 2 1 c9a8316e12052c89f9c8eea38c433c50950d5798\nSSHFP 2 2 26773f31bd38b64224ee474eec7659dc05f23f8cb43e8352c1b58545bf5bbb15", "sshfp_rsa"=>"SSHFP 1 1 ea3ecdaaf4d5112fe3148cb52385f928a3cc53f4\nSSHFP 1 2 961dddd0fb580a5c0d1db74c16560fa37529cf4d162c13de99a880b1e91fd424", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAIEAz60kx84oy4edq6Nt2/SMQfQVVXoic/64JQ45EnwGKlMYvU3Okp3pT7uqyl+I5mXFjTB7wzLfIxzK5beofKDUbXNM5BwVeFQuZLR/hRusuvR5ntOce2kFMnyFteuvBue7Tg8YMGHAEM7fjfcqvuQgxWMELMJFwq0yUcl/aOL/o+U=", "staging_http_get"=>"curl", "swapfree"=>"4.00 GiB", "swapfree_mb"=>4095.9921875, "swapsize"=>"4.00 GiB", "swapsize_mb"=>4095.9921875, "system_uptime"=>{"days"=>0, "hours"=>0, "seconds"=>1860, "uptime"=>"0:31 hours"}, "timezone"=>"PDT", "uptime"=>"0:31 hours", "uptime_days"=>0, "uptime_hours"=>0, "uptime_seconds"=>1860, "virtual"=>"zone", "zfs_featurenumbers"=>"1,2,3,4,5,6", "zfs_version"=>"6", "zone_cisparc10_brand"=>"solaris10", "zone_cisparc10_id"=>"36", "zone_cisparc10_iptype"=>"excl", "zone_cisparc10_name"=>"solaris-10_u9-sparc-t4-64", "zone_cisparc10_path"=>"/", "zone_cisparc10_status"=>"running", "zonename"=>"solaris-10_u9-sparc-t4-64", "zones"=>1, "zpool_featurenumbers"=>"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35", "zpool_version"=>"35", "clientcert"=>"solaris-10_u9-sparc-t4-64.puppet.example", "clientversion"=>"4.4.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'solaris-10_u9-sparc-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_solaris-11.2-sparc-64_spec.rb b/.onceover/spec/classes/role__windows_on_solaris-11.2-sparc-64_spec.rb new file mode 100644 index 0000000..72491ba --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_solaris-11.2-sparc-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set solaris-11.2-sparc-64" do + node_facts = {"aio_agent_build"=>"1.4.2", "aio_agent_version"=>"1.4.2", "architecture"=>"sun4v", "augeas"=>{"version"=>"1.4.0"}, "augeasversion"=>"1.4.0", "blockdevice_sd4_size"=>-1168154624, "blockdevice_sd4_vendor"=>"HITACHI", "blockdevice_sd5_size"=>-647710720, "blockdevice_sd5_vendor"=>"HITACHI", "blockdevice_sd6_size"=>0, "blockdevice_sd6_vendor"=>"AMI", "blockdevice_sd7_size"=>0, "blockdevice_sd7_vendor"=>"TEAC", "blockdevice_sd8_size"=>-1168154624, "blockdevice_sd8_vendor"=>"HITACHI", "blockdevice_sd9_size"=>-647710720, "blockdevice_sd9_vendor"=>"HITACHI", "blockdevices"=>"sd4,sd5,sd8,sd9,sd7,sd6", "custom_auth_conf"=>false, "dhcp_servers"=>{"net0"=>"10.32.22.10", "system"=>"10.32.22.10"}, "disks"=>{"sd4"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd5"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}, "sd6"=>{"product"=>"Virtual CDROM Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"AMI"}, "sd7"=>{"product"=>"DV-W28SS-W Revision", "size"=>"0 bytes", "size_bytes"=>0, "vendor"=>"TEAC"}, "sd8"=>{"product"=>"H109060SESUN600GRevision", "size"=>"558.91 GiB", "size_bytes"=>-1168154624, "vendor"=>"HITACHI"}, "sd9"=>{"product"=>"H109030SESUN300GRevision", "size"=>"279.40 GiB", "size_bytes"=>-647710720, "vendor"=>"HITACHI"}}, "dmi"=>{"manufacturer"=>"Oracle Corporation"}, "domain"=>"puppet.example", "facterversion"=>"3.1.6", "fqdn"=>"solaris-11_2-sparc-t4-64.puppet.example", "gid"=>"root", "hardwareisa"=>"sparc", "hardwaremodel"=>"sun4v", "hostname"=>"solaris-11_2-sparc-t4-64", "id"=>"root", "identity"=>{"gid"=>0, "group"=>"root", "uid"=>0, "user"=>"root"}, "interfaces"=>"lo0,net0", "ipaddress"=>"10.32.77.68", "ipaddress_lo0"=>"127.0.0.1", "ipaddress_net0"=>"10.32.77.68", "is_pe"=>false, "is_virtual"=>true, "kernel"=>"SunOS", "kernelmajversion"=>"11", "kernelrelease"=>"5.11", "kernelversion"=>"11.2", "load_averages"=>{"15m"=>1.0234375, "1m"=>1.21875, "5m"=>1.28125}, "macaddress"=>"02:08:20:41:26:8c", "macaddress_net0"=>"02:08:20:41:26:8c", "manufacturer"=>"Oracle Corporation", "memory"=>{"swap"=>{"available"=>"4.00 GiB", "available_bytes"=>-8192, "capacity"=>"0%", "total"=>"4.00 GiB", "total_bytes"=>-8192, "used"=>"0 bytes", "used_bytes"=>0}, "system"=>{"available"=>"2.34 GiB", "available_bytes"=>-1777401856, "capacity"=>"84.80%", "total"=>"15.43 GiB", "total_bytes"=>-611737600, "used"=>"13.09 GiB", "used_bytes"=>1165664256}}, "memoryfree"=>"2.34 GiB", "memoryfree_mb"=>2400.9375, "memorysize"=>"15.43 GiB", "memorysize_mb"=>15800.6015625, "mountpoints"=>{"/"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.18%", "device"=>"rpool/ROOT/solaris-0", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc/root/", "zone=cisparc", "nozonemod", "sharezone=38", "dev=495017b"], "size"=>"476.16 GiB", "size_bytes"=>175171072, "used"=>"889.53 MiB", "used_bytes"=>932736000}, "/dev"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"/dev", "filesystem"=>"dev", "options"=>["zone=cisparc", "nozonemod", "sharezone=38", "dev=8e0001c"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/dev/fd"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"fd", "filesystem"=>"fd", "options"=>["rw", "nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=9040027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/dfs/sharetab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"sharefs", "filesystem"=>"sharefs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8f40016"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/etc/mnttab"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"mnttab", "filesystem"=>"mntfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8e80027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/export"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/export", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=495017f"], "size"=>"475.29 GiB", "size_bytes"=>-757532160, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/export/home"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/export/home", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950180"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/proc"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"proc", "filesystem"=>"proc", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8dc0026"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/rpool"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950181"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}, "/system/contract"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"ctfs", "filesystem"=>"ctfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8e40027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/object"=>{"available"=>"0 bytes", "available_bytes"=>0, "capacity"=>"100%", "device"=>"objfs", "filesystem"=>"objfs", "options"=>["nodevices", "rstchown", "zone=cisparc", "sharezone=38", "dev=8f00027"], "size"=>"0 bytes", "size_bytes"=>0, "used"=>"0 bytes", "used_bytes"=>0}, "/system/volatile"=>{"available"=>"4.53 GiB", "available_bytes"=>571752448, "capacity"=>"0.01%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc", "sharezone=38", "dev=8ec004d"], "size"=>"4.53 GiB", "size_bytes"=>572342272, "used"=>"576.00 KiB", "used_bytes"=>589824}, "/tmp"=>{"available"=>"4.53 GiB", "available_bytes"=>571752448, "capacity"=>"0.95%", "device"=>"swap", "filesystem"=>"tmpfs", "options"=>["nodevices", "rstchown", "xattr", "zone=cisparc", "sharezone=38", "dev=8ec004e"], "size"=>"4.58 GiB", "size_bytes"=>618414080, "used"=>"44.50 MiB", "used_bytes"=>46661632}, "/var"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.05%", "device"=>"rpool/ROOT/solaris-0/var", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "mountpoint=/zones/cisparc/root/var", "zone=cisparc", "nozonemod", "sharezone=38", "dev=495017d"], "size"=>"475.51 GiB", "size_bytes"=>-521269760, "used"=>"225.35 MiB", "used_bytes"=>236295168}, "/var/share"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=495017e"], "size"=>"475.30 GiB", "size_bytes"=>-756610048, "used"=>"932.50 KiB", "used_bytes"=>954880}, "/var/share/pkg"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE/pkg", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950182"], "size"=>"475.29 GiB", "size_bytes"=>-757532160, "used"=>"32.00 KiB", "used_bytes"=>32768}, "/var/share/pkg/repositories"=>{"available"=>"475.29 GiB", "available_bytes"=>-757564928, "capacity"=>"0.00%", "device"=>"rpool/VARSHARE/pkg/repositories", "filesystem"=>"zfs", "options"=>["rw", "nodevices", "setuid", "nonbmand", "exec", "rstchown", "xattr", "atime", "zone=cisparc", "sharezone=38", "dev=4950183"], "size"=>"475.29 GiB", "size_bytes"=>-757533184, "used"=>"31.00 KiB", "used_bytes"=>31744}}, "mtu_lo0"=>8232, "mtu_net0"=>1500, "netmask"=>"255.255.255.0", "netmask_lo0"=>"255.0.0.0", "netmask_net0"=>"255.255.255.0", "network"=>"10.32.77.0", "network_lo0"=>"127.0.0.0", "network_net0"=>"10.32.77.0", "networking"=>{"dhcp"=>"10.32.22.10", "domain"=>"puppet.example", "fqdn"=>"solaris-11_2-sparc-t4-64.puppet.example", "hostname"=>"solaris-11_2-sparc-t4-64", "interfaces"=>{"lo0"=>{"bindings"=>[{"address"=>"127.0.0.1", "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}], "ip"=>"127.0.0.1", "mtu"=>8232, "netmask"=>"255.0.0.0", "network"=>"127.0.0.0"}, "net0"=>{"bindings"=>[{"address"=>"10.32.77.68", "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}], "dhcp"=>"10.32.22.10", "ip"=>"10.32.77.68", "mac"=>"02:08:20:41:26:8c", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0"}}, "ip"=>"10.32.77.68", "mac"=>"02:08:20:41:26:8c", "mtu"=>1500, "netmask"=>"255.255.255.0", "network"=>"10.32.77.0", "primary"=>"net0"}, "operatingsystem"=>"Solaris", "operatingsystemmajrelease"=>"11", "operatingsystemrelease"=>"11.2", "os"=>{"architecture"=>"sun4v", "family"=>"Solaris", "hardware"=>"sun4v", "name"=>"Solaris", "release"=>{"full"=>"11.2", "major"=>"11", "minor"=>"2"}}, "osfamily"=>"Solaris", "path"=>"PATH:/opt/puppetlabs/bin:/usr/sbin:/usr/bin:/sbin", "pe_concat_basedir"=>"/opt/puppetlabs/puppet/cache/pe_concat", "physicalprocessorcount"=>1, "platform_symlink_writable"=>true, "platform_tag"=>"solaris-11-sparc", "processor0"=>"SPARC-T4", "processor1"=>"SPARC-T4", "processor10"=>"SPARC-T4", "processor11"=>"SPARC-T4", "processor12"=>"SPARC-T4", "processor13"=>"SPARC-T4", "processor14"=>"SPARC-T4", "processor15"=>"SPARC-T4", "processor16"=>"SPARC-T4", "processor17"=>"SPARC-T4", "processor18"=>"SPARC-T4", "processor19"=>"SPARC-T4", "processor2"=>"SPARC-T4", "processor20"=>"SPARC-T4", "processor21"=>"SPARC-T4", "processor22"=>"SPARC-T4", "processor23"=>"SPARC-T4", "processor24"=>"SPARC-T4", "processor25"=>"SPARC-T4", "processor26"=>"SPARC-T4", "processor27"=>"SPARC-T4", "processor28"=>"SPARC-T4", "processor29"=>"SPARC-T4", "processor3"=>"SPARC-T4", "processor30"=>"SPARC-T4", "processor31"=>"SPARC-T4", "processor32"=>"SPARC-T4", "processor33"=>"SPARC-T4", "processor34"=>"SPARC-T4", "processor35"=>"SPARC-T4", "processor36"=>"SPARC-T4", "processor37"=>"SPARC-T4", "processor38"=>"SPARC-T4", "processor39"=>"SPARC-T4", "processor4"=>"SPARC-T4", "processor40"=>"SPARC-T4", "processor41"=>"SPARC-T4", "processor42"=>"SPARC-T4", "processor43"=>"SPARC-T4", "processor44"=>"SPARC-T4", "processor45"=>"SPARC-T4", "processor46"=>"SPARC-T4", "processor47"=>"SPARC-T4", "processor48"=>"SPARC-T4", "processor49"=>"SPARC-T4", "processor5"=>"SPARC-T4", "processor50"=>"SPARC-T4", "processor51"=>"SPARC-T4", "processor52"=>"SPARC-T4", "processor53"=>"SPARC-T4", "processor54"=>"SPARC-T4", "processor55"=>"SPARC-T4", "processor56"=>"SPARC-T4", "processor57"=>"SPARC-T4", "processor58"=>"SPARC-T4", "processor59"=>"SPARC-T4", "processor6"=>"SPARC-T4", "processor60"=>"SPARC-T4", "processor61"=>"SPARC-T4", "processor62"=>"SPARC-T4", "processor63"=>"SPARC-T4", "processor7"=>"SPARC-T4", "processor8"=>"SPARC-T4", "processor9"=>"SPARC-T4", "processorcount"=>64, "processors"=>{"count"=>64, "isa"=>"sparc", "models"=>["SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4", "SPARC-T4"], "physicalcount"=>1, "speed"=>"2.85 GHz"}, "puppet_files_dir_present"=>false, "puppetversion"=>"4.4.2", "ruby"=>{"platform"=>"sparc-solaris2.11", "sitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "version"=>"2.1.8"}, "rubyplatform"=>"sparc-solaris2.11", "rubysitedir"=>"/opt/puppetlabs/puppet/lib/ruby/site_ruby/2.1.0", "rubyversion"=>"2.1.8", "solaris_zones"=>{"current"=>"cisparc", "zones"=>{"cisparc"=>{"brand"=>"solaris", "id"=>"38", "ip_type"=>"excl", "path"=>"/", "status"=>"running", "uuid"=>"9903e75b-f048-4e38-83b3-977cde7b3782"}}}, "ssh"=>{"dsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 2 1 db349d276f0d3465ddf320d4f39d91349f1b576f", "sha256"=>"SSHFP 2 2 b8e58d26d36f2ce088034a1ce3be70b03ef404671f0c6ed3256152af9c9ad607"}, "key"=>"AAAAB3NzaC1kc3MAAACBAMVAhiKM1nrem5tlbgwagi6NKV1e6RIpLxXj+vovBAb/vWf6+in2lBrxLqljbxYWq1XTOJoXUTybb24gpnDwZC2v/5TytqJ35P4ptOH1fY2zthRnkgyYUMfF7nLslOgoy24A19uwmR3lhFpklhCUe1xkMHOXkToujrfym+nwpFZ5AAAAFQDRqOSYA1u47UtVMg4zXL0txwFHIwAAAIBNxcSYfeOSQrkFawbG0GQpSNs2Z/iqFDbJFz/Ha1xkitkpmBBNizRva5tqNR8uaK/VHoIdaK7Rn1qS/D2Sl3w4Ps4UhEN9qOOylQplUmqb4JAFtAFInDMIHz/69SYMyBJ9eXQHh8mOeLX8s2lQow+Z/iOVpAlGIB0PxrHClqSN5AAAAIEAqHqE/Ry0hL98YpXRvMw0kpMl439iXQjzfx3IgJzSScNpNx3G5QDDysSu8dzanOvqXxJ0ynwc1LxuXhuvq4hJ990snyYLOgNOOJ5v86G1TkXTq3Ny0gb+7efiwI7u4xIY6WrQeXt32hbRY0kF/MswmKjz3NSBK6jozSNwHlP6jeA="}, "rsa"=>{"fingerprints"=>{"sha1"=>"SSHFP 1 1 865be76b66792c0d98006a6ed5227f19f8241cf3", "sha256"=>"SSHFP 1 2 c74d9f97237b06070909f30fbb68afbe0943450a8ea3d1b85fb16db53441a824"}, "key"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA8bZpHkHvgZEBhn7qlupS61DjwXYOnTVFuaOaDI6eesXxU1yDJfEqO1eHp6YF6x5gmM/mDyfFU9hixMmH9yLRgi2/QUhoYa44z8NB3EBaHxFtLQLnoFTGq/VR5xZ+pyBcbwUswvDel3OfXTcepmT6lWLCBRLOfYTc6hzwRCfyrWgdVc3kruu9hh9pKIWFEyUUztHWuR7+akNH3nD+EcqsmuMowEzzssWC8msWnAX89geFPuhilAgz7Qcc1bJZUaWGgOzyaZKn3IVNNa3grOWzgKDE6gdLMefnk0dgndtIbB1E9iY1syosQCrBIiEfMMGEBjrDstcNKs+Ge8stRljjMw=="}}, "sshdsakey"=>"AAAAB3NzaC1kc3MAAACBAMVAhiKM1nrem5tlbgwagi6NKV1e6RIpLxXj+vovBAb/vWf6+in2lBrxLqljbxYWq1XTOJoXUTybb24gpnDwZC2v/5TytqJ35P4ptOH1fY2zthRnkgyYUMfF7nLslOgoy24A19uwmR3lhFpklhCUe1xkMHOXkToujrfym+nwpFZ5AAAAFQDRqOSYA1u47UtVMg4zXL0txwFHIwAAAIBNxcSYfeOSQrkFawbG0GQpSNs2Z/iqFDbJFz/Ha1xkitkpmBBNizRva5tqNR8uaK/VHoIdaK7Rn1qS/D2Sl3w4Ps4UhEN9qOOylQplUmqb4JAFtAFInDMIHz/69SYMyBJ9eXQHh8mOeLX8s2lQow+Z/iOVpAlGIB0PxrHClqSN5AAAAIEAqHqE/Ry0hL98YpXRvMw0kpMl439iXQjzfx3IgJzSScNpNx3G5QDDysSu8dzanOvqXxJ0ynwc1LxuXhuvq4hJ990snyYLOgNOOJ5v86G1TkXTq3Ny0gb+7efiwI7u4xIY6WrQeXt32hbRY0kF/MswmKjz3NSBK6jozSNwHlP6jeA=", "sshfp_dsa"=>"SSHFP 2 1 db349d276f0d3465ddf320d4f39d91349f1b576f\nSSHFP 2 2 b8e58d26d36f2ce088034a1ce3be70b03ef404671f0c6ed3256152af9c9ad607", "sshfp_rsa"=>"SSHFP 1 1 865be76b66792c0d98006a6ed5227f19f8241cf3\nSSHFP 1 2 c74d9f97237b06070909f30fbb68afbe0943450a8ea3d1b85fb16db53441a824", "sshrsakey"=>"AAAAB3NzaC1yc2EAAAABIwAAAQEA8bZpHkHvgZEBhn7qlupS61DjwXYOnTVFuaOaDI6eesXxU1yDJfEqO1eHp6YF6x5gmM/mDyfFU9hixMmH9yLRgi2/QUhoYa44z8NB3EBaHxFtLQLnoFTGq/VR5xZ+pyBcbwUswvDel3OfXTcepmT6lWLCBRLOfYTc6hzwRCfyrWgdVc3kruu9hh9pKIWFEyUUztHWuR7+akNH3nD+EcqsmuMowEzzssWC8msWnAX89geFPuhilAgz7Qcc1bJZUaWGgOzyaZKn3IVNNa3grOWzgKDE6gdLMefnk0dgndtIbB1E9iY1syosQCrBIiEfMMGEBjrDstcNKs+Ge8stRljjMw==", "staging_http_get"=>"curl", "swapfree"=>"4.00 GiB", "swapfree_mb"=>4095.9921875, "swapsize"=>"4.00 GiB", "swapsize_mb"=>4095.9921875, "system_uptime"=>{"days"=>2, "hours"=>62, "seconds"=>225780, "uptime"=>"2 days"}, "timezone"=>"PDT", "uptime"=>"2 days", "uptime_days"=>2, "uptime_hours"=>62, "uptime_seconds"=>225780, "virtual"=>"zone", "zfs_featurenumbers"=>"1,2,3,4,5,6", "zfs_version"=>"6", "zone_cisparc_brand"=>"solaris", "zone_cisparc_id"=>"38", "zone_cisparc_iptype"=>"excl", "zone_cisparc_name"=>"cisparc", "zone_cisparc_path"=>"/", "zone_cisparc_status"=>"running", "zone_cisparc_uuid"=>"9903e75b-f048-4e38-83b3-977cde7b3782", "zonename"=>"cisparc", "zones"=>1, "zpool_featurenumbers"=>"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35", "zpool_version"=>"35", "clientcert"=>"solaris-11_2-sparc-t4-64.puppet.example", "clientversion"=>"4.4.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'solaris-11.2-sparc-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/classes/role__windows_on_windows-10-64_spec.rb b/.onceover/spec/classes/role__windows_on_windows-10-64_spec.rb new file mode 100644 index 0000000..1ffff6f --- /dev/null +++ b/.onceover/spec/classes/role__windows_on_windows-10-64_spec.rb @@ -0,0 +1,40 @@ +require 'spec_helper' + +describe "role::windows" do + + context "using fact set windows-10-64" do + node_facts = {"puppetversion"=>"6.0.2", "puppet_inventory_metadata"=>{"packages"=>{"collection_enabled"=>false, "last_collection_time"=>"0.0s"}}, "package_provider"=>"windows", "pe_concat_basedir"=>"C:/ProgramData/PuppetLabs/puppet/cache/pe_concat", "is_pe"=>false, "platform_symlink_writable"=>false, "puppet_files_dir_present"=>false, "puppet_vardir"=>"C:/ProgramData/PuppetLabs/puppet/cache", "puppet_environmentpath"=>"C:/ProgramData/PuppetLabs/code/environments", "puppet_server"=>"pe-puppet.localdomain", "service_provider"=>"windows", "staging_http_get"=>"curl", "common_appdata"=>"C:\\ProgramData", "architecture"=>"x64", "kernel"=>"windows", "virtual"=>"vmware", "is_virtual"=>true, "hardwaremodel"=>"x64", "operatingsystem"=>"windows", "os"=>{"name"=>"windows", "family"=>"windows", "release"=>{"major"=>"10", "full"=>"10"}}, "facterversion"=>"2.5.1", "fqdn"=>"VAGRANT-HB9G3RD", "hostname"=>"VAGRANT-HB9G3RD", "id"=>"vagrant-hb9g3rd\\vagrant", "interfaces"=>"Ethernet0_2", "ipaddress_ethernet0_2"=>"192.168.43.174", "ipaddress6_ethernet0_2"=>"fd72:b3ab:b8dd:0:f563:fac2:928c:6aa", "macaddress_ethernet0_2"=>"00:0C:29:A3:53:54", "netmask_ethernet0_2"=>"255.255.255.0", "mtu_ethernet0_2"=>0, "ipaddress"=>"192.168.43.174", "ipaddress6"=>"fd72:b3ab:b8dd:0:f563:fac2:928c:6aa", "kernelmajversion"=>"10.0", "kernelrelease"=>"10.0.17134", "kernelversion"=>"10.0.17134", "macaddress"=>"00:0C:29:A3:53:54", "manufacturer"=>"Phoenix Technologies LTD", "serialnumber"=>"VMware-56 4d 36 2e 2e a4 81 f9-0d 05 ae d0 e5 a3 53 54", "productname"=>"VMware Virtual Platform", "memorysize"=>"4.00 GB", "memoryfree"=>"2.30 GB", "memorysize_mb"=>"4095.49", "memoryfree_mb"=>"2360.00", "netmask"=>"255.255.255.0", "network_ethernet0_2"=>"192.168.43.0", "operatingsystemmajrelease"=>"10", "operatingsystemrelease"=>"10", "osfamily"=>"windows", "path"=>"C:\\tools\\ruby24\\bin;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;C:\\ProgramData\\chocolatey\\bin;C:\\Program Files (x86)\\vim\\vim80;C:\\Program Files\\Git\\cmd;C:\\Program Files\\Puppet Labs\\Puppet\\bin;C:\\Users\\vagrant\\AppData\\Local\\Microsoft\\WindowsApps;", "physicalprocessorcount"=>4, "processors"=>{"models"=>["Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz"], "count"=>4, "physicalcount"=>4}, "processor0"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor1"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor2"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processor3"=>"Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz", "processorcount"=>4, "ps"=>"tasklist.exe", "rubyplatform"=>"x64-mingw32", "rubysitedir"=>"C:/tools/ruby24/lib/ruby/site_ruby/2.4.0", "rubyversion"=>"2.4.3", "system32"=>"C:\\Windows\\system32", "system_uptime"=>{"seconds"=>1113359, "hours"=>309, "days"=>12, "uptime"=>"12 days"}, "timezone"=>"GMT Standard Time", "uptime"=>"12 days", "uptime_days"=>12, "uptime_hours"=>309, "uptime_seconds"=>1113359, "clientcert"=>"vagrant-hb9g3rd.lan.asio", "clientversion"=>"6.0.2", "clientnoop"=>false} + let(:facts) { node_facts } + + + before :each do + # Curtrently there is some code within Puppet that will try to execute + # commands when compiling a catalog even though it shouldn't. One example is + # the groups attribute of the user resource on AIX. If we are running on + # Windows but pretending to be UNIX this will definitely fail so we need to + # mock it (or vice versa) + # Details: + # https://github.com/puppetlabs/puppet/blob/master/lib/puppet/util/execution.rb#L191 + expected_null_file = Puppet::Util::Platform.windows? ? 'NUL' : '/dev/null' + unless File.exist? expected_null_file + allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("Onceover caused this")) + end + end + + let(:pre_condition) { + pp = <<-'END' +$onceover_class = 'role::windows' +$onceover_node = 'windows-10-64' + +# Begin user-specified pre_condition + +# End user-specified pre_condition + + +END + } + + it { should compile } + end +end + diff --git a/.onceover/spec/factsets/README.md b/.onceover/spec/factsets/README.md new file mode 100644 index 0000000..dd72566 --- /dev/null +++ b/.onceover/spec/factsets/README.md @@ -0,0 +1,7 @@ +# Factsets + +This directory is where we put any custom factsets that we want to use. They can be generated by running `puppet facts` on the target system. + +**Hot tip:** If you already have factsets in here when you run `onceover init` they will be picked up and added to the config file Automatically + +More info: https://github.com/dylanratcliffe/onceover#factsets diff --git a/.onceover/spec/onceover.yaml b/.onceover/spec/onceover.yaml new file mode 100644 index 0000000..598b2fe --- /dev/null +++ b/.onceover/spec/onceover.yaml @@ -0,0 +1,61 @@ +# Classes to be tested +classes: + - role::metrics + - role::puppetserver + - role::windows + - role::node + - role::custom_windows + +# Nodes to tests classes on, this refers to a 'factset' or 'nodeset' +# depending on whether you are running 'spec' or 'acceptance' tests +nodes: + - AIX-7.1-powerpc + - SLES-12.1-64 + - Debian-6.0.10-32 + - CentOS-6.6-64 + - Ubuntu-12.04-32 + - Amazon-2018.03 + - Ubuntu-12.04-64 + - CentOS-6.6-32 + - Debian-6.0.10-64 + - AIX-6.1-powerpc + - Windows_Server-2012r2-64 + - Ubuntu-18.04-64 + - RHEL-7.4 + - Debian-7.8-32 + - windows-10-64 + - Windows_Server-2008r2-64 + - SLES-11.3-64 + - Debian-7.8-64 + - solaris-10_u9-sparc-64 + - solaris-11.2-sparc-64 + - Ubuntu-14.04-32 + - CentOS-5.11-64 + - CentOS-5.11-32 + - RHEL-6.7 + - CentOS-7.0-64 + - Ubuntu-14.04-64 + +# You can group classes here to save typing +class_groups: + +# You can group nodes here to save typing +# We have created a 'non_windows_nodes' group because we can't +# give you Windows vagrant boxes to test with because licensing, +# we can give you fact sets though so go crazy with spec testing! +node_groups: + windows_nodes: + - Windows_Server-2012r2-64 + - windows-10-64 + - Windows_Server-2008r2-64 + non_windows_nodes: + include: 'all_nodes' + exclude: 'windows_nodes' + +test_matrix: + - all_nodes: + classes: 'all_classes' + tests: 'spec' + - non_windows_nodes: + classes: 'all_classes' + tests: 'acceptance' \ No newline at end of file diff --git a/.onceover/spec/pre_conditions/README.md b/.onceover/spec/pre_conditions/README.md new file mode 100644 index 0000000..f0a81bf --- /dev/null +++ b/.onceover/spec/pre_conditions/README.md @@ -0,0 +1,24 @@ +# Pre Conditions + +This folder should contain any \*.pp files that you want to be included in every test. + +A common use of this is defining resources that may not exist in the catalog when you are running tests. For example, if we are using a resource that tries to restart the `pe-puppetserver` service, unless it is compiled on a Puppet Maser the `pe-puppetserver` service will not exist and the catalog will fail to compile. To get around this we can create a .pp file and define the resource like so: + +``` puppet +# We are not going to actually have this service anywhere on our servers but +# our code needs to refresh it. This is to trick puppet into doing nothing +service { 'pe-puppetserver': + ensure => 'running', + enable => false, + hasrestart => false, # Force Puppet to use start and stop to restart + start => 'echo "Start"', # This will always exit 0 + stop => 'echo "Stop"', # This will also always exit 0 + hasstatus => false, # Force puppet to use our command for status + status => 'echo "Status"', # This will always exit 0 and therefore Puppet will think the service is running + provider => 'base', +} +``` + +This will mean that the `pe-puppetserver` service is in the catalog for spec testing and will even allow you to try to restart it during acceptance tests without the service actually being present. + +More info: https://github.com/dylanratcliffe/onceover#using-workarounds diff --git a/.onceover/spec/spec_helper.rb b/.onceover/spec/spec_helper.rb new file mode 100644 index 0000000..14487f8 --- /dev/null +++ b/.onceover/spec/spec_helper.rb @@ -0,0 +1,31 @@ +RSpec.configure do |c| + c.mock_with :rspec +end + +require 'puppetlabs_spec_helper/module_spec_helper' +require 'rspec_junit_formatter' +require 'onceover/rspec/formatters' + +RSpec.configure do |c| + # Create onceover settings to be accessed by formatters + c.add_setting :onceover_tempdir + c.add_setting :onceover_root + c.add_setting :onceover_environmentpath + + c.onceover_tempdir = "/Users/christopher.lawrence/projects/control-repo/.onceover" + c.onceover_root = "/Users/christopher.lawrence/projects/control-repo" + c.onceover_environmentpath = "etc/puppetlabs/code/environments" + + # Also add JUnit output in case people want to use that + c.add_formatter('RSpecJUnitFormatter','/Users/christopher.lawrence/projects/control-repo/.onceover/spec.xml') + + c.parser = 'future' + c.formatter = 'OnceoverFormatter' + c.trusted_server_facts = true + c.environmentpath = '/Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments' + c.module_path = '/Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/site-modules:/Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/modules' + + c.hiera_config = '/Users/christopher.lawrence/projects/control-repo/.onceover/etc/puppetlabs/code/environments/production/hiera.yaml' + c.manifest = '' + ENV['STRICT_VARIABLES'] = 'no' +end diff --git a/.onceover/spec/spec_helper_acceptance.rb b/.onceover/spec/spec_helper_acceptance.rb new file mode 100644 index 0000000..a922f3f --- /dev/null +++ b/.onceover/spec/spec_helper_acceptance.rb @@ -0,0 +1 @@ +require 'onceover/beaker/spec_helper' diff --git a/site-modules/profile/Gemfile.lock b/site-modules/profile/Gemfile.lock new file mode 100644 index 0000000..15d0e63 --- /dev/null +++ b/site-modules/profile/Gemfile.lock @@ -0,0 +1,391 @@ +GEM + remote: https://rubygems.org/ + specs: + CFPropertyList (2.3.6) + activesupport (5.2.3) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 0.7, < 2) + minitest (~> 5.1) + tzinfo (~> 1.1) + addressable (2.7.0) + public_suffix (>= 2.0.2, < 5.0) + ansi (1.5.0) + ast (2.4.0) + aws-eventstream (1.0.3) + aws-partitions (1.232.0) + aws-sdk-core (3.72.1) + aws-eventstream (~> 1.0, >= 1.0.2) + aws-partitions (~> 1, >= 1.228.0) + aws-sigv4 (~> 1.1) + jmespath (~> 1.0) + aws-sdk-ec2 (1.114.0) + aws-sdk-core (~> 3, >= 3.71.0) + aws-sigv4 (~> 1.1) + aws-sigv4 (1.1.0) + aws-eventstream (~> 1.0, >= 1.0.2) + bindata (2.4.4) + bolt (1.35.0) + CFPropertyList (~> 2.2) + addressable (~> 2.5) + aws-sdk-ec2 (~> 1) + concurrent-ruby (~> 1.0) + hiera-eyaml (~> 3) + logging (~> 2.2) + minitar (~> 0.6) + net-scp (~> 1.2) + net-ssh (>= 4.0) + orchestrator_client (~> 0.4) + puppet (>= 6.4.0, < 7) + puppet-resource_api (>= 1.8.1) + r10k (~> 3.1) + ruby_smb (~> 1.0) + terminal-table (~> 1.8) + winrm (~> 2.0) + winrm-fs (~> 1.3) + builder (3.2.3) + childprocess (0.7.1) + ffi (~> 1.0, >= 1.0.11) + codecov (0.1.16) + json + simplecov + url + coderay (1.1.2) + colored (1.2) + concurrent-ruby (1.1.5) + connection_pool (2.2.2) + cri (2.15.6) + deep_merge (1.2.1) + dependency_checker (0.2.0) + parallel + puppet_forge (~> 2.2) + rake (~> 12.3) + semantic_puppet (~> 1.0) + diff-lcs (1.3) + docile (1.3.2) + docker-api (1.34.2) + excon (>= 0.47.0) + multi_json + domain_name (0.5.20190701) + unf (>= 0.0.5, < 1.0.0) + equatable (0.6.1) + erubis (2.7.0) + excon (0.68.0) + facter (2.5.6) + facterdb (0.8.2) + facter + jgrep + faraday (0.13.1) + multipart-post (>= 1.2, < 3) + faraday_middleware (0.12.2) + faraday (>= 0.7.4, < 1.0) + fast_gettext (1.1.2) + ffi (1.9.25) + gettext (3.2.9) + locale (>= 2.0.5) + text (>= 1.3.0) + gettext-setup (0.31) + fast_gettext (~> 1.1.0) + gettext (>= 3.0.2) + locale + gssapi (1.3.0) + ffi (>= 1.0.1) + gyoku (1.3.1) + builder (>= 2.1.2) + hiera (3.6.0) + hiera-eyaml (3.0.0) + highline (~> 1.6.19) + optimist + highline (1.6.21) + hirb (0.7.3) + hitimes (1.3.0) + hocon (1.3.0) + http-accept (1.7.0) + http-cookie (1.0.3) + domain_name (~> 0.5) + httpclient (2.8.3) + i18n (1.7.0) + concurrent-ruby (~> 1.0) + jgrep (1.5.1) + jmespath (1.4.0) + json (2.1.0) + json-schema (2.8.0) + addressable (>= 2.4) + json_pure (2.1.0) + little-plugger (1.1.4) + locale (2.1.2) + log4r (1.1.10) + logging (2.2.2) + little-plugger (~> 1.1) + multi_json (~> 1.10) + metaclass (0.0.4) + metadata-json-lint (2.2.0) + json-schema (~> 2.8) + spdx-licenses (~> 1.0) + method_source (0.8.2) + mime-types (3.3) + mime-types-data (~> 3.2015) + mime-types-data (3.2019.1009) + minitar (0.9) + minitest (5.13.0) + mocha (1.1.0) + metaclass (~> 0.0.1) + multi_json (1.14.1) + multipart-post (2.1.1) + necromancer (0.5.0) + net-http-persistent (3.1.0) + connection_pool (~> 2.2) + net-scp (1.2.1) + net-ssh (>= 2.6.5) + net-ssh (5.2.0) + net-telnet (0.1.1) + netrc (0.11.0) + nori (2.6.0) + optimist (3.0.0) + orchestrator_client (0.4.3) + faraday + net-http-persistent + parallel (1.19.1) + parallel_tests (2.14.2) + parallel + parser (2.5.1.2) + ast (~> 2.4.0) + pastel (0.7.3) + equatable (~> 0.6) + tty-color (~> 0.5) + pathspec (0.2.1) + pdk (1.14.1) + bundler (>= 1.15.0, < 3.0.0) + childprocess (~> 0.7.1) + concurrent-ruby (~> 1.1.5) + cri (~> 2.10) + deep_merge (~> 1.1) + diff-lcs (= 1.3) + facter (~> 2.5.1) + ffi (~> 1.9.0) + gettext-setup (~> 0.24) + hitimes (= 1.3.0) + httpclient (~> 2.8.3) + json-schema (= 2.8.0) + json_pure (~> 2.1.0) + minitar (~> 0.6) + pathspec (~> 0.2.1) + tty-prompt (~> 0.13) + tty-spinner (~> 0.5) + tty-which (~> 0.3) + powerpack (0.1.2) + pry (0.10.4) + coderay (~> 1.1.0) + method_source (~> 0.8.1) + slop (~> 3.4) + public_suffix (4.0.1) + puppet (6.11.1) + concurrent-ruby (~> 1.0) + deep_merge (~> 1.0) + facter (> 2.0.1, < 4) + fast_gettext (~> 1.1) + hiera (>= 3.2.1, < 4) + httpclient (~> 2.8) + locale (~> 2.1) + multi_json (~> 1.10) + puppet-resource_api (~> 1.5) + semantic_puppet (~> 1.0) + puppet-blacksmith (5.0.0) + rest-client (~> 2.0) + puppet-lint (2.4.2) + puppet-module-posix-default-r2.5 (0.4.2) + puppet-module-posix-dev-r2.5 (0.4.2) + activesupport (>= 5.0.0, < 6.0.0) + codecov (~> 0.1.10) + dependency_checker (~> 0.2) + facterdb (~> 0.8.1) + gettext-setup (~> 0.26) + metadata-json-lint (>= 2.0.2, < 3.0.0) + mocha (>= 1.0.0, < 1.2.0) + parallel_tests (>= 2.14.1, < 2.14.3) + parser (~> 2.5.1.2) + pry (~> 0.10.4) + puppet-blacksmith (>= 3.4.0) + puppet-lint (>= 2.3.0, < 3.0.0) + puppet-resource_api (~> 1.6) + puppet-strings (~> 2.0) + puppet-syntax (>= 2.4.1, < 3.0.0) + puppet_litmus (>= 0.4.0, < 1.0.0) + puppet_pot_generator (~> 1.0) + puppetlabs_spec_helper (>= 2.9.0, < 3.0.0) + rainbow (~> 2.0) + rspec-puppet (>= 2.3.2, < 3.0.0) + rspec-puppet-facts (~> 1.9.5) + rspec_junit_formatter (~> 0.2) + rubocop (~> 0.49.0) + rubocop-i18n (~> 1.2.0) + rubocop-rspec (~> 1.16.0) + serverspec (~> 2.41) + simplecov (>= 0.14.1, < 1.0.0) + simplecov-console (~> 0.4.2) + specinfra (= 2.77.1) + puppet-resource_api (1.8.7) + hocon (>= 1.0) + puppet-strings (2.3.1) + rgen + yard (~> 0.9.5) + puppet-syntax (2.6.0) + rake + puppet_forge (2.3.0) + faraday (>= 0.9.0, < 0.14.0) + faraday_middleware (>= 0.9.0, < 0.13.0) + gettext-setup (~> 0.11) + minitar + semantic_puppet (~> 1.0) + puppet_litmus (0.12.0) + bolt (>= 1.13.1, < 2.0.0) + docker-api (>= 1.34, < 2.0.0) + pdk (>= 1.10.0, < 2.0.0) + tty-spinner (>= 0.5.0, < 1.0.0) + puppet_pot_generator (1.0.1) + puppet + puppetlabs_spec_helper (2.14.1) + mocha (~> 1.0) + pathspec (~> 0.2.1) + puppet-lint (~> 2.0) + puppet-syntax (~> 2.0) + rspec-puppet (~> 2.0) + r10k (3.3.3) + colored (= 1.2) + cri (= 2.15.6) + gettext-setup (~> 0.24) + log4r (= 1.1.10) + multi_json (~> 1.10) + puppet_forge (~> 2.3.0) + rainbow (2.2.2) + rake + rake (12.3.3) + rest-client (2.1.0) + http-accept (>= 1.7.0, < 2.0) + http-cookie (>= 1.0.2, < 2.0) + mime-types (>= 1.16, < 4.0) + netrc (~> 0.8) + rgen (0.8.2) + rspec (3.9.0) + rspec-core (~> 3.9.0) + rspec-expectations (~> 3.9.0) + rspec-mocks (~> 3.9.0) + rspec-core (3.9.0) + rspec-support (~> 3.9.0) + rspec-expectations (3.9.0) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.9.0) + rspec-its (1.3.0) + rspec-core (>= 3.0.0) + rspec-expectations (>= 3.0.0) + rspec-mocks (3.9.0) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.9.0) + rspec-puppet (2.7.8) + rspec + rspec-puppet-facts (1.9.6) + facter + facterdb (>= 0.5.0) + json + puppet + rspec-support (3.9.0) + rspec_junit_formatter (0.4.1) + rspec-core (>= 2, < 4, != 2.12.0) + rubocop (0.49.1) + parallel (~> 1.10) + parser (>= 2.3.3.1, < 3.0) + powerpack (~> 0.1) + rainbow (>= 1.99.1, < 3.0) + ruby-progressbar (~> 1.7) + unicode-display_width (~> 1.0, >= 1.0.1) + rubocop-i18n (1.2.0) + rubocop (~> 0.49.0) + rubocop-rspec (1.16.0) + rubocop (>= 0.49.0) + ruby-progressbar (1.10.1) + ruby_smb (1.1.0) + bindata + rubyntlm + windows_error + rubyntlm (0.6.2) + rubyzip (1.3.0) + semantic_puppet (1.0.2) + serverspec (2.41.5) + multi_json + rspec (~> 3.0) + rspec-its + specinfra (~> 2.72) + sfl (2.3) + simplecov (0.17.1) + docile (~> 1.1) + json (>= 1.8, < 3) + simplecov-html (~> 0.10.0) + simplecov-console (0.4.2) + ansi + hirb + simplecov + simplecov-html (0.10.2) + slop (3.6.0) + spdx-licenses (1.2.0) + specinfra (2.77.1) + net-scp + net-ssh (>= 2.7) + net-telnet (= 0.1.1) + sfl + terminal-table (1.8.0) + unicode-display_width (~> 1.1, >= 1.1.1) + text (1.3.1) + thread_safe (0.3.6) + tty-color (0.5.0) + tty-cursor (0.7.0) + tty-prompt (0.19.0) + necromancer (~> 0.5.0) + pastel (~> 0.7.0) + tty-reader (~> 0.6.0) + tty-reader (0.6.0) + tty-cursor (~> 0.7) + tty-screen (~> 0.7) + wisper (~> 2.0.0) + tty-screen (0.7.0) + tty-spinner (0.9.1) + tty-cursor (~> 0.7) + tty-which (0.4.1) + tzinfo (1.2.5) + thread_safe (~> 0.1) + unf (0.1.4) + unf_ext + unf_ext (0.0.7.6) + unicode-display_width (1.6.0) + url (0.3.2) + windows_error (0.1.2) + winrm (2.3.2) + builder (>= 2.1.2) + erubis (~> 2.7) + gssapi (~> 1.2) + gyoku (~> 1.0) + httpclient (~> 2.2, >= 2.2.0.2) + logging (>= 1.6.1, < 3.0) + nori (~> 2.0) + rubyntlm (~> 0.6.0, >= 0.6.1) + winrm-fs (1.3.2) + erubis (~> 2.7) + logging (>= 1.6.1, < 3.0) + rubyzip (~> 1.1) + winrm (~> 2.0) + wisper (2.0.1) + yard (0.9.20) + +PLATFORMS + ruby + +DEPENDENCIES + fast_gettext + json (= 2.1.0) + puppet (= 6.11.1) + puppet-module-posix-default-r2.5 (~> 0.3) + puppet-module-posix-dev-r2.5 (~> 0.3) + puppet-module-win-default-r2.5 (~> 0.3) + puppet-module-win-dev-r2.5 (~> 0.3) + rb-readline (= 0.5.5) + +BUNDLED WITH + 1.17.3 diff --git a/site-modules/profile/bin/metadata-json-lint b/site-modules/profile/bin/metadata-json-lint new file mode 100755 index 0000000..b8deed2 --- /dev/null +++ b/site-modules/profile/bin/metadata-json-lint @@ -0,0 +1,29 @@ +#!/usr/bin/env ruby +# frozen_string_literal: true + +# +# This file was generated by Bundler. +# +# The application 'metadata-json-lint' is installed as part of a gem, and +# this file is here to facilitate running it. +# + +require "pathname" +ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile", + Pathname.new(__FILE__).realpath) + +bundle_binstub = File.expand_path("../bundle", __FILE__) + +if File.file?(bundle_binstub) + if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/ + load(bundle_binstub) + else + abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run. +Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.") + end +end + +require "rubygems" +require "bundler/setup" + +load Gem.bin_path("metadata-json-lint", "metadata-json-lint") diff --git a/site-modules/profile/bin/puppet b/site-modules/profile/bin/puppet new file mode 100755 index 0000000..f88843f --- /dev/null +++ b/site-modules/profile/bin/puppet @@ -0,0 +1,29 @@ +#!/usr/bin/env ruby +# frozen_string_literal: true + +# +# This file was generated by Bundler. +# +# The application 'puppet' is installed as part of a gem, and +# this file is here to facilitate running it. +# + +require "pathname" +ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile", + Pathname.new(__FILE__).realpath) + +bundle_binstub = File.expand_path("../bundle", __FILE__) + +if File.file?(bundle_binstub) + if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/ + load(bundle_binstub) + else + abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run. +Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.") + end +end + +require "rubygems" +require "bundler/setup" + +load Gem.bin_path("puppet", "puppet") diff --git a/site-modules/profile/bin/puppet-lint b/site-modules/profile/bin/puppet-lint new file mode 100755 index 0000000..ca4e467 --- /dev/null +++ b/site-modules/profile/bin/puppet-lint @@ -0,0 +1,29 @@ +#!/usr/bin/env ruby +# frozen_string_literal: true + +# +# This file was generated by Bundler. +# +# The application 'puppet-lint' is installed as part of a gem, and +# this file is here to facilitate running it. +# + +require "pathname" +ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile", + Pathname.new(__FILE__).realpath) + +bundle_binstub = File.expand_path("../bundle", __FILE__) + +if File.file?(bundle_binstub) + if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/ + load(bundle_binstub) + else + abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run. +Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.") + end +end + +require "rubygems" +require "bundler/setup" + +load Gem.bin_path("puppet-lint", "puppet-lint") diff --git a/site-modules/profile/bin/rubocop b/site-modules/profile/bin/rubocop new file mode 100755 index 0000000..d0c4882 --- /dev/null +++ b/site-modules/profile/bin/rubocop @@ -0,0 +1,29 @@ +#!/usr/bin/env ruby +# frozen_string_literal: true + +# +# This file was generated by Bundler. +# +# The application 'rubocop' is installed as part of a gem, and +# this file is here to facilitate running it. +# + +require "pathname" +ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile", + Pathname.new(__FILE__).realpath) + +bundle_binstub = File.expand_path("../bundle", __FILE__) + +if File.file?(bundle_binstub) + if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/ + load(bundle_binstub) + else + abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run. +Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.") + end +end + +require "rubygems" +require "bundler/setup" + +load Gem.bin_path("rubocop", "rubocop") diff --git a/site-modules/profile/manifests/base.pp b/site-modules/profile/manifests/base.pp index da292a7..f5ab1be 100644 --- a/site-modules/profile/manifests/base.pp +++ b/site-modules/profile/manifests/base.pp @@ -1,12 +1,12 @@ class profile::base ( Boolean $firewall = false, Boolean $lvm = false, - Boolean $ntp = false, + Boolean $ntp = true, Boolean $puppet = false, Boolean $repos = false, Boolean $resolver = false, - Boolean $ssh = true, - Boolean $selinux = true, + Boolean $ssh = false, + Boolean $selinux = false, Boolean $motd = true, ) { if $motd { diff --git a/site-modules/profile/manifests/base/time.pp b/site-modules/profile/manifests/base/time.pp new file mode 100644 index 0000000..7170f86 --- /dev/null +++ b/site-modules/profile/manifests/base/time.pp @@ -0,0 +1,31 @@ +# == Class: profiles::bootstrap::time +# +# This class can be used install time components. +# +# === Examples +# +# @example when declaring the time class +# class { '::profiles::bootstrap::time': } +# +# === Parameters +# +# @param default_timezone Timezone for this node. +# @param ntp_servers List of ntp servers. +# @param restrict Restrict to this list. +# @param set_timezone Configure the timezone. +class profile::base::time ( + String $default_timezone = 'Europe/Amsterdam', + Array $ntp_servers = ['time.google.com'], + Array $restrict = [], + Boolean $set_timezone = false, +) { + class { '::ntp': + servers => $ntp_servers, + restrict => $restrict, + } + if $set_timezone { + class { '::timezone': + default_timezone => $default_timezone, + } + } +}

!Z1@jOqvT%7Q;pLlDK7Fu>usBVa(0cARycVw49 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 z zYlvVb-Ga-(Az4G!E1Nb8J1703tiH{2kzkUVJOw*FB_2eC#9#**MBwmShk{S0#*#_0 z>eLD_^f~Rkz;E29V9(!4rF0n&`^sLd z^+2pyZ!!ljSA61+Ey}%hFt3n|IF`8?od|)1Q0V{0k97m41p+hfjPN$L>POBc3|7mh z0)#8nDE#Q2%{>KBDGBC?@!h_$bybAbgKG0q3nXdxc!+r>sWuY-B1>C3;L}0_gGA=; z2{tr&) z0_!12ZTs53JrWP3CB=8ks@1cpn2sC7N>d*@dGcJ(wcj?N^`=Gbsl|XQU$MYF6a{U1 zyz{N#%u{GnYBN>(ngTFAl2haz624nu=S?S)BN6Vd+@1;3_^Zb=VNnkZ2Ax)8E33Qw zX8IM)E}Yb`z=qG2Zva&H3}_3Eup9?OufmA&_U_=fek5AIsU<9gW)(cXtaLdHcd>@8 zIMO)6voVQN_o-$T0Yb{0@KOImC>USOJQaQlNzwsG{{RR=8h!%P#WQ@@d@V0u1->y!?N z7gwHZv6Utf88xTUUgPkR?lB^_Mo)ryh~_nX3uOK9Z149VeBM!LbfyTl25P*$R=pqe zq-pVSb!V!!+x+70&^m2Ro2GwjT3uc_tN|#Ec`!Ux#@sN@a=NbAUgG8t8DEbrYIp4);o1;x0aHZc6xXKLC^)3YyB?p>v{3#ZWnu zu%Yl7j(6*ZPIZ$?BkW|Yq^|kZ;V7A)mrl8O6Wdm4q0e!g7&3>64jndYodDGkah&vR zzEXbdu|hEuR=Zs{;8NP?V3!bzq#F+BM@_LR|K7F1{nblD-^i0Z+fL3;7NotJNVEKr z`s5_ezX7p?SNH$1m6ld_Ap$7Q=771fKB~Z+qr}_Ei>BfzV2nIG%<(2HHu}dMb_&36 z0tn+*tc*d&+}v`;?&PfrzCJ6Mvmutgym2>{Vh;=&R1}=bTGXDkd%*kxd3GIhEtQ8{ zUzlw=t3$;q9kGv{wD&gNllMAAhEzgvi5JDyi=B$a?o%EXqOC;;6VH_G8$G4CdeMwI zzS*MdWya(9-cmvmonHd^iACnmuQd_Z=G@Z3vXNPr(#P=tUj$pYfK%gT%hTvwab-&U zNRWQntmN?15;Tw8ukF9WoIklQx6J!*en$59T)ZfbAcEHs-kW*2K}BP^Y)j?aaaAyD z>1=xF!V^Slxiw0su%bdWtkjzGfOaV*6lH_ z?tSD{L+=lgA~u3GfVO)>+$QQu&Kkg}-1}8ZT~VFCfvuh<{9lpkU*t$pPb-8mJ4Z~zCDp<PnGgOO#yQRbuN~7umCx%I!Kk2veV1_0p5$_x1Bx05m%tXA{H5RjS?}lWK zy|cJ#?D0pMbT@OmY~6~8@lw)Vx0_-Naj`gxW7UHB^|%wTg5-&-V^D2X2Nli%Dj#F- zP!)dJnQjj`wH%$%B}3B!WoqHQFDQq8AsL{4gjH7Kd5>g3`pU%YHB!0?@1Ox9kx7BQ zE&%dRD_On>@QsXB1l&c=XTbHr23VWL$7$<)(%d+a^JViCTRqxx($+riFw0YIUi-52 zV2WTCIQ)Qi-Ge1zy{CluMm)QWQku+}_>@XmZM;bq(e~Kt*3N37XdYjbG@z)E&Q#Wy zgGDSdmj59hWo&(FqxRWMdBTGE6on%RmPffCOM*>W>lf6iuaM?7yDp`|wLPj@LvtsA z5X#oCF$|#%S$P^D(E8?FbmP!RN$7QP3M#a{rWQdU$-q^Yg4VkJ2S3NLw#xsCp-pBR zbSK3+vP9?bZC^kEp#J(k99=)uNkTr{o2&jp6N+r*1>ih1!hZ_N}V{xj;z(d)lMm)_na`!2Sxjt#auB(vMC+RFVJj^D)Bk=_PAGrg z$Waqw+^!KYU%O14mB)w-0>)Fixhpr3Y!BjF@-#MhPbGT#cIXSl^Kw^7fYwtAZF<&6me^7SK?a0f|2RFWoAH5kfhzt+8adg75rn$5w*<#c z!*JpfbY;^2P1EcJaW|uc$bcnTNpItj;i|lqf&vl(fK0Q#3R?4;qaurUyXAFN6Wl+S zU=B{ZJjQq4!qsS!ZTU3_+A7|3-jl9r=rA-pusLYB>p?{b-y<)+tjen~N@MHWr42IF z0)mj2lYRh~=S9&5VSdUO*IW{zsP{yX%r=(V?w2oe@##P-5xeQ(@!C3pYQ?GTP_fXG!MIHZ^uYSKCjigo`D#!ovvVJeMI+lm4@1n*qZz zC)5T&As(=^ML`SkWSk4X<`=M_@x>ER`&lcFc<$l|8iH)0PBO4uR2P-^Y0hphLF!1{o3-&rLXs-_`$*hs8Hok||AK#MXjMbaM z_MN@zcW$xC;~ujvNj#R{6-~HBHFqQp|0A>mtt5gct@hMvK9u3jmw;%D8bL(mFS?83$ug+bZcGA!$*L?oPwsJU1k)Jtz?erz^^7DTTNc5nYkmK6}c3d@&!+?aT=4Nd9Zsnz{!>`4`zK5quMRk%JojM?`$9Jksvd zu4Z}C3TBgy? zMJry`C9JG0IyhakzVS3GHgvQyHO1UqZdyMbTDX3->K3wxwn8uO?CMt}zDqK&?CO?& zi4sUvCyahi-9Z}Xe2jkX-fwOcq4^AKOd?f|@T=?6*ykmy2A&wA{FT6sh>B?kBx)}} zyM5xAV^|!BDLNrEYvB=H#UYY{XcPW{3;;0T0Kmwj7!+;4!e_zXR~9B{&FshWKVJmu zR2$DR15elj(C1c;(37XcLgkzmD5#OpOL1}GjdfsD#es)7$-Fj!?`?Ku$<)n0>gsH= z6cjMR-|OSh;tkQFI{C9*0Bo>K5|v zAAt%d_t0k)GNdv5ZGzp*ksTwAik|z3Gn~IiLXk>@1T_#k z^obvb@v_SfovSYZ)A~^as<5d3Z;bim7xjK3#<=+Wu0$Fna)&tGEAL*PRL1L?b~f>p z=NsX0{@aw*pYEr2dI)R+a8vzkNr2&^lYg>78ll`f2xQQOx?R5bEgu5zr{I3q`6ycy zLxfM0dh7r~NwZK?tmwaoRM)%+gIumd^R}DCo#vGofOxM8CxL4%1H6PbCD?p>cX@5h z=`n;s^TH6f-k!Jo;0D7qz@EcXT6h~H()3Z9&m^9k&BOKN+n6(mHc%?~WqC#SWT5{b zXBH?5dE>gY=mY!U`=@j8P9ojcB4QA)keY{zn2T;HB7v=Qr>+K~m&l5Lyx9ZY6mi2@aYBU|7!QZ=yPRcPIZ>?-xA)&`+AIK`W& zr)jJ*$2`ZKx~qfVC^+(d)3oQJG{aDq?srN%RcLJ>`m3^@IGZYwhEnA|aFy=bM?qad zV*e&2wcuk8z-E{;DtZ6&1Fz&hWKn$Xd*IueI_8ah>$L-O5%pRP8T$ea5UM>0Jdu~C z(YCJ@SAVkj`N$6-7+Inuqj|`<_Q9%h>}0#dz!_0tdJ9(#?LTr%LRyY$wxV|hpQ>}c5TxL_K2Yuea2Q#<02bid}8*5L+hI` zc+Djh-m_L036_*Yk%pxu<-B=RCM9g}*or|yIqf2Jr5Z6YrY{s?cp)34IoMR(EvJ=R zu1Fb@m|m0W(}l~5K+&aG(G&IbAx8R)1YXkC_j}&;ld)F1I%NX}PM75On4~6o0xsL{ z9N`AmF+#kKu}bKfLHeK=f7$^4{)4?t*OeS|@k!Ah+fwK!jbZ`jbIE&7tT`mZ>LpQy zI52uZZyk-`g83d5ilX(<{qIAL1#I;@rIN6n9f7_&jPz*5u6^XRdw3LJ=50?bNipR(N11To}q4>lBv2%|mN zfymNENIt4(UeK@|!sYQVjRW;>JS*yy=ni^B{D7z>K=p9Kgsj`bJ^dI6;Y(ItDf_8| z3(SFkC=p`0#`5VBU~iur4fZ!mF?!!=E?I;V1@$3a*?0rcJK z3S5FWv)6>7Infh7!ZUkyb-U_P8c>g|Xlc^O`}cyqPtEg3jt-OL%H5v5zXwR~z&Z0Z zYE`D81odxe+V#^t(42A77A`S07r}>l^;cCCSIpYKz+SgCUPmFj7gOgqz5(9FUR6HF zQkp&HeAr;GlvK2_Co8a`qf-jzqi?D7IZb?PPpI>{Y(Mw(^Z<7|MI$qA2n%<%AgXcL51K>+T1g(v+<^wW8J= zTJT_xoe)K2U!it0YsCEbi*Ub%8Vs?CXi@!WuNfcV{R}X)Tiy-5d~NoaQ`xu|O1^B* zC5dY{_|9Xc*H`ibDDp?|0trv>ckrBoKA+xOBPqVXIVsRA>5V523OM*2B9%wiF`g)+ zFHwVf8pLXA&&&2h_^!tKN;3X(`g36WrF#M0kWIJ5Y@;X|NcJQC% z$6|A`uC3P>Km4v+X@-4gL#u84`-#hg9R%v@`c8MqjCdlhL^hk}+%*8#juNjTn132SV7ti((-=R~xyIl{Q_#YyKp z_vBsL5Wa7&7?rsqCeY}Hpz(4H@~ojwH9BIr{QMdPKfer_=SF?0tU0qpa_~)DnKrG} zGxq|WU8?YR+xO%+1F1lx8tS$YbchYx1yf-j?TuxuV!Hor)IK|I#idP_8VSiHjH;rN;y;6$^3jl~Do_8G3B*Zfv6AOz#LflSU#t2x@{xBIU#gr&jf=Vhl zEciV1zC77xgtuGw_AzlfQXf6P`$s$pfn0}8lOEd@3HRyerR+~}GHUJO7nUIlwzX!M z#t5_=Ioa_WBVb9mt!YFnaod*{ZkBdC=ma=#GHa=GnWcFP?A7XE-xW9@M*Uw~6FcQ0Z?zJ6;c3$7Yaj+Te83M)^u5l^(8c!^5wvrDpuhoMdEv(b4W3 zXVM?niUctHP0y6S&O9q2WV{wa!>%x@)c37GIShTb=L0=I)1M2F3T?|ez-{x}y~c^mj~rqVhK(!v6b}dI z<8$1D9;*UmK#3TL$@hN4E6tNr)-^u8#5bbU^zmiJ3?rl-C3X(3cpUP_2a?AMgAC7H zfgv$?(&a@WAw$c`?2cD?aBkavC~d})AW9>oufh);W2|%PD_LFHPwZo32$nNH1#Tkj z2S04bXKAOH$y@`|&zwD`8W}!`3y#~+E-vxK@TSuZ>ZR&i`>@IKPE?rVD&Nm_4K`ni zKUj29V&~YzAyUb~fWRXky?jEcSh^80jik@~QI4DmTfY9Fy>yHQL(#f$p-VB{>J{g5 zruz`uX3XngKPtDlwXj#G!U#upEw7ky&fD|!QcP+#_LLgjjIE?QF#0)i;p_em5V^wo zbvsktx#fG5<_S#y#f^oUpf7U%ZZJzl->c^`X@NyD(^f1CB*+M$*<1{#QAnu__vgqV zy9*vc(k;P81<*#Z7}vC^H0*43;JR!a;j&hHF}~WB{eo@1%fFD+b^0Wm#p`8y<{&Ct zmFe*(yW&MIP(QX@SL`WlS#^oTBb^IC8eSzDlK8+=>F0#k4Fs-pBn519p}h2rb) z=;9(mmt>++NgmV+~Jz*?ykN1KEVxzNJC=IGw#8uG@Kwc!VM0pv6^R_sZ5= z_+oMNhwNiLdfUc@noTl>{o2{<_42tI(Tp(1EeRjCzxi(WtS{9>+oKjo8t^}TlCeaI{za{yjhWRJ!!5lId(U);3xdeJD* z2BB=TF9Ewy|sYrmIu55?XS1a@Q}6%N`WIjQ^!X&*Vo|E5a#jI!zt*_ za&T*T)h*H~dM!VTgI~q71)3BmHw`Hq)`)SIy-ddgj53+alX^EH^Pf`(Mg5NSD_Ye* z*y+v|BUy%B+Dumr|!qlJ_F=AUMjT~weZ6^sBg)c1o-07n;SjZj~ z`Uo;x>_KSN^eqoV$dBq2>5Ixz{;L>brGr04fyyl@g$yq=L>l%d56RZ02TLUAJlP${ zH0BSB+b0seqz~xs)uP`7^RrLQq{RQv15gf%{3C)^jx4QddTrT-R8C*^2Wu>_B&i8E zHXQYeJGs@i0d1qC35BG#PZ{ai6GTBz0>b;4ow&dll`=d}#!;Vvu~g6kSvspP&(G-; z8aD)ve}>@R;1}{p4ZqGXi24D5tg#;fhjUJ<53z;2$~0G@1zu1(ju&ph4YvALE+XSC zZ8fG{b1Tv-lq8RhGB4J#$TD73q%oiXuDQ-ivy&<1gPfhDT=%X|F8_s(1>_#nFa-sf z$daJ=8;@@M(`T zee7s?#x5ENuK^p_=NErcOk&8bQtRG@_sTkNG=hH?GinND2KSUmJfJ)h4OmOgxC`jx z^lRrkoz_%ulNno%G;qO|9jwt@{9AdaFCYNw!QmFwPg6Fn0>Mom+0j}vsn~1-DC|nj zH4-tS6wXK8^nX}}_L9~n$M4O}4a-w`7iw31eDLZr&!qj+u!v(oQMEZ7B#k z5z$z^%&XS^H#RL+AYwmE31*2DBR2KO3Ur=V1a+z1hH*nNys1~oR^iHEz5yo*fh9{3xg=?v6e%qD{R^Od7{D(KFR9Nocr7 z7~BA`rt0dSs0>**67A0{gsyImSzEVa#lyNRoA<*+fpmj=EE>4~&U}oj#P;}ra$GcS zm9JAvStszp4_%d>kYA~J+XJhd?0^3F!9HdUF_i}Y310naNg^Qm9kFFMFe8cA2FeK` z5B5Hql;}}zr)@;l!$T<{JUPLHqkpxm_sjV+5gGxEyiI7UAP}ILknNY%UUxRIn2es@ zym^!TU!rw|Ehv+WfOzssin4K6m2D9E%D2T0?$z1xKLio*e?7+k0GuG>e^?I7U94eW z@Xluze2WNTCSItZRqDSdIj2i`xCsdL%O_)^r!0Phaq#K7~%LB*A0*`8sz}UP^|` z2Z(%)&;M~&O4(|9<7&1k0|(;eDq=EI=r-jI%@Y-|lmLbtfN6tvS3d<>N~iH^Hz^6G z6FQhH24DL(7YzM*aZeE<`XNaXa>iwIn4|Dm_sRlb>*-6n0NbLsGsp6q=+ao}NK~{! zxE+hC1mDc-(04+79_)G3bksPk0FvM}JZdJAIn?|weW`MU0 z1K1k^>z7ac0W<8H#t9s#gQ5Okjnkk?nAZiGY8isL@O27VEb)Gv!*#JNpZ#T=`K^Ds z=&H6VjGW(!b!@%mU}VY3z2zmzbZyTqwO8{&EVwZLlvD*i8s*mo1K!ptk)MDncIs!c zkIv#$fao3Sl1@fi$N(0Z**ghYDa$t@&8&RN(}%bi+Oqa4!f(ni3)#+&z^iij-fMbs0!%6ssN}}yMRta@evWy1V&M2 zm^jep3HJ=c21P8=pQh&yS(MJ;n%EuC4RVaa^o_^h*GB9}y$7hcdFh_M?t-J4ki@J0 zRVYBwn9+2i=g1Sh6qZ{6*@HQI`m{iK6;R}1=M8uHHE{&w(N*FJ;ExI!(&ryn*h1jP zm#Mo~j9{cf4$hj5c-THevicBgH{jyrS|&yeUH6r)HTzEY`>vJd6THq z5jFsPrRSDXR<44gcnHt>4xYOcmJ`EK7mip9k$}OMONa+5R+P7EFfUOThlYLek>{~B z5hR>HNQZMVFnU?71M%fxNUal|WsDYKjAh~2Lu%{&MfJq&G{?FE#kA#JCOvjP<#7#1 zVuRQ<&!Wl=L6}jhCI8+Hsg1NP#YF5HW2uao-I4JcE?S&}$2f>l$1JX$9`V<|$zY8s zG?LHj{fvJz`B2mG^z^Za%b%EC;}HW{8W8@$qrov^I#lDVA$KR#)YKA9M-s*uAA3Ux zDLNYYIj{co3n7dAZmJ(Ez3;~DB9Dnd+)2Z^i!vgNb&5l12uzp|p9rVGspK~v@`QtcXTYPyAWro#|X!=7VSZ{oMGkDLQ zNC5!U)7$8As+uy}>U7Hb)zD=uP&HL-o2b6eIJxF|FWAnoNUh@h##NoKZL)WX2HuUX% z%S4LiE5!rGAc}K2I(22`T|Au$=)$uk~0t>@^puserp5bEspb#{U?MEpA7G0|PkHD!W9rk*;LQdFf8hNxV2WnP3M5jsoM$BveB7 z@`TZ9XVbc*1w+H$L!T&*(cOhW?X7N-Pg+3$R^T~TBzG)#v?jgq=V~Z;lyE)mRCd8ntj+v^>iw8tiT_|$ zCWk+RR`lcct_gpVD4kS5=k}2q7XtY$ixRIVoSzu=Eg6`HIXr74gJV~IpALyT`N)wZ zrc8F3Hd3-5+?jK`jV^F3({+6Xna-Sj`O1sw8*W|tf}EaXNx7WlLv#+*e)E(Zm;l5d zN9B@Pk=iP->8lwcbSC78OLOuRNC?b6TB7z;5+cmk-LO@e@%b|H;`ocNMA(g167|5Lz_Bm6Ugp;*O7S+MNv|pNw14FJ5VrTM zh4J|h0bZvXEy~@-dF&h?+&hAD5Q6ozxGHL)w^i(Gg1c~szRB0Kx66*|Fc8s%26w_0P!e_;wK)bhDSP+JVAV*En({ zN7fy8_V!@)_O;RQha1sAEHjBp2gaLnr5)VH$D1*}3mK6O!oL&U-ldUe{ukH^Kp$yo zRzKREb(B{xUop*T*4KvTTu_-o=j8T3vmm_7?j8NK)n=qxTWhP=HN@8PgzAK)>>5sN zH{@K32?%%G3H6mR%%XH?XL4T=Ew%OQih7T1lV0X{N>IfX=={A%odtT*VSLdHu|Ah& zYA_}nz#t-~2<_Be#~vq+@TEJ|i%3y6-%VQKqDrY}{Y>6h@Ug3mOi}_+*()M~I7g_= z3vG~?7UVry$b|3L97xbK*e^8^n-e!y&8ri~e|E2dEops2(2|sTOWe3;NEn-R5GEN(gXYJwjghREu3{&25T%jocJ40I^pGST@Gh4b6!Nnikn* zwXrf*7VKmKT1oX?cQ%o?S7w2igeL$m0M}EcM#{qfZ7;ToVbD+o7$i~PL3B}e!&HtJ z?(ngbYy8Ij#1b^&@a%PvCfCDlCR0&PSGv-=m@5s!v4CxuL7A?Yb>6Y+{%z|t72*L& z4=zkLqqy5Q-JZ%a#%!VW3YXZos)Ub|Be8C1rjq-xTS>+kw%A9DOWyPqbb6^*tv^Vd zWX_q22|4K)22V>&Yrd#@sxVtP-{gY=fl9IxJp~trdB_T^2A@nHx20|f%Z{)hB?PQh z@@bi7l|c{8Vs?XJ&EKH8!Dz1k($N)m#tO(2@{`!K=>s zVct}I8qs@iGo&@*HRzs3!q}^3J<;u=drzRBxFjFtr(`NA7s0;7O71=PIl+1Uyi@yn ziQcQ0(a8&8WF16*qPYB(>whLrTu zPKL9tVO}G3TIWS1E7UAm!P){vFvWOCW=uqik!1Q+pRV)6>=gBe(L^0NVoq2(f!sOurDY1O=zamb~c(6-9IY`p0*%wPZvCbw%W*%?8U zsvtRFwr79Y{M7hnerAdEyXr`!VFfoE|H4sz)Eg`0uqrxFNf0hS5K#U0{)|E0m2)_H zI>bw^zG`IxVX+$SbtF<`tkMgIOTp!4ZJ&1^?%kGLFeASKqhAk#Yl@W;y-4$YP*aPd zET0KjbPz_G?bC%L$y9$?zk)T2W;1P$!Hu_ipV?7;Ju;4YPI%LV@`Y^4zwcL*i`UZW zlSu(lP>uixK={9Enc7IZ(-rCVO+(S>obn!BQ4}{l=-c~TjRUv``HgO?VEfUiP$V%N zm9Y1D22csw0(BLaDn#X`{b?zth3LCzfvJ<|W9vu3?d-~YL4Z=%{&C|^G$=yurmNW< zN}&A?6kts@K(Mb|EWHcJp^#BMbtA2zkMAIO0})Yn)(I876Uiu7 zM3#mkvg%l?%A!1hflsD^&DF|&kI__=+=bJE;6EdQs6nOERot(K>2)FjUY}>*D->vY zA4*F+#g6Uf{p;kf{GYe{>GYcygw8qgO+_bs9c0 zLlTok_NT87&*2-gypHvoBv@eZhy4HKeVaqOkzwR|9%mET-FRumLAfhNgRdrI=nk5< zI_t(QG;E>c-aXjAb!m``^(9ozf6&UiHL)o7pN^$Ug7g!yiI&3I6V`l$_slf507+L* z2UQKDaNOx0*$_4Sa$y|{Lc*CSQZ5L%p~rDuO*K&=n$KYPe7xV0j8h9-b^Z5N!seg- zRaf=pT{6t)c=pto%AuPps{$fBTM+K>HHT0HtgXWHVd9QmmDW zQVU$MGEMgxU7PZ&XH=UqsLg7=Xd5__KzN6Q`>y_qJzQ}$2(^Cof^G2BhYjV9%jlL6 zoy%Z-$lx9!4}{&*^~FGn**yanl|Yu5%Jx_+!r78Y#a(j9xJ3{?^iVc5J=**rSOck$ zz#n`vzti;StVs76`ldr%;{?Vbq4TaQOhbF!e)u=Lid8O_EOHcKRq)F^&$*LCj8gXSc z0HFyda5p^K<+vL(b*s@N+jqO?I1sw~4x(dndT-a=TsFa7!pHD|Bj$ z{1WxBl7KV9aVTlgm2Je4g*)j{B9X%!wewGL_xFEa?FYZqza_o*Za>U7pZL8^#)rG7 z%10}RX2KrJekZCpu2tkrxwi>*OQ)*ci?OdeCb#;05ZL;(>tK=kXI-;rPVg-#C5w*D z%Y}(kkzACMzj8jZ?(^`h8Osl>sy8%k;}I1R4=}!5tb_dYdFza1wi&W_l`suL9`9ln ziuWKcc$@d3!kY>(JG9d85aKvhacd1v5CAFhCWwU4SYq4sN_{oqqAlR+x`aR#6PnvUAT5CgRgtJ}_o;fuSIZu4 znGPsgmqGnO29c>v9j$5zrdOZYj{`tf;37AT^@K!n8HD6{+L%1~T$-L^KGm{q0%@zP z5%^(<(e+JiRNJamKjU}`+8ri7gE6McgY?x&BwiHqN)ln&zxws9p%7N2Z!%=p0oB~f zOHEw@`St)$vKGg$eul#hbEST$bTx737L~j`L)M~STGUAdR=gZ`>Z`r!Ui*Pn+wR0F zhW1sN;+{359IJ2W3m#DXJ%XG18G}CY<#|G;0?YXJMGt zC4&i(ObZdg=piVF*{ObR40|=}jmwO^bpNmo04}0@_8BD}i&>`fS(u(>ph|;Flg4gE`rtXUW6TuY_Cvy0f%HQX8i%FUwee_i{6c z(9m3_)&O45mCI=#&y4TD#|buC{f1qEir3s%WNOw*zWWW8L>btl)#~FZSl_o1u3_N{5xIVH7Wrvv?d`Y&QLrc=xNDr@J4oPgyj*HjN{7Cm9Wbn#p#l(au{_}K} z;IzO|9b}3_fHJgP;}9Rm6rraJpM2L)j`I~iUV0oo>D!;Z3j z@H75_o@eLdDmPsC$>AZfIF&n8cgWxrZ304mH!bZ?7y8U4A%8}db?DX^AYqwMqWqk%|(fOJCtN0N_kT#EGp$A(sW%iw3+V!1Z zL@+DvbhNn=`d0L7p}C+;3ePKZqZG|avmd=J+mt^15kFU?TXO@ix?2xlJ78rlrTR=b zm^X9i8rL^AnF2gM20S82A^|qOz(pCNFIf(nLWhOeJ0{NP$16!HUoCA{8b20PhEx&i`C%n_j22cn$eAP_r&0aCGd5;hR8#RTX-^AhX9OKBRS zOYxVM9)KP^q6<;#vQWH6twhT$Mkh2trRjgdhZHD94x&_{LgpsACjXDt z?e@`d2q>1f%x_O4Wt{T3_r>MhDp<+&*k3Ln%6+l$pRgGFY%;wV+b)9tig_};3X`ep>OW9E(9#xvb$x5XWuDyTSv0BF+v z@}408UCN*Nz~MEEwvb*|kYhcmnbEGzu#zoow-zuH5UvE9ek~4ovWAW=2IO8yjeM}> zL)M3@Pp`8?Uc`bjd1$_%4b#`}R-pJ**>9vB8 zv)f*GXwmt_y(k`WHva7bI6s2{DZm0rK<{<_njAA&Q(+fU!>x0d#Rx*!SoswUdMbgUyd<9SkBw=?B+6mU>_dqd3j<(h(4kXl!~taS;yo+g7l>40BN>hOR znoBqpoT2^<@(|qeeNd#I_y;G*=&LVaqUY3JApQt+>40?opOGG)B>|tl7D7!u_Qc^p zXBDPBZF{S_ho^=9bL*_I0LxR!8kj+JdT_i0zdS`<_zw6ixf|lA!$P-!8+%D?&vcxm zC<_y%>{V)I%K7D^^<$;tp_&L%=FW-XwDZnES)hGGV7!mAMbm_(e?%y}N%L0D6HCh` ztm%LK(hCU^dm#Thx)=TTK_)?t3_>Pz(JVM*fOJc6&{?9UmdN@85jbSZ=teoaHLqSX z`>HOXZ#=-;(1zuiE)?V|wG9Xb^pG>N$NUL5Z>vop{!;KS9w~~-avKNMAPr{|sg;WQwp$IG zvJ}TdM*KgF)+=@gM82y$H8}xq=_P8yj_;V;p{zk zdz9L~-q?O&miOXwa2J6}X0UFiJ%}x=-9d& ziZxKuv+HMKbs|hX;u^Z|Ws4EIh4G`R#0drR=f~>&6^0@Yg@=QGT6f-WS*c&4w#vZg zbw>4TUp0rEBi)(+v0_>tZzU$8R?{W3OZkP+Brd_7&9CZ(`38X4XIDd8r|+#9cjdjcq(1Z^lO~S&xIp{J6lzN<%Jv5X_Ae z|KQMs@LpZwZP8h%J_8}Q&c*j=#2qh+_~L0KH_?^k*eK{+2(~Uz9r|B-M7%0OER8Kf z?^w%vHA>M|AQ|>S7VPr0C%(Q(=e8_X9>|FeB*G)GVh~v z3;Ni|Gqsq$7KshIZZD$#Rl2r*#jUo*Q92G9*Oi_Sjz!ED^gB0FZuL;^w3pu2X8SG7 z$a_8=frN0cdZ;2$q_?nq7b(>@em9{#;mQ%f4rP0y6o(Xdlt-N(t1}kiu%Qs=34nVL z)06J83+a)PfoK?n53b7HIspbao;gIC*2lfDc$v)~*yq-8!S`JdtS0gur7+|_JZ&o@ ziBj2{1}ayUpF*b>Yqz1hmm)ZJ`@Q|J&Yr76k8lyH{!I&?p;drt=+O_aH5XE}74m77 zor3Ha>1=)NxOaLT(@0vnkd`{G^semJu2O*e#zD_VhVh6t;(|0LkKtAE&~~T9$Xg~j z=oQ=DiRv*hL5Du8F&C-5%8tjkUIhC@lj$TmFYLGCst|$ZTEL?&k)V%;Y5mI{YQV;R zyM^W#s4L<6z8M zu)ZYbaO4&T23x$JSH#)5Y6T8%rHGxy{nzGfSXlP0}$84J4cm377KqVVFix* z!$sj^;`QJ#BDwkg@sL~iVNo_TI~JvGHZzGQUQoV2L60nvcHd#`~^$FT?FBch1BJdX`?uAC$6zoI!Sc*TTJod zwt+qnD%}b#sg%RC3tbYW0is#J6Cg7bZPV^vzLLr3@qVQk+ zL3KwDulHvrJpLonOB_|SEfxxBqP2G7qZd>)fml*0Y>STas|G}+7#+|Q1d)+;b3A|M z*;%z$_YK6J_r>cBp2K4M∾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�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