Repository navigation
Expand file tree
/
Copy pathjustfile
More file actions
127 lines (94 loc) · 4.6 KB
/
Copy pathjustfile
File metadata and controls
127 lines (94 loc) · 4.6 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
124
125
126
127
set shell := ["bash", "-cu"]
# Bash (including Git Bash on Windows) needs forward slashes in paths.
root_native := justfile_directory()
root := replace(justfile_directory(), "\\", "/")
default:
@just ci
build:
cd "{{root}}/python" && pip install -e ".[dev]"
cd "{{root}}/rust" && cargo build
cd "{{root}}/typescript" && npm install && npm run build
validate-examples:
cd "{{root}}/python" && pcs examples check
labtrust-check:
cd "{{root}}/python" && pytest -q tests/test_labtrust_conformance.py
generate-labtrust-release-fixtures:
cd "{{root}}/python" && python -m pcs_core.release_fixtures --write
validate-labtrust-release-fixtures:
cd "{{root}}/python" && pcs validate-release-chain ../examples/labtrust-release/
test-release-chain:
cd "{{root}}/python" && pytest -q tests/test_release_chain.py tests/test_release_fixtures.py
pcs-v01-clean-chain:
pwsh -File "{{root}}/scripts/run-pcs-v01-clean-chain.ps1"
python-test:
cd "{{root}}/python" && pytest -q
rust-test:
cd "{{root}}/rust" && cargo test
ts-test:
cd "{{root}}/typescript" && npm test
hash-vectors-write:
cd "{{root}}/python" && python -m pcs_core.hash_vectors --write
hash-vectors-verify:
cd "{{root}}/python" && python -m pcs_core.hash_vectors --verify
shared-hash-vectors-write:
cd "{{root}}/python" && pcs shared-hash-vectors write
shared-hash-vectors-verify:
cd "{{root}}/python" && pcs shared-hash-vectors verify
[unix]
materialize-labtrust-protocol:
bash "{{root}}/scripts/materialize-labtrust-protocol.sh"
[windows]
materialize-labtrust-protocol:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File "{{root}}/scripts/materialize-labtrust-protocol.ps1"
[unix]
materialize-tool-use-protocol:
bash "{{root}}/scripts/materialize-tool-use-protocol.sh"
[windows]
materialize-tool-use-protocol:
cd "{{root}}/python" && python scripts/materialize_tool_use_fixtures.py
[unix]
materialize-protocol:
bash "{{root}}/scripts/materialize-protocol.sh"
[windows]
materialize-protocol:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File "{{root}}/scripts/materialize-protocol.ps1"
pcs-schema-diff vendor_dir="schemas":
bash "{{root}}/scripts/pcs-schema-diff.sh" "{{root}}/{{vendor_dir}}"
protocol-conformance:
cd "{{root}}/python" && pytest -q tests/test_protocol_conformance.py
cd "{{root}}/python" && pcs conformance run --suite all
multidomain-conformance:
cd "{{root}}/python" && pcs conformance run --suite multidomain
computation-conformance:
cd "{{root}}/python" && pcs conformance run --suite computation
materialize-benchmark-ingest:
cd "{{root}}/python" && python scripts/materialize_benchmark_producer_examples.py
validate-benchmark-ingest:
cd "{{root}}/python" && python ../scripts/validate_benchmark_ingest_examples.py --release-grade
benchmark-ingest-conformance:
cd "{{root}}/python" && pcs conformance run --suite benchmark-ingest
cd "{{root}}/python" && pcs benchmark validate-ingest --release-grade
validate-computation-release-fixtures:
cd "{{root}}/python" && pcs validate-release-chain ../examples/computation-release/
# Commit without running Git hooks (avoids Cursor Co-authored-by trailers).
[unix]
commit MESSAGE:
bash "{{root}}/scripts/pcs-commit.sh" -m "{{MESSAGE}}"
[windows]
commit MESSAGE:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File "{{root}}/scripts/pcs-commit.ps1" -m "{{MESSAGE}}"
# Full release gate (same checks as scripts/run-release-verify.sh).
release-verify:
bash "{{root}}/scripts/run-release-verify.sh"
ci: build python-test rust-test ts-test validate-examples labtrust-check validate-labtrust-release-fixtures validate-computation-release-fixtures protocol-conformance computation-conformance multidomain-conformance benchmark-ingest-conformance hash-vectors-verify shared-hash-vectors-verify pcs-schema-diff
cd "{{root}}/python" && pcs schema check
cd "{{root}}/python" && pcs registry validate ../examples/artifact_registry.valid.json
cd "{{root}}/python" && pcs registry audit
cd "{{root}}/python" && pcs validate ../examples/labtrust-release/release_manifest.v0.json
cd "{{root}}/python" && pcs validate-release-chain ../examples/labtrust-release/ --out ../examples/labtrust-release/.ci_validation_result.json
cd "{{root}}/python" && pcs validate ../examples/labtrust-release/.ci_validation_result.json
cd "{{root}}/rust" && cargo test shared_hash_vectors
cd "{{root}}/python" && ruff check pcs_core tests
cd "{{root}}/python" && ruff format --check pcs_core tests
cd "{{root}}/rust" && cargo fmt --check
cd "{{root}}/rust" && cargo clippy --all-targets -- -D warnings