docmachine-cli/.drone.yml
Glenn Y. Rolland 138b339e12
All checks were successful
continuous-integration/drone/push Build is passing
ci: use help instead of version
2024-05-31 16:48:09 +02:00

57 lines
1.4 KiB
YAML

---
kind: pipeline
type: docker
name: default
steps:
- name: build:binary
image: crystallang/crystal:1.11.0-alpine
environment:
PACKAGE_BASENAME: docmachine_linux_amd64
volumes:
- name: cache
path: /_cache
commands:
- pwd
# - |
# apt-get update && \
# apt-get install -y \
# cmake g++ \
# libevent-dev libpcre3-dev \
# libyaml-dev liblzma-dev
- apk add --update readline-static readline-dev ncurses-static ncurses-dev
- shards install
- shards build --production --static
- strip bin/docmachine
- ./bin/docmachine --help
- mkdir -p /_cache/bin
- cp -r bin/docmachine /_cache/bin/$PACKAGE_BASENAME
- name: publish:tag
image: curlimages/curl
environment:
PACKAGE_UPLOAD_URL: https://code.apps.glenux.net/api/packages/glenux/generic/docmachine-utils
PACKAGE_BASENAME: docmachine_linux_amd64
PACKAGE_UPLOAD_TOKEN:
from_secret: PACKAGE_UPLOAD_TOKEN
when:
ref:
include:
- refs/tags/**
volumes:
- name: cache
path: /_cache
commands:
- env |grep DRONE
- |
curl -H "Authorization: token $PACKAGE_UPLOAD_TOKEN" \
--upload-file /_cache/bin/docmachine \
$PACKAGE_UPLOAD_URL/$DRONE_TAG/$PACKAGE_BASENAME
# FIXME: handle multi-arch
# FIXME: publish only on tags
volumes:
- name: cache
temp: {}
#