My 2 first Joomla! component in continuous build
- Build with Maven For PHP in TeamCity
- SVN repository at http://joomlacode.org/svn/com_securityi1/trunk/ and http://joomlacode.org/svn/com_akobookplus/trunk/
- Totally independent of continuous build server (Thanks to MAVEN), so Hudson, Bamboo and Cruise Control are SUPPORTED.
- Joomla is also a simple dependency in scope compile (productive code and tests need it)
<?xml version="1.0" encoding="UTF-8"?> <project> <modelVersion>4.0.0</modelVersion> <groupId>org.joomla</groupId> <artifactId>joomla</artifactId> <version>1.5.10</version> <description></description> </project>
Deployed and viewable at http://maven.waltercedric.com/artifactory/webapp/browserepo.html
So binding your code to a new version or old version is as simple as changing in your component pom.xml
- Test case are automatically started (PHP Unit) by maven surefire.
- SolarJoomla has Mylyn (Bugzilla supported and is the reference implementation for Mylyn) running and configured to connect to my JIRA repositories http://jira.waltercedric.com
- SolarJoomla has TeamCity plugin running and configured to connect to my TeamCity http://teamcity.waltercedric.com, so authorized developer can do private build
Delayed Commit (also known as private build). It allows you to run the full build with tests on the server as if you checked in all your changes, but without actually checking in your changes until the build is successful, so you will know if you’re about to break the build before you actually break it.
- Ask Joomla! core team if they would not be interested by this engineering for Joomla! itself!
I did develop Continuous build for Joomla…
I did develop a continuous build solutions for Joomla! component, while not finished (70% achieved) I would say, it may also be interesting for Joomla! itself.
If you are interested, and since I am still documenting part of it, I would appreciate your inputs and feedback.
Head over to http://www.waltercedric.com/joomla-mainmenu-247/370-continuous-build/1553-my-2-first-joomla-component-in-continuous-build.html
or to the tag http://www.waltercedric.com/component/tag/continuousbuild.html
- Deploy generated artifacts to a Joomla running stage (runtime farms of Joomla!) in order to run integration tests with Selenium
- Add selenium test cases for testing the GUI, also running “integration tests”
- Packaging is jar, better would be zip or tar.gz
- Use Phing (http://docs.joomla.org/Setting_up_your_workstation_for_extension_development) for developer environment, and maybe also deploy to farms
- Deliver SolarJoomla as soon as PHPDocumentator, PHPUnit, DOxygen are running in XAMPP
- Publish generated site artifacts’ to new sub domains
- Add reporting plugin.
- DOCUMENT everything in my WIKI at the same time
Must work also in Atlassian Bamboo, Apache Hudson … I need your help for that, that wont be a huge task.