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

Links to branch jobs on custom views in multibranch projects are broken

      Users are able to create custom views for multibranch projects, however if that view is not the primary view, all links to the branch projects are broken. This is because the URL child prefix for multibranch projects is branch (https://github.com/jenkinsci/branch-api-plugin/blob/branch-api-1.0/src/main/java/jenkins/branch/MultiBranchProject.java#L463).

      Views do not have a Stapler URL binding getBranch(String name), but the fallback for the primary view onto the MultiBranchProject class masks this issue.

      Reproduce:

      1. Create multibranch project (any type)
      2. Index some branches
      3. Create a new view with some branches in it
      4. Do not make it the primary view
      5. Click a link to a branch on the new view
      6. Observe broken link root/job/my-multibranch/view/custom-view/branch/branch-name
      7. Make the new view the primary view
      8. Click a link to a branch on the new view
      9. Observe branch project page

          [JENKINS-32178] Links to branch jobs on custom views in multibranch projects are broken

          Matthew DeTullio created issue -
          Matthew DeTullio made changes -
          Remote Link New: This issue links to "PR (Web Link)" [ 13711 ]
          Matthew DeTullio made changes -
          Description Original: Users are able to create custom views for multibranch projects, however if that view is not the primary view, all links to the branch projects are broken. This is because the URL child prefix for multibranch projects is "branch" (https://github.com/jenkinsci/branch-api-plugin/blob/branch-api-1.0/src/main/java/jenkins/branch/MultiBranchProject.java#L463).

          Views do not have a Stapler URL binding for "branch", but the fallback for the primary view onto MultiBranchProject class masks this issue.

          Reproduce:

          1. Create multibranch project (any type)
          2. Index some branches
          3. Create a new view with some branches in it
          4. Do not make it the primary view
          5. Click a link to a branch on the new view
          6. Observe broken link root/job/my-multibranch/view/custom-view/branch/branch-name
          7. Make the new view the primary view
          8. Click a link to a branch on the new view
          9. Observe branch project page
          New: Users are able to create custom views for multibranch projects, however if that view is not the primary view, all links to the branch projects are broken. This is because the URL child prefix for multibranch projects is {{branch}} (https://github.com/jenkinsci/branch-api-plugin/blob/branch-api-1.0/src/main/java/jenkins/branch/MultiBranchProject.java#L463).

          Views do not have a Stapler URL binding {{getBranch(String name)}}, but the fallback for the primary view onto MultiBranchProject class masks this issue.

          Reproduce:

          1. Create multibranch project (any type)
          2. Index some branches
          3. Create a new view with some branches in it
          4. Do not make it the primary view
          5. Click a link to a branch on the new view
          6. Observe broken link root/job/my-multibranch/view/custom-view/branch/branch-name
          7. Make the new view the primary view
          8. Click a link to a branch on the new view
          9. Observe branch project page
          Matthew DeTullio made changes -
          Description Original: Users are able to create custom views for multibranch projects, however if that view is not the primary view, all links to the branch projects are broken. This is because the URL child prefix for multibranch projects is {{branch}} (https://github.com/jenkinsci/branch-api-plugin/blob/branch-api-1.0/src/main/java/jenkins/branch/MultiBranchProject.java#L463).

          Views do not have a Stapler URL binding {{getBranch(String name)}}, but the fallback for the primary view onto MultiBranchProject class masks this issue.

          Reproduce:

          1. Create multibranch project (any type)
          2. Index some branches
          3. Create a new view with some branches in it
          4. Do not make it the primary view
          5. Click a link to a branch on the new view
          6. Observe broken link root/job/my-multibranch/view/custom-view/branch/branch-name
          7. Make the new view the primary view
          8. Click a link to a branch on the new view
          9. Observe branch project page
          New: Users are able to create custom views for multibranch projects, however if that view is not the primary view, all links to the branch projects are broken. This is because the URL child prefix for multibranch projects is {{branch}} (https://github.com/jenkinsci/branch-api-plugin/blob/branch-api-1.0/src/main/java/jenkins/branch/MultiBranchProject.java#L463).

          Views do not have a Stapler URL binding {{getBranch(String name)}}, but the fallback for the primary view onto the {{MultiBranchProject}} class masks this issue.

          Reproduce:

          1. Create multibranch project (any type)
          2. Index some branches
          3. Create a new view with some branches in it
          4. Do not make it the primary view
          5. Click a link to a branch on the new view
          6. Observe broken link root/job/my-multibranch/view/custom-view/branch/branch-name
          7. Make the new view the primary view
          8. Click a link to a branch on the new view
          9. Observe branch project page
          Jesse Glick made changes -
          Assignee Original: Stephen Connolly [ stephenconnolly ] New: Matthew DeTullio [ mjdetullio ]
          Jesse Glick made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]
          Matthew DeTullio made changes -
          Remote Link Original: This issue links to "PR (Web Link)" [ 13711 ]
          Matthew DeTullio made changes -
          Remote Link New: This issue links to "PR (Web Link)" [ 14237 ]
          Jesse Glick made changes -
          Link New: This issue is duplicated by JENKINS-34693 [ JENKINS-34693 ]
          Matthew DeTullio made changes -
          Resolution New: Fixed [ 1 ]
          Status Original: In Progress [ 3 ] New: Resolved [ 5 ]
          Jesse Glick made changes -
          Link New: This issue depends on JENKINS-35243 [ JENKINS-35243 ]

            mjdetullio Matthew DeTullio
            mjdetullio Matthew DeTullio
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: