anchor/
lib.rs

1//! `anchor` is a library for declaratively managing Docker containers and clusters.
2
3#![deny(absolute_paths_not_starting_with_crate)]
4#![deny(ambiguous_negative_literals)]
5#![deny(dead_code)]
6#![deny(deprecated_safe_2024)]
7#![deny(deref_into_dyn_supertrait)]
8#![deny(edition_2024_expr_fragment_specifier)]
9// #![deny(elided_lifetimes_in_paths)]
10#![deny(explicit_outlives_requirements)]
11#![deny(ffi_unwind_calls)]
12#![deny(future_incompatible)]
13#![deny(if_let_rescope)]
14#![deny(impl_trait_overcaptures)]
15#![deny(impl_trait_redundant_captures)]
16#![deny(improper_ctypes)]
17#![deny(keyword_idents_2018)]
18#![deny(keyword_idents_2024)]
19#![deny(keyword_idents)]
20#![deny(let_underscore_drop)]
21#![deny(macro_use_extern_crate)]
22#![deny(meta_variable_misuse)]
23#![deny(missing_copy_implementations)]
24#![deny(missing_debug_implementations)]
25#![deny(missing_docs)]
26#![deny(missing_unsafe_on_extern)]
27#![deny(non_ascii_idents)]
28#![deny(nonstandard_style)]
29#![deny(path_statements)]
30#![deny(redundant_imports)]
31#![deny(redundant_lifetimes)]
32#![deny(rustdoc::broken_intra_doc_links)]
33#![deny(single_use_lifetimes)]
34#![deny(tail_expr_drop_order)]
35#![deny(trivial_casts)]
36#![deny(trivial_numeric_casts)]
37#![deny(unit_bindings)]
38#![deny(unnameable_types)]
39#![deny(unreachable_code)]
40// #![deny(unreachable_pub)]
41#![deny(unsafe_attr_outside_unsafe)]
42#![deny(unsafe_code)]
43#![deny(unsafe_op_in_unsafe_fn)]
44#![deny(unstable_features)]
45#![deny(unused_assignments)]
46#![deny(unused_crate_dependencies)]
47#![deny(unused_extern_crates)]
48#![deny(unused_import_braces)]
49#![deny(unused_imports)]
50#![deny(unused_lifetimes)]
51#![deny(unused_macro_rules)]
52#![deny(unused_must_use)]
53#![deny(unused_mut)]
54#![deny(unused_qualifications)]
55#![deny(unused_results)]
56#![deny(unused_variables)]
57#![deny(unused)]
58#![deny(variant_size_differences)]
59// #![deny(warnings)]
60#![deny(clippy::all)]
61#![deny(clippy::cargo)]
62#![deny(clippy::complexity)]
63#![deny(clippy::correctness)]
64#![deny(clippy::nursery)]
65#![deny(clippy::pedantic)]
66#![deny(clippy::perf)]
67// // #![deny(clippy::restriction)]
68#![deny(clippy::style)]
69#![deny(clippy::suspicious)]
70#![expect(clippy::cast_precision_loss, reason = "Some casts are necessary here.")]
71#![expect(clippy::cast_sign_loss, reason = "Some casts are necessary here.")]
72#![expect(
73    clippy::multiple_crate_versions,
74    reason = "Multiple versions of some dependencies are used in the workspace, but they are compatible and do not cause issues."
75)]
76
77#[cfg(feature = "aws_ecr")]
78mod credentials;
79
80mod anchor_error;
81mod client;
82mod container_metrics;
83mod format;
84mod health_status;
85mod mount_type;
86mod resource_status;
87mod start_docker_daemon;
88
89/// Re-export the main types and traits for easy access
90pub mod prelude {
91    #[cfg(feature = "aws_ecr")]
92    pub use crate::credentials::get_ecr_credentials;
93
94    pub use crate::{
95        anchor_error::{AnchorError, AnchorResult},
96        client::Client,
97        container_metrics::ContainerMetrics,
98        health_status::HealthStatus,
99        mount_type::MountType,
100        resource_status::ResourceStatus,
101        start_docker_daemon::start_docker_daemon,
102    };
103}