Hudson-ci/Planning/Improved Maven Support
Hudson Continuous Integration Server | |
Website | |
Download | |
Community | |
Mailing List • Forums • IRC • mattermost | |
Issues | |
Open • Help Wanted • Bug Day | |
Contribute | |
Browse Source |
![]() |
Better Maven Integration |
---|
Overview
While the inital set of features in the new Maven3 integration was a big step forward, there are still some rough areas
Maven Release Support
Currently doing a maven release is quite a cumbersome setup. In order to make a release work in a maven + git setup have run into the following issues
- Because of a bug in maven, the inner release step does not use the settings file provided to maven.
- I have yet to find a way to configure the git plugin in such a way that the release plugin can push the changes back, I always end up in a "your not on a branch" or other git config errors when releasing
- Since the relase step is not integrated with the SCM plugin I have to replicate such information, e.g. in git I need to set the slave's username and email
In order to make releasing work I have done
- Install a second Maven 3.0.3 as maven provider for the M3 integration. This Maven 3 has a custom settings.xml built in.
- Before running the actual release I have a shell script build step that does
- Runs git config user.name
- Runs git config user.email
- runs git checkout master
Suggested solution:
- Similar approach to what jenkins is doing [Artifactory Plugin - Release Management ]
- It should be optional to build the snapshot version first
- Only do the SCM changes once the release version has built correctly (to avoid manual clean up if it breaks)
- Integrated with at least subversion and git