BREAKING CHANGE(smart-proxy): remove route helper APIs and standardize route configuration on plain route objects
This commit is contained in:
@@ -7,14 +7,40 @@
|
||||
//!
|
||||
//! ```rust,no_run
|
||||
//! use rustproxy::RustProxy;
|
||||
//! use rustproxy_config::{RustProxyOptions, create_https_passthrough_route};
|
||||
//! use rustproxy_config::*;
|
||||
//!
|
||||
//! #[tokio::main]
|
||||
//! async fn main() -> anyhow::Result<()> {
|
||||
//! let options = RustProxyOptions {
|
||||
//! routes: vec![
|
||||
//! create_https_passthrough_route("example.com", "backend", 443),
|
||||
//! ],
|
||||
//! routes: vec![RouteConfig {
|
||||
//! id: None,
|
||||
//! route_match: RouteMatch {
|
||||
//! ports: PortRange::Single(443),
|
||||
//! domains: Some(DomainSpec::Single("example.com".to_string())),
|
||||
//! path: None, client_ip: None, transport: None,
|
||||
//! tls_version: None, headers: None, protocol: None,
|
||||
//! },
|
||||
//! action: RouteAction {
|
||||
//! action_type: RouteActionType::Forward,
|
||||
//! targets: Some(vec![RouteTarget {
|
||||
//! target_match: None,
|
||||
//! host: HostSpec::Single("backend".to_string()),
|
||||
//! port: PortSpec::Fixed(443),
|
||||
//! tls: None, websocket: None, load_balancing: None,
|
||||
//! send_proxy_protocol: None, headers: None, advanced: None,
|
||||
//! backend_transport: None, priority: None,
|
||||
//! }]),
|
||||
//! tls: Some(RouteTls {
|
||||
//! mode: TlsMode::Passthrough,
|
||||
//! certificate: None, acme: None, versions: None,
|
||||
//! ciphers: None, honor_cipher_order: None, session_timeout: None,
|
||||
//! }),
|
||||
//! websocket: None, load_balancing: None, advanced: None,
|
||||
//! options: None, send_proxy_protocol: None, udp: None,
|
||||
//! },
|
||||
//! headers: None, security: None, name: None, description: None,
|
||||
//! priority: None, tags: None, enabled: None,
|
||||
//! }],
|
||||
//! ..Default::default()
|
||||
//! };
|
||||
//!
|
||||
|
||||
Reference in New Issue
Block a user