From 9e1567230d89009427e06b11add3a5469e5986b1 Mon Sep 17 00:00:00 2001
From: Alain Takoudjou <talino@tiolive.com>
Date: Tue, 16 Dec 2014 10:52:06 +0000
Subject: [PATCH] fix, add monitoring for slapos master software release

---
 software/slapos-master/instance-erp5.cfg.in |  1 +
 software/slapos-master/instance-zope.cfg.in | 27 ++++++++++++++++++++-
 software/slapos-master/software.cfg         |  4 +--
 stack/erp5/buildout.cfg                     |  7 +++---
 stack/erp5/instance-http-monitor.cfg.in     |  5 ----
 stack/erp5/instance-zope.cfg.in             |  2 --
 stack/erp5/instance.cfg.in                  |  1 +
 7 files changed, 34 insertions(+), 13 deletions(-)

diff --git a/software/slapos-master/instance-erp5.cfg.in b/software/slapos-master/instance-erp5.cfg.in
index e08f5393c..5e94861ad 100644
--- a/software/slapos-master/instance-erp5.cfg.in
+++ b/software/slapos-master/instance-erp5.cfg.in
@@ -37,6 +37,7 @@ config-{{ option }} = {{ dumps(value) }}
 {{ request('memcached-volatile', 'kumofs', 'memcached', {'tcpv4-port': 2010, 'ram-storage-size': 64}) }}
 {{ request('cloudooo', 'cloudooo', 'cloudooo', {'tcpv4-port': 2020}) }}
 {{ request('mariadb', 'mariadb', 'mariadb', {'tcpv4-port': mariadb_dict.get('tcpv4-port', 2099)}, {'database-list': True, 'test-database-list': True}) }}
