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 batch;
7mod cache_fs;
8mod digest;
9mod icp;
10mod tool;
11mod transaction;
12mod transaction_batch;
13mod wasm;
14mod wasm_batch;
15mod wasm_cache;
16mod workspace;
17
18#[cfg(test)]
19mod test_support;
20
21pub use cache_fs::{ArtifactCacheMaintenance, ArtifactCachePrunePolicy, ArtifactCachePruneReport};
22pub use digest::InputDigest;
23pub use icp::{
24    WatchedInputSnapshot, icp_artifact_ready_for_build, icp_artifact_ready_with_snapshot,
25};
26pub use tool::resolve_executable;
27pub use transaction::{
28    ArtifactBuildTransaction, ArtifactCacheArtifact, ArtifactCacheError, ArtifactCacheOutcome,
29    ArtifactCachePreparation, ArtifactCacheRecord, ArtifactCacheSpec, ArtifactCacheTimings,
30    ArtifactOutputValidation, prepare_artifact_cache, prune_artifact_cache,
31};
32pub use transaction_batch::{
33    ArtifactCacheBatchFailedEntry, ArtifactCacheBatchFailure, ArtifactCacheBatchMetrics,
34    ArtifactCacheBatchReport, build_artifact_caches_batch,
35};
36pub use wasm::{read_wasm, wasm_artifacts_ready, wasm_path};
37pub use wasm_batch::{
38    WasmBuildBatchConfig, WasmBuildBatchFailure, WasmBuildBatchMetrics,
39    WasmBuildBatchProgressEvent, WasmBuildBatchReport, build_wasm_canisters_cached_batch,
40    build_wasm_canisters_cached_batch_with_config,
41    build_wasm_canisters_cached_batch_with_config_and_progress,
42    build_wasm_canisters_cached_batch_with_progress,
43};
44pub use wasm_cache::{
45    CargoBuildInput, ResolvedCargoBuildInputs, SharedIncrementalTargetInspection,
46    SharedIncrementalTargetMaintenance, SharedIncrementalTargetMaintenanceConfig,
47    SharedIncrementalTargetMaintenanceFailureMode, SharedIncrementalTargetMaintenanceOutcome,
48    SharedIncrementalTargetPrunePolicy, WasmBuildCacheMode, WasmBuildError, WasmBuildOutcome,
49    WasmBuildOutputStream, WasmBuildPhase, WasmBuildProgressConfig, WasmBuildProgressEvent,
50    WasmBuildProgressOutcome, WasmBuildProgressPhase, WasmBuildRecord, WasmBuildSpec,
51    WasmBuildTimings, WasmInputResolutionTimings, build_wasm_canisters_cached,
52    build_wasm_canisters_cached_with_progress, inspect_shared_incremental_target,
53    maintain_shared_incremental_target, maintain_shared_incremental_target_at_most_every,
54    prune_wasm_build_cache, resolve_cargo_build_inputs,
55};
56pub use workspace::{test_target_dir, workspace_root_for};