2010-02-04 8 views
1

Pour être rapidementEmballage de cruisecontrol sur debian

aujourd'hui, nous pouvons trouver un paquet debian cruisecontrol publié le 2.3.1 (à partir de 2005)

Pour un projet opensource personnel basé sur phpUnderControl j'ai besoin de mettre à jour ce paquet à la dernière version (2.8.3 depuis janvier 2010)

Je suit toutes les étapes de la documentation ubuntu officielle sur l'emballage d'un logiciel avec pbuilder

la dernière commande utilisée:

sudo pbuilder build *.dsc

donc j'ai une erreur avec les tests unitaires du paquet (JUnit) dans l'environnement chroot frais

si j'appelle fourmi dans le dossier source c'est ok, mais quand je tente avec pbuilder pour créer le package que j'ai eu cette erreur:

ici la trace:

[email protected]:~/PIC/CC/test# sudo pbuilder build *.dsc 
W: /home/sqli/.pbuilderrc does not exist 
I: using fakeroot in build. 
Current time: Wed Feb 3 11:13:39 CET 2010 
pbuilder-time-stamp: 1265192019 
Building the build Environment 
-> extracting base tarball [/var/cache/pbuilder/base.tgz] 
-> creating local configuration 
-> copying local configuration 
-> mounting /proc filesystem 
-> mounting /dev/pts filesystem 
-> policy-rc.d already exists 
Obtaining the cached apt archive contents 
Installing the build-deps 
-> Attempting to satisfy build-dependencies 
-> Creating pbuilder-satisfydepends-dummy package 
Package: pbuilder-satisfydepends-dummy 
Version: 0.invalid.0 
Architecture: i386 
Maintainer: Debian Pbuilder Team <[email protected]> 
Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder 
This package was created automatically by pbuilder and should 
Depends: ant, debhelper (>= 5) 
dpkg-deb: building package `pbuilder-satisfydepends-dummy' in `/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. 
Reading package lists... Done 
Building dependency tree 
Reading state information... Done 
aptitude is already the newest version. 
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 
Selecting previously deselected package pbuilder-satisfydepends-dummy. 
(Reading database ... 18446 files and directories currently installed.) 
Unpacking pbuilder-satisfydepends-dummy (from .../pbuilder-satisfydepends-dummy.deb) ... 
Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... 
Reading package lists... Done 
Building dependency tree 
Reading state information... Done 
Initializing package states... Done 
Writing extended state information... Done 
Building tag database... Done 
No packages will be installed, upgraded, or removed. 
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 
Need to get 0B of archives. After unpacking 0B will be used. 
Writing extended state information... Done 
Reading package lists... Done 
Building dependency tree 
Reading state information... Done 
Reading extended state information 
Initializing package states... Done 
Building tag database... Done 
-> Finished parsing the build-deps 
Reading package lists... Done 
Building dependency tree 
Reading state information... Done 
The following NEW packages will be installed: 
    fakeroot 
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 
Need to get 0B/114kB of archives. 
After this operation, 451kB of additional disk space will be used. 
Selecting previously deselected package fakeroot. 
(Reading database ... 18446 files and directories currently installed.) 
Unpacking fakeroot (from .../fakeroot_1.9ubuntu1_i386.deb) ... 
Setting up fakeroot (1.9ubuntu1) ... 

Copying back the cached apt archive contents 
Copying source file 
    -> copying [cruisecontrol_2.8.3-1.dsc] 
    -> copying [./cruisecontrol_2.8.3.orig.tar.gz] 
    -> copying [./cruisecontrol_2.8.3-1.diff.gz] 
Extracting source 
dpkg-source: warning: extracting unsigned source package (./cruisecontrol_2.8.3-1.dsc) 
dpkg-source: extracting cruisecontrol in cruisecontrol-2.8.3 
dpkg-source: unpacking cruisecontrol_2.8.3.orig.tar.gz 
dpkg-source: applying ./cruisecontrol_2.8.3-1.diff.gz 
-> Building the package 
dpkg-buildpackage: set CPPFLAGS to default value: 
dpkg-buildpackage: set CFLAGS to default value: -g -O2 
dpkg-buildpackage: set CXXFLAGS to default value: -g -O2 
dpkg-buildpackage: set FFLAGS to default value: -g -O2 
dpkg-buildpackage: set LDFLAGS to default value: -Wl,-Bsymbolic-functions 
dpkg-buildpackage: source package cruisecontrol 
dpkg-buildpackage: source version 2.8.3-1 
dpkg-buildpackage: source changed by SQLI <[email protected]> 
dpkg-buildpackage: host architecture i386 
fakeroot debian/rules clean 
dh_testdir 
dh_testroot 
rm -f build-stamp configure-stamp 
# Add here commands to clean up after the build process. 
(cd main; ant clean) 
Buildfile: build.xml 

clean: 

clean: 

BUILD SUCCESSFUL 
Total time: 2 seconds 
dh_clean 
dpkg-source -b cruisecontrol-2.8.3 
dpkg-source: building cruisecontrol using existing cruisecontrol_2.8.3.orig.tar.gz 
dpkg-source: building cruisecontrol in cruisecontrol_2.8.3-1.diff.gz 
dpkg-source: warning: file main/loggers/build.xml has no final newline (either original or modified version) 
dpkg-source: building cruisecontrol in cruisecontrol_2.8.3-1.dsc 
debian/rules build 
dh_testdir 
# Add here commands to configure the package. 
touch configure-stamp 
dh_testdir 
#/usr/bin/make -s -f debian/Makefile prefix=`pwd`/debian/tmp lib 
(cd main; ant) 
Buildfile: build.xml 

clean: 

clean: 

checklabel: 
    [echo] Java: 1.5.0 (GNU libgcj) 
    [echo] in /usr/lib/jvm/java-1.5.0-gcj-4.2-1.5.0.0/jre 
    [echo] Ant: Apache Ant version 1.7.0 compiled on August 29 2007 
    [echo] in /usr/share/ant 
    [echo] CruiseControl: 2.8.3 

init: 
    [mkdir] Created dir: /tmp/buildd/cruisecontrol-2.8.3/main/target/classes 
    [mkdir] Created dir: /tmp/buildd/cruisecontrol-2.8.3/main/target/test-classes 
    [mkdir] Created dir: /tmp/buildd/cruisecontrol-2.8.3/main/target/tmp 
    [mkdir] Created dir: /tmp/buildd/cruisecontrol-2.8.3/main/dist 
    [mkdir] Created dir: /tmp/buildd/cruisecontrol-2.8.3/main/target/test-results 
    [mkdir] Created dir: /tmp/buildd/cruisecontrol-2.8.3/main/target/emma-results 

logger.jar: 

clean: 

compile: 
    [mkdir] Created dir: /tmp/buildd/cruisecontrol-2.8.3/main/loggers/target/classes 
    [javac] Compiling 4 source files to /tmp/buildd/cruisecontrol-2.8.3/main/loggers/target/classes 
    [mkdir] Created dir: /tmp/buildd/cruisecontrol-2.8.3/main/loggers/target/test-classes 
    [javac] Compiling 1 source file to /tmp/buildd/cruisecontrol-2.8.3/main/loggers/target/test-classes 

[b]test: 
    [mkdir] Created dir: /tmp/buildd/cruisecontrol-2.8.3/main/loggers/target/test-results 
    [junit] Running net.sourceforge.cruisecontrol.builders.AntOutputLoggerTest 
    [junit] Testsuite: net.sourceforge.cruisecontrol.builders.AntOutputLoggerTest 
    [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0.459 sec 
    [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0.459 sec 
    [junit] 
    [mkdir] Created dir: /tmp/buildd/cruisecontrol-2.8.3/main/loggers/target/test-report 
[junitreport] Processing /tmp/buildd/cruisecontrol-2.8.3/main/loggers/target/test-report/TESTS-TestSuites.xml to /tmp/null650765339 
[junitreport] Loading stylesheet jar:file:/usr/share/ant/lib/ant-junit.jar!/org/apache/tools/ant/taskdefs/optional/junit/xsl/junit-frames.xsl 
[junitreport] Failed to process /tmp/buildd/cruisecontrol-2.8.3/main/loggers/target/test-report/TESTS-TestSuites.xml[/b] 

BUILD FAILED 
/tmp/buildd/cruisecontrol-2.8.3/main/build.xml:326: The following error occurred while executing this line: 
/tmp/buildd/cruisecontrol-2.8.3/main/loggers/build.xml:45: Errors while applying transformations: javax.xml.transform.TransformerConfigurationException: SAX parser error: reference to entity in undeclared doctype 

Total time: 9 seconds 
make: *** [build-stamp] Error 1 
dpkg-buildpackage: failure: debian/rules build gave error exit status 2 
pbuilder: Failed autobuilding of package 
-> Aborting with an error 
-> unmounting dev/pts filesystem 
-> unmounting proc filesystem 
-> cleaning the build env 
    -> removing directory /var/cache/pbuilder/build//9119 and its subdirectories 

Toute idée?

Vive

Répondre

2

Ok, je résolus finalement mon problème ...

Le problème proviennent de la jvm publié sur le pbuild chroot environement plus quelques manquants libs java.

J'ai dû modifier certains paramètres sur le fichier pbuilderrc et compiler le fichier base.tgz avec le package ant-optionnel + sun-java-6 jdk deb. Finalement, j'ai dû reconstruire le makefile (debian/rules) et la cause de la source java de cruisecontrol sera compilée. J'ai donc sorti la version 2.8.3 de cruisecontrol avec le paquet deb. ne fonctionne que sur x86arch pour le moment.