From 307f480f7bfb9ad6466438c746a9ef5984a93518 Mon Sep 17 00:00:00 2001 From: Nicolai Ort Date: Wed, 10 May 2023 18:57:30 +0200 Subject: [PATCH] Added script errors --- plugin.sh | 86 +++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 55 insertions(+), 31 deletions(-) diff --git a/plugin.sh b/plugin.sh index 13d538e..68c0f13 100644 --- a/plugin.sh +++ b/plugin.sh @@ -1,42 +1,66 @@ #!/busybox/sh set -euo pipefail -git fetch +# git fetch CURRENTTAG=$(git tag --sort=-taggerdate | head -n 1) PREVIOUSTAG=$(git tag --sort=-taggerdate | head -n 2 | tail -n 1) ALLCHANGES=$(npx -y @philippdormann/changelogen@latest --from $PREVIOUSTAG --to $CURRENTTAG --no-output | sed 's/"/\\"/g' | tail -n +6) FORMATTED_CHANGES=$(echo "# $CURRENTTAG \n $ALLCHANGES" | pandoc -f markdown -t html | sed 's/"/'"'"'/g' | xargs echo -n) -if [[ -n "${PLUGIN_GITEA_DOMAIN:-}" ]]; then - curl --request POST \ - --url "https://$PLUGIN_GITEA_DOMAIN/api/v1/repos/$PLUGIN_REPO/releases" \ - --header "Content-Type: application/json" \ - --header "Authorization: token $APIKEY" \ - --data "{ - \"name\": \"$DRONE_TAG\", - \"body\": \"$ALLCHANGES\", - \"draft\": false, - \"tag_name\": \"$DRONE_TAG\" - }" +echo $PLUGIN_GITEA_DOMAIN; + +if [[ "${PLUGIN_GITEA_DOMAIN:-}" == "true" ]]; then + if [[ -n "${PLUGIN_GITEA_APIKEY:-}"]] + echo "No api key provided"; + exit 1; + fi + if [[ -n "${PLUGIN_REPO:-}"]] + echo "No repo provided"; + exit 2; + fi + + curl --request POST \ + --url "https://$PLUGIN_GITEA_DOMAIN/api/v1/repos/$PLUGIN_REPO/releases" \ + --header "Content-Type: application/json" \ + --header "Authorization: token $PLUGIN_GITEA_APIKEY" \ + --data "{ + \"name\": \"$CURRENTTAG\", + \"body\": \"$ALLCHANGES\", + \"draft\": false, + \"tag_name\": \"$CURRENTTAG\" + }" fi -if [[ -n "${PLUGIN_MATRIX_SERVER:-}" ]]; then - MATRIX_LOGIN=$(curl --request POST \ - --url "https://$PLUGIN_MATRIX_SERVER/_matrix/client/r0/login" \ - --header "Content-Type: application/json" \ - --data "{ - \"type\": \"m.login.password\", - \"user\": \"$PLUGIN_MATRIX_USER\", - \"password\": \"$PLUGIN_MATRIX_PASSWORD\" - }") - MATRIX_TOKEN=$(echo $MATRIX_LOGIN | jq .access_token | sed 's/"/\/g' ) - curl --request POST \ - --url "https://$PLUGIN_MATRIX_SERVER/_matrix/client/r0/rooms/!YHENYmWYHrPltyHVeb:matrix.org/send/m.room.message?access_token=$MATRIX_TOKEN" \ - --header "Content-Type: application/json" \ - --data "{ - \"msgtype\": \"m.text\", - \"body\": \"$(echo "# $CURRENTTAG \n $ALLCHANGES" | xargs echo -n)\", - \"format\": \"org.matrix.custom.html\", - \"formatted_body\": \"$FORMATTED_CHANGES\" - }" +if [[ "${PLUGIN_MATRIX_SERVER:-}" == "true" ]]; then + if [[ -n "${PLUGIN_MATRIX_USER:-}"]] + echo "No matrix username provided"; + exit 3; + fi + if [[ -n "${PLUGIN_MATRIX_PASSWORD:-}"]] + echo "No matrix password provided"; + exit 4; + fi + if [[ -n "${PLUGIN_MATRIX_ROOM:-}"]] + echo "No matrix room id provided"; + exit 4; + fi + + MATRIX_LOGIN=$(curl --request POST \ + --url "https://$PLUGIN_MATRIX_SERVER/_matrix/client/r0/login" \ + --header "Content-Type: application/json" \ + --data "{ + \"type\": \"m.login.password\", + \"user\": \"$PLUGIN_MATRIX_USER\", + \"password\": \"$PLUGIN_MATRIX_PASSWORD\" + }") + MATRIX_TOKEN=$(echo $MATRIX_LOGIN | jq .access_token | sed 's/"/\/g' ) + curl --request POST \ + --url "https://$PLUGIN_MATRIX_SERVER/_matrix/client/r0/rooms/$PLUGIN_MATRIX_ROOM/send/m.room.message?access_token=$MATRIX_TOKEN" \ + --header "Content-Type: application/json" \ + --data "{ + \"msgtype\": \"m.text\", + \"body\": \"$(echo "# $CURRENTTAG \n $ALLCHANGES" | xargs echo -n)\", + \"format\": \"org.matrix.custom.html\", + \"formatted_body\": \"$FORMATTED_CHANGES\" + }" fi \ No newline at end of file