Skip to content

Commit

Permalink
LPS-12894
Browse files Browse the repository at this point in the history
git-svn-id: svn://svn.liferay.com/repos/public/portal/trunk@63205 05bdf26c-840f-0410-9ced-eb539d925f36
  • Loading branch information
jrhoun committed Sep 27, 2010
1 parent b06cbe8 commit 15e2f07
Show file tree
Hide file tree
Showing 4 changed files with 124 additions and 5 deletions.
21 changes: 21 additions & 0 deletions build-test-db-upgrade.xml
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,27 @@
</antcall>
</target>

<target name="prepare-db-sybase-common">
<echo file="test.${user.name}.properties">db.type=sybase</echo>

<antcall target="prepare-portal-ext-properties" inheritAll="false" />

<ant dir="portal-impl" target="deploy-properties" inheritAll="false" />

<if>
<isset property="sql.version" />
<then>
<property name="sql.dir" value="sql\legacy\${sql.version}\create\" />
<property name="sql.file" value="create-sybase.sql" />
</then>
</if>

<antcall target="rebuild-database" inheritAll="false">
<param name="sql.dir" value="${sql.dir}" />
<param name="sql.file" value="${sql.file}" />
</antcall>
</target>

<target name="run-latest-upgrade-test">
<ant antfile="build-test-tomcat.xml" target="run-selenium-tomcat" inheritAll="false">
<property name="skip.rebuild-database" value="true" />
Expand Down
88 changes: 83 additions & 5 deletions build-test.xml
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,12 @@
<var name="test.ant.script.db.minimal" value="drop database lportal;${line.separator}create database lportal;" />
</then>
</elseif>
<elseif>
<equals arg1="@{test.ant.script.db}" arg2="sybase" />
<then>
<var name="test.ant.script.db.minimal" value="use master${line.separator}exec sp_dboption 'lportal', 'allow nulls by default' , true${line.separator}go${line.separator}exec sp_dboption 'lportal', 'select into/bulkcopy/pllsort' , true${line.separator}go${line.separator}use lportal" />
</then>
</elseif>
</if>

<if>
Expand Down Expand Up @@ -509,31 +515,31 @@

<antcall target="build-test-ant-script-db-upgrade">
<param name="test.ant.script.command" value="db-upgrade-5.1.2" />
<param name="test.ant.script.dbs" value="db2,mysql,oracle,postgresql,sql-server" />
<param name="test.ant.script.dbs" value="db2,mysql,oracle,postgresql,sql-server,sybase" />
<param name="test.ant.script.version" value="5.1.2" />
</antcall>

<antcall target="build-test-ant-script-db-upgrade">
<param name="test.ant.script.command" value="db-upgrade-5.2.3" />
<param name="test.ant.script.dbs" value="db2,mysql,oracle,postgresql,sql-server" />
<param name="test.ant.script.dbs" value="db2,mysql,oracle,postgresql,sql-server,sybase" />
<param name="test.ant.script.version" value="5.2.3" />
</antcall>

<antcall target="build-test-ant-script-db-upgrade">
<param name="test.ant.script.command" value="db-upgrade-5.2.7" />
<param name="test.ant.script.dbs" value="db2,mysql,oracle,postgresql,sql-server" />
<param name="test.ant.script.dbs" value="db2,mysql,oracle,postgresql,sql-server,sybase" />
<param name="test.ant.script.version" value="5.2.7" />
</antcall>

<antcall target="build-test-ant-script-db-upgrade">
<param name="test.ant.script.command" value="db-upgrade-5.2.8" />
<param name="test.ant.script.dbs" value="db2,mysql,oracle,postgresql,sql-server" />
<param name="test.ant.script.dbs" value="db2,mysql,oracle,postgresql,sql-server,sybase" />
<param name="test.ant.script.version" value="5.2.8" />
</antcall>

<antcall target="build-test-ant-script-db-upgrade-smoke">
<param name="test.ant.script.command" value="db-upgrade-smoke" />
<param name="test.ant.script.dbs" value="db2,mysql,oracle,postgresql,sql-server" />
<param name="test.ant.script.dbs" value="db2,mysql,oracle,postgresql,sql-server,sybase" />
<param name="test.ant.script.versions" value="5.1.2,5.2.3,5.2.7,5.2.8" />
</antcall>

Expand Down Expand Up @@ -1563,6 +1569,16 @@ jdbc.default.minPoolSize=1
jdbc.default.numHelperThreads=1</echo>
</then>
</elseif>
<elseif>
<equals arg1="${db.type}" arg2="sybase" />
<then>
<echo file="portal-impl/src/portal-ext.properties" append="true">

hibernate.dialect=org.hibernate.dialect.SybaseDialect
custom.sql.function.isnull=ISNULL(CONVERT(VARCHAR,?), '1') = '1'
custom.sql.function.isnotnull=ISNULL(CONVERT(VARCHAR,?), '1') = '0'</echo>
</then>
</elseif>
</if>

