SVN-AUTORELEASEDEB(1) User Contributed Perl Documentation SVN-AUTORELEASEDEB(1)NAME
svn-autoreleasedeb - Automatic Release of debian packages from
DESCRIPTION
This script generates and uploads the debian package for svn modules managed by svn-buildpackage.
svn-autoreleasedeb will maintain a state file of all the packages you want to be automatically published, and every time you commit the
debian/changelog file of your package, changing the debian version to a greater value, it will be published.
All the parameters to the script are configured in the conffile. There is no command-line switch. See svn-autoreleasedeb.conf(5) for more
information.
USING
There are two ways of using this script:
1) Run as user svn-autoreleasedeb in cron. This is very useful for software houses that want to have the "nightily build" version of the
software published automatically. In this case, the config file will be "/etc/svn-autoreleasedeb.conf" and it will use
/var/lib/svn-autoreleasedeb/ as scratch dir.
NOTE: edit /etc/default/svn-autoreleasedeb to control this behavior
NOTE 2: all output will be thrown in /var/log/svn-autoreleasedeb/run.log
2) Run as yourself, it will automatizate the work you will have if you have your packages in SVN. In this case, the config file will be
$HOME/.svn-autoreleasedeb/conf and the scratch dir will be $HOME/.svn-autoreleasedeb. svn-autoreleasedeb will not create defaults, you
must have the configuration file created before running svn-autoreleasedeb. See svn-autoreleasedeb.conf(5).
TODO
- Use a snapshot of the time of the commit in
the changelog to checkout the source
- Localize the messages.
- Work with other than all lowercase in conffile.
- Use a better format for conffile.
_EXIT CODES
_exit codes:
0 = Clean _exit
1 = Config file not found
2 = No packages in config file
3 = Couldn't open the state file
4 = Couldn't open the state file for writing
5 = Couldn't determine architecture
SEE ALSO svn-buildpackage(1), svn(1), svn-autoreleasedeb.conf(5), dupload(1)AUTHOR
This manual page was written by Daniel Ruoso <daniel@ruoso.com>, for the Debian GNU/Linux system.
perl v5.8.7 2006-08-16 SVN-AUTORELEASEDEB(1)
Check Out this Related Man Page
SVN-AUTORELEASEDEB.CONF(5) User Contributed Perl Documentation SVN-AUTORELEASEDEB.CONF(5)NAME
svn-autoreleasedeb.conf - Configuration for svn-autoreleasedeb
SYNOPSIS
/etc/svn-autoreleasedeb.conf
$HOME/.svn-autoreleasedeb/conf
DESCRIPTION
The svn-autoreleasedeb configuration file is writed in XML, because XML is easy to work with multiple-level data, but it's already in the
TODO list to use a better format.
As a good XML file, this config file has the following header.
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE svn-autoreleasedeb [
<!ELEMENT sources (server)+>
<!ELEMENT server (package)+>
<!ATTLIST server
name CDATA #REQUIRED
options CDATA #REQUIRED>
<!ELEMENT package (option)+>
<!ATTLIST package
name CDATA #REQUIRED
svnserver CDATA #REQUIRED
prefix CDATA #REQUIRED
tag CDATA #REQUIRED>
<!ELEMENT option EMPTY>
<!ATTLIST option
name CDATA #REQUIRED
value CDATA #REQUIRED>
]>
Which, in fact, tells the structure of the XML file. But in the case you don't know XML, this header tells that, in the sources, you have
servers, which have packages, which have options. A server has the "name" and the "option" properies, a package has "name", "svnserver",
"prefix" and "tag" properties and an option has "name" and "value" property.
Before explaining how the options affects the script, you must know that in the current version, all the tags and properties MUST be lower-
case (it's already on the TODO list).
CONFIGURATION SECTIONS
server
This is the master section, tells what server to dupload. Actually, the "name" property of the server is used as the "--to" parameter to
dupload. Packages are declared inside servers. Also, the "options" property tells aditional parameters to svn-buildpackage for every pack-
age in this server.
package
The package itself, the "name" property is used as the module name for svn checkout. The "svnserver" property is passed to svn and the
"prefix" is placed before the module name, used if your package is inside some other directory than the svn root. You must inform the tag
to checkout the sources from. This tag should be used to point where to get the release from. "stable" is a good name for a tag.
option
Specify an option to a package. The following options are accepted and increment the following text to the svn-buildpackage command:
binary-source = 1: "-b"
EXAMPLE
In the case you still didn't understand the config file, follows an example:
<server name="intern">
<package name="svn-autoreleasedeb" svnserver="svn://ruoso@ozonio:/var/svn" prefix="" tag="trunk">
</package>
<package name="someotherpackage" svnserver="svn://ruoso@ozonio:/var/svn" prefix="" tag="trunk">
<option name="binary-source" value="1"/>
</package>
</server>
SEE ALSO svn-buildpackage(1), svn(1), svn-autoreleasedeb(1), dupload(1)AUTHOR
This manual page was written by Daniel Ruoso <daniel@ruoso.com>, for the Debian GNU/Linux system.
perl v5.8.7 2006-08-04 SVN-AUTORELEASEDEB.CONF(5)