forked from awslabs/tough
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
36 lines (31 loc) · 1.09 KB
/
Makefile
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
# Use directory-local cargo root to install version-specific executables into.
export CARGO_HOME = $(shell pwd)/.cargo
# the series of builds, tests and checks that runs for pull requests. requires docker.
.PHONY: ci
ci: check-licenses build integ
# installs cargo-deny
.PHONY: cargo-deny
cargo-deny:
cargo install --version 0.9.1 cargo-deny --locked
# checks each crate, and evaluates licenses. requires cargo-deny.
.PHONY: check-licenses
check-licenses: cargo-deny
cargo deny --all-features check --disable-fetch licenses bans sources
# builds each crate, runs unit tests at the workspace level, and runs linting tools.
.PHONY: build
build:
set +e
cargo fmt -- --check
cargo clippy --locked -- -D warnings
cargo build --locked -p olpc-cjson
cargo build --locked -p tough
cargo build --locked -p tough-ssm
cargo build --locked -p tough-kms
cargo build --locked -p tuftool
cargo test --locked
# checks tough tests with and without the http feature. http testing requires docker.
.PHONY: integ
integ:
set +e
cd tough && cargo test --features '' --locked
cd tough && cargo test --all-features --locked