Hi Thiago, yea I as well would like to recommend using debuild - especially if the package should be pushed upstreams and become an "official" Debian package. I could try to ask colleagues how they usually build their DEB packages if using JIRA, Git or Bugzilla to pull the changelog information.
Are you re-using the already existing Tomcat packages for Debian? Or is the TomEE package a self-contained package that as well includes Tomcat. Maybe if that is possible it would make sense to rely on the already existing Tomcat Packages [1] and just have a tomcat$version-tomee or tomee-tomcat (if multiple tomcat versions are supported) package instead. That way you wouldn't have to care about stuff like which user runs the underlying Tomcat instance etc.. Others are following the same strategy btw - for instance jenkins. [1] https://packages.debian.org/search?keywords=tomcat Cheers Daniel On Sun, Mar 30, 2014 at 3:06 PM, Thiago Veronezi <[email protected]>wrote: > Hi Daniel, > > I know that jira has a rest api; I would like to link it to our build. This > way we wouldn't have to maintain to changelogs: the tomee jira and the > debian/changelog file. I didnt touch it yet because I'm trying to address > the rest of the violations that the current build has. > https://ftp-master.debian.org/REJECT-FAQ.html > > I start to think that the maven build will not help us. The debian > developers expect to build the packages from the source codes with a simple > debuild command. I will learn debuild first. I hope it can use the maven > builds too. > > []s, > Thiago. > > > > > On Fri, Mar 28, 2014 at 6:25 PM, dsh <[email protected]> wrote: > > > Hi, > > > > can you describe a little more what's the issue with the changelog file? > Is > > it just that you don't know how to create it or rather that you don't > know > > how to create it automatically while building the DEB package? I think > > adding that information helps others to provide some support on this > > subject. > > > > Cheers > > Daniel > > > > > > On Tue, Mar 25, 2014 at 8:18 PM, Thiago Veronezi <[email protected] > > >wrote: > > > > > Great news! Our debian package is working. I just need to figure out > how > > to > > > create this changelog file that lintian is complaining about. > > > In the mean time, any feedback is very welcome. You can test it by > > building > > > it locally... > > > > > > tveronezi@botodev:~/dev/ws/tomee/trunk/tomee/tomee-deb$ mvn clean > > install > > > tveronezi@botodev:~/dev/ws/tomee/trunk/tomee/tomee-deb$ sudo dpkg -i > > > ./target/apache-tomee-1.6.1-SNAPSHOT.deb > > > > > > I have a question for you guys: how to make maven to install the debian > > > file in " > > > repository.apache.org/content/groups/snapshots/org/apache/openejb/"? > > > My "maven-install-plugin" approach didn't work. > > > > > > []s, > > > Thiago. > > > > > > On Tue, Mar 25, 2014 at 3:01 PM, <[email protected]> wrote: > > > > > > > Author: tveronezi > > > > Date: Tue Mar 25 19:01:36 2014 > > > > New Revision: 1581465 > > > > > > > > URL: http://svn.apache.org/r1581465 > > > > Log: > > > > https://issues.apache.org/jira/browse/TOMEE-245 > > > > > > > > The package is working, but it's not yet a valid debian package. We > > still > > > > need to figure out how to create the changelog file. > > > > > > > > tveronezi@botodev:~/dev/ws/tomee/trunk/tomee/tomee-deb$ lintian > > > > ./target/apache-tomee-1.6.1-SNAPSHOT.deb > > > > E: tomee: debian-changelog-file-missing > > > > > > > > Added: > > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/postrm.sh > > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/copyright.template > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/init/setenv.sh > > > > Modified: > > > > > > > > > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/groovy/org/apache/tomee/deb/PackageBuilder.groovy > > > > > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/postinst.sh > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/prerm.sh > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/init/tomee.sh > > > > > > > > Modified: > > > > > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/groovy/org/apache/tomee/deb/PackageBuilder.groovy > > > > URL: > > > > > > > > > > http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-deb/src/main/groovy/org/apache/tomee/deb/PackageBuilder.groovy?rev=1581465&r1=1581464&r2=1581465&view=diff > > > > > > > > > > > > > > ============================================================================== > > > > --- > > > > > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/groovy/org/apache/tomee/deb/PackageBuilder.groovy > > > > (original) > > > > +++ > > > > > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/groovy/org/apache/tomee/deb/PackageBuilder.groovy > > > > Tue Mar 25 19:01:36 2014 > > > > @@ -43,15 +43,13 @@ class PackageBuilder { > > > > outputDir.delete() > > > > aux.renameTo(outputDir) > > > > ant.delete(includeemptydirs: true) { > > > > + fileset(dir: outputDir.absolutePath, includes: > '**/*.txt') > > > > fileset(dir: outputDir.absolutePath, includes: > '**/*.exe') > > > > fileset(dir: outputDir.absolutePath, includes: > '**/*.bat') > > > > fileset(dir: outputDir.absolutePath, includes: > > > > '**/*.original') > > > > fileset(dir: outputDir.absolutePath, includes: > '**/*.tmp') > > > > - fileset(dir: new File(outputDir, > 'webapps').absolutePath) > > { > > > > - include(name: '**/*') > > > > - exclude(name: '**/tomee/**') > > > > - } > > > > } > > > > + ant.delete(includeemptydirs: true, dir: new File(outputDir, > > > > 'webapps').absolutePath) > > > > outputDir.absolutePath > > > > } > > > > > > > > @@ -98,6 +96,15 @@ class PackageBuilder { > > > > new File(controlDir, 'prerm').withWriter { BufferedWriter > out > > -> > > > > > > out.write(this.class.getResource('/control/prerm.sh').text) > > > > } > > > > + new File(controlDir, 'postrm').withWriter { BufferedWriter > out > > > -> > > > > + > > out.write(this.class.getResource('/control/postrm.sh').text) > > > > + } > > > > + new File(controlDir, 'conffiles').withWriter { > BufferedWriter > > > out > > > > -> > > > > + new File(dataDir, 'etc/tomee').eachFile { > > > > + out.writeLine("/etc/tomee/${it.name}") > > > > + } > > > > + out.writeLine('/etc/init.d/tomee') > > > > + } > > > > controlDir.absolutePath > > > > } > > > > > > > > @@ -106,7 +113,7 @@ class PackageBuilder { > > > > def outputDir = new File(exploded.parent, 'output') > > > > def dataDir = new File(outputDir, 'data') > > > > dataDir.mkdirs() > > > > - def distributionTomeeDir = new File(dataDir, 'opt/tomee') > > > > + def distributionTomeeDir = new File(dataDir, > > 'usr/share/tomee') > > > > ant.move(todir: distributionTomeeDir.absolutePath) { > > > > fileset(dir: explodedPath) { > > > > include(name: "**/*") > > > > @@ -122,10 +129,6 @@ class PackageBuilder { > > > > new File(initd, 'tomee').withWriter { BufferedWriter out -> > > > > out.write(this.class.getResource('/init/tomee.sh').text) > > > > } > > > > - ant.move( > > > > - todir: new File(dataDir, > > 'var/lib/tomee').absolutePath, > > > > - file: new File(distributionTomeeDir, > > > > 'webapps').absolutePath > > > > - ) > > > > ant.move(todir: new File(dataDir, > > > > 'usr/share/doc/tomee/').absolutePath) { > > > > fileset(file: new File(distributionTomeeDir, > > > > 'LICENSE').absolutePath) > > > > fileset(file: new File(distributionTomeeDir, > > > > 'NOTICE').absolutePath) > > > > @@ -133,13 +136,24 @@ class PackageBuilder { > > > > fileset(file: new File(distributionTomeeDir, > > > > 'RUNNING.txt').absolutePath) > > > > } > > > > new File(dataDir, 'var/log/tomee').mkdirs() > > > > - new File(dataDir, 'var/tmp/tomee/temp').mkdirs() > > > > - new File(dataDir, 'var/tmp/tomee/work').mkdirs() > > > > + new File(dataDir, 'var/lib/tomee/temp').mkdirs() > > > > + new File(dataDir, 'var/lib/tomee/work').mkdirs() > > > > + new File(dataDir, 'var/lib/tomee/webapps').mkdirs() > > > > new File(distributionTomeeDir, 'conf').delete() // add link > > from > > > > "/usr/lib/tomee/conf" to "/etc/tomee" > > > > new File(distributionTomeeDir, 'logs').delete() // add link > > from > > > > "/usr/lib/tomee/logs" to "/var/log/tomee" > > > > - new File(distributionTomeeDir, 'temp').delete() // add link > > from > > > > "/usr/lib/tomee/temp" to "/var/tmp/tomee/temp" > > > > - new File(distributionTomeeDir, 'work').delete() // add link > > from > > > > "/usr/lib/tomee/work" to "/var/tmp/tomee/work" > > > > - new File(distributionTomeeDir, 'webapps').delete() // add > link > > > > from "/usr/lib/tomee/webapps" to "/var/lib/tomee/webapps" > > > > + new File(distributionTomeeDir, 'temp').delete() // add link > > from > > > > "/usr/lib/tomee/temp" to "/var/lib/tomee/temp" > > > > + new File(distributionTomeeDir, 'work').delete() // add link > > from > > > > "/usr/lib/tomee/work" to "/var/lib/tomee/work" > > > > + new File(dataDir, > 'usr/share/doc/tomee/copyright').withWriter > > { > > > > BufferedWriter out -> > > > > + def template = new > GStringTemplateEngine().createTemplate( > > > > + this.class.getResource('/copyright.template') > > > > + ).make([ > > > > + formattedDate: new Date().toString() > > > > + ]) > > > > + out.write(template.toString()) > > > > + } > > > > + new File(distributionTomeeDir, 'bin/setenv.sh').withWriter { > > > > BufferedWriter out -> > > > > + > out.write(this.class.getResource('/init/setenv.sh').text) > > > > + } > > > > exploded.delete() > > > > dataDir.absolutePath > > > > } > > > > @@ -155,12 +169,14 @@ class PackageBuilder { > > > > exclude(name: "**/*.sh") > > > > exclude(name: "**/postinst") > > > > exclude(name: "**/prerm") > > > > + exclude(name: "**/postrm") > > > > exclude(name: "**/init.d/tomee") > > > > } > > > > tarfileset(dir: dataDir.absolutePath, username: > > 'root', > > > > group: 'root', filemode: '755', prefix: './') { > > > > include(name: "**/*.sh") > > > > include(name: "**/postinst") > > > > include(name: "**/prerm") > > > > + include(name: "**/postrm") > > > > include(name: "**/init.d/tomee") > > > > } > > > > } > > > > > > > > Modified: > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/postinst.sh > > > > URL: > > > > > > > > > > http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/postinst.sh?rev=1581465&r1=1581464&r2=1581465&view=diff > > > > > > > > > > > > > > ============================================================================== > > > > --- > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/postinst.sh > > > > (original) > > > > +++ > > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/postinst.sh > > > > Tue Mar 25 19:01:36 2014 > > > > @@ -1,19 +1,17 @@ > > > > #!/bin/sh > > > > > > > > -ln -sf /etc/tomee /opt/tomee/conf > > > > -ln -sf /var/log/tomee /opt/tomee/logs > > > > -ln -sf /var/tmp/tomee/temp /opt/tomee/temp > > > > -ln -sf /var/tmp/tomee/work /opt/tomee/work > > > > -ln -sf /var/lib/tomee/webapps /opt/tomee/webapps > > > > +ln -sf /etc/tomee /usr/share/tomee/conf > > > > +ln -sf /var/log/tomee /usr/share/tomee/logs > > > > +ln -sf /var/lib/tomee/temp /usr/share/tomee/temp > > > > +ln -sf /var/lib/tomee/work /usr/share/tomee/work > > > > +ln -sf /var/lib/tomee/webapps /usr/share/tomee/webapps > > > > > > > > groupadd apachetomee > > > > useradd apachetomee -g apachetomee > > > > > > > > -chown -R apachetomee:apachetomee /opt/tomee/ > > > > +chown -R apachetomee:apachetomee /usr/share/tomee > > > > chown -R apachetomee:apachetomee /var/log/tomee > > > > -chown -R apachetomee:apachetomee /var/tmp/tomee/temp > > > > -chown -R apachetomee:apachetomee /var/tmp/tomee/work > > > > -chown -R apachetomee:apachetomee /var/lib/tomee/webapps > > > > +chown -R apachetomee:apachetomee /var/lib/tomee > > > > > > > > update-rc.d tomee defaults > > > > echo "Reboot your machine or run 'service tomee start' to start the > > > > Apache TomEE server" > > > > \ No newline at end of file > > > > > > > > Added: > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/postrm.sh > > > > URL: > > > > > > > > > > http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/postrm.sh?rev=1581465&view=auto > > > > > > > > > > > > > > ============================================================================== > > > > --- > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/postrm.sh > > > > (added) > > > > +++ > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/postrm.sh > > > > Tue Mar 25 19:01:36 2014 > > > > @@ -0,0 +1,3 @@ > > > > +#!/bin/sh > > > > + > > > > +update-rc.d -f tomee remove > > > > \ No newline at end of file > > > > > > > > Modified: > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/prerm.sh > > > > URL: > > > > > > > > > > http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/prerm.sh?rev=1581465&r1=1581464&r2=1581465&view=diff > > > > > > > > > > > > > > ============================================================================== > > > > --- > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/prerm.sh > > > > (original) > > > > +++ > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/control/prerm.sh > > > > Tue Mar 25 19:01:36 2014 > > > > @@ -1,15 +1,13 @@ > > > > #!/bin/sh > > > > > > > > -kill -9 $(ps aux | grep org.apache.catalina.startup.Bootstrap | grep > > -v > > > > grep | awk '{print $2}') > > > > +CATALINA_HOME=/usr/share/tomee > > > > +su - apachetomee -c "$CATALINA_HOME/bin/shutdown.sh -force" > > > > > > > > -rm -f /opt/tomee/conf > > > > -rm -f /opt/tomee/logs > > > > -rm -f /opt/tomee/temp > > > > -rm -f /opt/tomee/work > > > > -rm -f /opt/tomee/webapps > > > > +rm -f /usr/share/tomee/conf > > > > +rm -f /usr/share/tomee/logs > > > > +rm -f /usr/share/tomee/temp > > > > +rm -f /usr/share/tomee/work > > > > +rm -f /usr/share/tomee/webapps > > > > > > > > -rm -Rf /var/tmp/tomee/work/* > > > > -rm -Rf /var/tmp/tomee/temp/* > > > > +rm -Rf /var/lib/tomee/* > > > > rm -Rf /var/log/tomee/* > > > > - > > > > -update-rc.d -f tomee remove > > > > \ No newline at end of file > > > > > > > > Added: > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/copyright.template > > > > URL: > > > > > > > > > > http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/copyright.template?rev=1581465&view=auto > > > > > > > > > > > > > > ============================================================================== > > > > --- > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/copyright.template > > > > (added) > > > > +++ > > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/copyright.template > > > Tue > > > > Mar 25 19:01:36 2014 > > > > @@ -0,0 +1,16 @@ > > > > +This package was debianized by the Apache TomEE dev Team < > > > > [email protected]> on > > > > +${formattedDate} > > > > + > > > > +Upstream Authors: > > > > + > > > > + Thiago Veronezi <[email protected]> > > > > + > > > > +Copyright: > > > > + > > > > + Copyright (C) 1999-2014 The Apache Software Foundation > > > > + > > > > +License: > > > > + > > > > + * (if not otherwise specified): > > > > + > > > > + /usr/share/common-licenses/Apache-2' > > > > > > > > Added: > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/init/setenv.sh > > > > URL: > > > > > > > > > > http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/init/setenv.sh?rev=1581465&view=auto > > > > > > > > > > > > > > ============================================================================== > > > > --- > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/init/setenv.sh > > > > (added) > > > > +++ > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/init/setenv.sh > > > > Tue Mar 25 19:01:36 2014 > > > > @@ -0,0 +1,2 @@ > > > > +#!/bin/sh > > > > +export CATALINA_PID=/tmp/tomee.pid > > > > \ No newline at end of file > > > > > > > > Modified: > > > > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/init/tomee.sh > > > > URL: > > > > > > > > > > http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/init/tomee.sh?rev=1581465&r1=1581464&r2=1581465&view=diff > > > > > > > > > > > > > > ============================================================================== > > > > --- > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/init/tomee.sh > > > > (original) > > > > +++ > tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/init/tomee.sh > > > Tue > > > > Mar 25 19:01:36 2014 > > > > @@ -4,20 +4,20 @@ > > > > # Short-Description: Apache TomEE > > > > # Description: Manages the Apache TomEE server. > > > > ### END INIT INFO > > > > -CATALINA_HOME=/opt/tomee > > > > +CATALINA_HOME=/usr/share/tomee > > > > TOMCAT_USER=apachetomee > > > > > > > > RETVAL=0 > > > > start(){ > > > > echo "Starting TomEE: " > > > > - su - $TOMCAT_USER -c "$CATALINA_HOME/bin/startup.sh" > > > > + su - $TOMCAT_USER -c "$CATALINA_HOME/bin/catalina.sh start" > > > > RETVAL=$? > > > > return $RETVAL > > > > } > > > > > > > > stop(){ > > > > echo "Shutting down TomEE: " > > > > - su - $TOMCAT_USER -c "$CATALINA_HOME/bin/shutdown.sh" > > > > + su - $TOMCAT_USER -c "$CATALINA_HOME/bin/shutdown.sh -force" > > > > RETVAL=$? > > > > return $RETVAL > > > > } > > > > @@ -29,12 +29,12 @@ case "$1" in > > > > stop) > > > > stop > > > > ;; > > > > - force-reload) > > > > + restart) > > > > stop > > > > start > > > > ;; > > > > *) > > > > - echo $"Usage: $0 {start|stop|force-reload}" > > > > + echo $"Usage: $0 {start|stop|restart}" > > > > exit 1 > > > > ;; > > > > esac > > > > > > > > > > > > > > > > > >
