-
Suggestion
-
Resolution: Unresolved
-
None
-
None
-
0
-
1
-
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
- derived from
-
BAM-21420 The result/branch API should work for the default branch
- Gathering Interest
[BAM-21991] The Bamboo /result API endpoint should return information from Plan branch builds
Support reference count | New: 1 |
Remote Link | Original: This issue links to "Page (Atlassian Documentation)" [ 697440 ] |
UIS | Original: 1 | New: 0 |
UIS | Original: 0 | New: 1 |
UIS | Original: 1 | New: 0 |
UIS | New: 1 |
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} |
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} |
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} |
Remote Link | New: This issue links to "Page (Atlassian Documentation)" [ 697440 ] |