<if>
Expand Down Expand Up @@ -1624,6 +1640,12 @@ ${custom.properties}</echo>
<antcall target="prepare-common" />
</target>

<target name="prepare-sybase">
<echo file="test.${user.name}.properties">db.type=sybase</echo>

<antcall target="prepare-common" />
</target>

<target name="prepare-virtual-host-name-properties">
<if>
<isset property="virtual.host.name" />
Expand Down Expand Up @@ -1769,6 +1791,12 @@ file.
<antcall target="rebuild-database-sql-server" />
</then>
</elseif>
<elseif>
<equals arg1="${db.type}" arg2="sybase" />
<then>
<antcall target="rebuild-database-sybase" />
</then>
</elseif>
</if>
</then>
</if>
Expand Down Expand Up @@ -1981,6 +2009,56 @@ file.
<delete file="${sql.file}" />
</target>

<target name="rebuild-database-sybase">
<if>
<or>
<not>
<isset property="sql.dir" />
</not>
<not>
<isset property="sql.file" />
</not>
</or>
<then>
<property name="sql.dir" value="sql\create\" />
<property name="sql.file" value="create-sybase.sql" />
</then>
</if>

<tstamp>
<format property="tstamp.value" pattern="yyyyMMddkkmmssSSS" />
</tstamp>

<property name="temp.dir" value="temp\${db.sybase.schema}\${tstamp.value}\" />

<copy file="${sql.dir}${sql.file}" tofile="${sql.file}" />

<replace file="${sql.file}">
<replacefilter token="use master" value="if exists (select * from master.dbo.sysdatabases where name = &quot;${db.sybase.schema}&quot;)${line.separator}begin${line.separator}drop database ${db.sybase.schema}${line.separator}end${line.separator}go${line.separator}create database ${db.sybase.schema} on ${db.sybase.device.name} = &quot;250m&quot;${line.separator}go" />
<replacefilter token="exec sp_dboption 'lportal', 'allow nulls by default' , true" value="exec sp_dboption '${db.sybase.schema}', 'allow nulls by default' , true"/>
<replacefilter token="exec sp_dboption 'lportal', 'select into/bulkcopy/pllsort' , true" value="exec sp_dboption '${db.sybase.schema}', 'select into/bulkcopy/pllsort' , true"/>
<replacefilter token="use lportal" value="use ${db.sybase.schema}${line.separator}go"/>
</replace>

<exec executable="${plink.executable}">
<arg line="-pw ${vm.password} ${vm.username}@${db.sybase.host} cmd.exe /c mkdir C:\${temp.dir}" />
</exec>

<exec executable="${pscp.executable}">
<arg line="-pw ${vm.password} ${sql.file} ${vm.username}@${db.sybase.host}:\${temp.dir}" />
</exec>

<exec executable="${plink.executable}">
<arg line="-pw ${vm.password} ${vm.username}@${db.sybase.host} isql -U ${db.sybase.username} -P ${db.sybase.password} -i C:\${temp.dir}\${sql.file}" />
</exec>

<exec executable="${plink.executable}">
<arg line="-pw ${vm.password} ${vm.username}@${db.sybase.host} cmd.exe /c rmdir /q /s C:\${temp.dir}" />
</exec>

<delete file="${sql.file}" />
</target>

<target name="replace-remote-file">
<tstamp>
<format property="tstamp.value" pattern="yyyyMMddkkmmssSSS" />
Expand Down
11 changes: 11 additions & 0 deletions portal-web/test-ant-templates/ant-script.xml
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,17 @@
</ant>
</target>

<target name="test-${test.ant.script.command}-tomcat-sybase">
<antcall target="prepare-sybase">
${test.ant.script.file.properties}
</antcall>

<ant antfile="build-test-tomcat.xml" target="run-selenium-tomcat">
${test.ant.script.file.plugins}
${test.ant.script.file.suite}
</ant>
</target>

<target name="test-${test.ant.script.command}-weblogic-10.3-mysql">
<antcall target="prepare-mysql">
${test.ant.script.file.properties}
Expand Down
9 changes: 9 additions & 0 deletions test.properties
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
db.type=mysql
#db.type=oracle
#db.type=sql-server
#db.type=sybase

db.db2.host=localhost
db.db2.driver=com.ibm.db2.jcc.DB2Driver
Expand Down Expand Up @@ -70,6 +71,14 @@
db.sql-server.username=sa
db.sql-server.password=password

db.sybase.device.name=lportal
db.sybase.host=localhost
db.sybase.driver=net.sourceforge.jtds.jdbc.Driver
db.sybase.schema=lportal
db.sybase.url=jdbc:jtds:sybase://${db.sybase.host}:5000/${db.sybase.schema}
db.sybase.username=sa
db.sybase.password=

##
## Hudson
##
Expand Down

0 comments on commit 15e2f07

Please sign in to comment.