#!/bin/bash function create-archive(){ mkdir release envsubst < module.json.template > ./module.json cp ./module.json ./src/module.json zip -r -9 ./release/module.zip ./src/* } function create-release(){ if [[ -z "${TAG}" ]]; then echo "TAG key is not set" exit fi if [[ $1 == 'latest' ]]; then echo "Deleting old latest release" RELEASE_LIST=$(curl -X GET -Url https://gitea.kdiva.ru/api/v1/repos/modules/sc-items/releases) LATEST_RELEASE_ID=$(jq -r '.[] | select(.tag_name=="latest") | .id' <<< $RELEASE_LIST) delete-release $LATEST_RELEASE_ID delete-tag RELEASE_TAG="$1" else RELEASE_TAG="$1-$DRONE_BRANCH" fi COMMIT_SHA=$(git rev-parse HEAD) RESPONSE=$(curl \ -X 'POST' \ -Url "https://gitea.kdiva.ru/api/v1/repos/${DRONE_REPO}/releases" \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer 10e4af53e553aacb905766512e36487492d61a66' \ -d '{ "draft": false, "name": "'"release $RELEASE_TAG"'", "prerelease": false, "tag_name": "'"$RELEASE_TAG"'", "target_commitish": "'"$COMMIT_SHA"'" }') } function upload-attachments(){ RELEASE_ID=$(jq -r '.id' <<< $RESPONSE) echo "RELEASE_ID is ${RELEASE_ID}" curl \ -vv \ -X 'POST' \ -Url "https://gitea.kdiva.ru/api/v1/repos/${DRONE_REPO}/releases/${RELEASE_ID}/assets" \ -H 'accept: application/json' \ -H 'Content-Type: multipart/form-data' \ -H 'Authorization: Bearer 10e4af53e553aacb905766512e36487492d61a66' \ -F "attachment=@$1" } function delete-release(){ curl \ -X 'DELETE' \ -Url "https://gitea.kdiva.ru/api/v1/repos/${DRONE_REPO}/releases/${1}" \ -H 'Authorization: Bearer 10e4af53e553aacb905766512e36487492d61a66' } function delete-tag(){ curl \ -X 'DELETE' \ -Url "https://gitea.kdiva.ru/api/v1/repos/${DRONE_REPO}/tags/latest" \ -H 'Authorization: Bearer 10e4af53e553aacb905766512e36487492d61a66' } function vars() { echo "DRONE_SEMVER $DRONE_SEMVER" echo "DRONE_REPO_LINK $DRONE_REPO_LINK" echo "DRONE_TAG $DRONE_TAG" echo "KEY $KEY" echo "OTHER_KEY $OTHER_KEY" RELEASES=$(curl -X GET -Url https://gitea.kdiva.ru/api/v1/repos/${DRONE_REPO}/releases) RELEASES_IDS=$(jq -r '.[].id' <<< $RELEASES) if [[ -z "${RELEASES_IDS}" ]]; then echo "RELEASES_IDS id NULL" else echo "RELEASES_IDS id ${RELEASES_IDS}" fi }