Uploaded image for project: 'Bamboo Data Center'
  1. Bamboo Data Center
  2. BAM-21991

The Bamboo /result API endpoint should return information from Plan branch builds

    • Icon: Suggestion Suggestion
    • Resolution: Unresolved
    • None
    • API
    • None
    • 0
    • 1
    • Our product teams collect and evaluate feedback from a number of different sources. To learn more about how we use customer feedback in the planning process, check out our new feature policy.

      Problem Definition

      When using the /result REST API endpoint, only results from the default branch are returned

      Suggested Solution

      Allow the /result REST API to also return Plan branches results by default or by using an expand property

      Workaround

      To retrieve all results from all Default Branches and Plan branches together, run the following script:

      #!/bin/bash
      ## Declare Curl options, credentials and URL
      CURLOPTS=( "-s" "-k" "-H" "Accept: application/json" "-u<username>:<password>" )
      BAMBOO_URL="https://bamboo.mydomain.net"
      
      ## You may have to adjust max-results
      REST_OPTS="?includeAllStates=true&max-results=25"
      
      # Create a list of default Plans
      PLANS=$(curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan${REST_OPTS}" \
                | jq -r '.plans.plan[].key')
      
      # Create a list of plan branches
      PLAN_BRANCHES=$(for p in ${PLANS} ; do
                        curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan/${p}/branch${REST_OPTS}" \
                          | jq --arg PLAN "${p}/" -r '$PLAN + .branches.branch[].shortName' ;
                      done)
      
      # Print both default and branch results
      curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result${REST_OPTS}" | jq '.results.result[]'
      for PB in ${PLAN_BRANCHES} ; do
        curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result/${PB%/*}/branch/${PB#*/}${REST_OPTS}" \
          | jq 'select(.results.size > 0) | .results.result[]';
      done
      

       

            [BAM-21991] The Bamboo /result API endpoint should return information from Plan branch builds

            SET Analytics Bot made changes -
            Support reference count New: 1
            Renata Dornelas made changes -
            Remote Link Original: This issue links to "Page (Atlassian Documentation)" [ 697440 ]
            SET Analytics Bot made changes -
            UIS Original: 1 New: 0
            SET Analytics Bot made changes -
            UIS Original: 0 New: 1
            SET Analytics Bot made changes -
            UIS Original: 1 New: 0
            SET Analytics Bot made changes -
            UIS New: 1
            Eduardo Alvarenga (Inactive) made changes -
            Description Original: h2. Problem Definition

            When using the *{{/result}}* REST API endpoint, only results from the *default branch* are returned
            h2. Suggested Solution

            Allow the *{{/result}}* REST API to also return Plan branches results by default or by using an *_expand_* property
            h2. Workaround

            To retrieve all results from all Default Branches and Plan branches together, run the following script:
            {code:bash}
            #!/bin/bash
            ## Declare Curl options, credentials and URL
            CURLOPTS=( "-s" "-H" "Accept: application/json" "-u<username>:<password>" )
            BAMBOO_URL="https://bamboo.mydomain.net"

            ## You may have to adjust max-results
            REST_OPTS="?includeAllStates=true&max-results=25"

            # Create a list of default Plans
            PLANS=$(curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan${REST_OPTS}" \
                      | jq -r '.plans.plan[].key')

            # Create a list of plan branches
            PLAN_BRANCHES=$(for p in ${PLANS} ; do
                              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan/${p}/branch${REST_OPTS}" \
                                | jq --arg PLAN "${p}/" -r '$PLAN + .branches.branch[].shortName' ;
                            done)

            # Print both default and branch results
            curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result${REST_OPTS}" | jq '.results.result[]'
            for PB in ${PLAN_BRANCHES} ; do
              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result/${PB%/*}/branch/${PB#*/}${REST_OPTS}" \
                | jq 'select(.results.size > 0) | .results.result[]';
            done
            {code}
             
            New: h2. Problem Definition

            When using the *{{/result}}* REST API endpoint, only results from the *default branch* are returned
            h2. Suggested Solution

            Allow the *{{/result}}* REST API to also return Plan branches results by default or by using an *_expand_* property
            h2. Workaround

            To retrieve all results from all Default Branches and Plan branches together, run the following script:
            {code:bash}
            #!/bin/bash
            ## Declare Curl options, credentials and URL
            CURLOPTS=( "-s" "-k" "-H" "Accept: application/json" "-u<username>:<password>" )
            BAMBOO_URL="https://bamboo.mydomain.net"

            ## You may have to adjust max-results
            REST_OPTS="?includeAllStates=true&max-results=25"

            # Create a list of default Plans
            PLANS=$(curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan${REST_OPTS}" \
                      | jq -r '.plans.plan[].key')

            # Create a list of plan branches
            PLAN_BRANCHES=$(for p in ${PLANS} ; do
                              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan/${p}/branch${REST_OPTS}" \
                                | jq --arg PLAN "${p}/" -r '$PLAN + .branches.branch[].shortName' ;
                            done)

            # Print both default and branch results
            curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result${REST_OPTS}" | jq '.results.result[]'
            for PB in ${PLAN_BRANCHES} ; do
              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result/${PB%/*}/branch/${PB#*/}${REST_OPTS}" \
                | jq 'select(.results.size > 0) | .results.result[]';
            done
            {code}
             
            Eduardo Alvarenga (Inactive) made changes -
            Description Original: h2. Problem Definition

            When using the *{{/result}}* REST API endpoint, only results from the *default branch* are returned
            h2. Suggested Solution

            Allow the *{{/result}}* REST API to also return Plan branches results by default or by using an *_expand_* property
            h2. Workaround

            To retrieve all results from all Default Branches and Plan branches together, run the following script:
            {code:bash}
            #!/bin/bash
            ## Declare Curl options, credentials and URL
            CURLOPTS=( "-s" "-H" "Accept: application/json" "-u<username>:<password>" )
            BAMBOO_URL="https://bamboo.mydomain.net"

            ## You may have to adjust max-results
            REST_OPTS="?includeAllStates=true&max-results=25"

            # Create a list of default Plans
            PLANS=$(curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan${REST_OPTS}" \
                      | jq -r '.plans.plan[].key')

            # Create a list of plan branches
            PLAN_BRANCHES=$(for p in ${PLANS} ; do
                              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan/${p}/branch${REST_OPTS}" \
                                | jq --arg PLAN "${p}/" -r '$PLAN + .branches.branch[].shortName' ;
                            done)

            # Print both default and branch results
            curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result${REST_OPTS}" | jq '.results.result[]'
            for PB in ${PLAN_BRANCHES} ; do
              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result/${PB%/*}/branch/${PB#*/}?${REST_OPTS}" \
                | jq 'select(.results.size > 0) | .results.result[]';
            done
            {code}
             
            New: h2. Problem Definition

            When using the *{{/result}}* REST API endpoint, only results from the *default branch* are returned
            h2. Suggested Solution

            Allow the *{{/result}}* REST API to also return Plan branches results by default or by using an *_expand_* property
            h2. Workaround

            To retrieve all results from all Default Branches and Plan branches together, run the following script:
            {code:bash}
            #!/bin/bash
            ## Declare Curl options, credentials and URL
            CURLOPTS=( "-s" "-H" "Accept: application/json" "-u<username>:<password>" )
            BAMBOO_URL="https://bamboo.mydomain.net"

            ## You may have to adjust max-results
            REST_OPTS="?includeAllStates=true&max-results=25"

            # Create a list of default Plans
            PLANS=$(curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan${REST_OPTS}" \
                      | jq -r '.plans.plan[].key')

            # Create a list of plan branches
            PLAN_BRANCHES=$(for p in ${PLANS} ; do
                              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan/${p}/branch${REST_OPTS}" \
                                | jq --arg PLAN "${p}/" -r '$PLAN + .branches.branch[].shortName' ;
                            done)

            # Print both default and branch results
            curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result${REST_OPTS}" | jq '.results.result[]'
            for PB in ${PLAN_BRANCHES} ; do
              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result/${PB%/*}/branch/${PB#*/}${REST_OPTS}" \
                | jq 'select(.results.size > 0) | .results.result[]';
            done
            {code}
             
            Eduardo Alvarenga (Inactive) made changes -
            Description Original: h2. Problem Definition

            When using the *{{/result}}* REST API endpoint, only results from the *default branch* are returned
            h2. Suggested Solution

            Allow the *{{/result}}* REST API to also return Plan branches results by default or by using an *_expand_* property
            h2. Workaround

            To retrieve all results from all Default Branches and Plan branches together, run the following script:
            {code:bash}
            #!/bin/bash
            ## Declare Curl options, credentials and URL
            CURLOPTS=( "-s" "-H" "Accept: application/json" "-u<username>:<password>" )
            BAMBOO_URL="https://bamboo.mydomain.net"

            ## You may have to adjust max-results
            REST_OPTS="includeAllStates=true&max-results=25"

            # Create a list of default Plans
            PLANS=$(curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan?${REST_OPTS}" \
                      | jq -r '.plans.plan[].key')

            # Create a list of plan branches
            PLAN_BRANCHES=$(for p in ${PLANS} ; do
                              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan/${p}/branch?${REST_OPTS}" \
                                | jq --arg PLAN "${p}/" -r '$PLAN + .branches.branch[].shortName' ;
                            done)

            # Print both default and branch results
            curl "${CURLOPTS[@]}" ${BAMBOO_URL}/rest/api/latest/result?${REST_OPTS} | jq '.results.result[]'
            for PB in ${PLAN_BRANCHES} ; do
              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result/${PB%/*}/branch/${PB#*/}?${REST_OPTS}" \
                | jq 'select(.results.size > 0) | .results.result[]';
            done
            {code}
             
            New: h2. Problem Definition

            When using the *{{/result}}* REST API endpoint, only results from the *default branch* are returned
            h2. Suggested Solution

            Allow the *{{/result}}* REST API to also return Plan branches results by default or by using an *_expand_* property
            h2. Workaround

            To retrieve all results from all Default Branches and Plan branches together, run the following script:
            {code:bash}
            #!/bin/bash
            ## Declare Curl options, credentials and URL
            CURLOPTS=( "-s" "-H" "Accept: application/json" "-u<username>:<password>" )
            BAMBOO_URL="https://bamboo.mydomain.net"

            ## You may have to adjust max-results
            REST_OPTS="?includeAllStates=true&max-results=25"

            # Create a list of default Plans
            PLANS=$(curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan${REST_OPTS}" \
                      | jq -r '.plans.plan[].key')

            # Create a list of plan branches
            PLAN_BRANCHES=$(for p in ${PLANS} ; do
                              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/plan/${p}/branch${REST_OPTS}" \
                                | jq --arg PLAN "${p}/" -r '$PLAN + .branches.branch[].shortName' ;
                            done)

            # Print both default and branch results
            curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result${REST_OPTS}" | jq '.results.result[]'
            for PB in ${PLAN_BRANCHES} ; do
              curl "${CURLOPTS[@]}" "${BAMBOO_URL}/rest/api/latest/result/${PB%/*}/branch/${PB#*/}?${REST_OPTS}" \
                | jq 'select(.results.size > 0) | .results.result[]';
            done
            {code}
             
            Eduardo Alvarenga (Inactive) made changes -
            Remote Link New: This issue links to "Page (Atlassian Documentation)" [ 697440 ]

              Unassigned Unassigned
              73868399605e Eduardo Alvarenga (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated: