summaryrefslogtreecommitdiff
path: root/lib/custodian
AgeCommit message (Collapse)Author
2015-02-18Prefer "while true" to "while 1"Steve Kemp
Also only sleep between fetches if we couldn't find a job because the queue was empty.
2015-02-18Updated comments for better accuracy.Steve Kemp
2015-02-18Removed reference to timeout for tests.Steve Kemp
This was an invalid comment, the timeout related to HTTP-fetches.
2015-02-18Show NOP messages.Steve Kemp
2015-02-18Correctly parse tests with multiple implementation-types.Steve Kemp
We now parse a single test-definition into multiple test-implementations. This isn't required here because the parser only needs to know that the configuration file *can* be parsed, not what the result is. Validate that we got an array, but otherwise ignore the results after the first.
2015-02-18Removed diagnostic printing.Steve Kemp
2015-02-18Added SSL-expiry checker.Steve Kemp
This is a stub for the moment, but it validates that we can have multiple handlers for a given test-type. This updates #9558.
2015-02-18Minor formatting and commenting update.Steve Kemp
2015-02-18Store the test-class in the redis-state.Steve Kemp
We need to do this such that we can show all possible results of a test in the status-page. There might be three back-ends with different results and if we filter by class-type we'll be able to see that.
2015-02-18Updated the way we wait for jobs.Steve Kemp
The new approach uses the redis gems timeout functionality and ensures we never return a null-job. Instead we timeout and repeat with a stalling-sleep in the way. This closes #9553.
2015-02-18Branch-merge.Steve Kemp
2015-02-17fix the redis queue not to melt the cpu when polling redis for a jobPatrick J Cherry
2015-02-17Deal with multiple test-implementations.Steve Kemp
As soon as we allow multiple test-implementations we get into a mess, as Mauve regards an ID as unique and that is based upon the test-definition not the implementing method We want to allow: * HTTPS test to succeed. * SSL-check to fail. Which means multiple tests of type "https" will have different IDs. Force this by adding on the class of the implementation.
2015-02-17Now we work with multiple implementations.Steve Kemp
2015-02-17Allow multiple handlers to register themselves forSteve Kemp
a given input-line.
2015-02-17Changed the way that we process a single job.Steve Kemp
We now work on the assumption that a single "job", pulled from the queue, might contain multiple "test" objects. These are the instances of the protocol-testers which we actually execute. This is part of #9558.
2015-02-13Added 5.28.58.0/24 to the Bytemark ranges.Steve Kemp
2015-02-12Make the test-definition available to the redis-alerter.Steve Kemp
2015-02-12Updated to require JSONSteve Kemp
2015-02-12Updated to store the test results in a set.Steve Kemp
The redis-state "alerter" saves state in a useful way for the future, and will now save an array of hashes - each has corresponding to a useful result.
2015-02-06Explicitly report time in MSSteve Kemp
2015-02-05Better alerting metric for graphite.Steve Kemp
We now record: custodian.$type.$host.test_duration [time]
2015-02-05Don't trash the alert-subject.Steve Kemp
2015-02-05More simplification - don't pass state around.Steve Kemp
Rather than passing our settings-object around, as well as specific settings that are read from it, just pass the object. The worker can read the settings directly if/when it needs to.
2015-02-05Simplify code by removing configuration.Steve Kemp
We now set the queue-address via $QUEUE_ADDRESS, otherwise we default to localhost. This works for both redis & beanstalkd.
2015-02-05Simplify the flushing of queues.Steve Kemp
Now that we've moved to using redis by default the handling of queue-flushing needs to change. We can simply get rid of the busy-wait and run a redis "del" operation. With that in mind we've moved the flushing logic to our queue abstraction layer, and simplified our queue-helper script.
2015-01-30Removed executable permissions, this is a library.Steve Kemp
2015-01-29Removed shebang.Steve Kemp
This refereed to ruby1.8 in a versioned way which was wrong.
2015-01-29Don't output messages unless $DEBUG=1Steve Kemp
2015-01-22Allow inverted tests for MX.Steve Kemp
(i.e. "pxe.io must not run mx otherwise 'no mail for steve'.")
2015-01-21Added accessor for the queue-type.Steve Kemp
Default to redis as this is more likely to be installed.
2015-01-21Read the queue-type from the settings-object.Steve Kemp
This replaces redis as a hard-wired default.
2015-01-19Updated to use our queue-abstraction.Steve Kemp
This means we can queue/dequeue to either Redis or Beanstalkd.
2015-01-13Updated to actually test the backend MX servers.Steve Kemp
We now connec to the MX-servers via XX:25 and alert if that fails.:wq
2015-01-13Lookup MX record(s) for the domain under test.Steve Kemp
2015-01-13Stub MX-test.Steve Kemp
This will perform a DNS-lookup AND SMTP-test for the given domain.
2015-01-13Added queue-abstraction layer.Steve Kemp
This is not-yet used, but it will-be shortly. The intention is that we can seamlessly swap out the queue implemention in the near future so that we'll be able to use Redis.
2015-01-08Simplified error messages for DNS failures.Steve Kemp
We show the result we expected and what we received, but we do so with quoted strings. So rather than: * one * two we show "one,two". This closes #8538.
2014-12-11Fixed typoPatrick J Cherry
2014-12-11Resolve DNS server name to an IP before connecting, so ruby knowsPatrick J Cherry
which protocol to use.
2014-12-11Use getnameinfo rather than getaddrinfoPatrick J Cherry
2014-12-11Removed ruby1.8ismsPatrick J Cherry
2014-12-11Further tidying the DNS class to use an array rather than a string toPatrick J Cherry
compare stuff.
2014-12-11make dns comparisons alL LoWeR CaSePatrick J Cherry
2014-12-02Added host header override to errors in HTTP testJames Hannah
2014-10-13Remove lines which are just whitespace before parsingJames Hannah
2014-10-13Added support for overriding the HTTP Host headerJames Hannah
2014-05-16Fixed numerous typos in the http libraryPatrick J Cherry
2014-05-16Updated http protocoltest to connect over both IPv4 and 6.Patrick J Cherry
2013-11-22 Added trivial TCP-connect test for postgresqlSteve Kemp