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

Automatically imply Jabber server suffix in per job 'Targets' field

    • Icon: Improvement Improvement
    • Resolution: Unresolved
    • Icon: Minor Minor
    • jabber-plugin
    • None
    • Platform: All, OS: All

      The jabber plugin allows messages to be sent upon certain events. This is useful
      but limited. In particular, the notification strategy option allows any one of
      'all', 'failure' or 'change', but does not allow any combination of these.

      It would be more generally useful in larger project teams if there were some
      configurable matrix of jabber IDs agains the possible events that can cause a
      message to be sent.

      One simple way to implement this might be to to replace the existing 'targets'
      and 'notification strategy' inputs with two targets fields: one for 'failure',
      and one for 'change'. Also, add a third target field for 'success' notifications
      (typically, a QA person might be interested only in successful builds for example).

      A better way would be to have an extending list (e.g. similar to the extending
      list of Subversion repository locations). This would effectively for a matrix:
      each row would start with a jabber ID and would have tick-boxes for 'success',
      'failure' and 'change'. It would be possible to add new rows to the table and
      change or delete existing rows.

          [JENKINS-2456] Automatically imply Jabber server suffix in per job 'Targets' field

          rickb007 added a comment -

          Spelling correction to last para:

          A better way would be to have an extending list (e.g. similar to the extending
          list of Subversion repository locations). This would effectively form a matrix:
          each row would start with a jabber ID and would have tick-boxes for 'success',
          'failure' and 'change'. It would be possible to add new rows to the table and
          change or delete existing rows.

          rickb007 added a comment - Spelling correction to last para: A better way would be to have an extending list (e.g. similar to the extending list of Subversion repository locations). This would effectively form a matrix: each row would start with a jabber ID and would have tick-boxes for 'success', 'failure' and 'change'. It would be possible to add new rows to the table and change or delete existing rows.

          kutzi added a comment -

          It's not exactly what you've asked for, but in 0.9 and 0.11 some enhancements
          for the notification profiles were done.
          Is that enough for you or do you really need the matrix-style configuration?

          kutzi added a comment - It's not exactly what you've asked for, but in 0.9 and 0.11 some enhancements for the notification profiles were done. Is that enough for you or do you really need the matrix-style configuration?

          kutzi added a comment -

          closed as WONTFIX as reporter doesn't seem interested anymore.

          kutzi added a comment - closed as WONTFIX as reporter doesn't seem interested anymore.

          rickb007 added a comment -

          Sorry - I missed your remarks of August 31st. I am still interested. Hopefully
          I'll have time to take a look at this tomorrow.

          rickb007 added a comment - Sorry - I missed your remarks of August 31st. I am still interested. Hopefully I'll have time to take a look at this tomorrow.

          rickb007 added a comment -

          I'd like to make an alternative, simpler, suggestion to the one we discussed earlier.

          The Jabber plugin is really good but just a teansy bit too much hassle to configure. The 'Targets' input box currently requires a list of JIDs, each of which is a username followed by '@' and the jabber domain name. So how about changing it to allow this input box to include usernames only, i.e. with or without any @server.name suffix.

          We already have a Jabber server specified in the 'Server' box in the plugin configuration panel (Manage Hudson > Configure System > Jabber panel). This provides a default value for the Jabber domain name.

          So the behaviour would be simple:

          • For any fully-qualified JIDs, they would be used as specified (as happens now).
          • For any abbreviated JIDs, they would use the default @server.name based on the default domain name.
          • When the Hudson job configuration form is saved, the new list is checked and JIDs that use the default domain name are truncated to the abbreviated form.

          The benefit is clear: many teams using Hudson will be working with one local Jabber server within their company's LAN. For such teams, the full JID is not necessary because the username is unambiguous and therefore sufficient. So their usage of the plugin can be made much simpler.

          rickb007 added a comment - I'd like to make an alternative, simpler, suggestion to the one we discussed earlier. The Jabber plugin is really good but just a teansy bit too much hassle to configure. The 'Targets' input box currently requires a list of JIDs, each of which is a username followed by '@' and the jabber domain name. So how about changing it to allow this input box to include usernames only, i.e. with or without any @server.name suffix. We already have a Jabber server specified in the 'Server' box in the plugin configuration panel (Manage Hudson > Configure System > Jabber panel). This provides a default value for the Jabber domain name. So the behaviour would be simple: For any fully-qualified JIDs, they would be used as specified (as happens now). For any abbreviated JIDs, they would use the default @server.name based on the default domain name. When the Hudson job configuration form is saved, the new list is checked and JIDs that use the default domain name are truncated to the abbreviated form. The benefit is clear: many teams using Hudson will be working with one local Jabber server within their company's LAN. For such teams, the full JID is not necessary because the username is unambiguous and therefore sufficient. So their usage of the plugin can be made much simpler.

          kutzi added a comment -

          I guess most people only enter a chatroom in the target list and just watch that, instead of configuring individual targets - at least that's how I use it.
          So I don't see that much value in the proposed change.

          If you provide a patch, however, I'd be happy to apply it.

          kutzi added a comment - I guess most people only enter a chatroom in the target list and just watch that, instead of configuring individual targets - at least that's how I use it. So I don't see that much value in the proposed change. If you provide a patch, however, I'd be happy to apply it.

          kutzi added a comment -

          Changed summary to reflect the updated request.

          kutzi added a comment - Changed summary to reflect the updated request.

          scot mcphee added a comment -

          I have an additional suggestion, or one that might modify the suggested fix. We use corporate Gmail/Google Apps etc. No one uses chat rooms or group chats. Our SVN logins are driven off the same LDAP server as our Gmail data - however without the domain name. It would be very good for this plugin to operate like the email notifications, instead of the jabber server name, it would be nice to have a configurable domain. - I.e. j.blow commits to SVN, breaks build, and j.blow@example.com is sent a notification they broke the build. I thought it might have already worked like this, but apparently not, and we have to maintain each build manually with the list of people who commit to it.

          scot mcphee added a comment - I have an additional suggestion, or one that might modify the suggested fix. We use corporate Gmail/Google Apps etc. No one uses chat rooms or group chats. Our SVN logins are driven off the same LDAP server as our Gmail data - however without the domain name. It would be very good for this plugin to operate like the email notifications, instead of the jabber server name, it would be nice to have a configurable domain. - I.e. j.blow commits to SVN, breaks build, and j.blow@example.com is sent a notification they broke the build. I thought it might have already worked like this, but apparently not, and we have to maintain each build manually with the list of people who commit to it.

          kutzi added a comment -

          Scot, as far as I understand your request, that's something different - and also something which should already be working with the 'default servers suffix'. Please open a new issue, if it doesn't with a more complete description of the problem.

          kutzi added a comment - Scot, as far as I understand your request, that's something different - and also something which should already be working with the 'default servers suffix'. Please open a new issue, if it doesn't with a more complete description of the problem.

            Unassigned Unassigned
            rickb007 rickb007
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: