From a0600d594c562335523f8bedbbed8e8034938d84 Mon Sep 17 00:00:00 2001 From: Matthew Treinish Date: Wed, 8 Oct 2014 18:48:03 -0400 Subject: [PATCH] Add subunit2sql server configuration This commit adds the policy around keeping the schema for the subunit2sql db up to date. It will run the db migrations on updates to the version of subunit2sql installed. Change-Id: Ice6c2607bb627b789bf265b38566b7b279ac0f9a --- .../openstack_project/manifests/logstash.pp | 9 ++++- modules/subunit2sql/manifests/server.pp | 35 +++++++++++++++++++ 2 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 modules/subunit2sql/manifests/server.pp diff --git a/modules/openstack_project/manifests/logstash.pp b/modules/openstack_project/manifests/logstash.pp index aded079b20..09591ad28b 100644 --- a/modules/openstack_project/manifests/logstash.pp +++ b/modules/openstack_project/manifests/logstash.pp @@ -19,7 +19,8 @@ class openstack_project::logstash ( $gearman_workers = [], $discover_nodes = ['elasticsearch01.openstack.org:9200'], $statsd_host = 'graphite.openstack.org', - $sysadmins = [] + $sysadmins = [], + $subunit2sql_db_uri= '' ) { $iptables_es_rule = regsubst ($elasticsearch_nodes, '^(.*)$', '-m state --state NEW -m tcp -p tcp --dport 9200:9400 -s \1 -j ACCEPT') $iptables_gm_rule = regsubst ($gearman_workers, '^(.*)$', '-m state --state NEW -m tcp -p tcp --dport 4730 -s \1 -j ACCEPT') @@ -43,4 +44,10 @@ class openstack_project::logstash ( config_file => 'puppet:///modules/openstack_project/logstash/jenkins-log-client.yaml', statsd_host => $statsd_host, } + + include 'subunit2sql' + + class { 'subunit2sql::server': + subunit2sql_db_uri => $subunit2sql_db_uri, + } } diff --git a/modules/subunit2sql/manifests/server.pp b/modules/subunit2sql/manifests/server.pp new file mode 100644 index 0000000000..d9cab2b88e --- /dev/null +++ b/modules/subunit2sql/manifests/server.pp @@ -0,0 +1,35 @@ +# Copyright 2012-2013 Hewlett-Packard Development Company, L.P. +# Copyright 2013 OpenStack Foundation +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +# == Class: subunit2sql +# +class subunit2sql::server ( + $subunit2sql_db_uri, +) { + + file { '/etc/subunit2sql.conf': + ensure => present, + owner => 'root', + group => 'root', + mode => '0555', + content => template('subunit2sql/subunit2sql.conf.erb'), + } + + exec { 'upgrade_subunit2sql_db': + command => 'subunit2sql-db-manage --config-file /etc/subunit2sql.conf upgrade head', + path => '/usr/local/bin:/usr/bin:/bin/', + subscribe => Package['subunit2sql'], + } +}