Skip to main content

Module wizard

Module wizard 

Source
Expand description

Interactive deployment wizard for configuring new services

Provides a step-by-step TUI wizard for deploying services to the Syncable platform.

Re-exports§

pub use recommendations::DeploymentRecommendation;
pub use recommendations::MachineOption;
pub use recommendations::ProviderOption;
pub use recommendations::RecommendationAlternatives;
pub use recommendations::RecommendationInput;
pub use recommendations::RegionOption;
pub use recommendations::recommend_deployment;

Modules§

recommendations
Deployment recommendation engine

Structs§

AvailableServiceEndpoint
A deployed service with a reachable URL (public or private network).
CloudRegion
A cloud region/location option (static data for non-Hetzner providers)
DynamicCloudRegion
Dynamic cloud region with real-time availability info
DynamicMachineType
Dynamic machine type with real-time pricing and availability
EndpointSuggestion
A suggested mapping: env var -> deployed service URL.
EnvFileEntry
Parsed entry from a .env file.
MachineType
A machine/instance type option (static data for non-Hetzner providers)
NetworkEndpointInfo
A network resource with its connection-relevant details.

Enums§

ClusterSelectionResult
Result of cluster selection step
ConfigFormResult
Result of config form step
DockerfileSelectionResult
Result of Dockerfile selection step
EnvironmentCreationResult
Result of environment creation wizard
EnvironmentSelectionResult
Result of environment selection step
HetznerFetchResult
Result of dynamic Hetzner data fetch
InfrastructureSelectionResult
Result of infrastructure selection step
MatchConfidence
Confidence level for an env-var-to-service match.
ProviderSelectionResult
Result of provider selection step
RegistryProvisioningResult
Result of registry provisioning
RegistrySelectionResult
Result of registry selection step
RepositorySelectionResult
Result of repository selection step
TargetSelectionResult
Result of target selection step
WizardResult
Result of running the wizard

Functions§

check_hetzner_availability
Check availability of a specific server type at a location
collect_config
Collect deployment configuration details from user
collect_env_vars
Collect environment variables interactively
collect_network_endpoint_env_vars
Interactive prompt to offer network connection details as env vars.
collect_service_endpoint_env_vars
Interactive prompt to link deployed service URLs as env vars.
count_badge
Format a count badge
create_environment_wizard
Run the environment creation wizard
discover_env_files
Discover .env files in the project directory (max depth 3, skipping common build dirs).
display_step_header
Display a wizard step header box
extract_network_endpoints
Extract useful connection details from cloud runner networks.
filter_endpoints_for_provider
Filter endpoints so that private-network endpoints only appear when they share the same cloud provider as the service being deployed.
find_best_region
Find the best region for a workload based on availability
find_cheapest_available
Find cheapest available server type for a region
get_available_endpoints
Filter deployments down to services that have a reachable URL (public or private) and are not in a known-bad state.
get_default_machine_type
Get default machine type for a provider For Azure, returns the default CPU value (used with ACA resource pairs)
get_default_region
Get default region for a provider
get_hetzner_regions_dynamic
Fetch Hetzner regions dynamically with REAL-TIME availability
get_hetzner_server_types_dynamic
Fetch Hetzner server types dynamically with REAL-TIME availability and pricing
get_machine_types_for_provider
Get static machine types for a cloud provider NOTE: For Hetzner, returns empty - use get_hetzner_server_types_dynamic() instead
get_provider_deployment_statuses
Get deployment status for all providers
get_recommended_server_type
Get recommended server type for a workload profile
get_regions_for_provider
Get static regions for a cloud provider NOTE: For Hetzner, returns empty - use get_hetzner_regions_dynamic() instead
match_env_vars_to_services
For each URL-like env var, find the best matching deployed service.
parse_env_file
Parse a .env file into key/value entries.
provision_registry
Provision a new artifact registry
run_wizard
Run the deployment wizard
select_cluster
Display cluster selection for Kubernetes deployments
select_dockerfile
Select a Dockerfile from discovered Dockerfiles
select_environment
Prompt user to select an environment for deployment
select_infrastructure
Select region and machine type for Cloud Runner deployment
select_infrastructure_sync
Legacy synchronous version for backward compatibility
select_provider
Display provider selection and prompt user to choose
select_registry
Display registry selection for container image storage
select_repository
Select repository for deployment
select_target
Display target selection based on provider capabilities
status_indicator
Format a status indicator (checkmark or X)
wizard_render_config
Get the standard render config for wizard prompts