index.html #1

  • //
  • guest/
  • eric_wallengren/
  • www/
  • index.html
  • View
  • Commits
  • Open Download .zip Download (7 KB)
<html>
<head>
 <style type="text/css">
/* <![CDATA[ */ 
@import "http://www.tigris.org/branding/css/tigris.css"; 
@import "http://www.tigris.org/branding/css/inst.css"; 
/*  ]]> */
 </style>
  <link rel="stylesheet" type="text/css" href="http://www.tigris.org/branding/css/print.css" media="print" />
<script src="http://www.tigris.org/branding/scripts/tigris.js" type="text/javascript">
</script>
 <title>Project Overview</title>
</head>
<body>

<p>
Continuous Automated Build and Integration Environment. Cabie is a 
multi-platform, multi-cm client/server based application providing both 
command line and web-based access to real time build monitoring and execution 
information. 
</p>

<h3>Mission</h3>

The mission for CABIE is to centralize projects within a large 
company built by different development groups, utilizing unlike toolsets, 
languages and cm tools. The centralization happens by deploying CABIE
within each group, CABIE handling all build jobs, and centralizing all data 
collection in a single location using a database backend.

<h3>Features</h3>
<ul>
<li>Command line interface</li>
<li>Daemon/Windows Service support</li>
<li>Web interface</li>
<li>Rapid email notification</li>
<li>MySQL support for configuration and data collection</li>
<li>Watchdog system for late jobs or insufficient resources</li>
<li>Pre/Post/Fail triggers</li>
<li>Email Subscription Mechanism</li>
<li>Dual mode operation (admin/user)</li>
<li>Job/disk reclamation</li>
<li>Client/Server command redirection</li>
<li>Automatic job numbering</li>
<li>Automatic job locking</li>
<li>CM Abstraction</li>
<li>Support for any build called from the command-line</li>
<li>Series or Parallel build operations</li>
<li>Command recording/Playback</li>
</ul>

<h3>Project Status</h3>
CABIE does not yet have an installer, and the README has not been completed.
Although it does work there still may be some additional web files missing. If
anyone is interested in deploying it in it's current state please drop me email
and I will guide you through the setup and configuration.

<h3>Related resources</h3>
<ul>
<li><a href=http://cabie.tigris.org/cabieproc.html>cabie process diagram</a></li>
<li><a href=http://www.perforce.com>Perforce</a></li>
<li><a href=http://www.cvshome.org>CVS</a></li>
</ul>

<h3>Current supported command set</h3>
<pre>
<b>adduser</b>:
	adduser -p port -u username -f first -l last [-m mail ] [-g group]
	Add new user to CM server

<b>authorize</b>:
	authorize -c computername
	authorize computername to control builds

<b>authorized</b>:
	authorized
	display list of computers authorized to control builds

<b>build</b>:
	build -n jobname [-j jobno]


<b>buildlog</b>:
	buildlog -n jobname -t retail|debug
	retrieve buildlog of defined job

<b>changed</b>:
	changed -n jobname -j jobno [-e endjobno]
	Display list of files updated for job jobno

<b>clone</b>:
	clone -n oldjobname -c newjobname
	Create new job by copying oldjob configuration

<b>commands</b>:
	commands -l -w 
	Display supported command set

<b>connectlog</b>:
	connectlog [-l limit]
	display client connection log [limit to limit number of recs]

<b>createjob</b>:
	createjob -n jobname 
	          -p (p4 port/cvs root)
	          -c (p4 client/cvs module)
	          -r sourceroot
	          -t debug|retail|both
	          -d toolsdir
	          -k keeplevel
	          -s sccs
	          -b browserlink
	          -m global failure notification
	          -C "comment"
	          [-D] dump existing job in cmd line format

<b>cvsperms</b>:
	cvsperms <list|project> <module> "users"
	Update module userlist

<b>debuglog</b>:
	debuglog -n jobname
	complete debug log of defined job

<b>deluser</b>:
	deluser -p port -u username [-f first -l last -g group]
	Remove user from CM server