+{{ request('http-monitor', 'http-monitor', 'http-monitor', {}, {'monitor-url': True}) }}
 {# Fail early if an unexpected value is provided -#}
 {% set zodb_type = slapparameter_dict.get('zodb-software-type') -%}
 {% set zodb_extern = slapparameter_dict.get('zodb-extern') -%}
diff --git a/software/slapos-master/instance-zope.cfg.in b/software/slapos-master/instance-zope.cfg.in
index 04a0694a2..0c118478d 100644
--- a/software/slapos-master/instance-zope.cfg.in
+++ b/software/slapos-master/instance-zope.cfg.in
@@ -78,12 +78,24 @@ ca-private = ${:ca-dir}/private
 ca-certs = ${:ca-dir}/certs
 ca-newcerts = ${:ca-dir}/newcerts
 ca-crl = ${:ca-dir}/crl
+logrotate-backup = ${:var}/logrotate
 
 [binary-link]
 recipe = slapos.cookbook:symbolic.link
 target-directory = ${directory:bin}
 link-binary = {{ dumps(parameter_dict['link-binary']) }}
 
+[{{ section('monitor-current-log-access') }}]
+< = monitor-directory-access
+source = ${directory:log}
+
+[{{ section('monitor-backup-log-access') }}]
+< = monitor-directory-access
+source = ${directory:logrotate-backup}
+
+[monitor-parameters]
+port = {{ slapparameter_dict['port-base'] + 5000 }}
+
 [certificate-authority-common]
 requests-directory = ${directory:ca-requests}
 ca-dir = ${directory:ca-dir}
@@ -363,6 +375,7 @@ dict toward erp5 partition, violating the DRY principle and making the intent
 hard to guess.
 -#}
 hosts-dict = {{ dumps(hosts_dict) }}
+monitor-url = ${monitor-parameters:url}
 
 [erp5-promise]
 recipe = slapos.cookbook:erp5.promise
@@ -379,9 +392,21 @@ certificate-authority-path = {{ dumps(slapparameter_dict['ca-path']) }}
 {% endif -%}
 
 [buildout]
-extends = {{ logrotate_cfg }}
+extends = 
+  {{ logrotate_cfg }}
+  {{ parameter_dict['template-monitor'] }}
 parts +=
   erp5-promise
+  certificate-authority
+  cron-entry-monitor
+  cron-entry-rss
+  deploy-index
+  setup-static-files
+  public-symlink
+  cgi-httpd-wrapper
+  cgi-httpd-graceful-wrapper
+  monitor-promise
+  monitor-instance-log-access
   {{ part_list | join('\n  ') }}
   publish-zope
 versions = versions
diff --git a/software/slapos-master/software.cfg b/software/slapos-master/software.cfg
index 5534a0878..bcd4ff157 100644
--- a/software/slapos-master/software.cfg
+++ b/software/slapos-master/software.cfg
@@ -25,14 +25,14 @@ repository_id_list = erp5 vifib/master
 [erp5]
 recipe = slapos.recipe.build:gitclone
 repository = http://git.erp5.org/repos/erp5.git
-branch = erp5-slapos-upgrade
+branch = erp5-vifib
 git-executable = ${git:location}/bin/git
 revision = 
 
 [vifib]
 recipe = slapos.recipe.build:gitclone
 repository = http://git.erp5.org/repos/slapos.core.git
-branch = master
+branch = master-dev
 git-executable = ${git:location}/bin/git
 revision = 
 
diff --git a/stack/erp5/buildout.cfg b/stack/erp5/buildout.cfg
index 255ffe40c..bb13f70d0 100644
--- a/stack/erp5/buildout.cfg
+++ b/stack/erp5/buildout.cfg
@@ -57,9 +57,9 @@ extends =
   ../../component/6tunnel/buildout.cfg
   ../../component/findutils/buildout.cfg
   ../../component/userhosts/buildout.cfg
-  logrotate-base.cfg
   ../../stack/monitor/buildout.cfg
   ../../component/pycurl/buildout.cfg
+  logrotate-base.cfg
 
 parts =
   erp5-util-develop
@@ -168,7 +168,7 @@ mode = 755
 [template-http-monitor]
 < = download-base
 filename = instance-http-monitor.cfg.in
-md5sum = 16d1fc3cf26c3066ae612ded0ec64cd2
+md5sum = 6598e036c140f65571f3f9e3faa5d008
 
 [template-mariadb]
 < = download-base
@@ -305,7 +305,7 @@ extra-context =
 [template-erp5]
 < = download-base
 filename = instance-erp5.cfg.in
-md5sum = 1c27513d03c5dbb7c12f71386bc97ef7
+#md5sum =
 
 [template-zeo]
 < = download-base
@@ -597,6 +597,7 @@ branch = erp5-cluster
 recipe = zc.recipe.egg
 eggs =
   ${lxml-python:egg}
+  slapos.toolbox
   slapos.toolbox[check_web_page_http_cache_hit,zodbpack]
 
 scripts =
diff --git a/stack/erp5/instance-http-monitor.cfg.in b/stack/erp5/instance-http-monitor.cfg.in
index 4c1e720dd..6eb1c8308 100644
--- a/stack/erp5/instance-http-monitor.cfg.in
+++ b/stack/erp5/instance-http-monitor.cfg.in
@@ -1,4 +1,3 @@
-{% if software_type == slap_software_type -%}
 [buildout]
 parts =
   certificate-authority
@@ -22,9 +21,6 @@ parts =
 
 extends = {{ parameter_dict["template-monitor"] }}
 
-eggs-directory = {{ eggs_directory }}
-develop-eggs-directory = {{ develop_eggs_directory }}
-
 [monitor-check-web-page-http-cache-hit]
 recipe = slapos.cookbook:wrapper
 command-line = "{{ parameter_dict['bin-directory'] }}/check-web-page-http-cache-hit" -K "${public:filename}"
@@ -47,4 +43,3 @@ filename = ${public:filename}
 recipe = slapos.cookbook:publish.serialised
 monitor-url = ${monitor-parameters:url}
 
-{% endif %}
diff --git a/stack/erp5/instance-zope.cfg.in b/stack/erp5/instance-zope.cfg.in
index a7ac1b3e6..104089f39 100644
--- a/stack/erp5/instance-zope.cfg.in
+++ b/stack/erp5/instance-zope.cfg.in
@@ -351,8 +351,6 @@ bt5 = {{ dumps(slapparameter_dict['bt5']) }}
 bt5-repository-url = {{ dumps(slapparameter_dict['bt5-repository-url']) }}
 
 [buildout]
-eggs-directory = {{ eggs_directory }}
-develop-eggs-directory = {{ develop_eggs_directory }}
 extends =
   {{ logrotate_cfg }}
   {{ parameter_dict['template-monitor'] }}
diff --git a/stack/erp5/instance.cfg.in b/stack/erp5/instance.cfg.in
index e23f6773a..b6ec7dfbd 100644
--- a/stack/erp5/instance.cfg.in
+++ b/stack/erp5/instance.cfg.in
@@ -204,3 +204,4 @@ mariadb = dynamic-template-mariadb:rendered
 balancer = dynamic-template-balancer:rendered
 zodb-zeo = dynamic-template-zeo:rendered
 zope = dynamic-template-zope:rendered
+http-monitor = dynamic-template-http-monitor:rendered
-- 
2.30.9