summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author杨威 <[email protected]>2019-05-23 11:39:46 +0800
committer杨威 <[email protected]>2019-05-23 11:39:46 +0800
commit2769701f65082d40a4f56366edb8e609032986d2 (patch)
treefbb70bf7bb699f54211be1d784e4ed446e9dc363
parent8a2318c1c0c902b0b83ec47edbf724ad73c1d3cd (diff)
Update autorelease.sh
-rw-r--r--autorelease.sh33
1 files changed, 33 insertions, 0 deletions
diff --git a/autorelease.sh b/autorelease.sh
new file mode 100644
index 0000000..f8ee53f
--- /dev/null
+++ b/autorelease.sh
@@ -0,0 +1,33 @@
+#!/bin/sh
+if [ $# != 8 ] ; then
+ echo "USAGE: ./autorelease.sh [API_V4_URL] [PROJECT_URL]
+ [PROJECT_ID] [TOKEN]
+ [COMMIT_TAG] [JOB] [COMMIT_MESSAGE] [PROJECT_NAME]"
+exit 1;
+fi
+
+CI_API_V4_URL=$1
+CI_PROJECT_URL=$2
+CI_PROJECT_ID=$3
+CI_TOKEN=$4
+CI_COMMIT_TAG=$5
+ARTIFACTS_JOB=$6
+CI_COMMIT_MESSAGE=$7
+CI_PROJECT_NAME=$8
+
+res=`echo -e "curl --header \"PRIVATE-TOKEN: $CI_TOKEN\" $CI_API_V4_URL/projects/$CI_PROJECT_ID/releases/$CI_COMMIT_TAG -o /dev/null -s -w %{http_code}"| /bin/bash`
+
+if [[ $res == "200" ]]; then
+ eval $(echo -e "curl --request POST --header \"PRIVATE-TOKEN: $CI_TOKEN\" \
+ --data name=\"$CI_PROJECT_NAME-$CI_COMMIT_TAG-artifacts.zip\" \
+ --data url=\"$CI_PROJECT_URL/-/jobs/artifacts/$CI_COMMIT_TAG/download?job=$ARTIFACTS_JOB\"\
+ $CI_API_V4_URL/projects/$CI_PROJECT_ID/releases/$CI_COMMIT_TAG/assets/links")
+else
+ eval $(echo -e "curl --header 'Content-Type: application/json' --header \
+ \"PRIVATE-TOKEN: $CI_TOKEN\" --data '{ \"name\": \"$CI_COMMIT_TAG\", \
+ \"tag_name\": \"$CI_COMMIT_TAG\", \"description\": \"$CI_COMMIT_MESSAGE\",\
+ \"assets\": { \"links\": [{ \"name\": \
+ \"CI_$PROJECT_NAME-$CI_COMMIT_TAG-artifacts.zip\", \"url\": \
+ \"$CI_PROJECT_URL/-/jobs/artifacts/$CI_COMMIT_TAG/download?job=$ARTIFACTS_JOB\"\
+ }] } }' --request POST $CI_API_V4_URL/projects/$CI_PROJECT_ID/releases/")
+fi \ No newline at end of file