MDV::Repsys::Remote
Module to access and build rpm from a svn
Create a new MDV::Repsys::Remote object
options:
Use this repsys configuration file instead /etc/repsys.conf
Disable commit action, usefull for testing purpose
Return the last error message after a failure.
Set the verbosity verbosity of the module:
0 silent 1 progress message 2 debug message
Return the parent svn url location for package named $pkgname
Return the package name from current working copy
Return the svn url location for package named $pkgname
Checkout a package from svn into $destdir directory
Read old changelog entry from svn and write it into $handle. If not specified, $handle is set to STDOUT.
Build a log from svn and print it into $handle. If not specified, $handle is set to STDOUT.
Build the complete changelog for a package and print it into $handle. If not specified, $handle is set to STDOUT.
Generated the final specfile from $pecfile into $fh filehandle.
Build the final changelog for upload from $specfile.
$options{pkgname} is the package name, if not specified, it is evaluate from the specfile.
The new specfile will generated into $options{specfile} is specified, otherwise a file with same name is create into $options{destdir}.
The module is safe, the source and destination can be the same file, the content will be replaced.
if $options{destdir} is not specified, a temporary directory is created. This directory will be trashed on MDV::Repsys::Remote object destruction. So this kind of code will not work:
my $o = MDV::Repsys::Remote->new(); my $newspec = $o->get_final_spec($specfile); $o = undef; do_something_with($newspecfile); # the directory has been deleted
Notice this kind of code produce a warning.
Return the real last revision change for a package.
Return the real last revision change for package checkout into $dir.
Build the final src.rpm from the svn. Return the svn revision and the src.rpm location.
Create a package directory on the svn.
Import a source package into the svn.
Strip the changelog from a specfile and commit it into the svn.
Synchronize sources found into the spec and commit files into the svn.
TAG a package into the svn, aka copy the current tree into VERSION/RELEASE/. The operation is done directly into the svn.
Return a hash containing usefull information about $pkgname:
The name of the package
The size of the package (sum of files size)
The revision of the last changed
The author of the last change
The time of last change (integer value, use loacaltime to have a human readable value)
Submit the package on the build host.
This module creates a number of temporary directories; all are deleted when the program terminates, but with this function you can force a removal of these directories.
Work on this revision from the svn
Extract files into this directories instead a temporary directory.
Olivier Thauvin <nanardon@mandriva.org>
Repsys
To install MDV::Repsys, copy and paste the appropriate command in to your terminal.
cpanm
cpanm MDV::Repsys
CPAN shell
perl -MCPAN -e shell install MDV::Repsys
For more information on module installation, please visit the detailed CPAN module installation guide.