canic_host/release_set/
mod.rs1mod artifact;
4mod config;
5mod manifest;
6mod paths;
7
8use artifact::{build_release_set_entry, validate_release_artifact_relative_path};
9pub(crate) use config::configured_release_roles_from_config;
10pub use config::{
11 AppConfigDeclaration, AppConfigError, AppConfigIoOperation, AppConfigMutationConflict,
12 AppConfigNameField, AppConfigNameIssue, AppConfigOperation, AppConfigPackageIssue,
13 AppConfigSnapshot, AppConfigTomlOperation, AttachedAppRole, ConfiguredPoolExpectation,
14 ConfiguredRoleLifecycle, DeclaredAppRole, LOCAL_ROOT_MIN_READY_CYCLES, RenamedAppRole,
15 attach_app_role, declare_app_role, plan_attach_app_role, plan_declare_app_role,
16 plan_rename_app_role, read_app_config_identity, rename_app_role,
17};
18pub use manifest::{ReleaseSetEntry, RootReleaseSetManifest, load_root_release_set_manifest};
19pub(crate) use manifest::{
20 RootReleaseSetBuildSnapshot, RootReleaseSetBuildTarget,
21 emit_root_release_set_manifest_from_build, validate_root_release_set_manifest,
22};
23pub use paths::{
24 ArtifactRootError, WorkspaceDiscoveryError, app_sources_root, artifact_root_path, config_path,
25 display_workspace_path, icp_root, load_root_package_version, load_workspace_package_version,
26 resolve_artifact_root, root_release_set_manifest_path, workspace_manifest_path, workspace_root,
27};
28
29pub(super) const APP_SOURCES_ROOT_RELATIVE: &str = "apps";
30pub(super) const ROOT_CONFIG_FILE: &str = "canic.toml";
31pub(super) const WORKSPACE_MANIFEST_RELATIVE: &str = "Cargo.toml";
32pub(crate) const ROOT_RELEASE_SET_MANIFEST_FILE: &str = "root.release-set.json";
33pub(super) const GZIP_MAGIC: [u8; 2] = [0x1f, 0x8b];
34pub(super) const WASM_MAGIC: [u8; 4] = [0x00, 0x61, 0x73, 0x6d];
35
36#[cfg(test)]
37mod tests;