docmachine-cli/.drone.yml

49 lines
1.1 KiB
YAML
Raw Normal View History

2023-02-21 15:06:03 +00:00
---
kind: pipeline
type: docker
name: default
steps:
2023-03-21 21:29:05 +00:00
- name: build:binary
2023-02-21 15:06:03 +00:00
image: crystallang/crystal:1.7.1
volumes:
- name: cache
2023-02-21 15:14:25 +00:00
path: /_cache
2023-02-21 15:06:03 +00:00
commands:
- pwd
- apt-get update && apt-get install -y cmake g++
- shards install
2023-03-21 20:09:34 +00:00
- shards build --production --static
2023-03-21 20:17:03 +00:00
- strip bin/docmachine
2023-02-21 15:14:25 +00:00
- mkdir -p /_cache/bin
- cp -r bin/docmachine /_cache/bin
2023-03-21 21:29:05 +00:00
- name: publish:tag
2023-02-21 15:14:25 +00:00
image: curlimages/curl
2023-03-21 17:21:28 +00:00
environment:
2023-03-21 21:29:05 +00:00
PACKAGE_UPLOAD_URL: https://code.apps.glenux.net/api/packages/glenux/generic/docmachine-utils
PACKAGE_BASENAME: docmachine
PACKAGE_UPLOAD_TOKEN:
from_secret: PACKAGE_UPLOAD_TOKEN
2023-03-21 17:26:05 +00:00
when:
ref:
include:
- refs/tags/**
2023-02-21 15:14:25 +00:00
volumes:
- name: cache
path: /_cache
commands:
2023-02-21 15:18:36 +00:00
- env |grep DRONE
2023-02-21 15:14:25 +00:00
- |
2023-03-21 21:29:05 +00:00
curl -H "Authorization: token $PACKAGE_UPLOAD_TOKEN" \
2023-02-21 15:14:25 +00:00
--upload-file /_cache/bin/docmachine \
2023-03-21 21:29:05 +00:00
$PACKAGE_UPLOAD_URL/$DRONE_TAG/$PACKAGE_BASENAME
2023-02-21 15:14:25 +00:00
# FIXME: handle multi-arch
# FIXME: publish only on tags
2023-02-21 15:06:03 +00:00
volumes:
- name: cache
temp: {}
#