Compare commits
7 Commits
c949c75f28
...
v3
| Author | SHA1 | Date | |
|---|---|---|---|
| 68add3b228 | |||
| 8ec6c7652a | |||
| fc542ba388 | |||
| b32f59b708 | |||
| c4bd93992d | |||
| 22c9217059 | |||
| 77450f38f1 |
65
.drone.yml
65
.drone.yml
@@ -10,7 +10,7 @@ steps:
|
||||
- name: clone-repo
|
||||
image: alpine/git:latest
|
||||
commands:
|
||||
- git clone https://gitea.akshun-lab.uk/akshun/python-setup.git /artifacts
|
||||
- git clone https://gitea.akshun-lab.cc/aggarwalakshun/python-setup.git /artifacts
|
||||
volumes:
|
||||
- name: artifacts
|
||||
path: /artifacts
|
||||
@@ -61,59 +61,32 @@ steps:
|
||||
path: /artifacts
|
||||
|
||||
- name: upload-artifacts
|
||||
image: alpine/curl:latest
|
||||
image: alpine:latest
|
||||
depends_on: [arch-build, debian-build, fedora-build]
|
||||
commands:
|
||||
- apk add --no-cache curl jq
|
||||
- apk add jq curl
|
||||
- |
|
||||
if [ -z "$GITEA_TOKEN" ] || [ -z "$GITEA_SERVER" ]; then
|
||||
echo "Error: GITEA_TOKEN or GITEA_SERVER not set"
|
||||
exit 1
|
||||
fi
|
||||
# Get the latest release information
|
||||
RELEASE_INFO=$(curl -s "https://gitea.akshun-lab.cc/api/v1/repos/aggarwalakshun/python-setup/releases/latest")
|
||||
LATEST_TAG=$(echo "$RELEASE_INFO" | jq -r '.tag_name')
|
||||
RELEASE_ID=$(echo "$RELEASE_INFO" | jq -r '.id')
|
||||
|
||||
echo "Latest tag: $LATEST_TAG"
|
||||
echo "Release ID: $RELEASE_ID"
|
||||
|
||||
REPO_PATH="${DRONE_REPO:-akshun/python-script}"
|
||||
|
||||
if [ -n "${DRONE_TAG}" ]; then
|
||||
echo "Creating release for tag ${DRONE_TAG}"
|
||||
response=$(curl -s -X POST \
|
||||
for file in /artifacts/*-setup; do
|
||||
FILENAME=$(basename "$file")
|
||||
echo "Uploading $FILENAME..."
|
||||
|
||||
# Use the release ID instead of tag name in the URL
|
||||
curl -X POST "https://gitea.akshun-lab.cc/api/v1/repos/aggarwalakshun/python-setup/releases/$RELEASE_ID/assets?name=$FILENAME" \
|
||||
-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
|
||||
-H "Content-Type: application/octet-stream" \
|
||||
--data-binary @"$file"
|
||||
done
|
||||
environment:
|
||||
GITEA_TOKEN:
|
||||
from_secret: gitea-token
|
||||
GITEA_SERVER:
|
||||
from_secret: gitea-server
|
||||
from_secret: GITEA_TOKEN
|
||||
volumes:
|
||||
- name: artifacts
|
||||
path: /artifacts
|
||||
|
||||
Reference in New Issue
Block a user