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

Option to disable the changelog while getting jenkinsfile from git

    • Icon: New Feature New Feature
    • Resolution: Unresolved
    • Icon: Major Major
    • git-plugin
    • None
    • Jenkins 2.60.1
      Git plugin 3.4.1

      It taken a lot of time to get revision list from git while getting jenkinsfile
      git rev-list e4b4b57f7d79b19f11acdaef7a5a50866d9d763b # timeout=10
      I would be nice to have option to avoid changelog creation during getting jenkinsfile from git (like on checkout operation)

          [JENKINS-46922] Option to disable the changelog while getting jenkinsfile from git

          Viachaslau Kabak created issue -
          Viachaslau Kabak made changes -
          Priority Original: Minor [ 4 ] New: Major [ 3 ]
          Mark Waite made changes -
          Assignee Original: Mark Waite [ markewaite ]

          Mark Waite added a comment -

          Please describe the cases where you see it taking a long time to get the revision list from git. Listing revisions is a local operation which should be quite fast.

          Mark Waite added a comment - Please describe the cases where you see it taking a long time to get the revision list from git. Listing revisions is a local operation which should be quite fast.

          I have a CI test and subtests running in parallel. So every subtest is a separate job. Every job during start gets pipeline from git. If there are several tests with subtests start running - they are trying to get pipeline scripts from git on Master node. And every time jenkins is trying to create changelog during git checkout. The CPU is on top at that moment.

          I do not need git rev-list during jenkinsfile checkout and it will save Jenkins master resources. So it will be critically nice to have an option to disable changelog creation as we have it on checkout command in pipeline.

          thanks.

          Viachaslau Kabak added a comment - I have a CI test and subtests running in parallel. So every subtest is a separate job. Every job during start gets pipeline from git. If there are several tests with subtests start running - they are trying to get pipeline scripts from git on Master node. And every time jenkins is trying to create changelog during git checkout. The CPU is on top at that moment. I do not need git rev-list during jenkinsfile checkout and it will save Jenkins master resources. So it will be critically nice to have an option to disable changelog creation as we have it on checkout command in pipeline. thanks.

          Mark Waite added a comment -

          Git client plugin 2.6.1-SNAPSHOT now includes a git rev-list command which has the option to not generate the entire rev-list.  Can you check a build from ci.jenkins.io to see if that resolves your concern?

          Mark Waite added a comment - Git client plugin 2.6.1-SNAPSHOT now includes a git rev-list command which has the option to not generate the entire rev-list.  Can you check a build from ci.jenkins.io to see if that resolves your concern?

          I have installed 2.6.1 (suggested) version of plugin. Could you please tell me where I can find this option to  not to generate entire rev-list?

          thanks

          Viachaslau Kabak added a comment - I have installed 2.6.1 (suggested) version of plugin. Could you please tell me where I can find this option to  not to generate entire rev-list? thanks

          Mark Waite added a comment -

          slavik334 sorry for my incorrect phrasing.  The 2.6.1-SNAPSHOT includes a rev-list implementation which uses the --no-walk parameter to the git rev-list command when it detects the history is not required. No configuration required. Install the plugin and see if the behavior is measurably different.

          Mark Waite added a comment - slavik334 sorry for my incorrect phrasing.  The 2.6.1-SNAPSHOT includes a rev-list implementation which uses the --no-walk  parameter to the git rev-list command when it detects the history is not required. No configuration required. Install the plugin and see if the behavior is measurably different.

          thanks, i will try

          but seems that preferred way - is to have an option

          cause other people may need the option to get changes....

          Viachaslau Kabak added a comment - thanks, i will try but seems that preferred way - is to have an option cause other people may need the option to get changes....

          Mark Waite added a comment -

          slavik334 thanks for trying it. I pointed you to that existing code because I am unlikely to ever implement this request. There are over 120000 installations of the git plugin worldwide. I hesitate to add new options unless I'm persuaded there will be many users for that option.

          Unless this request has many others declaring "me too", and the request is followed by a pull request implementing it (and implementing tests to confirm behavior), it won't be implemented.

          Mark Waite added a comment - slavik334 thanks for trying it. I pointed you to that existing code because I am unlikely to ever implement this request. There are over 120000 installations of the git plugin worldwide. I hesitate to add new options unless I'm persuaded there will be many users for that option. Unless this request has many others declaring "me too", and the request is followed by a pull request implementing it (and implementing tests to confirm behavior), it won't be implemented.

            Unassigned Unassigned
            slavik334 Viachaslau Kabak
            Votes:
            11 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: