33 lines
838 B
Bash
33 lines
838 B
Bash
![]() |
#!/bin/bash
|
||
|
|
||
|
set -eux
|
||
|
|
||
|
EVENT_DATA=$(cat $GITHUB_EVENT_PATH)
|
||
|
echo $EVENT_DATA | jq .
|
||
|
UPLOAD_URL=$(echo $EVENT_DATA | jq -r .release.upload_url)
|
||
|
UPLOAD_URL=${UPLOAD_URL/\{?name,label\}/}
|
||
|
RELEASE_NAME=$(echo $EVENT_DATA | jq -r .release.tag_name)
|
||
|
PROJECT_NAME=$(basename $GITHUB_REPOSITORY)
|
||
|
NAME="${NAME:-${PROJECT_NAME}_${RELEASE_NAME}}_${GOOS}_${GOARCH}"
|
||
|
|
||
|
go build .
|
||
|
|
||
|
ARCHIVE=tmp.tar.gz
|
||
|
FILE_LIST=goc
|
||
|
tar cvfz $ARCHIVE ${FILE_LIST}
|
||
|
|
||
|
CHECKSUM=$(md5sum ${ARCHIVE} | cut -d ' ' -f 1)
|
||
|
|
||
|
curl \
|
||
|
-X POST \
|
||
|
--data-binary @${ARCHIVE} \
|
||
|
-H 'Content-Type: application/octet-stream' \
|
||
|
-H "Authorization: Bearer ${GITHUB_TOKEN}" \
|
||
|
"${UPLOAD_URL}?name=${NAME}.${ARCHIVE/tmp./}"
|
||
|
|
||
|
curl \
|
||
|
-X POST \
|
||
|
--data $CHECKSUM \
|
||
|
-H 'Content-Type: text/plain' \
|
||
|
-H "Authorization: Bearer ${GITHUB_TOKEN}" \
|
||
|
"${UPLOAD_URL}?name=${NAME}_checksum.txt"
|