@stacksjs/buddy 0.70.134 → 0.70.136
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.
- package/dist/commands/deploy.d.ts +7 -0
- package/dist/commands/deploy.js +6 -3
- package/package.json +41 -41
|
@@ -59,6 +59,13 @@ export declare function applyEnvironmentToSites(sites: Record<string, any>, envi
|
|
|
59
59
|
* port declaration is left alone.
|
|
60
60
|
*/
|
|
61
61
|
export declare function scrubLoopbackSitePortsForFirewall(tsCloudConfig: any): any;
|
|
62
|
+
/**
|
|
63
|
+
* Mail tenancy is an explicit deployment capability. The merged Stacks config
|
|
64
|
+
* always contains framework email defaults, so checking `emailConfig` alone
|
|
65
|
+
* would register the framework's own default domain for every application that
|
|
66
|
+
* does not provide `config/email.ts`.
|
|
67
|
+
*/
|
|
68
|
+
export declare function hasExplicitEmailConfig(projectRoot?: unknown): boolean;
|
|
62
69
|
/**
|
|
63
70
|
* Everything is MERGE-based so a shared mail server keeps every other tenant's
|
|
64
71
|
* domains, keys, users, and forward rules untouched. Best-effort — a hiccup is
|
package/dist/commands/deploy.js
CHANGED
|
@@ -12,7 +12,7 @@ import { Action } from "@stacksjs/enums";
|
|
|
12
12
|
import { path as p } from "@stacksjs/path";
|
|
13
13
|
import { ExitCode } from "@stacksjs/types";
|
|
14
14
|
import { getErrorCode, getErrorMessage } from "@stacksjs/utils";
|
|
15
|
-
import { ensureAppKey, ensureEnvIsSet
|
|
15
|
+
import { ensureAppKey, ensureEnvIsSet } from "./setup";
|
|
16
16
|
const log = {
|
|
17
17
|
info: (...args) => console.log("\u2139", ...args),
|
|
18
18
|
success: (...args) => console.log("\u2713", ...args),
|
|
@@ -92,8 +92,6 @@ async function findPantryMailBinary() {
|
|
|
92
92
|
}
|
|
93
93
|
async function ensureDeployPrerequisites(verbose = !1) {
|
|
94
94
|
const cwd = p.projectPath();
|
|
95
|
-
await ensurePantryInstalled();
|
|
96
|
-
await ensurePantryDependencies(cwd);
|
|
97
95
|
await ensureEnvIsSet({ cwd, verbose });
|
|
98
96
|
await ensureAppKey(cwd);
|
|
99
97
|
}
|
|
@@ -844,6 +842,9 @@ function resolveMailboxes(mailboxes, domain) {
|
|
|
844
842
|
}
|
|
845
843
|
return out;
|
|
846
844
|
}
|
|
845
|
+
export function hasExplicitEmailConfig(projectRoot = p.projectPath()) {
|
|
846
|
+
return existsSync(join(projectRoot, "config", "email.ts"));
|
|
847
|
+
}
|
|
847
848
|
async function resolveAttachTargetBox(owner, environment) {
|
|
848
849
|
const token = process.env.HCLOUD_TOKEN;
|
|
849
850
|
if (!token)
|
|
@@ -865,6 +866,8 @@ async function resolveAttachTargetBox(owner, environment) {
|
|
|
865
866
|
return { serverId: chosen.id, serverName: chosen.name, publicIp: chosen.public_net?.ipv4?.ip };
|
|
866
867
|
}
|
|
867
868
|
export async function provisionMailTenant(ip, logger) {
|
|
869
|
+
if (!hasExplicitEmailConfig())
|
|
870
|
+
return null;
|
|
868
871
|
const cfg = emailConfig || {};
|
|
869
872
|
if (cfg.server?.enabled === !1)
|
|
870
873
|
return null;
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@stacksjs/buddy",
|
|
3
3
|
"type": "module",
|
|
4
4
|
"sideEffects": false,
|
|
5
|
-
"version": "0.70.
|
|
5
|
+
"version": "0.70.136",
|
|
6
6
|
"description": "Meet Buddy. The Stacks runtime.",
|
|
7
7
|
"author": "Chris Breuer",
|
|
8
8
|
"contributors": [
|
|
@@ -92,51 +92,51 @@
|
|
|
92
92
|
"prepublishOnly": "bun run build"
|
|
93
93
|
},
|
|
94
94
|
"dependencies": {
|
|
95
|
-
"@stacksjs/actions": "^0.70.
|
|
96
|
-
"@stacksjs/ai": "^0.70.
|
|
97
|
-
"@stacksjs/alias": "^0.70.
|
|
98
|
-
"@stacksjs/arrays": "^0.70.
|
|
99
|
-
"@stacksjs/auth": "^0.70.
|
|
100
|
-
"@stacksjs/build": "^0.70.
|
|
101
|
-
"@stacksjs/cache": "^0.70.
|
|
102
|
-
"@stacksjs/cli": "^0.70.
|
|
95
|
+
"@stacksjs/actions": "^0.70.136",
|
|
96
|
+
"@stacksjs/ai": "^0.70.136",
|
|
97
|
+
"@stacksjs/alias": "^0.70.136",
|
|
98
|
+
"@stacksjs/arrays": "^0.70.136",
|
|
99
|
+
"@stacksjs/auth": "^0.70.136",
|
|
100
|
+
"@stacksjs/build": "^0.70.136",
|
|
101
|
+
"@stacksjs/cache": "^0.70.136",
|
|
102
|
+
"@stacksjs/cli": "^0.70.136",
|
|
103
103
|
"@stacksjs/clapp": "^0.2.10",
|
|
104
|
-
"@stacksjs/cloud": "^0.70.
|
|
105
|
-
"@stacksjs/collections": "^0.70.
|
|
106
|
-
"@stacksjs/config": "^0.70.
|
|
107
|
-
"@stacksjs/database": "^0.70.
|
|
108
|
-
"@stacksjs/desktop": "^0.70.
|
|
109
|
-
"@stacksjs/dns": "^0.70.
|
|
110
|
-
"@stacksjs/email": "^0.70.
|
|
111
|
-
"@stacksjs/enums": "^0.70.
|
|
112
|
-
"@stacksjs/error-handling": "^0.70.
|
|
113
|
-
"@stacksjs/events": "^0.70.
|
|
114
|
-
"@stacksjs/git": "^0.70.
|
|
104
|
+
"@stacksjs/cloud": "^0.70.136",
|
|
105
|
+
"@stacksjs/collections": "^0.70.136",
|
|
106
|
+
"@stacksjs/config": "^0.70.136",
|
|
107
|
+
"@stacksjs/database": "^0.70.136",
|
|
108
|
+
"@stacksjs/desktop": "^0.70.136",
|
|
109
|
+
"@stacksjs/dns": "^0.70.136",
|
|
110
|
+
"@stacksjs/email": "^0.70.136",
|
|
111
|
+
"@stacksjs/enums": "^0.70.136",
|
|
112
|
+
"@stacksjs/error-handling": "^0.70.136",
|
|
113
|
+
"@stacksjs/events": "^0.70.136",
|
|
114
|
+
"@stacksjs/git": "^0.70.136",
|
|
115
115
|
"@stacksjs/gitit": "^0.2.5",
|
|
116
|
-
"@stacksjs/health": "^0.70.
|
|
116
|
+
"@stacksjs/health": "^0.70.136",
|
|
117
117
|
"@stacksjs/dnsx": "^0.2.3",
|
|
118
118
|
"@stacksjs/httx": "^0.1.10",
|
|
119
|
-
"@stacksjs/lint": "^0.70.
|
|
120
|
-
"@stacksjs/logging": "^0.70.
|
|
121
|
-
"@stacksjs/notifications": "^0.70.
|
|
122
|
-
"@stacksjs/objects": "^0.70.
|
|
123
|
-
"@stacksjs/orm": "^0.70.
|
|
124
|
-
"@stacksjs/path": "^0.70.
|
|
125
|
-
"@stacksjs/payments": "^0.70.
|
|
126
|
-
"@stacksjs/realtime": "^0.70.
|
|
127
|
-
"@stacksjs/router": "^0.70.
|
|
119
|
+
"@stacksjs/lint": "^0.70.136",
|
|
120
|
+
"@stacksjs/logging": "^0.70.136",
|
|
121
|
+
"@stacksjs/notifications": "^0.70.136",
|
|
122
|
+
"@stacksjs/objects": "^0.70.136",
|
|
123
|
+
"@stacksjs/orm": "^0.70.136",
|
|
124
|
+
"@stacksjs/path": "^0.70.136",
|
|
125
|
+
"@stacksjs/payments": "^0.70.136",
|
|
126
|
+
"@stacksjs/realtime": "^0.70.136",
|
|
127
|
+
"@stacksjs/router": "^0.70.136",
|
|
128
128
|
"@stacksjs/rpx": "^0.11.29",
|
|
129
|
-
"@stacksjs/search-engine": "^0.70.
|
|
130
|
-
"@stacksjs/security": "^0.70.
|
|
131
|
-
"@stacksjs/server": "^0.70.
|
|
132
|
-
"@stacksjs/storage": "^0.70.
|
|
133
|
-
"@stacksjs/strings": "^0.70.
|
|
134
|
-
"@stacksjs/testing": "^0.70.
|
|
135
|
-
"@stacksjs/tunnel": "^0.70.
|
|
136
|
-
"@stacksjs/types": "^0.70.
|
|
137
|
-
"@stacksjs/ui": "^0.70.
|
|
138
|
-
"@stacksjs/utils": "^0.70.
|
|
139
|
-
"@stacksjs/validation": "^0.70.
|
|
129
|
+
"@stacksjs/search-engine": "^0.70.136",
|
|
130
|
+
"@stacksjs/security": "^0.70.136",
|
|
131
|
+
"@stacksjs/server": "^0.70.136",
|
|
132
|
+
"@stacksjs/storage": "^0.70.136",
|
|
133
|
+
"@stacksjs/strings": "^0.70.136",
|
|
134
|
+
"@stacksjs/testing": "^0.70.136",
|
|
135
|
+
"@stacksjs/tunnel": "^0.70.136",
|
|
136
|
+
"@stacksjs/types": "^0.70.136",
|
|
137
|
+
"@stacksjs/ui": "^0.70.136",
|
|
138
|
+
"@stacksjs/utils": "^0.70.136",
|
|
139
|
+
"@stacksjs/validation": "^0.70.136",
|
|
140
140
|
"@stacksjs/ts-cloud": "^0.7.47"
|
|
141
141
|
},
|
|
142
142
|
"devDependencies": {
|