Skip to content

Commit 8159b2e

Browse files
author
Emmanuel Hugonnet
committed
Feature #82 : creating a repository.xml for JCR migration
Cleaning the scripts for simpler commands (dynamic classpath)
1 parent 8a00612 commit 8159b2e

14 files changed

+107
-78
lines changed

pom.xml

Lines changed: 3 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -62,58 +62,7 @@
6262
</properties>
6363

6464
<build>
65-
<plugins>
66-
<plugin>
67-
<artifactId>maven-clean-plugin</artifactId>
68-
<configuration>
69-
<fileset>
70-
<directory>/src/main/resources/filters</directory>
71-
<includes>
72-
<include>WindowsClasspath.properties</include>
73-
<include>LinuxClasspath.properties</include>
74-
</includes>
75-
</fileset>
76-
</configuration>
77-
</plugin>
78-
<plugin>
79-
<groupId>org.apache.maven.plugins</groupId>
80-
<artifactId>maven-dependency-plugin</artifactId>
81-
<version>2.4</version>
82-
<executions>
83-
<execution>
84-
<id>prepare-classpath-windows</id>
85-
<phase>generate-resources</phase>
86-
<goals>
87-
<goal>build-classpath</goal>
88-
</goals>
89-
<configuration>
90-
<prefix>%SILVERPEAS_HOME%\\bin\\jar</prefix>
91-
<pathSeparator>;</pathSeparator>
92-
<fileSeparator>\\</fileSeparator>
93-
<outputFile>${windows.classpath}</outputFile>
94-
<outputFilterFile>true</outputFilterFile>
95-
<stripVersion>true</stripVersion>
96-
<regenerateFile>true</regenerateFile>
97-
</configuration>
98-
</execution>
99-
<execution>
100-
<id>prepare-classpath-linux</id>
101-
<phase>generate-resources</phase>
102-
<goals>
103-
<goal>build-classpath</goal>
104-
</goals>
105-
<configuration>
106-
<prefix>$SILVERPEAS_HOME/bin/jar</prefix>
107-
<pathSeparator>:</pathSeparator>
108-
<fileSeparator>/</fileSeparator>
109-
<outputFile>${linux.classpath}</outputFile>
110-
<outputFilterFile>true</outputFilterFile>
111-
<stripVersion>true</stripVersion>
112-
<regenerateFile>true</regenerateFile>
113-
</configuration>
114-
</execution>
115-
</executions>
116-
</plugin>
65+
<plugins>
11766
<plugin>
11867
<groupId>org.apache.maven.plugins</groupId>
11968
<artifactId>maven-assembly-plugin</artifactId>
@@ -131,10 +80,7 @@
13180
<goals>
13281
<goal>single</goal>
13382
</goals>
134-
<configuration>
135-
<filters>
136-
<filter>${linux.classpath}</filter>
137-
</filters>
83+
<configuration>
13884
<descriptors>
13985
<descriptor>${project.basedir}/src/main/resources/assemblies/assembly-linux.xml</descriptor>
14086
</descriptors>
@@ -150,10 +96,7 @@
15096
<goals>
15197
<goal>single</goal>
15298
</goals>
153-
<configuration>
154-
<filters>
155-
<filter>${windows.classpath}</filter>
156-
</filters>
99+
<configuration>
157100
<descriptors>
158101
<descriptor>${project.basedir}/src/main/resources/assemblies/assembly-windows.xml</descriptor>
159102
</descriptors>

src/main/config/settings/jboss6/linux/SilverpeasSettings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
</global-vars>
4747

4848
<script name="updateJCRWorkspaceConfig.groovy"/>
49+
<script name="configureJCRMigrationConfig.groovy"/>
4950

5051
<!-- PROPERTIES CONFIGURATION -->
5152
<fileset root="${SILVERPEAS_HOME}/initialize/">

src/main/config/settings/jboss6/linux/sample_config.properties

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,8 @@
5757

5858
# PROXY_HOST=
5959
# PROXY_PORT=
60-
# NONPROXY_HOST=127.0.0.1|localhost
60+
# NONPROXY_HOST=127.0.0.1|localhost
61+
62+
#LANGUAGE=fr
63+
64+
#webdav.workspace=jackrabbit

src/main/config/settings/jboss6/windows/SilverpeasSettings.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
</global-vars>
4747

4848
<script name="updateJCRWorkspaceConfig.groovy"/>
49+
<script name="configureJCRMigrationConfig.groovy"/>
4950

5051
<!-- PROPERTIES CONFIGURATION -->
5152
<fileset root="${SILVERPEAS_HOME}/initialize/">
@@ -60,7 +61,6 @@
6061
</fileset>
6162

