pub mod client;
mod headless;
pub mod http_log_watcher;
pub mod listener;
pub mod models;
pub mod operations;
mod pod_status;
pub(crate) mod proxy;
pub mod proxy_recovery;
mod service;
pub mod shared_client;
mod start;
pub(crate) mod stop;
pub mod target;
pub mod tcp_forwarder;
pub mod udp_forwarder;
pub use headless::headless_pod_configs;
pub use http_log_watcher::{
HttpLogStateEvent,
HttpLogStateWatcher,
};
pub use listener::{
ListenerConfig,
PortForwarder,
Protocol,
};
pub use proxy::{
INSTALLATION_LABEL,
ReopenStartupGate,
close_startup_gate,
deploy_and_forward_pod,
deploy_and_forward_pod_with_mode,
proxy_resource_prefix,
stop_proxy_forward,
stop_proxy_forward_with_mode,
};
pub use proxy_recovery::recovery_in_progress;
pub use service::retrieve_service_configs;
pub use start::{
cleanup_stale_timeout_entries,
clear_stopped_by_timeout,
is_stopped_by_timeout,
start_port_forward,
start_port_forward_with_mode,
};
pub use stop::{
UNCERTAIN_CREATE_WINDOW,
cancel_all_startups,
delete_configs_if_idle,
reconcile_pending_cleanup,
settle_cluster_obligation,
stop_all_port_forward,
stop_all_port_forward_with_deadline,
stop_all_port_forward_with_mode,
stop_all_port_forward_with_mode_excluding,
stop_generation,
stop_port_forward,
stop_port_forward_with_mode,
};
pub fn is_start_pending(config_id: i64) -> bool {
proxy::STARTING_PROXIES.contains_key(&config_id)
}