Prerequisite Installed Components
a) MSBuild 3.5+
b) MSBuild Tasks Community (http://msbuildtasks.tigris.org/)
c) .NET Framework minimum of 3.5
d) Sandcastle for documentation (http://www.codeplex.com/Sandcastle), latest version
e) Sandcastle Help File Builder for documentation (http://www.codeplex.com/SHFB), latest version
f) HTML Help Workshop
g) NUnit
h) Windows Installer XML (WiX) toolset (from SourceForge) for MSI building, optional, at http://wix.sourceforge.net/
i) For running unit tests that test integration with a relational database, either of the following database servers should be running:
MySQL Database or Microsoft SQL Server 2005. Instructions for setting up a MySQL or a SQLServer database:
- Create a user "nesper" and password "password" (via "create user nesper identified by 'password'")
- Create test table from esper/etc/regression/create_testdb.sql
- Grant access to all to user (via "grant all on test to nesper; grant all on mytesttable to nesper; grant all on mytesttable_large to nesper;")
- Install ODBC adapter (http://dev.mysql.com/downloads/connector/odbc/3.51.html)
- Install ADO.NET adapter (http://dev.mysql.com/downloads/connector/net/5.0.html)
Build Steps
1. Change Version
a. Change version in NEsper.build file to the desired version number
2. Check-in Code
3. Clean, Build
a. MSBuild /p:Configuration=Release /t:Distribution NEsper.proj
4. Unit tests are run from the IDE or the console. To run from the console, type:
a) nunit-console /labels /noshadow /fixture=com.espertech.esper \bin\Debug\NEsper.Tests.dll
nunit-console /labels /noshadow /fixture=com.espertech.esper \bin\Debug\NEsper.IO.Tests.dll
To run unit tests from MSBuild, type:
MSBuild /p:Configuration=Release /t:Tests NEsper.proj
7. Site Release
- Update
a. News
b. History
8. Distribution Release
a. Copy dist\NEsper-[version].zip an MSI file to the distribution directory
8. Test Release
a. Web site updated
b. Distribution available, download and extract
c. Test Examples
9. Send announcement on user/dev mailing lists
10. Place SVN tag for current release