6263
<fileset root="${SILVERPEAS_HOME}/properties/org/silverpeas/">
63-
6464
<configfile name="util/jcr.properties">
6565
<parameter key="jcr.configuration.persistence.manager">${JACKRABBIT_PERSIST}</parameter>
6666
<parameter key="jcr.home.dir.url">file:///${SILVERPEAS_DATA_HOME}/jackrabbit</parameter>

src/main/config/settings/jboss6/windows/sample_config.properties

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,8 @@
5757

5858
# PROXY_HOST=
5959
# PROXY_PORT=
60-
# NONPROXY_HOST=127.0.0.1|localhost
60+
# NONPROXY_HOST=127.0.0.1|localhost
61+
62+
#LANGUAGE=fr
63+
64+
#webdav.workspace=jackrabbit

src/main/resources/assemblies/assembly-linux.xml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
<fileSet>
1010
<outputDirectory>bin</outputDirectory>
1111
<directory>src/main/scripts</directory>
12-
<filtered>true</filtered>
12+
<filtered>false</filtered>
1313
<fileMode>775</fileMode>
1414
<includes>
1515
<include>**/*.sh</include>
@@ -37,14 +37,19 @@
3737
<includes>
3838
<include>**/*.xml</include>
3939
</includes>
40-
</fileSet>
40+
</fileSet>
4141
</fileSets>
4242
<files>
4343
<file>
4444
<outputDirectory>setup/settings</outputDirectory>
4545
<source>src/main/config/settings/${server.distribution}/linux/SilverpeasSettings.xml</source>
4646
<filtered>false</filtered>
4747
</file>
48+
<file>
49+
<outputDirectory>setup/jackrabbit</outputDirectory>
50+
<source>src/main/config/settings/jackrabbit/repository.xml</source>
51+
<filtered>false</filtered>
52+
</file>
4853
<file>
4954
<outputDirectory>setup/settings</outputDirectory>
5055
<source>src/main/config/settings/${server.distribution}/linux/JBossSettings.xml</source>

src/main/resources/assemblies/assembly-windows.xml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,22 @@
99
<file>
1010
<source>src/main/scripts/SilverpeasSettings.bat</source>
1111
<outputDirectory>bin</outputDirectory>
12-
<filtered>true</filtered>
12+
<filtered>false</filtered>
1313
</file>
1414
<file>
1515
<source>src/main/scripts/appBuilder.bat</source>
1616
<outputDirectory>bin</outputDirectory>
17-
<filtered>true</filtered>
17+
<filtered>false</filtered>
1818
</file>
1919
<file>
2020
<source>src/main/scripts/dbBuilder.bat</source>
2121
<outputDirectory>bin</outputDirectory>
22-
<filtered>true</filtered>
22+
<filtered>false</filtered>
23+
</file>
24+
<file>
25+
<outputDirectory>setup/jackrabbit</outputDirectory>
26+
<source>src/main/config/settings/jackrabbit/repository.xml</source>
27+
<filtered>false</filtered>
2328
</file>
2429
<file>
2530
<outputDirectory>setup/settings</outputDirectory>
Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
@echo off
22

33
set SETUP_ROOT=%SILVERPEAS_HOME%/setup/settings
4+
set CLASSPATH=%SILVERPEAS_HOME%\bin\jar\*
45

5-
java -classpath "${classpath}" -Dsilverpeas.home="%SILVERPEAS_HOME%" org.silverpeas.SilverpeasSettings.SilverpeasSettings
6-
pause
6+
java -classpath "%CLASSPATH%" -Dsilverpeas.home="%SILVERPEAS_HOME%" org.silverpeas.settings.SilverpeasSettings
7+
pause

src/main/scripts/SilverpeasSettings.sh

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,10 @@ fi
99

1010
SETUP_ROOT=$SILVERPEAS_HOME/setup/settings
1111

12-
CLASSPATH=${classpath}
12+
JARDIR=$SILVERPEAS_HOME/bin/jar
13+
for jarlib in `ls $JARDIR`; do
14+
CLASSPATH=$CLASSPATH:$JARDIR/$jarlib
15+
done
1316
export CLASSPATH
1417

15-
exec $JAVA_HOME/bin/java -classpath $CLASSPATH -Dsilverpeas.home=$SILVERPEAS_HOME org.silverpeas.SilverpeasSettings.SilverpeasSettings
18+
exec $JAVA_HOME/bin/java -classpath $CLASSPATH -Dsilverpeas.home=$SILVERPEAS_HOME org.silverpeas.settings.SilverpeasSettings

src/main/scripts/appBuilder.bat

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
@echo off
2-
java -classpath "${classpath}" -Dsilverpeas.home="%SILVERPEAS_HOME%" org.silverpeas.applicationbuilder.ApplicationBuilder -r ext_repository %1
2+
set CLASSPATH=%SILVERPEAS_HOME%\bin\jar\*
3+
4+
java -classpath "%CLASSPATH%" -Dsilverpeas.home="%SILVERPEAS_HOME%" org.silverpeas.applicationbuilder.ApplicationBuilder -r ext_repository %1
35
pause

