1234567891011121314151617181920212223242526272829303132333435363738 |
- 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"
|