Add webchecker entrypoint.
[slapos.git] / slapos / recipe / web_checker / __init__.py
1 ##############################################################################
2 #
3 # Copyright (c) 2012 Vifib SARL and Contributors. All Rights Reserved.
4 #
5 # WARNING: This program as such is intended to be used by professional
6 # programmers who take the whole responsibility of assessing all potential
7 # consequences resulting from its eventual inadequacies and bugs
8 # End users who are looking for a ready-to-use solution with commercial
9 # guarantees and support are strongly adviced to contract a Free Software
10 # Service Company
11 #
12 # This program is Free Software; you can redistribute it and/or
13 # modify it under the terms of the GNU General Public License
14 # as published by the Free Software Foundation; either version 3
15 # of the License, or (at your option) any later version.
16 #
17 # This program is distributed in the hope that it will be useful,
18 # but WITHOUT ANY WARRANTY; without even the implied warranty of
19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 # GNU General Public License for more details.
21 #
22 # You should have received a copy of the GNU General Public License
23 # along with this program; if not, write to the Free Software
24 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25 #
26 ##############################################################################
27 import os
28 import re
29 from slapos.recipe.librecipe import GenericSlapRecipe
30
31 class Recipe(GenericSlapRecipe):
32 """
33 Create web checker configuration.
34 """
35 def _install(self):
36 path_list = []
37 web_checker_mail_address = self.parameter_dict['web-checker-mail-address']
38 web_checker_smtp_host = self.parameter_dict['web-checker-smtp-host']
39 web_checker_working_directory = \
40 self.options['web-checker-working-directory']
41 config = dict(
42 web_checker_mail_address = web_checker_mail_address,
43 web_checker_smtp_host = web_checker_smtp_host,
44 web_checker_working_directory = web_checker_working_directory,
45 frontend_url = self.options['frontend-url'],
46 wget_binary_path = self.options['wget-binary-path'],
47 varnishlog_binary_path = self.options['varnishlog-binary-path'],
48 web_checker_log = self.options['web-checker-log'],
49 )
50 path_list.append(self.createFile(self.options['web-checker-config'],
51 self.substituteTemplate(self.getTemplateFilename('web_checker.cfg.in'),
52 config)))
53 return path_list