Faidon Liambotis has submitted this change and it was merged.
Change subject: RSpec install-server fixes
......................................................................
RSpec install-server fixes
ubuntu-mirror has been removed from the install-server module and its
functionality moved into the mirrors module. Update the install-server
module's RSpec tests to reflect that and create RSpec tests for the
mirrors module. Update the tests as well and fix a latest=>present
ensure on atftpd as well
Change-Id: I8f959b6eaae3018b1f479d33557c581320f05b44
---
M modules/install-server/spec/classes/install_server_tftp_server_spec.rb
D modules/install-server/tests/ubuntu-mirror.pp
A modules/mirrors/.rspec
A modules/mirrors/Rakefile
A modules/mirrors/spec/classes/mirrors_debian_spec.rb
A modules/mirrors/spec/classes/mirrors_spec.rb
A modules/mirrors/spec/classes/mirrors_ubuntu_spec.rb
A modules/mirrors/spec/fixtures/manifests/site.pp
A modules/mirrors/spec/spec_helper.rb
9 files changed, 146 insertions(+), 3 deletions(-)
Approvals:
Faidon Liambotis: Looks good to me, approved
jenkins-bot: Verified
diff --git
a/modules/install-server/spec/classes/install_server_tftp_server_spec.rb
b/modules/install-server/spec/classes/install_server_tftp_server_spec.rb
index 8695751..335153d 100644
--- a/modules/install-server/spec/classes/install_server_tftp_server_spec.rb
+++ b/modules/install-server/spec/classes/install_server_tftp_server_spec.rb
@@ -2,7 +2,7 @@
describe 'install-server::tftp-server', :type => :class do
- it { should contain_package('atftpd').with_ensure('latest') }
+ it { should contain_package('atftpd').with_ensure('present') }
it do
should contain_file('/etc/default/atftpd').with({
diff --git a/modules/install-server/tests/ubuntu-mirror.pp
b/modules/install-server/tests/ubuntu-mirror.pp
deleted file mode 100644
index 4697dff..0000000
--- a/modules/install-server/tests/ubuntu-mirror.pp
+++ /dev/null
@@ -1,2 +0,0 @@
-#
-include install-server::ubuntu-mirror
diff --git a/modules/mirrors/.rspec b/modules/mirrors/.rspec
new file mode 100644
index 0000000..f449dae
--- /dev/null
+++ b/modules/mirrors/.rspec
@@ -0,0 +1,2 @@
+--format doc
+--color
diff --git a/modules/mirrors/Rakefile b/modules/mirrors/Rakefile
new file mode 100644
index 0000000..0542f30
--- /dev/null
+++ b/modules/mirrors/Rakefile
@@ -0,0 +1,47 @@
+require 'rake'
+require 'fileutils'
+
+require 'rspec/core/rake_task'
+
+# Note: The nginx puppet module is a git submodule right now, so don't forget
to
+# checkout submodules before testing
+extra_modules = [ 'nginx', 'wmflib' ]
+
+modulename = File.basename(File.expand_path(File.dirname(__FILE__)))
+
+symlinks = { 'spec/fixtures/modules/%s/files' % modulename =>
'../../../../files',
+ 'spec/fixtures/modules/%s/manifests' % modulename => '../../../../manifests',
+ 'spec/fixtures/modules/%s/templates' % modulename => '../../../../templates',
+}
+
+
+task :setup do
+ FileUtils.mkdir_p('spec/fixtures/modules/%s' % modulename)
+ extra_modules.each do |x|
+ FileUtils.ln_s('../../../../%s' % x, 'spec/fixtures/modules/%s' % x)
+ end
+ symlinks.each do |x|
+ if !File.exist?(x[0])
+ FileUtils.ln_s(x[1], x[0])
+ end
+ end
+end
+
+task :teardown do
+ symlinks.each { |x| FileUtils.rm(x[0], :force => true) }
+ FileUtils.rmdir('spec/fixtures/modules/%s' % modulename)
+ extra_modules.each do |x|
+ FileUtils.rm('spec/fixtures/modules/%s' % x, :force => true)
+ end
+ FileUtils.rmdir('spec/fixtures/modules')
+end
+
+RSpec::Core::RakeTask.new(:realspec) do |t|
+ t.fail_on_error = false
+ t.pattern = 'spec/*/*_spec.rb'
+end
+
+task :spec => [ :setup, :realspec, :teardown]
+
+task :default => :spec do
+end
diff --git a/modules/mirrors/spec/classes/mirrors_debian_spec.rb
b/modules/mirrors/spec/classes/mirrors_debian_spec.rb
new file mode 100644
index 0000000..cec942d
--- /dev/null
+++ b/modules/mirrors/spec/classes/mirrors_debian_spec.rb
@@ -0,0 +1,40 @@
+require 'spec_helper'
+
+describe 'mirrors::debian', :type => :class do
+
+ it do
+ should contain_file('/srv/mirrors/debian').with({
+ 'ensure' => 'directory',
+ 'owner' => 'mirror',
+ 'group' => 'mirror',
+ 'mode' => '0755',
+ })
+ end
+ it do
+ should contain_file('/var/lib/mirror/archvsync/').with({
+ 'ensure' => 'directory',
+ 'owner' => 'mirror',
+ 'group' => 'mirror',
+ 'mode' => '0755',
+ 'source' => 'puppet:///modules/mirrors/archvsync',
+ })
+ end
+ it do
+ should
contain_file('/var/lib/mirror/archvsync/etc/ftpsync.conf').with({
+ 'ensure' => 'present',
+ 'owner' => 'mirror',
+ 'group' => 'mirror',
+ 'mode' => '0555',
+ 'source' => 'puppet:///modules/mirrors/ftpsync.conf',
+ })
+ end
+ it do
+ should contain_cron('update-debian-mirror').with({
+ 'ensure' => 'present',
+ 'command' => '/var/lib/mirror/archvsync/bin/ftpsync',
+ 'user' => 'mirror',
+ 'hour' => '*/6',
+ 'minute' => '03',
+ })
+ end
+end
diff --git a/modules/mirrors/spec/classes/mirrors_spec.rb
b/modules/mirrors/spec/classes/mirrors_spec.rb
new file mode 100644
index 0000000..c9a55be
--- /dev/null
+++ b/modules/mirrors/spec/classes/mirrors_spec.rb
@@ -0,0 +1,17 @@
+require 'spec_helper'
+
+describe 'mirrors', :type => :class do
+
+ it { should contain_user('mirror') }
+ it { should contain_group('mirror') }
+ it { should contain_file('/srv/mirrors') }
+
+ it do
+ should
contain_file('/usr/local/lib/nagios/plugins/check_apt_mirror').with({
+ 'ensure' => 'present',
+ 'owner' => 'root',
+ 'group' => 'root',
+ 'mode' => '0555',
+ })
+ end
+end
diff --git a/modules/mirrors/spec/classes/mirrors_ubuntu_spec.rb
b/modules/mirrors/spec/classes/mirrors_ubuntu_spec.rb
new file mode 100644
index 0000000..f20c6e0
--- /dev/null
+++ b/modules/mirrors/spec/classes/mirrors_ubuntu_spec.rb
@@ -0,0 +1,31 @@
+require 'spec_helper'
+
+describe 'mirrors::ubuntu', :type => :class do
+
+ it do
+ should contain_file('/srv/mirrors/ubuntu/').with({
+ 'ensure' => 'directory',
+ 'owner' => 'mirror',
+ 'group' => 'mirror',
+ 'mode' => '0755',
+ })
+ end
+ it do
+ should contain_file('/usr/local/sbin/update-ubuntu-mirror').with({
+ 'ensure' => 'present',
+ 'owner' => 'root',
+ 'group' => 'root',
+ 'mode' => '0555',
+ 'source' => 'puppet:///modules/mirrors/update-ubuntu-mirror',
+ })
+ end
+ it do
+ should contain_cron('update-ubuntu-mirror').with({
+ 'ensure' => 'present',
+ 'command' => '/usr/local/sbin/update-ubuntu-mirror 1>/dev/null
2>/var/lib/mirror/mirror.err.log',
+ 'user' => 'mirror',
+ 'hour' => '*/6',
+ 'minute' => '43',
+ })
+ end
+end
diff --git a/modules/mirrors/spec/fixtures/manifests/site.pp
b/modules/mirrors/spec/fixtures/manifests/site.pp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/modules/mirrors/spec/fixtures/manifests/site.pp
diff --git a/modules/mirrors/spec/spec_helper.rb
b/modules/mirrors/spec/spec_helper.rb
new file mode 100644
index 0000000..d3923f8
--- /dev/null
+++ b/modules/mirrors/spec/spec_helper.rb
@@ -0,0 +1,8 @@
+require 'rspec-puppet'
+
+fixture_path = File.expand_path(File.join(__FILE__, '..', 'fixtures'))
+
+RSpec.configure do |c|
+ c.module_path = File.join(fixture_path, 'modules')
+ c.manifest_dir = File.join(fixture_path, 'manifests')
+end
--
To view, visit https://gerrit.wikimedia.org/r/183494
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I8f959b6eaae3018b1f479d33557c581320f05b44
Gerrit-PatchSet: 3
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Alexandros Kosiaris <[email protected]>
Gerrit-Reviewer: Faidon Liambotis <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits