Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 20 Next »

What does this do?

This plugin performs subversion tagging (technically speaking svn copy) on successful build. This is useful when you want to access the stable codebase.

How tagging works?

  1. Read Subversion authentication information from Hudson's Subversion SCM configuration.
  2. Delete the existing tag if exists.
  3. Perform URL to URL svn copy.

Please note that svn copy is cheap because it doesn't duplicate file contents when not necessary. URL to URL copy is also fast because there is no data transfer from Hudson to Subversion, unlike maven scm plugin's "tag" goal.
The tag base URL must be created in advance.

Configuration

Subversion Authentication


When you specify subversion repo URL, you are requested to enter authentication information. The values are stored in hudson.scm.SubversionSCM.xml in HUDSON_HOME directory. This plguin reads the authentication information from the file, so please make sure the file exists.

System configuration


The default tag base URL and the template of tag comment can be specified. Those values are automatically populated when this plugin is enabled in the job's configuration.

  • Base tag URL's hostname must be identical with the one of Subversion URL. Different notation (e.g. raw IP address and hostname, short hostname and fully qualified hostname, or using alias) is recognized as different servers so that please make sure to use the identical hostname.

    Job name in tag base URL

    Job name is no longer implicitly appended to tag base URL since version 1.2. Please use '${env['JOB_NAME']}' if you need to use job name as a part of tag URL.

  • The template of comment recognizes groovy syntax. Map returned from hudson.model.AbsutractBuild#getEnvVars() and System Properties are bound so that you can refer them as env and sys respectively.
  • The value of Map (and Properties) can be refered like this.
    Build: ${env['BUILD_TAG']} on OS ${sys['os.name']} ${sys['os.version']}.
    
  • Compilation happens when the focus is moved from the text field. Please check if the quotes, braces, and brackets are balanced when you get a compilation error. A closing single quote is missing after BUILD_TAG in the case below.

Job configuration

You can customize the tag base URL and comment specific for the job. The default values specified at System configuration is populated as the default values when the plugin is enabled.

Known limitations

  • No support for authentication methods other than "Username/password". Please implement the feature if you need authentication by ssh or client certificate.
  • Protocols other than http such as file, svn, or ssh+svn are not supported.

History

4/17/08 Version 1.0

  • Initial checkin.

4/18/08 Version 1.1

  • Fixed a path issue in help html links.

5/11/08 Version 1.2

  • Added groovy expression support in tag base URL.

    Change in tag base URL

    The tag base URL no longer appends job name implicitly at the end since this version. Please add '${env['JOB_NAME']}' if you upgrade from version 1.1 and want to keep the original behavior.

7/20/08 Version 1.3

  • Added the support for multiple subversion repositories.
  • No labels