-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy path.drone.yml
119 lines (111 loc) · 3.1 KB
/
.drone.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
---
kind: pipeline
name: epp-client
platform:
os: linux
arch: amd64
steps:
- name: check
image: rust:1.59
volumes:
- name: target
path: /tmp/cargo-target
- name: cache
path: /tmp/cargo
commands:
- export CACHE_DIR=$(echo -n "$DRONE_COMMIT_LINK" | md5sum | cut -f1 -d" ")
- export CARGO_HOME=/tmp/cargo/$CACHE_DIR
- export CARGO_TARGET_DIR=/tmp/cargo-target/$CACHE_DIR
- mkdir -p $CARGO_HOME $CARGO_TARGET_DIR
- cargo check --all-targets
- name: fmt
image: rust:1.59
volumes:
- name: target
path: /tmp/cargo-target
- name: cache
path: /tmp/cargo
commands:
- export CACHE_DIR=$(echo -n "$DRONE_COMMIT_LINK" | md5sum | cut -f1 -d" ")
- export CARGO_HOME=/tmp/cargo/$CACHE_DIR
- export CARGO_TARGET_DIR=/tmp/cargo-target/$CACHE_DIR
- mkdir -p $CARGO_HOME $CARGO_TARGET_DIR
- rustup component add rustfmt
- cargo fmt --all -- --check
- name: clippy
image: rust:1.59
volumes:
- name: target
path: /tmp/cargo-target
- name: cache
path: /tmp/cargo
commands:
- export CACHE_DIR=$(echo -n "$DRONE_COMMIT_LINK" | md5sum | cut -f1 -d" ")
- export CARGO_HOME=/tmp/cargo/$CACHE_DIR
- export CARGO_TARGET_DIR=/tmp/cargo-target/$CACHE_DIR
- mkdir -p $CARGO_HOME $CARGO_TARGET_DIR
- rustup component add clippy
- cargo clippy --workspace --all-targets -- -D warnings
- name: test
image: rust:1.59
volumes:
- name: target
path: /tmp/cargo-target
- name: cache
path: /tmp/cargo
commands:
- export CACHE_DIR=$(echo -n "$DRONE_COMMIT_LINK" | md5sum | cut -f1 -d" ")
- export CARGO_HOME=/tmp/cargo/$CACHE_DIR
- export CARGO_TARGET_DIR=/tmp/cargo-target/$CACHE_DIR
- mkdir -p $CARGO_HOME $CARGO_TARGET_DIR
- cargo test -- --nocapture
- name: crates.io
image: rust:1.59
volumes:
- name: target
path: /tmp/cargo-target
- name: cache
path: /tmp/cargo
environment:
CARGO_TOKEN:
from_secret: cargo_token
commands:
- export CACHE_DIR=$(echo -n "$DRONE_COMMIT_LINK" | md5sum | cut -f1 -d" ")
- export CARGO_HOME=/tmp/cargo/$CACHE_DIR
- export CARGO_TARGET_DIR=/tmp/cargo-target/$CACHE_DIR
- mkdir -p $CARGO_HOME $CARGO_TARGET_DIR
- cargo publish --token $CARGO_TOKEN
when:
branch:
- 0.2
- 0.3
- 0.4
event: push
- name: notify
image: drillster/drone-email
environment:
PLUGIN_HOST:
from_secret: mail_host
PLUGIN_FROM:
from_secret: mail_sender
PLUGIN_FROM_NAME:
from_secret: mail_sender_name
PLUGIN_PORT:
from_secret: mail_port
PLUGIN_USERNAME:
from_secret: mail_user
PLUGIN_PASSWORD:
from_secret: mail_password
PLUGIN_RECIPIENTS:
from_secret: mail_recipients
when:
status:
- failure
volumes:
- name: target
host:
path: /var/drone/cache/epp-client-target
- name: cache
host:
path: /var/drone/cache/epp-client-cache
...