[Lsb-messages] /var/www/bzr/lsb/devel/buildbot-config r188: Remove slavescripts (they've moved to puppet-lsb), and update README.
Jeff Licquia
licquia at linuxfoundation.org
Sat Jan 28 15:49:49 UTC 2012
------------------------------------------------------------
revno: 188
committer: Jeff Licquia <licquia at linuxfoundation.org>
branch nick: buildbot-config
timestamp: Sat 2012-01-28 10:49:49 -0500
message:
Remove slavescripts (they've moved to puppet-lsb), and update README.
removed:
slavescripts/
slavescripts/reset-sdk
slavescripts/run-appbat-tests
slavescripts/update-sdk
modified:
README
-------------- next part --------------
=== modified file 'README'
--- a/README 2010-12-03 23:24:24 +0000
+++ b/README 2012-01-28 15:49:49 +0000
@@ -24,25 +24,17 @@
Setup
-----
-The setup procedure for completely rebuilding the buildbot config is
-as follows:
-
-1. On the master, set up buildbot and create two masters according to
-the directions in the documentation. One will be for LSB; the other
-will be for Moblin.
-
-2. Symlink each foo_master.cfg from this project as master.cfg in
-each new master.
-
-3. Symlink each .py file to each master directory as well.
-
-4. Start each master.
-
-5. Set up the slaves, as described below.
+Setting up the buildbot master is now done via Puppet. In the LSB's
+Puppet configuration, add "include buildbot::master" to the node's
+definition.
Slave setup
-----------
+NOTE: slave setup is transitioning to Puppet as well. The following
+procedure documents how to add a build slave on a non-Puppet machine,
+but for best results, use Puppet to deploy the build slave setup.
+
While the masters are expected to be more-or-less permanent, the
slaves are completely replaceable. Here's the procedure for setting
up a new slave:
@@ -69,8 +61,9 @@
buildbot ALL=NOPASSWD: /bin/rpm
-6. Copy the scripts in this project's "slavescripts" directory into
-the path.
+6. Copy the scripts from the puppet-lsb project, under
+"modules/buildbot/files/slavescripts", into a directory on the default
+system path.
7. Download a copy of the current released LSB SDK bundle tarball to
the slave, and symlink it to $HOME/lsb-released-sdk.tar.gz (for the
=== removed directory 'slavescripts'
=== removed file 'slavescripts/reset-sdk'
--- a/slavescripts/reset-sdk 2010-11-04 02:54:01 +0000
+++ b/slavescripts/reset-sdk 1970-01-01 00:00:00 +0000
@@ -1,43 +0,0 @@
-#!/bin/sh -e
-
-if [ "$1" = "--beta" ]; then
- SDK_TYPE=beta
-else
- SDK_TYPE=released
-fi
-
-if [ -e /tmp/last_installed_sdk ]; then
- if [ $(cat /tmp/last_installed_sdk) = "$SDK_TYPE" ]; then
- echo "$SDK_TYPE SDK already installed"
- exit 0
- fi
-fi
-
-rm -f /tmp/last_installed_sdk
-
-mkdir -p $HOME/tmp
-[ -e $HOME/lsb-$SDK_TYPE-sdk.tar.gz ]
-
-# SDK packages besides lsb-build-base, which has to be handled specially.
-SDK_PKGS="lsb-build-cc lsb-build-c++ lsb-build-desktop lsb-build-qt3 lsb-build-qt4 lsb-makelsbpkg"
-
-for pkg in $SDK_PKGS; do
- sudo rpm --nodeps --allmatches -e $pkg || true
-done
-sudo rpm --nodeps --allmatches -e lsb-build-libbat || true
-sudo rpm --nodeps --allmatches -e lsb-build-base || true
-
-(cd $HOME/tmp && zcat $HOME/lsb-$SDK_TYPE-sdk.tar.gz | tar xf -)
-
-rpm -q lsb-setup > /dev/null 2>&1
-if [ $? -ne 0 ]; then
- sudo rpm -Uvh --force $HOME/tmp/lsb-sdk/lsb-setup*rpm
-fi
-
-sudo rpm -Uvh --force $HOME/tmp/lsb-sdk/lsb-build-base*
-for pkg in $SDK_PKGS; do
- sudo rpm -Uvh --force $HOME/tmp/lsb-sdk/$pkg*
-done
-
-rm -rf $HOME/tmp/lsb-sdk
-echo $SDK_TYPE > /tmp/last_installed_sdk
=== removed file 'slavescripts/run-appbat-tests'
--- a/slavescripts/run-appbat-tests 2009-12-11 01:33:57 +0000
+++ b/slavescripts/run-appbat-tests 1970-01-01 00:00:00 +0000
@@ -1,107 +0,0 @@
-#!/usr/bin/python
-
-# run-appbat-tests - script to run tests on the appbat
-
-# This script expects to be called from the build root, and takes
-# two command-line arguments: the directory containing the packages,
-# and the directory to place the results.
-
-import sys
-import os
-import subprocess
-
-# For appchk, which specific app do we wish to test?
-
-project_exe = { "alsaplayer": "bin/alsaplayer",
- "apache": "sbin/httpd",
- "rsync": "bin/rsync",
- "samba": "sbin/smbd",
- "tcl": "bin/tclsh8.5",
- "expect": "bin/expect",
- "python": "bin/python",
- "groff": "bin/groff",
- "lynx": "bin/lynx",
- "xpdf": "bin/xpdf",
- "ghostscript": "bin/gs",
- "gnupg": "bin/gpg",
- "openjade": "bin/openjade",
- "perl": "bin/perl",
- "raptor": "bin/rapper",
- "pidgin": "bin/pidgin",
- "leafpad": "bin/leafpad",
- "celestia": "bin/celestia",
- "xpaint": "bin/xpaint",
- "scribus": "bin/scribus",
- "designer": "bin/designer",
- "transmission": "bin/transmission",
- "xscreensaver": "bin/xscreensaver " }
-
-# What archs use "lib64" instead of "lib"?
-
-lib64_archs = ["ppc64", "s390x", "x86_64"]
-
-def run_appchk(resultdir):
- # Get proper lib dir.
-
- arch_process = subprocess.Popen("arch", stdout=subprocess.PIPE)
- arch_process.wait()
- arch_name = arch_process.stdout.read().strip()
-
- if arch_name in lib64_archs:
- libdir = "lib64"
- else:
- libdir = "lib"
-
- # Run appchk.
-
- for pkgrootdir in os.listdir("pkgroot"):
- prjname = os.path.basename(pkgrootdir).replace("lsb-", "")
- if prjname in project_exe:
- appchk_out = open(
- os.path.join(resultdir, "lsb-%s.output" % prjname), "w")
- appchk_journalpath = \
- os.path.join(resultdir, "journal.appchk.%s" % prjname)
- appchk_exe = os.path.join("pkgroot", pkgrootdir,
- "opt", "lsb", "appbat",
- project_exe[prjname])
- appchk_cmdline = \
- "/opt/lsb/bin/lsbappchk -j -o %s -D pkgroot/%s/opt/lsb/appbat/%s %s" % \
- (appchk_journalpath, pkgrootdir, libdir, appchk_exe)
-
- appchk_process = subprocess.Popen(appchk_cmdline, shell=True,
- stdout=appchk_out,
- stderr=subprocess.STDOUT)
- appchk_process.wait()
- appchk_out.close()
-
- if appchk_process.returncode != 0:
- sys.stdout.write("appchk failed on %s\n" % prjname)
- else:
- tjreport_out = open(
- os.path.join(resultdir, "tjreport.%s.txt" % prjname), "w")
- subprocess.call(
- "/opt/lsb-tet3-lite/bin/tjreport %s" % appchk_journalpath,
- stdout=tjreport_out, stderr=subprocess.STDOUT, shell=True)
- tjreport_out.close()
-
-def run_pkgchk(pkgdir, resultdir):
- for pkg in os.listdir(pkgdir):
- if pkg[-4:] != ".rpm":
- continue
-
- pkgchk_journalpath = os.path.join(resultdir,
- "journal.pkgchk.%s.txt" % pkg)
- pkgchk_cmdline = "/opt/lsb/bin/lsbpkgchk -r 4.0 -Llsb -j %s %s" % \
- (pkgchk_journalpath, os.path.join(pkgdir, pkg))
- subprocess.call(pkgchk_cmdline, shell=True)
-
-def main():
- (pkgdir, resultdir) = sys.argv[1:]
- if not os.path.exists(resultdir):
- os.makedirs(resultdir)
-
- run_appchk(resultdir)
- run_pkgchk(pkgdir, resultdir)
-
-if __name__ == "__main__":
- main()
=== removed file 'slavescripts/update-sdk'
--- a/slavescripts/update-sdk 2010-11-04 02:45:44 +0000
+++ b/slavescripts/update-sdk 1970-01-01 00:00:00 +0000
@@ -1,17 +0,0 @@
-#!/bin/sh -e
-
-if [ -e /tmp/last_installed_sdk ]; then
- if [ $(cat /tmp/last_installed_sdk) = "devel" ]; then
- echo "devel SDK already installed"
- exit 0
- fi
-fi
-
-rm -f /tmp/last_installed_sdk
-
-PKG_DIR=$1
-
-find $PKG_DIR -name \*.rpm -print | grep -v src.rpm | \
- xargs sudo rpm -Uvh --force
-
-echo "devel" > /tmp/last_installed_sdk
More information about the lsb-messages
mailing list