puppet-storyboard/manifests/workers.pp
Michael Krotscheck 59a1fb57da StoryBoard Deferred Processors
This patch adds a puppet module that will start up N worker threads
to handle messages sent to the deferred processing queue. It does so
by making use of the new storyboard-worker-daemon command
created in the below patch. Both upstart and sysvinit scripts are
provided, with sysvinit being the default.

https://review.openstack.org/#/c/122890/

Change-Id: I5565cbf8062457d343d3e02dbfaae2852a359d91
Story: 96
2014-09-24 17:39:48 -07:00

67 lines
1.8 KiB
Puppet

# Copyright (c) 2014 Hewlett-Packard Development Company, L.P.
#
# 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: storyboard::workers
#
# This module installs the storyboard deferred processing workers.
#
class storyboard::workers (
$worker_count = 5,
$use_upstart = false,
) {
include storyboard::params
$upstart_path = '/etc/init/storyboard-workers.conf'
$sysvinit_path = '/etc/init.d/storyboard-workers'
if $use_upstart {
file { $upstart_path:
ensure => file,
owner => root,
group => root,
mode => '0644',
content => template('storyboard/storyboard-workers.conf.erb'),
notify => Service['storyboard-workers'],
before => Service['storyboard-workers'],
}
file { $sysvinit_path:
ensure => absent
}
} else {
file { $upstart_path:
ensure => absent
}
file { $sysvinit_path:
ensure => file,
owner => root,
group => root,
mode => '0755',
content => template('storyboard/storyboard-workers.sh.erb'),
notify => Service['storyboard-workers'],
before => Service['storyboard-workers'],
}
}
service { 'storyboard-workers':
ensure => running,
hasrestart => true,
subscribe => [
Class['::storyboard::application']
],
require => [
Class['::storyboard::application']
]
}
}