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