The instructions on this page describe how to configure Bamboo to use a Subversion source repository.
On this page:
Configuring a Subversion source repository
Navigate to the source repository settings for a plan or job, as described on Specifying the source repository.
- Either click Add Repository to add a new repository, or edit an existing repository configuration.
- Choose Subversion from the Source Repository list.
- Enter a Display Name to help identify the repository in Bamboo.
- You can configure the following settings for a Subversion source repository for your plan:
| Repository URL | The location of your Subversion repository e.g.http://svn.collab.net/repos/svn/trunk
| |
| Username | (Optional) The Subversion username (if any) required to access the repository. | |
| Authentication Type | Password – choose this option if you want to authenticate with a username and password. | |
SSH – if you choose to authenticate using SSH, you need to provide the following details:
| ||
SSL Client Certificate – if you choose to authenticate using an SSL Client Certificate, you need to provide the following details:
| ||
Advanced Options
| Detect Changes in Externals | Select this if your Subversion repository uses svn:externals to link to other repositories (your externals must be in the root of the checkout directory, not in a subdirectory). Please note that you only need to select this check box if you require Bamboo to detect changes in the externals. If your externals reference a particular (static) revision, you do not need to check this box. | |
| Use SVN Export | This option will speed up the first-time checkout, but updates are not supported. Implies Force Clean Build. | |
| Enable Commit Isolation | Ensures that a build will only have one change, allowing you to isolate your build failures. | |
| Automatically detect root URL for branches | Specifies whether the VCS Branching Task automatically determines the location of created branches. | |
| Automatically detect root URL for tags | Specifies whether the VCS Tagging Task automatically determines the location of created branches. | |
| Enable Quiet Period | Specifies a delay after a single commit is detected before the build is started. This allows multiple commits to be aggregated into a single build. (Only available when configuring an existing plan.) | |
| Include/Exclude Files | Allows you to specify the files that Bamboo should, or should not, use to detect changes. Enter into File Pattern a regular expression to match the files that Bamboo includes or excludes. The regex pattern must match the file path in the repository. See sub page for examples. | |
| Exclude Changesets | Enter a regular expression to match the commit messages for changesets that should not start a build. | |
Web Repository | If your repository can be viewed in a web browser, select the repository type. This allows links to relevant files to be displayed in the 'Code Changes' section of a build result. | |
Generic Web Repository
| ||
Stash – specify the following details for the repository:
| ||
FishEye – specify the URL and other details for the repository:
How do I determine my Repository Path? If you have previously run builds with changes from your repository, the easiest way of determining your repository path is to view the code changes and copy the path from the start of the path of one of the changed files, up to (but not including) the appropriate root directory. The root directories for repositories are the ones shown by FishEye when browsing a repository (e.g. | ||
Notes
- If you are having problems connecting to Subversion, consult our documentation on troubleshooting Subversion connections.
- If you use pre-1.5 Subversion client to access code checked out by Bamboo, you may encounter problems with your builds. This is due to the SVNKit upgrade in Bamboo 2.1.4. Please read this knowledge base article for further details.
- You can add the
-Dsvnkit.http.methods=Basic,NTLMsystem property to SVNKit to have NTLM authentication work with Bamboo.
12 Comments
MattS
May 09, 2008An example of a URL with a space in it would be good too.
E.g. http://svn.collab.net/repos/svn/trunk/directory%20with%20spaces
Anonymous
Mar 23, 2009*Is it possible to specify more than one Repository URL? E.g., *http://abc/src/svn/unit1 and http://abc/src/svn/shared are both required to make a build.
Anonymous
Apr 09, 2010Any news on using multiple repository urls for product build?
Anonymous
Feb 18, 2011Yeah. That would be great.
Anonymous
Jun 16, 2009The "Include /Exclude Files" option checks only file names, or absolute path, or path relative to working directory?
Anonymous
Jun 17, 2009Is it possible for a plan to share the same subversion checkout as another plan?. I need to perform extra operations in a generated ear file by a previous plan and it would be good to have access to those files.
Terris Linenbach
Jul 21, 2010Desperately seeking example of an "exclude" or "include" regular expression. I'm a programmer and I know what a regex is, but I have no idea what Bamboo is trying to match it against.
Let's cut to the chase. The file is something like http://foo/blank/trunk/harness/etc/env/info.pm . What is the regex?
Sam Kenny
Aug 31, 2010I raised this with Atlassian Support. This is the reply from Renan which works for me:
This field uses Java Regex. An example would be the following:
That would exclude files located ate a path containing "/src/" or ending with ".txt".
To exclude ".txt" files you can use:
John Harelius
Nov 18, 2010In Bamboo 2.6 I could omit the username and password for accessing Subversion, and then the user running the Bamboo service was used. This was very convenient since you didn't need to bother about username and password for accessing Subversion when creating plans.
I can't get this to work using Bamboo 2.7 though, have there been a change in the way subversion is accessed in Bamboo 2.7?
Anonymous
Jul 25, 2011For subversion SSH authentication the private key file must be in OpenSSH format.
I run in windows and sa was trying to use a putty format key file (.ppk extension) and the error message wasn't very helpful. Fortunately the puttygen tool has the ability to save a key in OpenSSH format in "Conversions->Export OpenSSH key".
Jijo John
Sept 02, 2013Is it possible to checkout/export multiple svn url's to same workspace for build?
Chris Pettifer
Sept 02, 2013Yes, but you should use different checkout directories for them within the workspace.
You configure your various repositories at the Plan level, then in the "Source Code Checkout" task you can use the "Add Repository" button to specify more than one repository location. But you must specify a "Checkout Directory" for all of your different checkouts (one can actually be blank, but it might be easier to put them all in directories).