You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by tv...@apache.org on 2014/04/11 20:02:45 UTC
svn commit: r1586731 - in /tomee/tomee/trunk/tomee/tomee-deb/src/main:
groovy/org/apache/tomee/deb/PackageBuilder.groovy
resources/changelog.template resources/control/postinst.sh
resources/control/prerm.sh resources/init/tomee.sh
Author: tveronezi
Date: Fri Apr 11 18:02:45 2014
New Revision: 1586731
URL: http://svn.apache.org/r1586731
Log:
removing some lintian violations
- missing changelog
- bad changelog name
- bad changelog format
- changelog not compressed
- config file not in etc
- missing "force-reload" target
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/changelog.template
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=1586731&r1=1586730&r2=1586731&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 Fri Apr 11 18:02:45 2014
@@ -36,14 +36,19 @@ class PackageBuilder {
def properties
def getJiraData = {
- def factory = new AsynchronousJiraRestClientFactory()
- def restClient = factory.create(new URI(JIRA_SRV), new AnonymousAuthenticationHandler())
+ def restClient = null
try {
+ def factory = new AsynchronousJiraRestClientFactory()
+ restClient = factory.create(new URI(JIRA_SRV), new AnonymousAuthenticationHandler())
String version = properties.tomeeVersion
version = version.replaceAll('-SNAPSHOT$', '')
def query = "project = TOMEE AND issuetype in standardIssueTypes() AND affectedVersion in (${version}) AND status in (Resolved, Closed)"
return restClient.searchClient.searchJql(query).get(1, TimeUnit.MINUTES)
- } finally {
+ } catch (e) {
+ e.printStackTrace()
+ return null
+ }
+ finally {
restClient?.close()
}
}.memoize() // execute it just once per instance
@@ -53,7 +58,7 @@ class PackageBuilder {
String version = properties.tomeeVersion
version = version.replaceAll('-SNAPSHOT$', '')
def templateFile = this.class.getResource('/changelog.template')
- getJiraData().issues.each { Issue issue ->
+ getJiraData()?.issues?.each { Issue issue ->
def urgency
switch (issue.priority.name) {
case 'Blocker':
@@ -90,12 +95,18 @@ class PackageBuilder {
void buildChangelog(File docDir, String classifier) {
def issues = buildChangelogContent(classifier)
- new File(docDir, 'changelog.txt').withWriter { BufferedWriter writer ->
+ if(!issues) {
+ return
+ }
+ def changelogFile = new File(docDir, 'changelog.Debian')
+ changelogFile.withWriter { BufferedWriter writer ->
issues.each { String issue ->
- writer.write(issue)
- writer.writeLine('')
+ writer.writeLine(issue)
}
}
+ def changelogFileGz = new File(changelogFile.parent, 'changelog.Debian.gz')
+ ant.gzip(src: changelogFile.absolutePath, destfile: changelogFileGz.absolutePath)
+ changelogFile.delete()
}
String unzip(String classifier, String tarPath) {
@@ -189,20 +200,15 @@ class PackageBuilder {
writeTemplate(new File(controlDir, 'prerm'), '/control/prerm.sh', [tomeeVersion: properties.tomeeVersion, classifier: classifier])
writeTemplate(new File(controlDir, 'postrm'), '/control/postrm.sh', [tomeeVersion: properties.tomeeVersion, classifier: classifier])
new File(controlDir, 'conffiles').withWriter { BufferedWriter out ->
- new File(dataDir, "etc/tomee-${classifier}-${properties.tomeeVersion}").eachFile {
- out.writeLine("/etc/tomee-${classifier}-${properties.tomeeVersion}/${it.name}")
- }
- out.writeLine("/etc/init.d/tomee-${classifier}")
- new File(dataDir, "var/lib/tomee-${classifier}-${properties.tomeeVersion}/conf").eachFile {
+ new File(dataDir, "etc/tomee-${classifier}").eachFile {
if (it.isFile()) {
- out.writeLine("/var/lib/tomee-${classifier}-${properties.tomeeVersion}/conf/${it.name}")
+ out.writeLine("/etc/tomee-${classifier}/${it.name}")
}
}
- new File(dataDir, "var/lib/tomee-${classifier}-${properties.tomeeVersion}/conf/conf.d").eachFile {
- if (it.isFile()) {
- out.writeLine("/var/lib/tomee-${classifier}-${properties.tomeeVersion}/conf/conf.d/${it.name}")
- }
+ new File(dataDir, "etc/tomee-${classifier}/conf.d").eachFile {
+ out.writeLine("/etc/tomee-${classifier}/conf.d/${it.name}")
}
+ out.writeLine("/etc/init.d/tomee-${classifier}")
}
controlDir.absolutePath
}
@@ -212,72 +218,67 @@ class PackageBuilder {
def outputDir = new File(exploded.parent, "output-${classifier}")
def dataDir = new File(outputDir, 'data')
dataDir.mkdirs()
- def distributionTomeeDir = new File(dataDir, "usr/share/tomee-${classifier}-${properties.tomeeVersion}")
+ def distributionTomeeDir = new File(dataDir, "usr/share/tomee-${classifier}")
ant.move(todir: distributionTomeeDir.absolutePath) {
fileset(dir: explodedPath) {
include(name: "**/*")
}
}
- def homeConf = new File(dataDir, "etc/tomee-${classifier}-${properties.tomeeVersion}")
+ new File(distributionTomeeDir, 'LICENSE').delete() // Unnecessary (lintian complains about this guy.)
+ def homeConf = new File(dataDir, "etc/tomee-${classifier}")
ant.move(todir: homeConf.absolutePath) {
fileset(dir: new File(distributionTomeeDir, 'conf')) {
include(name: "**/*")
}
}
- def initd = new File(dataDir, 'etc/init.d/')
- initd.mkdirs()
- writeTemplate(new File(initd, "tomee-${classifier}"), '/init/tomee.sh', [
- classifier : classifier,
- tomeeVersion: properties.tomeeVersion
- ])
- def docDir = new File(dataDir, "usr/share/doc/tomee-${classifier}-${properties.tomeeVersion}/")
- ant.move(todir: docDir.absolutePath) {
- fileset(file: new File(distributionTomeeDir, 'LICENSE').absolutePath)
- fileset(file: new File(distributionTomeeDir, 'NOTICE').absolutePath)
- fileset(file: new File(distributionTomeeDir, 'RELEASE-NOTES').absolutePath)
- fileset(file: new File(distributionTomeeDir, 'RUNNING.txt').absolutePath)
- }
- buildChangelog(docDir, classifier)
- new File(dataDir, "var/log/tomee-${classifier}-${properties.tomeeVersion}").mkdirs()
- def baseConfDir = new File(dataDir, "var/lib/tomee-${classifier}-${properties.tomeeVersion}/conf")
- baseConfDir.mkdirs()
- ant.copy(todir: baseConfDir.absolutePath) {
- fileset(file: new File(homeConf, 'server.xml'))
- fileset(file: new File(homeConf, 'tomcat-users.xml'))
- }
- new File(baseConfDir.absolutePath, 'openejb.conf').withWriter { BufferedWriter out ->
+ new File(homeConf, 'openejb.conf').withWriter { BufferedWriter out ->
def data = this.class.getResource('/default.openejb.conf').text
out.write(data)
}
- def baseConfDDir = new File(baseConfDir, 'conf.d')
- baseConfDDir.mkdirs()
+ def homeConfD = new File(homeConf, 'conf.d')
+ homeConfD.mkdirs()
// Saving default configuration files
- new File(baseConfDDir, 'cxf.properties').withWriter { BufferedWriter out ->
+ new File(homeConfD, 'cxf.properties').withWriter { BufferedWriter out ->
def data = this.class.getResource('/META-INF/org.apache.openejb.server.ServerService/cxf').text
out.write(data)
}
- new File(baseConfDDir, 'cxf-rs.properties').withWriter { BufferedWriter out ->
+ new File(homeConfD, 'cxf-rs.properties').withWriter { BufferedWriter out ->
def data = this.class.getResource('/META-INF/org.apache.openejb.server.ServerService/cxf-rs').text
out.write(data)
}
- new File(baseConfDDir, 'hsql.properties').withWriter { BufferedWriter out ->
+ new File(homeConfD, 'hsql.properties').withWriter { BufferedWriter out ->
def data = this.class.getResource('/META-INF/org.apache.openejb.server.ServerService/hsql').text
out.write(data)
}
- new File(dataDir, "var/lib/tomee-${classifier}-${properties.tomeeVersion}/temp").mkdirs()
- new File(dataDir, "var/lib/tomee-${classifier}-${properties.tomeeVersion}/work").mkdirs()
- new File(dataDir, "var/lib/tomee-${classifier}-${properties.tomeeVersion}/webapps").mkdirs()
- new File(dataDir, "var/lib/tomee-${classifier}-${properties.tomeeVersion}/apps").mkdirs()
+ def initd = new File(dataDir, 'etc/init.d/')
+ initd.mkdirs()
+ writeTemplate(new File(initd, "tomee-${classifier}"), '/init/tomee.sh', [
+ classifier : classifier,
+ tomeeVersion: properties.tomeeVersion
+ ])
+ def docDir = new File(dataDir, "usr/share/doc/tomee-${classifier}/")
+ ant.move(todir: docDir.absolutePath) {
+ fileset(file: new File(distributionTomeeDir, 'NOTICE').absolutePath)
+ fileset(file: new File(distributionTomeeDir, 'RELEASE-NOTES').absolutePath)
+ fileset(file: new File(distributionTomeeDir, 'RUNNING.txt').absolutePath)
+ }
+ buildChangelog(docDir, classifier)
+ new File(dataDir, "var/log/tomee-${classifier}").mkdirs()
+ new File(dataDir, "var/lib/tomee-${classifier}/conf").mkdirs()
+ new File(dataDir, "var/lib/tomee-${classifier}/temp").mkdirs()
+ new File(dataDir, "var/lib/tomee-${classifier}/work").mkdirs()
+ new File(dataDir, "var/lib/tomee-${classifier}/webapps").mkdirs()
+ new File(dataDir, "var/lib/tomee-${classifier}/apps").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/lib/tomee/temp"
new File(distributionTomeeDir, 'work').delete() // add link from "/usr/lib/tomee/work" to "/var/lib/tomee/work"
writeTemplate(
- new File(dataDir, "usr/share/doc/tomee-${classifier}-${properties.tomeeVersion}/copyright"),
+ new File(dataDir, "usr/share/doc/tomee-${classifier}/copyright"),
'/copyright.template',
[formattedDate: new Date().toString()]
)
- def baseBinDir = new File(dataDir, "var/lib/tomee-${classifier}-${properties.tomeeVersion}/bin")
+ def baseBinDir = new File(dataDir, "var/lib/tomee-${classifier}/bin")
baseBinDir.mkdirs()
writeTemplate(new File(baseBinDir, 'setenv.sh'), '/init/setenv.sh', [
classifier : classifier,
Modified: tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/changelog.template
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/changelog.template?rev=1586731&r1=1586730&r2=1586731&view=diff
==============================================================================
--- tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/changelog.template (original)
+++ tomee/tomee/trunk/tomee/tomee-deb/src/main/resources/changelog.template Fri Apr 11 18:02:45 2014
@@ -2,4 +2,5 @@ tomee-${classifier} (${tomeeVersion}) st
* ${issueTitle}
https://issues.apache.org/jira/browse/${issueID}
- -- ${issueMaintainer} <${issueMaintainerEmail}> ${issueFixDate}
+
+ -- ${issueMaintainer} <${issueMaintainerEmail}> ${issueFixDate}
\ No newline at end of file
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=1586731&r1=1586730&r2=1586731&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 Fri Apr 11 18:02:45 2014
@@ -1,16 +1,27 @@
#!/bin/sh -e
-ln -sf /etc/tomee-${classifier}-${tomeeVersion} /usr/share/tomee-${classifier}-${tomeeVersion}/conf
-ln -sf /var/log/tomee-${classifier}-${tomeeVersion} /var/lib/tomee-${classifier}-${tomeeVersion}/logs
+ln -sf /etc/tomee-${classifier} /usr/share/tomee-${classifier}/conf
+ln -sf /var/log/tomee-${classifier} /var/lib/tomee-${classifier}/logs
+
+# Creating links from catalina_base to the configuration files in catalina_home
+ln -sf /etc/tomee-${classifier}/server.xml /var/lib/tomee-${classifier}/conf/server.xml
+ln -sf /etc/tomee-${classifier}/tomcat-users.xml /var/lib/tomee-${classifier}/conf/tomcat-users.xml
+ln -sf /etc/tomee-${classifier}/openejb.conf /var/lib/tomee-${classifier}/conf/openejb.conf
+ln -sf /etc/tomee-${classifier}/conf.d /var/lib/tomee-${classifier}/conf/conf.d
groupadd apachetomee || true
useradd --system apachetomee -g apachetomee || true
-chown -R root:apachetomee /var/log/tomee-${classifier}-${tomeeVersion}
-chown -R root:apachetomee /var/lib/tomee-${classifier}-${tomeeVersion}
-chown -R root:apachetomee /etc/tomee-${classifier}-${tomeeVersion}
-chmod -R g+w /var/log/tomee-${classifier}-${tomeeVersion}
-chmod -R g+w /var/lib/tomee-${classifier}-${tomeeVersion}
+chown -R root:apachetomee /var/log/tomee-${classifier}
+chown -R root:apachetomee /var/lib/tomee-${classifier}
+chown -R root:apachetomee /etc/tomee-${classifier}
+
+# users from the apachetomee group should be able to change settings.
+# there is no need to be root.
+chmod -R g+w /etc/tomee-${classifier}
+
+chmod -R g+w /var/log/tomee-${classifier}
+chmod -R g+w /var/lib/tomee-${classifier}
update-rc.d tomee-${classifier} defaults
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=1586731&r1=1586730&r2=1586731&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 Fri Apr 11 18:02:45 2014
@@ -6,20 +6,21 @@ service tomee-${classifier} stop || true
update-alternatives --remove tomee /etc/init.d/tomee-${classifier}
# removing link to /var/logs
-rm -f /var/lib/tomee-${classifier}-${tomeeVersion}/logs
+rm -f /var/lib/tomee-${classifier}/logs
# removing non-configuration files
-rm -Rf /var/lib/tomee-${classifier}-${tomeeVersion}/apps
-rm -Rf /var/lib/tomee-${classifier}-${tomeeVersion}/bin
-rm -Rf /var/lib/tomee-${classifier}-${tomeeVersion}/temp
-rm -Rf /var/lib/tomee-${classifier}-${tomeeVersion}/webapps
-rm -Rf /var/lib/tomee-${classifier}-${tomeeVersion}/work
+rm -Rf /var/lib/tomee-${classifier}/apps
+rm -Rf /var/lib/tomee-${classifier}/conf
+rm -Rf /var/lib/tomee-${classifier}/bin
+rm -Rf /var/lib/tomee-${classifier}/temp
+rm -Rf /var/lib/tomee-${classifier}/webapps
+rm -Rf /var/lib/tomee-${classifier}/work
# removing files created by tomcat
-rm -Rf /var/lib/tomee-${classifier}-${tomeeVersion}/conf/Catalina
+rm -Rf /var/lib/tomee-${classifier}/conf/Catalina
# removing link to /etc
-rm -f /usr/share/tomee-${classifier}-${tomeeVersion}/conf
+rm -f /usr/share/tomee-${classifier}/conf
# removing logs
-rm -Rf /var/log/tomee-${classifier}-${tomeeVersion}/*
+rm -Rf /var/log/tomee-${classifier}/*
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=1586731&r1=1586730&r2=1586731&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 Fri Apr 11 18:02:45 2014
@@ -8,8 +8,8 @@
# Short-Description: Apache TomEE ${classifier} ${tomeeVersion}
# Description: Manages the Apache TomEE server.
### END INIT INFO
-TOMEE_HOME=/usr/share/tomee-${classifier}-${tomeeVersion}
-export CATALINA_BASE=/var/lib/tomee-${classifier}-${tomeeVersion}
+TOMEE_HOME=/usr/share/tomee-${classifier}
+export CATALINA_BASE=/var/lib/tomee-${classifier}
TOMEE_USER=apachetomee
start(){
@@ -35,6 +35,10 @@ case \$1 in
stop
start
;;
+ force-reload)
+ stop
+ start
+ ;;
version)
echo "TomEE ${classifier} (version ${tomeeVersion})"
;;