1#![deny(missing_docs)]
16#![deny(clippy::print_stdout, clippy::print_stderr, clippy::exit)]
17
18pub mod app;
19pub mod client;
20pub mod config;
21pub mod error;
22pub mod exec;
23pub mod forward;
24pub mod guest;
25pub mod image;
26pub mod imagebuild;
27pub mod sailbox;
28pub mod shell;
29
30pub use worker::{
31 FileReader, FileWriter, Listener, WriteAbortHandle, WriteOptions, FILE_WRITE_CHUNK_BYTES,
32};
33#[doc(hidden)]
36pub mod worker;
37
38mod channels;
39pub(crate) mod credentials;
40pub(crate) mod http;
41pub(crate) mod imagebuilder;
42pub(crate) mod imagecache;
43mod notice;
44pub(crate) mod retry;
45pub(crate) mod runtime;
46
47pub use app::App;
48pub use client::{Client, ClientBuilder};
49pub use error::{Result, RpcStatus, SailError, TransportKind};
50pub use exec::{
51 CancelSignal, ExecOptions, ExecProcess, ExecResult, OutputStream, RetryBudget, RunOptions,
52 EXEC_CANCEL_RETRY,
53};
54pub use image::{BaseImage, ImageArchitecture, ImageSpec};
55pub use notice::{clear_notice_handler, set_notice_handler};
56pub use runtime::block_on;
57pub use sailbox::object::{Sailbox, SailboxFs};
58pub use sailbox::ssh::{EnableSshOptions, SshEndpoint};
59pub use sailbox::types::{
60 CheckpointOptions, CreateSailboxRequest, ForkOptions, IngressPort, IngressProtocol,
61 ListSailboxesQuery, ListenerEndpoint, SailboxCheckpoint, SailboxHandle, SailboxInfo,
62 SailboxListOrder, SailboxPage, SailboxSize, SailboxStatus, SailboxStatusFilter, VolumeMount,
63 WaitForListenerOptions,
64};
65pub use sailbox::{DirEntry, EntryType, UpgradeResult};
66pub use shell::ShellOptions;
67
68pub use time;
72
73#[allow(missing_docs, clippy::all, clippy::pedantic)]
78pub(crate) mod pb {
79 pub mod workerproxy {
80 pub mod v1 {
81 tonic::include_proto!("workerproxy.v1");
82 }
83 }
84 pub mod imagebuilder {
85 pub mod v1 {
86 tonic::include_proto!("imagebuilder.v1");
87 }
88 }
89 pub mod image {
90 pub mod v1 {
91 tonic::include_proto!("image.v1");
92 }
93 }
94}
95
96#[doc(hidden)]
103pub mod internal {
104 pub mod credentials {
105 pub use crate::credentials::*;
106 }
107 pub mod http {
108 pub use crate::http::*;
109 }
110 pub mod pb {
111 pub use crate::pb::*;
112 }
113 pub mod retry {
114 pub use crate::retry::*;
115 }
116
117 pub use crate::runtime::runtime;
118 pub use crate::sailbox::api::SailboxApi;
119}