I want to automate our build processes.
We have 30+ configurations, each with a different SVN branch. Ideally, I would want to avoid having to create 30 separate Jenkins jobs, due to maintenance effort and risk of human error.
This is what "multi-configuration project" in Jenkins was designed for, but unfortunately Jenkins doesn't support using the configuration matrix axis in the SVN URL.
I also cannot build using parameterized build, because Jenkins will not allow the variables to be used in the local checkout paths (variables in URLs work fine, but they always end up going to a directory called ${BRANCH}
(literal).
At the end of the day, I would like to be able to check out https://domain.ext/something/${BRANCH}/
and save it to /some/path/${BRANCH}
. Even better if this is done in a way that leaves me able to take advantage of Jenkin's built-in SCM features (e.g. polling).
How can I make Jenkins understand what I'm trying to achieve?
I ended up solving this by making Jenkins check out the SVN repository on so high level that it contained all the branches I needed. It's not an ideal solution though, because you lose time during builds for running 'svn update' on everything.