@ts-cloud/core 0.12.10 → 0.12.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import type { CloudConfig, EnvironmentType, SiteConfig } from '../types';
2
- export type CloudProviderName = 'aws' | 'hetzner';
2
+ export type CloudProviderName = 'aws' | 'hetzner' | 'ssh';
3
3
  /**
4
4
  * Exhaustive provider map. Provider-specific contract tests key off this type,
5
5
  * so adding a provider without adding its resilience coverage is a type error.
@@ -36,6 +36,13 @@ export interface ComputeStackOutputs {
36
36
  servicesPrivateIp?: string;
37
37
  /** Fleet: public IP of the load balancer fronting the app servers. */
38
38
  loadBalancerIp?: string;
39
+ /**
40
+ * On-box path to the LAN certificate authority's certificate, for a host
41
+ * whose gateway signs its own TLS (`ssh.lan.tls: 'local-ca'`). Reported so a
42
+ * caller can fetch the file and trust it on a laptop or a phone; absent for
43
+ * every publicly-resolvable deploy, which uses Let's Encrypt instead.
44
+ */
45
+ lanCaCertPath?: string;
39
46
  }
40
47
  export interface RemoteDeployInstanceResult {
41
48
  instanceId: string;
@@ -172,6 +179,12 @@ export interface DeploySiteReleaseResult {
172
179
  }
173
180
  /**
174
181
  * Resolve the configured cloud provider. Defaults to AWS for backward compatibility.
175
- * Environment-based auto-detection is handled when constructing the Hetzner driver.
182
+ *
183
+ * An explicit `cloud.provider` always wins. Without one, the config itself is
184
+ * the tell: a project that lists `ssh.hosts` is deploying to hosts it already
185
+ * owns, and a project with a Hetzner token is deploying to Hetzner. The ssh
186
+ * provider is never inferred from the environment alone (`TS_CLOUD_SSH_HOST`
187
+ * is a per-machine override, not a statement of intent); the Hetzner token
188
+ * check keeps the behaviour it always had.
176
189
  */
177
190
  export declare function resolveCloudProvider(config: CloudConfig): CloudProviderName;