aboutsummaryrefslogtreecommitdiff
path: root/public/templates/sh.template
diff options
context:
space:
mode:
Diffstat (limited to 'public/templates/sh.template')
-rw-r--r--public/templates/sh.template90
1 files changed, 90 insertions, 0 deletions
diff --git a/public/templates/sh.template b/public/templates/sh.template
new file mode 100644
index 0000000..0e8e34c
--- /dev/null
+++ b/public/templates/sh.template
@@ -0,0 +1,90 @@
+#!/usr/bin/env sh
+
+# Licensed under Parity Public License 7.0.0
+# The full version of this license can be found here:
+# https://git.submelon.dev/kjhoerr/ao-coverage/raw/branch/trunk/LICENSE.md
+
+url="{{TARGET_URL}}"
+commit=""
+branch=""
+repo=""
+format="tarpaulin"
+report=""
+token="$COV_TOKEN"
+curl_verbosity=""
+content_type="text/html"
+extension="html"
+
+verbose_say() {
+ if [ -z "$SILENT" ] && [ "$VERBOSE" = "true" ]; then
+ echo "$1"
+ fi
+}
+
+say() {
+ if [ -z "$SILENT" ]; then
+ echo "$1"
+ fi
+}
+
+say "==========================="
+say " ao-coverage "
+say "==========================="
+say
+
+verbose_say "Gathering report information . . ."
+
+if [ "$CI" = "drone" ]; then
+ verbose_say "Drone CI discovered - using Drone report info"
+ commit="$DRONE_COMMIT"
+ branch="$DRONE_BRANCH"
+ repo="$DRONE_REPO"
+else
+ verbose_say "Using environment variables for report info"
+ commit="$VCS_COMMIT"
+ branch="$VCS_BRANCH"
+ repo="$VCS_REPO"
+fi
+
+verbose_say "Using commit #: $commit"
+verbose_say "Using branch: $branch"
+verbose_say "Using repo: $repo"
+verbose_say
+
+if [ "$format" = "tarpaulin" ]; then
+ report="${REPORT_FILE:-tarpaulin-report.html}"
+elif [ "$format" = "cobertura" ]; then
+ report="${REPORT_FILE:-cobertura.xml}"
+ content_type="application/xml"
+ extension="xml"
+fi
+
+if [ ! -f "$report" ]; then
+ say "Report file could not be found."
+ exit 1
+fi
+
+if [ "$VERBOSE" != "true" ]; then
+ curl_verbosity="-s"
+fi
+
+say "Uploading $report . . ."
+
+response=$(curl -X POST --data-binary "@$report" \
+ -H "Content-Type: $content_type" \
+ $curl_verbosity \
+ "$url/v1/$repo/$branch/$commit.$extension?token=$token&format=$format")
+
+if [ -n "$response" ]; then
+ say "Error uploading report: $response"
+ exit 1
+else
+ say "Successfully uploaded report!"
+ say
+ say "View uploaded report at: $url/v1/$repo/$branch/$commit.$extension"
+ say "View coverage badge at: $url/v1/$repo/$branch/$commit.svg"
+ say
+ say "Shorthand links are also available, as the latest commit of this branch."
+ say "View latest report for branch $branch: $url/v1/$repo/$branch.$extension"
+ say "View latest badge for branch $branch: $url/v1/$repo/$branch.svg"
+fi