Files
camcap/.drone.yml

39 lines
1.1 KiB
YAML

kind: pipeline
type: docker
name: build-and-release
steps:
- name: build
image: golang:1.23
environment:
CGO_ENABLED: 0
GOOS: linux
GOARCH: amd64
commands:
- go build -o camcap camcap.go
- name: publish-release
image: curlimages/curl
environment:
GOGS_TOKEN:
from_secret: gogs_key
GOGS_API: https://code.unbl.ink/api/v1
REPO: secstate/camcap
TAG: ${DRONE_TAG:=build-$(date -u +%Y%m%d%H%M%S)}
commands:
# Create release (if it doesn't exist yet)
- |
curl -s -X POST "$GOGS_API/repos/$REPO/releases" \
-H "Content-Type: application/json" \
-H "Authorization: token $GOGS_TOKEN" \
-d "{\"tag_name\": \"$TAG\", \"name\": \"$TAG\", \"draft\": false, \"prerelease\": false}" \
|| echo "Release may already exist"
# Upload artifact to release
- |
curl -s -X POST "$GOGS_API/repos/$REPO/releases/tags/$TAG/assets" \
-H "Authorization: token $GOGS_TOKEN" \
-F "attachment=@camcap" \
|| echo "Upload failed"