summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Kemp <steve@steve.org.uk>2012-12-17 11:40:36 +0000
committerSteve Kemp <steve@steve.org.uk>2012-12-17 11:40:36 +0000
commitb3cb54197835f16143c4fb5c6f01795fb175ad02 (patch)
treefa816dbc65827f3775ae0883ca4106dafb5ba5ef
parentff4909b7a816eeb5490f548f5b70eecff83423af (diff)
Ensure our test fails if the content doesn't match
-rw-r--r--cfg/sample.cfg92
-rw-r--r--lib/custodian/protocoltest/http.rb3
2 files changed, 3 insertions, 92 deletions
diff --git a/cfg/sample.cfg b/cfg/sample.cfg
index fe6409a..a455f6b 100644
--- a/cfg/sample.cfg
+++ b/cfg/sample.cfg
@@ -1,93 +1,3 @@
-#
-# This is the sample configuration file which is installed with Custodian.
-#
-# Lines beginning with "#" are comments and are ignored, otherwise the general
-# form of lines is:
-#
-# TARGET must (not) run SERVICE otherwise 'some text'.
-#
-# TARGET is typically a hostname, or a URL, but it might also a macro. In this
-# context a macro is a simple list of hostnames. Any line involving a macro
-# as a target will be replaced, inline, once for each target.
-#
-# For example the following two snippets are equivilent:
-#
-##
-## Snippet 1
-##
-# MACRO_FOO is host1.example.com and host2.example.com.
-# MACRO_FOO must ping otherwise 'ping failure'.
-##
+http://secure.servoshop.co.uk/ must run http with status 404 otherwise "Failure - this site is https only #524771'.
-##
-## Snippet 2
-##
-# host1.example.com must ping otherwise 'ping failure'.
-# host2.example.com must ping otherwise 'ping failure'.
-##
-
-
-
-#
-# Now we have some simple tests
-#
-
-#
-# Bytemark hosts a mirror of various things, for the benefit of our users
-# and the general UK network.
-#
-# Test that this mirror is available
-#
-mirror.bytemark.co.uk must run ftp otherwise 'mirror ftp failure'.
-mirror.bytemark.co.uk must run rsync otherwise 'mirror rsync failure'.
-mirror.bytemark.co.uk must run ping otherwise 'mirror ping failure'.
-
-#
-# Ensure the Bytemark blog is active
-#
-blog.bytemark.co.uk must ping otherwise 'blog failure?'.
-http://blog.bytemark.co.uk/ must run http with content 'Bytemark Blog' otherwise 'blog is not available'.
-
-
-#
-# Define a macro for the Bytemark DNS servers
-#
-DNSHOSTS is a.ns.bytemark.co.uk and b.ns.bytemark.co.uk and c.ns.bytemark.co.uk.
-
-#
-# Test that they return valid things.
-#
-DNSHOSTS must run dns for bytemark.co.uk resolving NS as '80.68.80.26;85.17.170.78;80.68.80.27'.
-DNSHOSTS must run dns for www.bytemark.co.uk resolving A as '212.110.161.177'.
-DNSHOSTS must run dns for bytemark.co.uk resolving MX as '89.16.184.148;89.16.184.149;89.16.184.150'.
-DNSHOSTS must run dns for support.bytemark.co.uk resolving MX as '89.16.184.148;89.16.184.149;89.16.184.150'.
-DNSHOSTS must run dns for admin.bytemark.co.uk resolving A as '212.110.161.144'.
-DNSHOSTS must run dns for bytemark-hosting.co.uk resolving A as '212.110.161.177'.
-
-
-
-#
-# TCP-protocol tests.
-#
-# The "tcp" probe is a general-purpose one that attempts to connect to the host-specified,
-# on the port-specified, and optionally look for some text in the banner returned from that
-# connection.
-#
-# Here you'll see we've duplicated two other protocol tests:
-#
-# mail.steve.org.uk must run smtp otherwise 'email fail'.
-# ssh.steve.org.uk must run ssh on 2222 otherwise 'ssh fail'.
-#
-
-# SMTP
-#
-mail.steve.org.uk must run tcp on 25 with banner 'smtp' otherwise 'mail fail'.
-
-#
-# SSH
-#
-ssh.steve.org.uk must run tcp on 2222 with banner 'ssh' otherwise 'ssh fail'.
-
-
-http://www.steve.org.uk must run http with content 'steve' otherwise 'fail'.
diff --git a/lib/custodian/protocoltest/http.rb b/lib/custodian/protocoltest/http.rb
index 6de74d3..ed98029 100644
--- a/lib/custodian/protocoltest/http.rb
+++ b/lib/custodian/protocoltest/http.rb
@@ -175,13 +175,14 @@ module Custodian
if ( !@expected_content.nil? )
if ( @content && (! @content.match(/#{@expected_content}/i) ) )
@error = "<p>The response did not contain our expected text '#{@expected_content}'</p>"
+ return false
end
end
#
# All done.
#
- true
+ return true
end