Hi I'm starting a new web development project with my team using Hibernate and Spring MVC. We will be building with Maven2 and use the NetBeans IDE. Our past projects have used ant for the build system. We will be using Atlassian Bamboo for our CI server.
My question relates to the best practice for switching between dev/test/qa/production build environments which have different configurations.
More specifically our dev environments require two configurations, a shared server database and a local HSQL DB for offline development. Our test environment also requires the use of HSQL to ensure predictable tests.
I'm trying to find the best approach with Maven to select between these environments, with ant we just used to have <copy>
targets which would copy our configuration files from predefined directories prior to the build and rewrite some .properties
files.
So far I've found that we could possibly utilise maven profiles but not entirely sure what the best approach for this is, currently I've only found how to set certain properties using this approach but not found how to specify certain hibernate configurations.
I apologise for my sparse understanding of Maven, we are switching to maven as we've found the dependency resolution to remove a huge burden for us.
Thank you for your help and patience.