X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=shell%2Fjob-cost.sh;h=cb5f1a5977b3fd4dead49e07c153f04072d8a26e;hb=5fca6a99161351464865647c4bb44057a67debe1;hp=34ab5e730e5c77cd92e0fcc258c80726be4a91b5;hpb=72050cce2c57e8eb314b2f518b846f7810595fbb;p=releng%2Fglobal-jjb.git diff --git a/shell/job-cost.sh b/shell/job-cost.sh index 34ab5e73..cb5f1a59 100644 --- a/shell/job-cost.sh +++ b/shell/job-cost.sh @@ -21,7 +21,7 @@ if grep -qi amazon /sys/devices/virtual/dmi/id/bios_vendor ; then exit 0 fi -lf-activate-venv python-openstackclient +lf-activate-venv zipp==1.1.0 python-openstackclient if [[ -z ${JOB_NAME:-} ]]; then lf-echo-error "Required Env Variable Unset/Empty: JOB_NAME" @@ -59,13 +59,13 @@ url="https://pricing.vexxhost.net/v1/pricing/$instance_type/cost?seconds=$uptime json_block=$(curl -s "$url") # check if JSON returned and can be parsed -if jq <<< "$json_block"; then +if jq . <<< "$json_block" > /dev/null 2>&1; then cost=$(jq .cost <<< "$json_block") resource=$(jq .resource <<< "$json_block" | tr -d '"') else echo "ERROR: Pricing API returned invalid json" cost=0 - resource=0 + resource='unknown' fi # Archive the cost date @@ -77,6 +77,6 @@ echo "INFO: Archiving Costs" # This format is readable by spreadsheet and is easily sortable date=$(TZ=GMT date +'%Y-%m-%d %H:%M:%S') -cat << EOF > "$WORKSPACE/archives/cost.csv" -$JOB_NAME,$BUILD_NUMBER,$date,$resource,$uptime,$cost,$stack_cost -EOF +# Format the uptime, cost & stack_cost fields +printf "%s,%s,%s,%s,%d,%.2f,%.2f\n" "$JOB_NAME" "$BUILD_NUMBER" "$date" \ + "$resource" "$uptime" "$cost" "$stack_cost" > "$WORKSPACE/archives/cost.csv"