On Mon, 17 Nov 2008, Tom Brown wrote:
Currently devs check code into perforce and we have to checkout > package > update repo > deploy
I know this could be scripted but are there any tools out there that can take code from a repository and build rpm's in a continuous integration type manner? I have been hunting around for such a tool and so far not seeing anything obvious as i dont want to reinvent the wheel if at all possible.
I think you mean:
pull from VCS -> date versioned tarball -> postioned to: ~/rpmbuild/SOURCES/ spec file generation -> rpmbuild -ba specfile
yielding:
Wrote: /home/herrold/rpmbuild/SRPMS/ta-lib-0.0.20081117.cvs-1.src.rpm Wrote: /home/herrold/rpmbuild/RPMS/x86_64/ta-lib-0.0.20081117.cvs-1.x86_64.rpm Wrote: /home/herrold/rpmbuild/RPMS/x86_64/ta-lib-debuginfo-0.0.20081117.cvs-1.x86_64.rpm
I just pushed an update of just such a script which works against a project at SourceForge (I see I have some rot against upstream's tests which I need to look into)
see:
ftp://ftp.owlriver.com/pub/mirror/ORC/ta-lib/README
which does this:
[herrold@centos-5 ta-lib]$ co -l README RCS/README,v --> README revision 1.3 (locked) done [herrold@centos-5 ta-lib]$ sudo scp README \ mailhub.owlriver.net:/var/ftp/pub/local/ORC/ta-lib/ [sudo] password for herrold: root@mailhub.owlriver.net's password: README 100% 2773 2.7KB/s 00:00 [herrold@centos-5 ta-lib]$ ./README Checked out revision 660. Checked out revision 660. Starting scripts display indicator test ... summarized 201 prior should be 502 lines first backtest example: (.... time passes ...) Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Checking for unpackaged file(s): /usr/lib/rpm/check-files /var/tmp/ta-lib-0.0.20081117.cvs.root Wrote: /home/herrold/rpmbuild/SRPMS/ta-lib-0.0.20081117.cvs-1.src.rpm Wrote: /home/herrold/rpmbuild/RPMS/x86_64/ta-lib-0.0.20081117.cvs-1.x86_64.rpm Wrote: /home/herrold/rpmbuild/RPMS/x86_64/ta-lib-debuginfo-0.0.20081117.cvs-1.x86_64.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.1771 ...
-- Russ herrold