-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathjustfile
More file actions
123 lines (95 loc) · 2.61 KB
/
justfile
File metadata and controls
123 lines (95 loc) · 2.61 KB
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
120
121
122
123
# conflow justfile
# Run `just` to see available recipes
# Default recipe - show help
default:
@just --list
# Build the project
build:
cargo build
# Build in release mode
build-release:
cargo build --release
# Run tests
test:
cargo test
# Run tests with output
test-verbose:
cargo test -- --nocapture
# Run clippy lints
lint:
cargo clippy -- -D warnings
# Format code
fmt:
cargo fmt
# Check formatting
fmt-check:
cargo fmt -- --check
# Run all checks (lint, fmt, test)
check: fmt-check lint test
# Install locally
install:
cargo install --path .
# Clean build artifacts
clean:
cargo clean
# Run conflow with arguments
run *ARGS:
cargo run -- {{ARGS}}
# Run conflow init
init *ARGS:
cargo run -- init {{ARGS}}
# Run conflow analyze
analyze *ARGS:
cargo run -- analyze {{ARGS}}
# Run conflow validate
validate *ARGS:
cargo run -- validate {{ARGS}}
# Generate documentation
doc:
cargo doc --no-deps --open
# Watch for changes and run tests
watch-test:
cargo watch -x test
# Watch for changes and run
watch-run *ARGS:
cargo watch -x "run -- {{ARGS}}"
# Run example: simple validation
example-simple:
cd examples/simple && cargo run --manifest-path ../../Cargo.toml -- run
# Run example: nickel generation
example-generate:
cd examples/generate && cargo run --manifest-path ../../Cargo.toml -- run
# Run example: full pipeline
example-full:
cd examples/full-pipeline && cargo run --manifest-path ../../Cargo.toml -- run
# Run example: multi-environment
example-multi-env:
cd examples/multi-env && cargo run --manifest-path ../../Cargo.toml -- run
# Validate all examples
validate-examples:
@echo "Validating simple example..."
cd examples/simple && cargo run --manifest-path ../../Cargo.toml -- validate
@echo "Validating generate example..."
cd examples/generate && cargo run --manifest-path ../../Cargo.toml -- validate
@echo "Validating full-pipeline example..."
cd examples/full-pipeline && cargo run --manifest-path ../../Cargo.toml -- validate
@echo "Validating multi-env example..."
cd examples/multi-env && cargo run --manifest-path ../../Cargo.toml -- validate
# Create a new release
release VERSION:
@echo "Creating release {{VERSION}}..."
git tag -a v{{VERSION}} -m "Release {{VERSION}}"
cargo publish --dry-run
# Show dependency tree
deps:
cargo tree
# Update dependencies
update:
cargo update
# Audit dependencies for vulnerabilities
audit:
cargo audit
# [AUTO-GENERATED] Multi-arch / RISC-V target
build-riscv:
@echo "Building for RISC-V..."
cross build --target riscv64gc-unknown-linux-gnu