1#![forbid(unsafe_code)]
2
3pub mod adapter;
4pub mod admin_access;
5pub mod apply;
9pub mod aws;
10pub mod azure;
11pub mod bundle_upload;
12pub mod config;
13pub mod contract;
14pub mod deployment;
15pub mod desktop;
16pub mod error;
17pub mod extension;
18pub mod extension_sources;
19pub mod gcp;
20pub mod helm;
21pub mod juju_k8s;
22pub mod juju_machine;
23pub mod k8s_raw;
24pub mod multi_target;
25pub mod operator;
26pub mod pack_introspect;
27pub mod path_safety;
28pub mod plan;
29pub mod runtime_secret_sink;
30pub mod runtime_secrets;
31pub mod serverless;
32pub mod single_vm;
33pub mod snap;
34pub mod spec;
35pub mod surface;
36pub mod telemetry;
37pub mod terraform;
38
39pub use adapter::{AdapterFamily, MultiTargetKind, UnifiedTargetSelection};
40pub use admin_access::{
41 AdminAccessInfo, AdminAccessMode, AdminHealthProbe, AdminSecretRefs, AdminTunnelSupport,
42 MaterializedAdminCerts, MaterializedAdminRelayToken, materialize_admin_client_certs,
43 materialize_admin_relay_token, probe_admin_health, render_admin_access,
44 render_admin_health_probe, render_materialized_admin_certs,
45 render_materialized_admin_relay_token, resolve_admin_access,
46};
47pub use aws::{AwsAdminTunnelRequest, AwsRequest};
48pub use azure::AzureRequest;
49pub use config::{DeployerConfig, DeployerRequest, OutputFormat, Provider};
50pub use contract::{
51 CapabilitySpecV1, CloudCredentialKind, CloudTargetRequirementsV1, ContractAsset,
52 CredentialRequirementV1, DeployerCapability, DeployerContractV1, PlannerSpecV1,
53 ResolvedCapabilityContract, ResolvedDeployerContract, ResolvedPlannerContract,
54 VariableRequirementV1,
55};
56pub use deployment::{
57 ApplyExecutionOutcome, DestroyExecutionOutcome, ExecutionOutcome, ExecutionOutcomePayload,
58 StatusExecutionOutcome,
59};
60pub use error::DeployerError;
61pub use extension::{
62 BuiltinBackendDescriptor, BuiltinBackendExecutionKind, BuiltinBackendHandlerId,
63 BuiltinBackendId, BuiltinExtensionBackendDescriptor, BuiltinExtensionDescriptor,
64 BuiltinHandlerDescriptor, DeploymentExtensionContract, DeploymentExtensionDescriptor,
65 DeploymentExtensionKind, DeploymentExtensionSourceKind, DeploymentHandlerDescriptor,
66 list_builtin_extensions, list_builtin_handlers, list_deployment_extension_contracts,
67 list_deployment_extension_contracts_from_sources,
68 list_deployment_extension_contracts_from_sources_with_options,
69 resolve_builtin_backend_descriptor, resolve_builtin_extension_detail_for_provider,
70 resolve_builtin_extension_detail_for_target_name, resolve_builtin_extension_for_config,
71 resolve_builtin_extension_for_provider, resolve_builtin_extension_for_target_name,
72 resolve_builtin_handler_descriptor, resolve_deployment_extension_contract_for_provider,
73 resolve_deployment_extension_contract_for_provider_from_sources,
74 resolve_deployment_extension_contract_for_provider_from_sources_with_options,
75 resolve_deployment_extension_contract_for_target_name,
76 resolve_deployment_extension_contract_for_target_name_from_sources,
77 resolve_deployment_extension_contract_for_target_name_from_sources_with_options,
78 run_builtin_extension, single_vm_builtin_extension,
79};
80pub use extension_sources::DeploymentExtensionSourceOptions;
81pub use gcp::GcpRequest;
82pub use helm::HelmRequest;
83pub use juju_k8s::JujuK8sRequest;
84pub use juju_machine::JujuMachineRequest;
85pub use k8s_raw::K8sRawRequest;
86pub use multi_target::{
87 ApplyPayload, CapabilityPayload, DestroyPayload, ExecutionReport, GeneratePayload,
88 OperationPayload, OperationResult, OutputValidation, PlanPayload, RollbackPayload,
89 StatusPayload, render_operation_result,
90};
91pub use operator::OperatorRequest;
92pub use plan::{
93 ChannelContext, ComponentRole, DeploymentProfile, InferenceNotes, InfraPlan, MessagingContext,
94 PlanContext, PlannedComponent, Target, TelemetryContext,
95};
96pub use serverless::ServerlessRequest;
97pub use single_vm::{
98 SingleVmAdminPlan, SingleVmApplyOptions, SingleVmApplyReport, SingleVmBundlePlan,
99 SingleVmDeploymentStatus, SingleVmDestroyOptions, SingleVmDestroyReport, SingleVmHealthPlan,
100 SingleVmLastAction, SingleVmPersistedState, SingleVmPlan, SingleVmPlanOutput,
101 SingleVmPlannedFile, SingleVmPlannedFileKind, SingleVmRenderSpecRequest, SingleVmRolloutPlan,
102 SingleVmRuntimePlan, SingleVmServicePlan, SingleVmStatusReport, SingleVmStoragePlan,
103 apply_single_vm_plan_output, apply_single_vm_plan_output_with_options, apply_single_vm_spec,
104 apply_single_vm_spec_path, build_single_vm_plan, destroy_single_vm_plan_output,
105 destroy_single_vm_plan_output_with_options, destroy_single_vm_spec,
106 destroy_single_vm_spec_path, plan_single_vm_spec, plan_single_vm_spec_path,
107 preview_single_vm_apply_plan_output, preview_single_vm_destroy_plan_output, render_env_file,
108 render_single_vm_apply_report, render_single_vm_destroy_report, render_single_vm_plan,
109 render_single_vm_plan_output, render_single_vm_status_report, render_systemd_unit,
110 status_single_vm_plan_output, status_single_vm_spec, status_single_vm_spec_path,
111 write_single_vm_spec,
112};
113pub use snap::SnapRequest;
114pub use spec::{
115 AdminEndpointSpec, BundleFormat, BundleSpec, DEPLOYMENT_SPEC_API_VERSION_V1ALPHA1,
116 DEPLOYMENT_SPEC_KIND, DeploymentMetadata, DeploymentSpecBody, DeploymentSpecV1,
117 DeploymentTarget, HealthSpec, LinuxArch, MtlsSpec, RolloutSpec, RolloutStrategy, RuntimeSpec,
118 ServiceManager, ServiceSpec, StorageSpec,
119};
120pub use terraform::TerraformRequest;