@ts-cloud/core 0.7.110 → 0.7.112

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.
Files changed (2) hide show
  1. package/dist/types.d.ts +29 -0
  2. package/package.json +2 -2
package/dist/types.d.ts CHANGED
@@ -865,6 +865,35 @@ export interface SiteConfig {
865
865
  * path-preserving redirect.
866
866
  */
867
867
  redirect?: string | SiteRedirectConfig;
868
+ /**
869
+ * Make this a **proxy-only site**: the gateway routes this site's `domain` to
870
+ * an upstream that ts-cloud does **not** manage. Nothing is built, packaged,
871
+ * shipped or supervised — no release directory, no systemd unit — but the
872
+ * domain still joins the gateway's TLS set, so it gets `certsDirServerNames`,
873
+ * `onDemandTls.allowedSuffixes` and the project's `rpx-cert-renew-<slug>`
874
+ * units like any other site.
875
+ *
876
+ * This is for a service that is provisioned by something else and must stay
877
+ * that way. The motivating case is a package registry whose systemd unit
878
+ * carries `Requires=clamav-daemon.service` and hard memory/task caps that
879
+ * ts-cloud's generated unit template cannot express: before this existed the
880
+ * only way to route it was `start` + `port`, which forces ts-cloud to own the
881
+ * unit and would have silently dropped that hardening.
882
+ *
883
+ * Give it a `host:port` (or an array of them, load-balanced with
884
+ * `proxy.loadBalancer`). `domain` is required; `root`, `start`, `port`,
885
+ * `build` and `preStart` are not used and are ignored.
886
+ *
887
+ * ```ts
888
+ * sites: {
889
+ * registry: { domain: 'registry.example.com', proxyTo: 'localhost:3001' },
890
+ * }
891
+ * ```
892
+ *
893
+ * A {@link redirect} on the same site wins — that answers the domain itself
894
+ * rather than forwarding it.
895
+ */
896
+ proxyTo?: string | string[];
868
897
  /**
869
898
  * S3 bucket name. Default: `{slug}-{environment}-site` for `main`,
870
899
  * else `{slug}-{environment}-{siteKey}`.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ts-cloud/core",
3
3
  "type": "module",
4
- "version": "0.7.110",
4
+ "version": "0.7.112",
5
5
  "description": "Core CloudFormation generation library for ts-cloud",
6
6
  "author": "Chris Breuer <chris@stacksjs.com>",
7
7
  "license": "MIT",
@@ -31,7 +31,7 @@
31
31
  "typecheck": "tsc --noEmit"
32
32
  },
33
33
  "dependencies": {
34
- "@ts-cloud/aws-types": "0.7.110"
34
+ "@ts-cloud/aws-types": "0.7.112"
35
35
  },
36
36
  "devDependencies": {
37
37
  "typescript": "^7.0.2"