Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-3034

Pegging the externals when tagging.

    Details

    • Type: Improvement
    • Status: In Progress
    • Priority: Trivial
    • Resolution: Unresolved
    • Component/s: svn-tag-plugin
    • Labels:
      None
    • Environment:
      Platform: All, OS: All

      Description

      I am using your plugin and it seems to work properly. However, I would like to
      go a step further when tagging a build. I was expecting the tag to also peg all
      svn:externals automatically which the plugin apparently doesn't.

      Since Hudson knows this information, I figured it should be feasible to peg
      them.

      Note: We're careful about keeping flat svn:externals, we don't have externals
      of externals therefore pegging a tagged trunk seems natural and doesn't involve
      pegging the externals' children.

        Issue Links

          Activity

          Hide
          k2nakamura k2nakamura added a comment -

          Yes it's one of todo item and svn-tag hasn't supported nor tested "svn:externals".

          I quickly looked up svnkit's javadoc and got the feeling that it is fairly
          straightforward.
          I can't spend much time right now, so it would be nice if you can enhance this,
          otherwise I'll work on it when I have time.

          Thanks,

          Kenji

          Show
          k2nakamura k2nakamura added a comment - Yes it's one of todo item and svn-tag hasn't supported nor tested "svn:externals". I quickly looked up svnkit's javadoc and got the feeling that it is fairly straightforward. I can't spend much time right now, so it would be nice if you can enhance this, otherwise I'll work on it when I have time. Thanks, Kenji
          Hide
          k2nakamura k2nakamura added a comment -

          I talked with Kohsuke at JavaOne, and learned he did special hacks to deal with
          externals because SVNKit, which is the framework Hudson uses to access
          Subversion, doesn't provide the support for external out of the box. He also
          thinks the external feature is ad-hoc and after-thought, so it tends to be
          problematic. I'll lower the priority.

          Show
          k2nakamura k2nakamura added a comment - I talked with Kohsuke at JavaOne, and learned he did special hacks to deal with externals because SVNKit, which is the framework Hudson uses to access Subversion, doesn't provide the support for external out of the box. He also thinks the external feature is ad-hoc and after-thought, so it tends to be problematic. I'll lower the priority.
          Hide
          japher japher added a comment - - edited

          I'd love to see this one added.

          I think most teams that use svn will start using externals sooner or later. Once they're used, freezing for a specific revision when creating a tag is essential. I expect there are a lot of teams out there tagging their builds via this plugin and not realising that their tags are actually flawed.

          k2nakamura, do you have any advice/thoughts on where to start with this enhancement? I'm interested to give it a go

          Edit:
          Just noticed that Subversive (eclipse's svn integration) supports just this feature when creating tags. It's a configuration option that is documented here:
          http://www.eclipse.org/subversive/documentation/preferences/pref_svn.php

          The Subversive source code may have some insights on how to do this.

          Show
          japher japher added a comment - - edited I'd love to see this one added. I think most teams that use svn will start using externals sooner or later. Once they're used, freezing for a specific revision when creating a tag is essential . I expect there are a lot of teams out there tagging their builds via this plugin and not realising that their tags are actually flawed. k2nakamura, do you have any advice/thoughts on where to start with this enhancement? I'm interested to give it a go Edit: Just noticed that Subversive (eclipse's svn integration) supports just this feature when creating tags. It's a configuration option that is documented here: http://www.eclipse.org/subversive/documentation/preferences/pref_svn.php The Subversive source code may have some insights on how to do this.
          Hide
          candhu candhu added a comment -

          I don't think is is "trivial" priority. Any use of externals in your respository really needs this functionality when tagging, otherwise your tag is out-of-date as soon as it's created. Most people will implment this is in some form using a standalone script of some kind (eg svncopy.pl), so an automated method in Hudson, like other tools have (Eclipse or SmartSVN to name only 2), will be beneficial.

          Can you please raise the priority again ?

          Show
          candhu candhu added a comment - I don't think is is "trivial" priority. Any use of externals in your respository really needs this functionality when tagging, otherwise your tag is out-of-date as soon as it's created. Most people will implment this is in some form using a standalone script of some kind (eg svncopy.pl), so an automated method in Hudson, like other tools have (Eclipse or SmartSVN to name only 2), will be beneficial. Can you please raise the priority again ?
          Hide
          erik_vonderheid erik_vonderheid added a comment -

          +1
          Also in my opinion this feature is essential.

          Show
          erik_vonderheid erik_vonderheid added a comment - +1 Also in my opinion this feature is essential.
          Hide
          gabrielegiuseppini Gabriele Giuseppini added a comment -

          +1
          Also in my opinion. This is the only thing that is making Jenkins not fully suitable to our processes - we promote builds and release and tag and all, but we can't freeze externals.

          Show
          gabrielegiuseppini Gabriele Giuseppini added a comment - +1 Also in my opinion. This is the only thing that is making Jenkins not fully suitable to our processes - we promote builds and release and tag and all, but we can't freeze externals.
          Hide
          ricardo_ruiz_lopez Ricardo Ruiz added a comment -

          I agree this is essential.

          Show
          ricardo_ruiz_lopez Ricardo Ruiz added a comment - I agree this is essential.
          Hide
          robs RobS added a comment -

          I agree this is essential, and I am waiting for it.

          Show
          robs RobS added a comment - I agree this is essential, and I am waiting for it.
          Hide
          ericlemanissier Eric Lemanissier added a comment -

          +1
          Essential feature, it is quite heavy to manually tag every external ressource

          Show
          ericlemanissier Eric Lemanissier added a comment - +1 Essential feature, it is quite heavy to manually tag every external ressource

            People

            • Assignee:
              vrenjith Renjith V
              Reporter:
              janador janador
            • Votes:
              8 Vote for this issue
              Watchers:
              12 Start watching this issue

              Dates

              • Created:
                Updated: