MCPcopy Create free account
hub / github.com/atomicdotdev/atomic / apex_server_url

Function apex_server_url

atomic-cli/src/commands/auth.rs:619–635  ·  view source on GitHub ↗

Derive the apex server URL (scheme + host without the leading subdomain label + port) from a tenant-scoped remote URL. `http://alice.localhost:8080/workspaces/w/projects/p/code` → `http://localhost:8080` `https://alice.atomic.storage/...` → `https://atomic.storage` `http://localhost:8080/...` (no subdomain) → `http://localhost:8080`

(remote_url: &str)

Source from the content-addressed store, hash-verified

617/// `https://alice.atomic.storage/...` → `https://atomic.storage`
618/// `http://localhost:8080/...` (no subdomain) → `http://localhost:8080`
619fn apex_server_url(remote_url: &str) -> Option<String> {
620 let url = Url::parse(remote_url).ok()?;
621 let scheme = url.scheme();
622 let host = url.host_str()?;
623
624 // Strip the first label if there is a subdomain; leave a bare host
625 // (e.g. "localhost") untouched.
626 let apex_host = match host.find('.') {
627 Some(dot) => &host[dot + 1..],
628 None => host,
629 };
630
631 match url.port() {
632 Some(port) => Some(format!("{scheme}://{apex_host}:{port}")),
633 None => Some(format!("{scheme}://{apex_host}")),
634 }
635}
636
637/// Extract the identity name from a remote URL alone (no server config).
638///

Callers 1

attach_identityFunction · 0.70

Calls 1

parseFunction · 0.50

Tested by

no test coverage detected