1#!/bin/bash
2API_BASE="https://api.github.com/repos/ornladios/adios2"
3USER=${STATUS_ROBOT_NAME}
4TOKEN=${STATUS_ROBOT_KEY}
5COMMIT=${CIRCLE_SHA1}
6CDASH_STATUS_CONTEXT="cdash"
7SOURCE_DIR="$(readlink -f ${CIRCLE_WORKING_DIRECTORY}/source)"
8
9build_status_body() {
10  cat <<EOF
11{
12  "state": "success",
13  "target_url": "https://open.cdash.org/index.php?compare1=61&filtercount=1&field1=revision&project=ADIOS&showfilters=0&limit=100&value1=${COMMIT}&showfeed=0",
14  "description": "Build and test results available on CDash",
15  "context": "${CDASH_STATUS_CONTEXT}"
16}
17EOF
18}
19
20PYTHON_SCRIPT="${SOURCE_DIR}/scripts/ci/findStatus.py"
21curl -u "${USER}:${TOKEN}" "${API_BASE}/commits/${COMMIT}/statuses" | python3 ${PYTHON_SCRIPT} --context ${CDASH_STATUS_CONTEXT}
22if [ $? -ne 0 ]
23then
24  echo "Need to post a status for context ${CDASH_STATUS_CONTEXT}"
25  postBody="$(build_status_body)"
26  postUrl="${API_BASE}/statuses/${COMMIT}"
27  curl -u "${USER}:${TOKEN}" "${postUrl}" -H "Content-Type: application/json" -H "Accept: application/vnd.github.v3+json" -d "${postBody}"
28fi
29