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: {}
|
|
|
|
#
|