Skip to main content

ic_testkit/artifacts/
mod.rs

1//! Host-side artifact discovery, freshness, and Wasm build helpers.
2//!
3//! These functions keep integration-test artifacts in caller-selected target
4//! directories and contain no application-specific package or profile policy.
5
6mod cache_fs;
7mod digest;
8mod icp;
9mod transaction;
10mod wasm;
11mod wasm_cache;
12mod workspace;
13
14#[cfg(test)]
15mod test_support;
16
17mod tool;
18
19pub use cache_fs::{ArtifactCacheMaintenance, ArtifactCachePrunePolicy, ArtifactCachePruneReport};
20pub use digest::InputDigest;
21pub use icp::{
22    WatchedInputSnapshot, icp_artifact_ready_for_build, icp_artifact_ready_with_snapshot,
23};
24pub use tool::resolve_executable;
25pub use transaction::{
26    ArtifactBuildTransaction, ArtifactCacheArtifact, ArtifactCacheError, ArtifactCacheOutcome,
27    ArtifactCachePreparation, ArtifactCacheRecord, ArtifactCacheSpec, ArtifactCacheTimings,
28    ArtifactOutputValidation, prepare_artifact_cache, prune_artifact_cache,
29};
30pub use wasm::{build_wasm_canisters, read_wasm, wasm_artifacts_ready, wasm_path};
31pub use wasm_cache::{
32    CargoBuildInput, ResolvedCargoBuildInputs, WasmBuildCacheMaintenance, WasmBuildCacheMode,
33    WasmBuildCachePrunePolicy, WasmBuildCachePruneReport, WasmBuildError, WasmBuildOutcome,
34    WasmBuildPhase, WasmBuildRecord, WasmBuildSpec, WasmBuildTimings, WasmInputResolutionTimings,
35    build_wasm_canisters_cached, prune_wasm_build_cache, resolve_cargo_build_inputs,
36};
37pub use workspace::{test_target_dir, workspace_root_for};