-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathroxfile.yml
90 lines (73 loc) · 2.3 KB
/
roxfile.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
ci:
# The CI provider to use. Currently only GitHub Actions is supported.
provider: github_actions
repo_owner: ThomasLaPiana
repo_name: rox
token_env_var: GITHUB_TOKEN
# Add documentation to your Rox CLI
docs:
- name: "release"
description: "Documentation around cutting releases"
kind: markdown
path: "docs/release.md"
- name: "markdown"
description: "Development-related documentation"
# Markdown files are rendered in a special viewer within the terminal
kind: markdown
path: "docs/dev_docs.md"
- name: "readme"
description: "Development-related documentation"
kind: markdown
path: "README.md"
- name: "text"
description: "Development-related documentation"
# Text files are printed directly to stdout
kind: text
path: "docs/dev_docs.txt"
- name: "url"
description: "Development-related documentation"
# URLs are opened in the default browser
kind: url
path: "http://google.com"
templates:
- name: docker_build
command: "docker build {path} -t rox:{image_tag}"
symbols: ["{path}", "{image_tag}"]
pipelines:
- name: build-release-all
description: "Build a release artifact binary and Docker image"
stages:
- ["build-release-binary", "build-release-image"]
- name: ci
description: "Run all CI-related tasks"
stages:
- ["fmt", "clippy-ci"]
- ["test"]
tasks:
- name: "wt"
command: "cargo watch -c -x test"
description: "Rerun tests on every file change"
- name: "wc"
command: "cargo watch -c -x check"
description: "Rerun checks on every file change"
- name: "clippy-ci"
description: "Run Clippy with a non-zero exit if warnings are found."
command: "cargo clippy -- -D warnings"
- name: fmt
command: "cargo fmt"
- name: test
command: "cargo nextest run"
description: "Run tests"
- name: build-binary
command: "cargo build"
description: "Build the dev binary"
- name: run
description: "Runs the 'help' command as a basic test"
command: "cargo run help"
# Release-related
- name: build-release-binary
description: "Build a release binary with cargo."
command: "cargo build --release"
- name: build-release-image
description: "Build a production image for Docker."
command: "docker build tests/files/ -t rox:latest"