Files
crank/crates/crank-core/src/ext/capability.rs
T
github-ops 58cfd86d90
Deploy / deploy (push) Successful in 2m33s
CI / Rust Checks (push) Successful in 5m35s
CI / UI Checks (push) Successful in 5s
CI / Deployment Manifests (push) Successful in 2s
CI / Frontend E2E (push) Successful in 4m19s
Limit community to single-user workspace
2026-06-19 17:41:50 +00:00

28 lines
909 B
Rust

use crate::{
EditionCapabilities, EditionLimits, MachineAccessMode, OperationSecurityLevel, ProductEdition,
Protocol,
};
pub trait CapabilityProfile: Send + Sync {
fn capabilities(&self) -> EditionCapabilities;
}
#[derive(Clone, Copy, Debug, Default)]
pub struct CommunityCapabilityProfile;
impl CapabilityProfile for CommunityCapabilityProfile {
fn capabilities(&self) -> EditionCapabilities {
EditionCapabilities {
edition: ProductEdition::Community,
supported_protocols: vec![Protocol::Rest],
supported_security_levels: vec![OperationSecurityLevel::Standard],
machine_access_modes: vec![MachineAccessMode::StaticAgentKey],
limits: EditionLimits {
max_workspaces: Some(1),
max_users_per_workspace: Some(1),
max_agents_per_workspace: None,
},
}
}
}