QA SERVER HOSTING

Interested in hosting a QA server? Please read more about this process

The QA build script valiantly tries to:

1) Make building/maintaining a QA server easy and sane
2) Ensure consistency among all of the servers on the "network"

To use the script, you need the following files:

qa_build_sakai.bash
qa_server_info.sed
qa_server_info.html.template.QANODE
sakai.properties.DATABASE

where QANODE is qa1-us, qa1-uk, etc. and DATABASE is mysql, oracle, or hsqldb.

Where do I get those files?

To get access to these files, please contact Seth Theriault.

You also need to checkout the appropriate subversion QA tag. This source directory and the above files must be at the same directory level for the script to work.

You need to edit the qa_build_sakai.bash to select the proper values for the QANODE, file paths, the database you are using, and a few other things. You also need to edit some variables in the sakai.properties files.

The script handles most everything. It uses the "pack-demo" goal to build Sakai, deploy it into a directory, and then package that directory into a tar or zip ball.

The QA build script takes advantage of this goal to make modifications to the Sakai source and in the "sakai-demo" directory where the packaged binaries live. We add a custom qa_server_info.html using a template, add to sakai.properties, set up a database driver if necessary, and on an optional basis, configure a special logs url so people can track down problems.

When deploying a new tag

Steps in the process

To clarify what mysql query cache means

1. The connection string needs to be something like:
url@javax.sql.BaseDataSource=jdbc:mysql://localhost:3306/sakai?useUnicode=true&characterEncoding=UTF-8&useServerPrepStmts=false&cachePrepStmts=true&prepStmtCacheSize=4096&prepStmtCacheSqlLimit=4096

2. You need to use the latest mysql 5 version of the mysql connector (using the version 3 connector will cause problems.

3. Hibernate dialect should be MySQL5InnoDBDialect

hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect

4. You should enable the query cache on mysql in the my.cnf file (usually /etc/my.cnf), e.g.

[mysqld]
query_cache_size = 64M

For background, see:

http://jira.sakaiproject.org/jira/browse/SAK-9250
http://jira.sakaiproject.org/jira/browse/SAK-11592

Samigo audio question test setup

1. Modify your java.policy file and add the following permissions.
2. Obtain a digital certificate and use it to sign the applet. (OR send jar to Andrew or Anthony for a foundation cert)
3. There is also a 3rd way, which is to sign the applet during maven build/deploy.

If you are going to use the third one, please use following instruction for 2.5:
3. There is also a 3rd way, which is to sign the applet during maven build/deploy. We do this for our production deployment. Just add this plugin in your sakai/sam/samigo-audio/pom.xml file, and the jar will be signed and deployed.

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
<configuration>
<keystore>/somepath/your.keystore</keystore>
<alias>youralias</alias>
<storepass>yourpassword</storepass>
<verify>true</verify>
</configuration>
</plugin>
</plugins>
<resources>
...
</resources>
</build>

Demo Data

https://source.sakaiproject.org/svn/course-management/trunk/xdocs/readme.txt