<b>describe</b>:
	describe -n job
	describe charastics of defined job

<b>disable</b>:
	disable -n job
	Disable build job

<b>dumpconfig</b>:
	dumpconfig
	Display buildserver configuration loaded from buildconf.pm

<b>elapsed</b>:
	elapsed -n job
	Display elapsed time for current build job

<b>enable</b>:
	enable -n job [-f -k]
	Enable build job 
	[-f force semaphore removal]
	[-k kill running build process] (requires -f)

<b>errorlog</b>:
	errorlog -n jobname -t retail|debug 
	retrieve errorlog of defined job

<b>free</b>:
	free -n jobname -j jobno
	Release locks allowing jobno for build jobname to be deleted
	by the buildserver

<b>genweb</b>:
	genweb -n joblist -l limit
	Generate web view of buildserver status for jobs in joblist 
	Display up to last limit jobs

<b>getid</b>:
	getid
	Display buildserver process ID

<b>help</b>:
	help [command]
	Display [command] usage

<b>incomplete</b>:
	incomplete -n jobname [-l limit] 
	Will display (optionally limit) build numbers of failed builds 
	for jobname

<b>instructions</b>:
	instructions -n jobname
	instructions for building a defined job locally

<b>joblog</b>:
	joblog -n jobname
	complete run log of defined job

<b>jobstate</b>:
	jobstate
	Display buildserver job status

<b>keep</b>:
	keep -n jobname -j jobno [-c comment]
	Keep jobname for build jobno from being automatically deleted

<b>kill</b>:
	kill -p pid -s signal
	kill process by PID (see ps) on the server

<b>lastchange</b>:
	lastchange -n jobname [-l n]
	display last [n] updates for jobname.

<b>laststart</b>:
	laststart [-l n]
	display last [n] buildserver starts

<b>nextjob</b>:
	nextjob -n jobname
	display updates CM system will make for jobname with next sync

<b>notify</b>:
	notify -n jobname -f firstjob -l lastjob -c comment
	Send email with comment to all submitters of jobname
	from firstjob to lastjob

<b>promote</b>:
	promote -n jobname -j jobno -c "comment"
	Promote jobname jobno for formal testing

<b>ps</b>:
	ps options
	Build Unix style process table on the server

<b>recover</b>:
	recover -n jobname
	Recover active jobs accidently removed by enable command

<b>rejectlog</b>:
	rejectlog [-l limit] 
	display client rejection log [limit to limit number of recs]

<b>removed</b>:
	removed
	display jobs no longer under the buildserver's control

<b>removejob</b>:
	removejob -n jobname [-f]
	Remove defined job from the buildserver [-f permanent deletion]

<b>restorejob</b>:
	restorejob -n jobname
	Add previously defined job back to the buildserver

<b>runstats</b>:
	runstats -n job [-l number -a -r]

	Display statistics for [optionally -l] last build jobs
	-a displays only the average build time
	-r displays raw time in ticks (seconds) useful
	for feeding into a script

<b>servers</b>:
	servers
	display other build servers

<b>shutdown</b>:
	shutdown
	shutdown buildserver processes

<b>status</b>:
	status -n job 
	Check build status

<b>subscribe</b>:
	subscribe -n jobname -e emailaddress
	subscribe for automatic email notification of defined job

<b>subscribers</b>:
	subscribers -n jobname
	display email subscription list for a defined job

<b>synclog</b>:
	synclog -n jobname
	retrieve synclog of defined job

<b>sysinfo</b>:
	sysinfo
	display hardware/software configuration for server

<b>unauthorize</b>:
	unauthorize -c machinename
	remove computername from authorization list

<b>unsubscribe</b>:
	unsubscribe -n jobname -e emailaddress
	unsubscribe from automatic email notification of defined job

<b>whatsnew</b>:
	whatsnew
	display latest changes made to the build server

</pre>
</body>
</html>
# Change User Description Committed
#1 4697 Eric Wallengren Adding files for CABIE