From 6e7b3ecc3e8e104504713ee3656dddb33505c5cb Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Tue, 30 May 2023 15:38:57 -0700 Subject: [PATCH] Release 2.0.0 --- .fixtures.yml | 10 ++- CHANGELOG => CHANGELOG.md | 18 +++++ Gemfile | 73 +++++++++---------- manifests/instance/app.pp | 24 +++--- metadata.json | 8 +- pdk.yaml | 2 + provision.yaml | 5 ++ spec/acceptance/nodesets/centos-6-vcloud.yml | 15 ---- spec/acceptance/nodesets/centos-64-x64-pe.yml | 12 --- spec/acceptance/nodesets/centos-64-x64.yml | 10 --- spec/acceptance/nodesets/centos-65-x64.yml | 10 --- spec/acceptance/nodesets/default.yml | 10 --- spec/acceptance/nodesets/docker/centos-7.yml | 12 --- spec/acceptance/nodesets/docker/debian-7.yml | 11 --- spec/acceptance/nodesets/docker/debian-8.yml | 11 --- .../nodesets/docker/ubuntu-14.04.yml | 12 --- spec/acceptance/nodesets/fedora-18-x64.yml | 10 --- spec/acceptance/nodesets/sles-11-x64.yml | 10 --- .../nodesets/ubuntu-server-10044-x64.yml | 10 --- .../nodesets/ubuntu-server-12042-x64.yml | 10 --- spec/spec_helper_acceptance.rb | 20 +---- 21 files changed, 86 insertions(+), 217 deletions(-) rename CHANGELOG => CHANGELOG.md (81%) create mode 100644 pdk.yaml create mode 100644 provision.yaml delete mode 100644 spec/acceptance/nodesets/centos-6-vcloud.yml delete mode 100644 spec/acceptance/nodesets/centos-64-x64-pe.yml delete mode 100644 spec/acceptance/nodesets/centos-64-x64.yml delete mode 100644 spec/acceptance/nodesets/centos-65-x64.yml delete mode 100644 spec/acceptance/nodesets/default.yml delete mode 100644 spec/acceptance/nodesets/docker/centos-7.yml delete mode 100644 spec/acceptance/nodesets/docker/debian-7.yml delete mode 100644 spec/acceptance/nodesets/docker/debian-8.yml delete mode 100644 spec/acceptance/nodesets/docker/ubuntu-14.04.yml delete mode 100644 spec/acceptance/nodesets/fedora-18-x64.yml delete mode 100644 spec/acceptance/nodesets/sles-11-x64.yml delete mode 100644 spec/acceptance/nodesets/ubuntu-server-10044-x64.yml delete mode 100644 spec/acceptance/nodesets/ubuntu-server-12042-x64.yml diff --git a/.fixtures.yml b/.fixtures.yml index 32a6f43..252a798 100644 --- a/.fixtures.yml +++ b/.fixtures.yml @@ -1,16 +1,18 @@ fixtures: + repositories: + provision: 'https://github.com/puppetlabs/provision.git' forge_modules: concat: repo: "puppetlabs/concat" - ref: "5.3.0" + ref: "8.0.1" mysql: repo: "puppetlabs/mysql" - ref: "8.1.0" + ref: "14.0.0" stdlib: repo: "puppetlabs/stdlib" - ref: "5.2.0" + ref: "9.0.0" archive: repo: "puppet/archive" - ref: "0.5.1" + ref: "6.1.2" symlinks: wordpress: "#{source_dir}" diff --git a/CHANGELOG b/CHANGELOG.md similarity index 81% rename from CHANGELOG rename to CHANGELOG.md index 50c8e26..6485d5c 100644 --- a/CHANGELOG +++ b/CHANGELOG.md @@ -1,3 +1,21 @@ +2023-05-30 Release 2.0.0 +Changed: +- Depends on the `puppet/archive` module now +- `wp_proxy_host` and `wp_proxy_port` are for https-only download proxies now + +Features: +- Updated linting/validation with modern tooling +- Added Apache license file +- Added parameters: + - `wp_config_owner` + - `wp_config_group` + - `wp_config_mode` + - `manage_wp_content` + - `wp_content_owner` + - `wp_content_group` + - `wp_content_recurse` + - `wp_site_url` + 2014-10-15 Release 1.0.0 Features - Multiple instances ability via wordpress::instance diff --git a/Gemfile b/Gemfile index fb9b05b..6235e42 100644 --- a/Gemfile +++ b/Gemfile @@ -1,62 +1,59 @@ -source ENV["GEM_SOURCE"] || "https://rubygems.org" +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://(?.*)} + 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 + [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}] + ['>= 0', { path: File.expand_path(file_url[:path]), require: false }] else - [place_or_version, {require: false}] + [place_or_version, { require: false }] end end group :development do - 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 "json", "= 2.3.0", require: false if Gem::Requirement.create([">= 2.7.0", "< 3.0.0"]).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) - gem "json", "= 2.5.1", require: false if Gem::Requirement.create([">= 3.0.0", "< 3.0.5"]).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) - gem "json", "= 2.6.1", require: false if Gem::Requirement.create([">= 3.1.0", "< 3.1.3"]).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) - gem "json", "= 2.6.3", require: false if Gem::Requirement.create([">= 3.2.0", "< 4.0.0"]).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) - gem "voxpupuli-puppet-lint-plugins", "~> 4.0", require: false - gem "facterdb", "~> 1.18", require: false - gem "metadata-json-lint", ">= 2.0.2", "< 4.0.0", require: false - gem "puppetlabs_spec_helper", "~> 5.0", require: false - gem "rspec-puppet-facts", "~> 2.0", require: false - gem "codecov", "~> 0.2", require: false - gem "dependency_checker", "~> 0.2", require: false - gem "parallel_tests", "= 3.12.1", require: false - gem "pry", "~> 0.10", require: false - gem "simplecov-console", "~> 0.5", require: false - gem "puppet-debugger", "~> 1.0", require: false - gem "rubocop", "= 1.6.1", require: false - gem "rubocop-performance", "= 1.9.1", require: false - gem "rubocop-rspec", "= 2.0.1", require: false - gem "rb-readline", "= 0.5.5", require: false, platforms: [:mswin, :mingw, :x64_mingw] + 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 "json", '= 2.3.0', require: false if Gem::Requirement.create(['>= 2.7.0', '< 3.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) + gem "json", '= 2.5.1', require: false if Gem::Requirement.create(['>= 3.0.0', '< 3.0.5']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) + gem "json", '= 2.6.1', require: false if Gem::Requirement.create(['>= 3.1.0', '< 3.1.3']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) + gem "json", '= 2.6.3', require: false if Gem::Requirement.create(['>= 3.2.0', '< 4.0.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup)) + gem "voxpupuli-puppet-lint-plugins", '~> 4.0', require: false + gem "facterdb", '~> 1.18', require: false + gem "metadata-json-lint", '>= 2.0.2', '< 4.0.0', require: false + gem "puppetlabs_spec_helper", '~> 5.0', require: false + gem "rspec-puppet-facts", '~> 2.0', require: false + gem "codecov", '~> 0.2', require: false + gem "dependency_checker", '~> 0.2', require: false + gem "parallel_tests", '= 3.12.1', require: false + gem "pry", '~> 0.10', require: false + gem "simplecov-console", '~> 0.5', require: false + gem "puppet-debugger", '~> 1.0', require: false + gem "rubocop", '= 1.48.1', require: false + gem "rubocop-performance", '= 1.16.0', require: false + gem "rubocop-rspec", '= 2.19.0', require: false + gem "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw] + gem "github_changelog_generator", '= 1.15.2', require: false end -# TODO acceptance tests need to be changed from beaker to litmus group :system_tests do - gem "beaker", *location_for(ENV["BEAKER_VERSION"] || "~> 3.13") - gem "beaker-abs", *location_for(ENV["BEAKER_ABS_VERSION"] || "~> 0.1") - gem "beaker-pe", require: false - gem "beaker-hostgenerator" - gem "beaker-rspec" + gem "puppet_litmus", '~> 1.0', require: false, platforms: [:ruby, :x64_mingw] + gem "serverspec", '~> 2.41', require: false end -puppet_version = ENV["PUPPET_GEM_VERSION"] -facter_version = ENV["FACTER_GEM_VERSION"] -hiera_version = ENV["HIERA_GEM_VERSION"] +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) +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 +gems['facter'] = location_for(facter_version) if facter_version +gems['hiera'] = location_for(hiera_version) if hiera_version gems.each do |gem_name, gem_params| gem gem_name, *gem_params @@ -65,7 +62,7 @@ end # Evaluate Gemfile.local and ~/.gemfile if they exist extra_gemfiles = [ "#{__FILE__}.local", - File.join(Dir.home, ".gemfile") + File.join(Dir.home, '.gemfile'), ] extra_gemfiles.each do |gemfile| diff --git a/manifests/instance/app.pp b/manifests/instance/app.pp index 1e3028e..24d3f9d 100644 --- a/manifests/instance/app.pp +++ b/manifests/instance/app.pp @@ -154,25 +154,23 @@ } if $wp_proxy_host and !empty($wp_proxy_host) { - $exec_environment = [ - "http_proxy=http://${wp_proxy_host}:${wp_proxy_port}", - "https_proxy=http://${wp_proxy_host}:${wp_proxy_port}", - ] + $proxy_server = "https://${wp_proxy_host}:${wp_proxy_port}" + $proxy_type = 'https' } else { - $exec_environment = [] + $proxy_server = undef + $proxy_type = 'none' } ## Resource defaults File { - owner => $wp_owner, - group => $wp_group, - mode => '0644', + owner => $wp_owner, + group => $wp_group, + mode => '0644', } Exec { - path => ['/bin','/sbin','/usr/bin','/usr/sbin'], - cwd => $install_dir, - environment => $exec_environment, - logoutput => 'on_failure', + path => ['/bin','/sbin','/usr/bin','/usr/sbin'], + cwd => $install_dir, + logoutput => 'on_failure', } ## Installation directory @@ -202,6 +200,8 @@ extract_path => $install_dir, extract_command => 'tar xzf %s --strip-components=1', cleanup => true, + proxy_server => $proxy_server, + proxy_type => $proxy_type, require => File[$install_dir], } -> exec { "Change ownership of ${install_dir}": diff --git a/metadata.json b/metadata.json index 1e3c99d..ae47288 100644 --- a/metadata.json +++ b/metadata.json @@ -8,19 +8,19 @@ "dependencies": [ { "name": "puppetlabs/concat", - "version_requirement": ">= 1.0.0 < 6.0.0" + "version_requirement": ">= 1.0.0 < 9.0.0" }, { "name": "puppetlabs/mysql", - "version_requirement": ">= 2.1.0 < 9.0.0" + "version_requirement": ">= 2.1.0 < 14.0.0" }, { "name": "puppetlabs/stdlib", - "version_requirement": ">= 2.3.1 < 6.0.0" + "version_requirement": ">= 2.3.1 < 10.0.0" }, { "name": "puppet/archive", - "version_requirement": "< 1.0.0" + "version_requirement": ">= 1.0.0 < 7.0.0" } ], "operatingsystem_support": [ diff --git a/pdk.yaml b/pdk.yaml new file mode 100644 index 0000000..4bef4bd --- /dev/null +++ b/pdk.yaml @@ -0,0 +1,2 @@ +--- +ignore: [] diff --git a/provision.yaml b/provision.yaml new file mode 100644 index 0000000..c683d09 --- /dev/null +++ b/provision.yaml @@ -0,0 +1,5 @@ +--- +default: + provisioner: docker + images: + - litmusimage/centos:7 diff --git a/spec/acceptance/nodesets/centos-6-vcloud.yml b/spec/acceptance/nodesets/centos-6-vcloud.yml deleted file mode 100644 index ca9c1d3..0000000 --- a/spec/acceptance/nodesets/centos-6-vcloud.yml +++ /dev/null @@ -1,15 +0,0 @@ -HOSTS: - 'centos-6-vcloud': - roles: - - master - platform: el-6-x86_64 - hypervisor: vcloud - template: centos-6-x86_64 -CONFIG: - type: foss - ssh: - keys: "~/.ssh/id_rsa-acceptance" - datastore: instance0 - folder: Delivery/Quality Assurance/Enterprise/Dynamic - resourcepool: delivery/Quality Assurance/Enterprise/Dynamic - pooling_api: http://vcloud.delivery.puppetlabs.net/ diff --git a/spec/acceptance/nodesets/centos-64-x64-pe.yml b/spec/acceptance/nodesets/centos-64-x64-pe.yml deleted file mode 100644 index 7d9242f..0000000 --- a/spec/acceptance/nodesets/centos-64-x64-pe.yml +++ /dev/null @@ -1,12 +0,0 @@ -HOSTS: - centos-64-x64: - roles: - - master - - database - - dashboard - platform: el-6-x86_64 - box : centos-64-x64-vbox4210-nocm - box_url : http://puppet-vagrant-boxes.puppetlabs.com/centos-64-x64-vbox4210-nocm.box - hypervisor : vagrant -CONFIG: - type: pe diff --git a/spec/acceptance/nodesets/centos-64-x64.yml b/spec/acceptance/nodesets/centos-64-x64.yml deleted file mode 100644 index 05540ed..0000000 --- a/spec/acceptance/nodesets/centos-64-x64.yml +++ /dev/null @@ -1,10 +0,0 @@ -HOSTS: - centos-64-x64: - roles: - - master - platform: el-6-x86_64 - box : centos-64-x64-vbox4210-nocm - box_url : http://puppet-vagrant-boxes.puppetlabs.com/centos-64-x64-vbox4210-nocm.box - hypervisor : vagrant -CONFIG: - type: foss diff --git a/spec/acceptance/nodesets/centos-65-x64.yml b/spec/acceptance/nodesets/centos-65-x64.yml deleted file mode 100644 index 4e2cb80..0000000 --- a/spec/acceptance/nodesets/centos-65-x64.yml +++ /dev/null @@ -1,10 +0,0 @@ -HOSTS: - centos-65-x64: - roles: - - master - platform: el-6-x86_64 - box : centos-65-x64-vbox436-nocm - box_url : http://puppet-vagrant-boxes.puppetlabs.com/centos-65-x64-virtualbox-nocm.box - hypervisor : vagrant -CONFIG: - type: foss diff --git a/spec/acceptance/nodesets/default.yml b/spec/acceptance/nodesets/default.yml deleted file mode 100644 index 05540ed..0000000 --- a/spec/acceptance/nodesets/default.yml +++ /dev/null @@ -1,10 +0,0 @@ -HOSTS: - centos-64-x64: - roles: - - master - platform: el-6-x86_64 - box : centos-64-x64-vbox4210-nocm - box_url : http://puppet-vagrant-boxes.puppetlabs.com/centos-64-x64-vbox4210-nocm.box - hypervisor : vagrant -CONFIG: - type: foss diff --git a/spec/acceptance/nodesets/docker/centos-7.yml b/spec/acceptance/nodesets/docker/centos-7.yml deleted file mode 100644 index a3333aa..0000000 --- a/spec/acceptance/nodesets/docker/centos-7.yml +++ /dev/null @@ -1,12 +0,0 @@ -HOSTS: - centos-7-x64: - platform: el-7-x86_64 - hypervisor: docker - image: centos:7 - docker_preserve_image: true - docker_cmd: '["/usr/sbin/init"]' - # install various tools required to get the image up to usable levels - docker_image_commands: - - 'yum install -y crontabs tar wget openssl sysvinit-tools iproute which initscripts' -CONFIG: - trace_limit: 200 diff --git a/spec/acceptance/nodesets/docker/debian-7.yml b/spec/acceptance/nodesets/docker/debian-7.yml deleted file mode 100644 index b43d1d0..0000000 --- a/spec/acceptance/nodesets/docker/debian-7.yml +++ /dev/null @@ -1,11 +0,0 @@ -HOSTS: - debian-7-x64: - platform: debian-7-amd64 - hypervisor: docker - image: debian:7 - docker_preserve_image: true - docker_cmd: '["/sbin/init"]' - docker_image_commands: - - 'apt-get update && apt-get install -y net-tools wget locales strace lsof && echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen' -CONFIG: - trace_limit: 200 diff --git a/spec/acceptance/nodesets/docker/debian-8.yml b/spec/acceptance/nodesets/docker/debian-8.yml deleted file mode 100644 index df5c319..0000000 --- a/spec/acceptance/nodesets/docker/debian-8.yml +++ /dev/null @@ -1,11 +0,0 @@ -HOSTS: - debian-8-x64: - platform: debian-8-amd64 - hypervisor: docker - image: debian:8 - docker_preserve_image: true - docker_cmd: '["/sbin/init"]' - docker_image_commands: - - 'apt-get update && apt-get install -y net-tools wget locales strace lsof && echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen' -CONFIG: - trace_limit: 200 diff --git a/spec/acceptance/nodesets/docker/ubuntu-14.04.yml b/spec/acceptance/nodesets/docker/ubuntu-14.04.yml deleted file mode 100644 index b1efa58..0000000 --- a/spec/acceptance/nodesets/docker/ubuntu-14.04.yml +++ /dev/null @@ -1,12 +0,0 @@ -HOSTS: - ubuntu-1404-x64: - platform: ubuntu-14.04-amd64 - hypervisor: docker - image: ubuntu:14.04 - docker_preserve_image: true - docker_cmd: '["/sbin/init"]' - docker_image_commands: - # ensure that upstart is booting correctly in the container - - 'rm /usr/sbin/policy-rc.d && rm /sbin/initctl && dpkg-divert --rename --remove /sbin/initctl && apt-get update && apt-get install -y net-tools wget && locale-gen en_US.UTF-8' -CONFIG: - trace_limit: 200 diff --git a/spec/acceptance/nodesets/fedora-18-x64.yml b/spec/acceptance/nodesets/fedora-18-x64.yml deleted file mode 100644 index 1361649..0000000 --- a/spec/acceptance/nodesets/fedora-18-x64.yml +++ /dev/null @@ -1,10 +0,0 @@ -HOSTS: - fedora-18-x64: - roles: - - master - platform: fedora-18-x86_64 - box : fedora-18-x64-vbox4210-nocm - box_url : http://puppet-vagrant-boxes.puppetlabs.com/fedora-18-x64-vbox4210-nocm.box - hypervisor : vagrant -CONFIG: - type: foss diff --git a/spec/acceptance/nodesets/sles-11-x64.yml b/spec/acceptance/nodesets/sles-11-x64.yml deleted file mode 100644 index 41abe21..0000000 --- a/spec/acceptance/nodesets/sles-11-x64.yml +++ /dev/null @@ -1,10 +0,0 @@ -HOSTS: - sles-11-x64.local: - roles: - - master - platform: sles-11-x64 - box : sles-11sp1-x64-vbox4210-nocm - box_url : http://puppet-vagrant-boxes.puppetlabs.com/sles-11sp1-x64-vbox4210-nocm.box - hypervisor : vagrant -CONFIG: - type: foss diff --git a/spec/acceptance/nodesets/ubuntu-server-10044-x64.yml b/spec/acceptance/nodesets/ubuntu-server-10044-x64.yml deleted file mode 100644 index 5ca1514..0000000 --- a/spec/acceptance/nodesets/ubuntu-server-10044-x64.yml +++ /dev/null @@ -1,10 +0,0 @@ -HOSTS: - ubuntu-server-10044-x64: - roles: - - master - platform: ubuntu-10.04-amd64 - box : ubuntu-server-10044-x64-vbox4210-nocm - box_url : http://puppet-vagrant-boxes.puppetlabs.com/ubuntu-server-10044-x64-vbox4210-nocm.box - hypervisor : vagrant -CONFIG: - type: foss diff --git a/spec/acceptance/nodesets/ubuntu-server-12042-x64.yml b/spec/acceptance/nodesets/ubuntu-server-12042-x64.yml deleted file mode 100644 index d065b30..0000000 --- a/spec/acceptance/nodesets/ubuntu-server-12042-x64.yml +++ /dev/null @@ -1,10 +0,0 @@ -HOSTS: - ubuntu-server-12042-x64: - roles: - - master - platform: ubuntu-12.04-amd64 - box : ubuntu-server-12042-x64-vbox4210-nocm - box_url : http://puppet-vagrant-boxes.puppetlabs.com/ubuntu-server-12042-x64-vbox4210-nocm.box - hypervisor : vagrant -CONFIG: - type: foss diff --git a/spec/spec_helper_acceptance.rb b/spec/spec_helper_acceptance.rb index 48c9634..4ac8d7e 100644 --- a/spec/spec_helper_acceptance.rb +++ b/spec/spec_helper_acceptance.rb @@ -1,18 +1,6 @@ -require 'puppet' -require 'beaker-rspec/spec_helper' -require 'beaker-rspec/helpers/serverspec' -require 'beaker/puppet_install_helper' -require 'beaker/module_install_helper' +# frozen_string_literal: true -run_puppet_install_helper -install_module_on(hosts) -install_module_dependencies_on(hosts) +require 'puppet_litmus' +require 'spec_helper_acceptance_local' if File.file?(File.join(File.dirname(__FILE__), 'spec_helper_acceptance_local.rb')) -RSpec.configure do |c| - # Readable test descriptions - c.formatter = :documentation - - c.before :suite do - on hosts, puppet('module', 'install', 'puppetlabs/apache') - end -end +PuppetLitmus.configure!