src/main/scripts/appBuilder.sh

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,10 @@ fi
1010

1111
export LIB_ROOT
1212

13-
CLASSPATH=${classpath}
13+
JARDIR=$SILVERPEAS_HOME/bin/jar
14+
for jarlib in `ls $JARDIR`; do
15+
CLASSPATH=$CLASSPATH:$JARDIR/$jarlib
16+
done
1417
export CLASSPATH
1518

1619
exec $JAVA_HOME/bin/java -classpath $CLASSPATH -Dsilverpeas.home=$SILVERPEAS_HOME org.silverpeas.applicationbuilder.ApplicationBuilder -r ext_repository $1
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
import groovy.xml.*
2+
3+
String repositoryConfPath = SILVERPEAS_HOME + "/setup/jackrabbit/repository.xml"
4+
def repositoryConfigFile = new File(repositoryConfPath)
5+
println()
6+
if(repositoryConfigFile.exists() && repositoryConfigFile.isFile()) {
7+
def slurper = new XmlSlurper()
8+
slurper.setKeepWhitespace(true)
9+
def repositoryConf = slurper.parse(repositoryConfigFile)
10+
println "JCR filesystem not properly configured! => Update it..."
11+
def persistenceManager
12+
switch(DB_SERVERTYPE) {
13+
case "POSTGRES":
14+
persistenceManager = "org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager"
15+
break;
16+
case "MSSQL":
17+
persistenceManager = "org.apache.jackrabbit.core.persistence.bundle.MSSqlPersistenceManager"
18+
break;
19+
case "ORACLE":
20+
persistenceManager = "org.apache.jackrabbit.core.persistence.bundle.OraclePersistenceManager"
21+
break;
22+
case "H2":
23+
persistenceManager = "org.apache.jackrabbit.core.persistence.bundle.H2PersistenceManager"
24+
break;
25+
default:
26+
println("Error: the following DB type isn't supported: " + DB_SERVERTYPE)
27+
return 1
28+
}
29+
repositoryConf.Workspace.PersistenceManager.replaceNode {
30+
PersistenceManager(class: persistenceManager) {
31+
param(name: "driver", value: DB_DRIVER)
32+
param(name: "url", value: DB_URL)
33+
param(name: "user", value: DB_USER)
34+
param(name: "password", value: DB_PASSWD)
35+
param(name: "schema", value: JACKRABBIT_SCHEMA)
36+
param(name: "schemaObjectPrefix", value: "JCR_")
37+
param(name: "consistencyCheck", value: "true")
38+
param(name: "consistencyFix", value: "true")
39+
}
40+
}
41+
repositoryConf.Versioning.PersistenceManager.replaceNode {
42+
PersistenceManager(class: persistenceManager) {
43+
param(name: "driver", value: DB_DRIVER)
44+
param(name: "url", value: DB_URL)
45+
param(name: "user", value: DB_USER)
46+
param(name: "password", value: DB_PASSWD)
47+
param(name: "schema", value: JACKRABBIT_SCHEMA)
48+
param(name: "schemaObjectPrefix", value: "version_")
49+
param(name: "consistencyCheck", value: "true")
50+
param(name: "consistencyFix", value: "true")
51+
}
52+
}
53+
XmlUtil.serialize(repositoryConf, new File(repositoryConfPath).newWriter())
54+
println "JCR workspace configuration update done"
55+
} else {
56+
println "No JCR workspace configuration"
57+
}

src/main/scripts/removeDuplicateContents.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
@echo off
22

3-
set CLASSPATH=${classpath}
3+
set CLASSPATH=%SILVERPEAS_HOME%\bin\jar\*
44

55
java -classpath "%CLASSPATH%" -Ddbbuilder.home="%SILVERPEAS_HOME%" org.silverpeas.migration.contentmanagement.DuplicateContentRemovingApplication
66

src/main/scripts/removeDuplicateContents.sh

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ echo La variable SILVERPEAS_HOME doit etre initialisee
77
exit 1
88
fi
99

10-
CLASSPATH=${classpath}
10+
JARDIR=$SILVERPEAS_HOME/bin/jar
11+
for jarlib in `ls $JARDIR`; do
12+
CLASSPATH=$CLASSPATH:$JARDIR/$jarlib
13+
done
1114
export CLASSPATH
1215

13-
echo $CLASSPATH
14-
1516
exec $JAVA_HOME/bin/java -classpath $CLASSPATH -Ddbbuilder.home=$SILVERPEAS_HOME org.silverpeas.migration.contentmanagement.DuplicateContentRemovingApplication

0 commit comments

Comments
 (0)