diff --git a/.drone.yml b/.drone.yml index dcf59e2..e58ef80 100644 --- a/.drone.yml +++ b/.drone.yml @@ -61,54 +61,14 @@ steps: path: /artifacts - name: upload-artifacts - image: alpine/curl:latest + image: akkuman/gitea-release-action@v1 depends_on: [arch-build, debian-build, fedora-build] - commands: - - apk add --no-cache curl jq - - | - if [ -z "$GITEA_TOKEN" ] || [ -z "$GITEA_SERVER" ]; then - echo "Error: GITEA_TOKEN or GITEA_SERVER not set" - exit 1 - fi + with: + files: |- + /artifacts/debian-setup + /artifacts/fedora-setup + /artifacts/arch-setup - REPO_PATH="${DRONE_REPO:-akshun/python-script}" - - if [ -n "${DRONE_TAG}" ]; then - echo "Creating release for tag ${DRONE_TAG}" - response=$(curl -s -X POST \ - -H "Authorization: token $GITEA_TOKEN" \ - -H "Content-Type: application/json" \ - -d '{"tag_name": "'"${DRONE_TAG}"'", "name": "'"${DRONE_TAG}"'", "body": "Automated release"}' \ - "$GITEA_SERVER/api/v1/repos/$REPO_PATH/releases") - release_id=$(echo "$response" | jq -r '.id') - else - echo "Using latest release" - response=$(curl -s -H "Authorization: token $GITEA_TOKEN" \ - "$GITEA_SERVER/api/v1/repos/$REPO_PATH/releases/latest" || echo "") - - if [ -z "$response" ] || [ "$(echo "$response" | jq -r '.id')" = "null" ]; then - echo "Creating new draft release" - response=$(curl -s -X POST \ - -H "Authorization: token $GITEA_TOKEN" \ - -H "Content-Type: application/json" \ - -d '{"tag_name": "continuous", "name": "Continuous Build", "draft": true, "body": "Automated continuous build"}' \ - "$GITEA_SERVER/api/v1/repos/$REPO_PATH/releases") - fi - - release_id=$(echo "$response" | jq -r '.id') - fi - - for artifact in /artifacts/*-setup; do - if [ -f "$artifact" ]; then - filename=$(basename "$artifact") - echo "Uploading $filename" - curl -X POST \ - -H "Authorization: token $GITEA_TOKEN" \ - -H "Content-Type: multipart/form-data" \ - -F "attachment=@$artifact" \ - "$GITEA_SERVER/api/v1/repos/$REPO_PATH/releases/$release_id/assets?name=$filename" - fi - done environment: GITEA_TOKEN: from_secret: gitea-token