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

Build can't recover from broken submodule path

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • git-plugin
    • None

      If a build gets pushed that has a broken submodule path then fixing the submodule path doesn't allow the build to start working again as the first thing the plugin tries todo is fetch changes which doesn't work.

      If there are submodules the plugin should fetch changes in the toplevel git project, then sync the submodule URLs, then fetch changes from the submodule URLs.

          [JENKINS-14083] Build can't recover from broken submodule path

          Kelly Johnson added a comment -

          Solution in JENKINS-8503 would fix this as well.

          Kelly Johnson added a comment - Solution in JENKINS-8503 would fix this as well.

          Code changed in jenkins
          User: Mark Waite
          Path:
          src/test/java/org/jenkinsci/plugins/gitclient/GitAPITestCase.java
          http://jenkins-ci.org/commit/git-client-plugin/eec1a16bc7ddff1ffd022f5c9e5f631f1a63f329
          Log:
          Add two detailed submodule tests

          Tests describe the implementation as it currently exists, in hopes
          of detecting future regressions with test execution. The tests show
          inconsistencies between the CliGitAPIImpl and JGitAPIImpl classes,
          and inconsistencies between command line git and JGit behavior.

          Command line git clean as implemented in CliGitAPIImpl does not remove
          untracked submodules or files contained in untracked submodule dirs.
          JGit clean as implemented in JGitAPIImpl removes untracked submodules.
          This test captures that surprising difference between the implementations.

          CliGitAPIImpl supports renamed submodules. JGitAPIImpl does not support
          renamed submodules. One of these tests captures that difference.

          See bug reports such as:
          JENKINS-22510 - Clean After Checkout Results in Failed to Checkout Revision
          JENKINS-8053 - Git submodules are cloned too early and not removed once the revToBuild has been checked out
          JENKINS-14083 - Build can't recover from broken submodule path
          JENKINS-15399 - Changing remote URL doesn't update submodules

          Compare: https://github.com/jenkinsci/git-client-plugin/compare/cdcbfd56f49f...eec1a16bc7dd

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Mark Waite Path: src/test/java/org/jenkinsci/plugins/gitclient/GitAPITestCase.java http://jenkins-ci.org/commit/git-client-plugin/eec1a16bc7ddff1ffd022f5c9e5f631f1a63f329 Log: Add two detailed submodule tests Tests describe the implementation as it currently exists, in hopes of detecting future regressions with test execution. The tests show inconsistencies between the CliGitAPIImpl and JGitAPIImpl classes, and inconsistencies between command line git and JGit behavior. Command line git clean as implemented in CliGitAPIImpl does not remove untracked submodules or files contained in untracked submodule dirs. JGit clean as implemented in JGitAPIImpl removes untracked submodules. This test captures that surprising difference between the implementations. CliGitAPIImpl supports renamed submodules. JGitAPIImpl does not support renamed submodules. One of these tests captures that difference. See bug reports such as: JENKINS-22510 - Clean After Checkout Results in Failed to Checkout Revision JENKINS-8053 - Git submodules are cloned too early and not removed once the revToBuild has been checked out JENKINS-14083 - Build can't recover from broken submodule path JENKINS-15399 - Changing remote URL doesn't update submodules Compare: https://github.com/jenkinsci/git-client-plugin/compare/cdcbfd56f49f...eec1a16bc7dd

            Unassigned Unassigned
            buckett Matthew Buckett
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: