I have an artifact "proof of concept" checked into the Antomology. I accomplished this by using the maven-ant tasks. In order to get this working I had to break apart the build file so that the maven ant tasks can be loaded in. The maven-ant jar file needs to be either in the classpath, the ant lib directory, or passed in as part of the ant "-lib" parameter. I look forward to suggestions on what to do about this as well as this solution... for now I created a bootstrapper using an ant build file to get things rolling.
Right now bamboo is calling test, clean. Is it possible to have Bamboo call the default target instead so there is more flexibility in the build?
For now I needed to create a clean and test target in my new build.xml so Bamboo wouldn't barf.
The data flow for Bamboo is:
build.xml -> build-ci.xml -> build-main.xml
Where build-ci.xml does a deploy to the snapshot repository. Regrettably, I'm getting the following error:
29-Jan-2007 09:53:05 [java] deploy:
29-Jan-2007 09:53:05 [java] [artifact:deploy] Deploying to http://snapshots.repository.codehaus.org
29-Jan-2007 09:53:05 [java] [artifact:deploy] [INFO] Retrieving previous build number from deploy.repository
29-Jan-2007 09:53:10 [java] [artifact:deploy] An error has occurred while processing the Maven artifact tasks.
29-Jan-2007 09:53:10 [java] [artifact:deploy] Diagnosis:
29-Jan-2007 09:53:10 [java] [artifact:deploy]
29-Jan-2007 09:53:10 [java] [artifact:deploy] Error deploying artifact 'antomology:antomology-bin:jar': Error deploying artifact: Unable to transfer file. HttpURLConnection returned the response code: 405
29-Jan-2007 09:53:10
29-Jan-2007 09:53:10 [java] BUILD FAILED
29-Jan-2007 09:53:10 [java] /home/bamboo-server/home/xml-data/build-dir/ANTOMOLOGY-DEF/ build-ci.xml:20: The following error occurred while executing this line:
29-Jan-2007 09:53:10 [java] /home/bamboo-server/home/xml-data/build-dir/ANTOMOLOGY-DEF/ build-ci.xml:26: Error deploying artifact 'antomology:antomology-bin:jar': Error deploying artifact: Unable to transfer file. HttpURLConnection returned the response code: 405
Could this be a security / permissions issue for the build daemon?
(I'm not ignoring you)
The theory we used to have went somewhat like this.
You do a build, you publish all your artifacts to a standard place: /home/distci/antomology/<crudclass>/<crud>
Where crudclass in [ 'public_html', 'snapshots', etc ]
Our main servers then go and pick up all the files from that server and plonk them back onto our main servers in the appropriate places.
Some of the problem you end up with:
A couple of notes:
We won't allow automatic publishing of release version artifacts - snapshots only.
The other option would be for us to redirect traffic (unbeknowst to browser) from <project>.codehaus.org/api across to build machine.
I'm still not sold on either method.
- An endless stream of pointless snapshots that consume bandwidth, diskspace, backups
- Conflicts between files from primary servers and build servers
A couple of notes: We won't allow automatic publishing of release version artifacts - snapshots only. The other option would be for us to redirect traffic (unbeknowst to browser) from <project>.codehaus.org/api across to build machine. I'm still not sold on either method.