Add releasestatus to static.o.o

Deploy releasestatus under static.openstack.org, as a first step
towards getting rid of the old-wiki.o.o redirection.

The static.o.o releasestatus will be accessible for testing at:
http://status.openstack.org/release.new
If everything behaves properly we'll get rid of the redirect and
make it accessible under http://status.openstack.org/release in a
future commit.

Prerequisite is to complete the git repo move under openstack-infra.

Change-Id: I3d71dc897c16a9ab2d85b6c304a6c8b800ba939e
Reviewed-on: https://review.openstack.org/28966
Reviewed-by: James E. Blair <corvus@inaugust.com>
Approved: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Tested-by: Jenkins
This commit is contained in:
Thierry Carrez 2013-05-13 16:52:48 +02:00 committed by Jenkins
commit 6d59846e4b
3 changed files with 146 additions and 0 deletions

26
files/integrated.yaml Normal file
View File

@ -0,0 +1,26 @@
# Name of the series
series: havana
# Final release date
releasedate: 2013-10-17
# Short milestone codes, with number of weeks leading to them
# The last one should be the release date
milestones:
- [6, h1]
- [6, h2]
- [6, h3]
- [5, Oct 17]
# Set of projects to consider in the report
products:
- nova
- glance
- swift
- keystone
- horizon
- quantum
- cinder
- oslo
- ceilometer
- heat

74
manifests/init.pp Normal file
View File

@ -0,0 +1,74 @@
# Copyright 2013 Thierry Carrez
#
# 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: releasestatus
#
class releasestatus {
if ! defined(Package['python-launchpadlib']) {
package { 'python-launchpadlib':
ensure => present,
}
}
if ! defined(Package['python-jinja2']) {
package { 'python-jinja2':
ensure => present,
}
}
if ! defined(Package['python-yaml']) {
package { 'python-yaml':
ensure => present,
}
}
group { 'releasestatus':
ensure => present,
}
user { 'releasestatus':
ensure => present,
home => '/var/lib/releasestatus',
shell => '/bin/bash',
gid => 'releasestatus',
managehome => true,
require => Group['releasestatus'],
}
file { '/var/lib/releasestatus':
ensure => directory,
owner => 'releasestatus',
group => 'releasestatus',
mode => '0755',
require => User['releasestatus'],
}
file { '/var/lib/releasestatus/releasestatus':
ensure => directory,
owner => 'releasestatus',
group => 'releasestatus',
mode => '0755',
require => File['/var/lib/releasestatus/'],
}
vcsrepo { '/var/lib/releasestatus/releasestatus':
ensure => latest,
provider => git,
source => 'https://github.com/openstack-infra/releasestatus.git',
revision => 'master',
require => File['/var/lib/releasestatus'],
}
}
# vim:sw=2:ts=2:expandtab:textwidth=79

46
manifests/site.pp Normal file
View File

@ -0,0 +1,46 @@
# Copyright 2013 Thierry Carrez
#
# 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.
#
# == Define: releasestatus
#
define releasestatus::site(
$configfile = '',
$httproot = '',
) {
file { "/var/lib/releasestatus/${configfile}":
mode => '0444',
source => "puppet:///modules/releasestatus/${configfile}",
require => File['/var/lib/releasestatus'],
}
file { $httproot:
ensure => directory,
owner => 'releasestatus',
group => 'releasestatus',
mode => '0755',
source => '/var/lib/releasestatus/releasestatus/static',
recurse => remote,
require => File['/var/lib/releasestatus'],
}
cron { "update releasestatus ${configfile}":
command => "python /var/lib/releasestatus/releasestatus/releasestatus.py /var/lib/releasestatus/${configfile} > ${httproot}/new.html && mv ${httproot}/new.html ${httproot}/index.html",
minute => '*/20',
user => 'releasestatus',
}
}
# vim:sw=2:ts=2:expandtab:textwidth=79