@effect/platform-node 0.98.3 → 0.99.0
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/NodeClusterHttp/package.json +6 -0
- package/NodeClusterSocket/package.json +6 -0
- package/dist/cjs/{NodeClusterRunnerHttp.js → NodeClusterHttp.js} +12 -7
- package/dist/cjs/NodeClusterHttp.js.map +1 -0
- package/dist/cjs/NodeClusterSocket.js +76 -0
- package/dist/cjs/NodeClusterSocket.js.map +1 -0
- package/dist/cjs/index.js +5 -9
- package/dist/dts/{NodeClusterRunnerHttp.d.ts → NodeClusterHttp.d.ts} +10 -5
- package/dist/dts/NodeClusterHttp.d.ts.map +1 -0
- package/dist/dts/NodeClusterSocket.d.ts +52 -0
- package/dist/dts/NodeClusterSocket.d.ts.map +1 -0
- package/dist/dts/index.d.ts +2 -10
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/esm/NodeClusterHttp.js +47 -0
- package/dist/esm/NodeClusterHttp.js.map +1 -0
- package/dist/esm/NodeClusterSocket.js +65 -0
- package/dist/esm/NodeClusterSocket.js.map +1 -0
- package/dist/esm/index.js +2 -10
- package/dist/esm/index.js.map +1 -1
- package/package.json +19 -35
- package/src/{NodeClusterRunnerHttp.ts → NodeClusterHttp.ts} +52 -22
- package/src/NodeClusterSocket.ts +150 -0
- package/src/index.ts +2 -12
- package/NodeClusterRunnerHttp/package.json +0 -6
- package/NodeClusterRunnerSocket/package.json +0 -6
- package/NodeClusterShardManagerHttp/package.json +0 -6
- package/NodeClusterShardManagerSocket/package.json +0 -6
- package/dist/cjs/NodeClusterRunnerHttp.js.map +0 -1
- package/dist/cjs/NodeClusterRunnerSocket.js +0 -17
- package/dist/cjs/NodeClusterRunnerSocket.js.map +0 -1
- package/dist/cjs/NodeClusterShardManagerHttp.js +0 -41
- package/dist/cjs/NodeClusterShardManagerHttp.js.map +0 -1
- package/dist/cjs/NodeClusterShardManagerSocket.js +0 -17
- package/dist/cjs/NodeClusterShardManagerSocket.js.map +0 -1
- package/dist/dts/NodeClusterRunnerHttp.d.ts.map +0 -1
- package/dist/dts/NodeClusterRunnerSocket.d.ts +0 -9
- package/dist/dts/NodeClusterRunnerSocket.d.ts.map +0 -1
- package/dist/dts/NodeClusterShardManagerHttp.d.ts +0 -28
- package/dist/dts/NodeClusterShardManagerHttp.d.ts.map +0 -1
- package/dist/dts/NodeClusterShardManagerSocket.d.ts +0 -9
- package/dist/dts/NodeClusterShardManagerSocket.d.ts.map +0 -1
- package/dist/esm/NodeClusterRunnerHttp.js +0 -42
- package/dist/esm/NodeClusterRunnerHttp.js.map +0 -1
- package/dist/esm/NodeClusterRunnerSocket.js +0 -9
- package/dist/esm/NodeClusterRunnerSocket.js.map +0 -1
- package/dist/esm/NodeClusterShardManagerHttp.js +0 -32
- package/dist/esm/NodeClusterShardManagerHttp.js.map +0 -1
- package/dist/esm/NodeClusterShardManagerSocket.js +0 -9
- package/dist/esm/NodeClusterShardManagerSocket.js.map +0 -1
- package/src/NodeClusterRunnerSocket.ts +0 -9
- package/src/NodeClusterShardManagerHttp.ts +0 -73
- package/src/NodeClusterShardManagerSocket.ts +0 -9
|
@@ -6,15 +6,19 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.layerHttpServer = exports.layer = void 0;
|
|
7
7
|
var HttpRunner = _interopRequireWildcard(require("@effect/cluster/HttpRunner"));
|
|
8
8
|
var MessageStorage = _interopRequireWildcard(require("@effect/cluster/MessageStorage"));
|
|
9
|
+
var RunnerHealth = _interopRequireWildcard(require("@effect/cluster/RunnerHealth"));
|
|
10
|
+
var Runners = _interopRequireWildcard(require("@effect/cluster/Runners"));
|
|
11
|
+
var RunnerStorage = _interopRequireWildcard(require("@effect/cluster/RunnerStorage"));
|
|
9
12
|
var ShardingConfig = _interopRequireWildcard(require("@effect/cluster/ShardingConfig"));
|
|
10
|
-
var ShardStorage = _interopRequireWildcard(require("@effect/cluster/ShardStorage"));
|
|
11
13
|
var SqlMessageStorage = _interopRequireWildcard(require("@effect/cluster/SqlMessageStorage"));
|
|
12
|
-
var
|
|
14
|
+
var SqlRunnerStorage = _interopRequireWildcard(require("@effect/cluster/SqlRunnerStorage"));
|
|
13
15
|
var RpcSerialization = _interopRequireWildcard(require("@effect/rpc/RpcSerialization"));
|
|
14
16
|
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
15
17
|
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
16
18
|
var Option = _interopRequireWildcard(require("effect/Option"));
|
|
17
19
|
var _nodeHttp = require("node:http");
|
|
20
|
+
var _NodeClusterSocket = require("./NodeClusterSocket.js");
|
|
21
|
+
var NodeFileSystem = _interopRequireWildcard(require("./NodeFileSystem.js"));
|
|
18
22
|
var NodeHttpClient = _interopRequireWildcard(require("./NodeHttpClient.js"));
|
|
19
23
|
var NodeHttpServer = _interopRequireWildcard(require("./NodeHttpServer.js"));
|
|
20
24
|
var NodeSocket = _interopRequireWildcard(require("./NodeSocket.js"));
|
|
@@ -33,7 +37,8 @@ const layer = options => {
|
|
|
33
37
|
? options.transport === "http" ? Layer.provide(HttpRunner.layerHttpClientOnly, NodeHttpClient.layerUndici) : Layer.provide(HttpRunner.layerWebsocketClientOnly, NodeSocket.layerWebSocketConstructor)
|
|
34
38
|
// with server
|
|
35
39
|
: options.transport === "http" ? Layer.provide(HttpRunner.layerHttp, [layerHttpServer, NodeHttpClient.layerUndici]) : Layer.provide(HttpRunner.layerWebsocket, [layerHttpServer, NodeSocket.layerWebSocketConstructor]);
|
|
36
|
-
|
|
40
|
+
const runnerHealth = options?.clientOnly ? Layer.empty : options?.runnerHealth === "k8s" ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(Layer.provide([NodeFileSystem.layer, _NodeClusterSocket.layerHttpClientK8s])) : RunnerHealth.layerPing.pipe(Layer.provide(Runners.layerRpc), Layer.provide(options.transport === "http" ? HttpRunner.layerClientProtocolHttpDefault.pipe(Layer.provide(NodeHttpClient.layerUndici)) : HttpRunner.layerClientProtocolWebsocketDefault.pipe(Layer.provide(NodeSocket.layerWebSocketConstructor))));
|
|
41
|
+
return layer.pipe(Layer.provide(runnerHealth), Layer.provideMerge(options?.storage === "local" ? MessageStorage.layerNoop : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlMessageStorage.layer)), Layer.provide(options?.storage === "local" ? RunnerStorage.layerMemory : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlRunnerStorage.layer)), Layer.provide(ShardingConfig.layerFromEnv(options?.shardingConfig)), Layer.provide(options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack));
|
|
37
42
|
};
|
|
38
43
|
/**
|
|
39
44
|
* @since 1.0.0
|
|
@@ -42,10 +47,10 @@ const layer = options => {
|
|
|
42
47
|
exports.layer = layer;
|
|
43
48
|
const layerHttpServer = exports.layerHttpServer = /*#__PURE__*/Effect.gen(function* () {
|
|
44
49
|
const config = yield* ShardingConfig.ShardingConfig;
|
|
45
|
-
const listenAddress =
|
|
46
|
-
if (
|
|
47
|
-
return yield* Effect.
|
|
50
|
+
const listenAddress = Option.orElse(config.runnerListenAddress, () => config.runnerAddress);
|
|
51
|
+
if (listenAddress._tag === "None") {
|
|
52
|
+
return yield* Effect.die("NodeClusterHttp.layerHttpServer: ShardingConfig.runnerAddress is None");
|
|
48
53
|
}
|
|
49
54
|
return NodeHttpServer.layer(_nodeHttp.createServer, listenAddress.value);
|
|
50
55
|
}).pipe(Layer.unwrapEffect);
|
|
51
|
-
//# sourceMappingURL=
|
|
56
|
+
//# sourceMappingURL=NodeClusterHttp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeClusterHttp.js","names":["HttpRunner","_interopRequireWildcard","require","MessageStorage","RunnerHealth","Runners","RunnerStorage","ShardingConfig","SqlMessageStorage","SqlRunnerStorage","RpcSerialization","Effect","Layer","Option","_nodeHttp","_NodeClusterSocket","NodeFileSystem","NodeHttpClient","NodeHttpServer","NodeSocket","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","layer","options","clientOnly","transport","provide","layerHttpClientOnly","layerUndici","layerWebsocketClientOnly","layerWebSocketConstructor","layerHttp","layerHttpServer","layerWebsocket","runnerHealth","empty","layerK8s","runnerHealthK8s","pipe","layerHttpClientK8s","layerPing","layerRpc","layerClientProtocolHttpDefault","layerClientProtocolWebsocketDefault","provideMerge","storage","layerNoop","orDie","layerMemory","layerFromEnv","shardingConfig","serialization","layerNdjson","layerMsgPack","exports","gen","config","listenAddress","orElse","runnerListenAddress","runnerAddress","_tag","die","createServer","value","unwrapEffect"],"sources":["../../src/NodeClusterHttp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.layer = void 0;
|
|
7
|
+
Object.defineProperty(exports, "layerClientProtocol", {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: function () {
|
|
10
|
+
return _NodeClusterSocket.layerClientProtocol;
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
exports.layerHttpClientK8s = exports.layerDispatcherK8s = void 0;
|
|
14
|
+
Object.defineProperty(exports, "layerSocketServer", {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: function () {
|
|
17
|
+
return _NodeClusterSocket.layerSocketServer;
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
var MessageStorage = _interopRequireWildcard(require("@effect/cluster/MessageStorage"));
|
|
21
|
+
var RunnerHealth = _interopRequireWildcard(require("@effect/cluster/RunnerHealth"));
|
|
22
|
+
var Runners = _interopRequireWildcard(require("@effect/cluster/Runners"));
|
|
23
|
+
var RunnerStorage = _interopRequireWildcard(require("@effect/cluster/RunnerStorage"));
|
|
24
|
+
var ShardingConfig = _interopRequireWildcard(require("@effect/cluster/ShardingConfig"));
|
|
25
|
+
var SocketRunner = _interopRequireWildcard(require("@effect/cluster/SocketRunner"));
|
|
26
|
+
var SqlMessageStorage = _interopRequireWildcard(require("@effect/cluster/SqlMessageStorage"));
|
|
27
|
+
var SqlRunnerStorage = _interopRequireWildcard(require("@effect/cluster/SqlRunnerStorage"));
|
|
28
|
+
var _NodeClusterSocket = require("@effect/platform-node-shared/NodeClusterSocket");
|
|
29
|
+
var FileSystem = _interopRequireWildcard(require("@effect/platform/FileSystem"));
|
|
30
|
+
var RpcSerialization = _interopRequireWildcard(require("@effect/rpc/RpcSerialization"));
|
|
31
|
+
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
32
|
+
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
33
|
+
var NodeFileSystem = _interopRequireWildcard(require("./NodeFileSystem.js"));
|
|
34
|
+
var NodeHttpClient = _interopRequireWildcard(require("./NodeHttpClient.js"));
|
|
35
|
+
var Undici = _interopRequireWildcard(require("./Undici.js"));
|
|
36
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
37
|
+
/**
|
|
38
|
+
* @since 1.0.0
|
|
39
|
+
*/
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* @since 1.0.0
|
|
43
|
+
* @category Layers
|
|
44
|
+
*/
|
|
45
|
+
const layer = options => {
|
|
46
|
+
const layer = options?.clientOnly
|
|
47
|
+
// client only
|
|
48
|
+
? Layer.provide(SocketRunner.layerClientOnly, _NodeClusterSocket.layerClientProtocol)
|
|
49
|
+
// with server
|
|
50
|
+
: Layer.provide(SocketRunner.layer, [_NodeClusterSocket.layerSocketServer, _NodeClusterSocket.layerClientProtocol]);
|
|
51
|
+
const runnerHealth = options?.clientOnly ? Layer.empty : options?.runnerHealth === "k8s" ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(Layer.provide([NodeFileSystem.layer, layerHttpClientK8s])) : RunnerHealth.layerPing.pipe(Layer.provide(Runners.layerRpc), Layer.provide(_NodeClusterSocket.layerClientProtocol));
|
|
52
|
+
return layer.pipe(Layer.provide(runnerHealth), Layer.provideMerge(options?.storage === "local" ? MessageStorage.layerNoop : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlMessageStorage.layer)), Layer.provide(options?.storage === "local" ? RunnerStorage.layerMemory : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlRunnerStorage.layer)), Layer.provide(ShardingConfig.layerFromEnv(options?.shardingConfig)), Layer.provide(options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack));
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* @since 1.0.0
|
|
56
|
+
* @category Layers
|
|
57
|
+
*/
|
|
58
|
+
exports.layer = layer;
|
|
59
|
+
const layerDispatcherK8s = exports.layerDispatcherK8s = /*#__PURE__*/Layer.scoped(NodeHttpClient.Dispatcher)(Effect.gen(function* () {
|
|
60
|
+
const fs = yield* FileSystem.FileSystem;
|
|
61
|
+
const caCertOption = yield* fs.readFileString("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt").pipe(Effect.option);
|
|
62
|
+
if (caCertOption._tag === "Some") {
|
|
63
|
+
return yield* Effect.acquireRelease(Effect.sync(() => new Undici.Agent({
|
|
64
|
+
connect: {
|
|
65
|
+
ca: caCertOption.value
|
|
66
|
+
}
|
|
67
|
+
})), agent => Effect.promise(() => agent.destroy()));
|
|
68
|
+
}
|
|
69
|
+
return yield* NodeHttpClient.makeDispatcher;
|
|
70
|
+
})).pipe(/*#__PURE__*/Layer.provide(NodeFileSystem.layer));
|
|
71
|
+
/**
|
|
72
|
+
* @since 1.0.0
|
|
73
|
+
* @category Layers
|
|
74
|
+
*/
|
|
75
|
+
const layerHttpClientK8s = exports.layerHttpClientK8s = /*#__PURE__*/Layer.fresh(NodeHttpClient.layerUndiciWithoutDispatcher).pipe(/*#__PURE__*/Layer.provide(layerDispatcherK8s));
|
|
76
|
+
//# sourceMappingURL=NodeClusterSocket.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeClusterSocket.js","names":["MessageStorage","_interopRequireWildcard","require","RunnerHealth","Runners","RunnerStorage","ShardingConfig","SocketRunner","SqlMessageStorage","SqlRunnerStorage","_NodeClusterSocket","FileSystem","RpcSerialization","Effect","Layer","NodeFileSystem","NodeHttpClient","Undici","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","layer","options","clientOnly","provide","layerClientOnly","layerClientProtocol","layerSocketServer","runnerHealth","empty","layerK8s","runnerHealthK8s","pipe","layerHttpClientK8s","layerPing","layerRpc","provideMerge","storage","layerNoop","orDie","layerMemory","layerFromEnv","shardingConfig","serialization","layerNdjson","layerMsgPack","exports","layerDispatcherK8s","scoped","Dispatcher","gen","fs","caCertOption","readFileString","option","_tag","acquireRelease","sync","Agent","connect","ca","value","agent","promise","destroy","makeDispatcher","fresh","layerUndiciWithoutDispatcher"],"sources":["../../src/NodeClusterSocket.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/index.js
CHANGED
|
@@ -3,15 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.Undici = exports.NodeWorkerRunner = exports.NodeWorker = exports.NodeTerminal = exports.NodeStream = exports.NodeSocketServer = exports.NodeSocket = exports.NodeSink = exports.NodeRuntime = exports.NodePath = exports.NodeMultipart = exports.NodeKeyValueStore = exports.NodeHttpServerRequest = exports.NodeHttpServer = exports.NodeHttpPlatform = exports.NodeHttpClient = exports.NodeFileSystem = exports.NodeContext = exports.NodeCommandExecutor = exports.
|
|
7
|
-
var
|
|
8
|
-
exports.
|
|
9
|
-
var
|
|
10
|
-
exports.
|
|
11
|
-
var _NodeClusterShardManagerHttp = _interopRequireWildcard(require("./NodeClusterShardManagerHttp.js"));
|
|
12
|
-
exports.NodeClusterShardManagerHttp = _NodeClusterShardManagerHttp;
|
|
13
|
-
var _NodeClusterShardManagerSocket = _interopRequireWildcard(require("./NodeClusterShardManagerSocket.js"));
|
|
14
|
-
exports.NodeClusterShardManagerSocket = _NodeClusterShardManagerSocket;
|
|
6
|
+
exports.Undici = exports.NodeWorkerRunner = exports.NodeWorker = exports.NodeTerminal = exports.NodeStream = exports.NodeSocketServer = exports.NodeSocket = exports.NodeSink = exports.NodeRuntime = exports.NodePath = exports.NodeMultipart = exports.NodeKeyValueStore = exports.NodeHttpServerRequest = exports.NodeHttpServer = exports.NodeHttpPlatform = exports.NodeHttpClient = exports.NodeFileSystem = exports.NodeContext = exports.NodeCommandExecutor = exports.NodeClusterSocket = exports.NodeClusterHttp = void 0;
|
|
7
|
+
var _NodeClusterHttp = _interopRequireWildcard(require("./NodeClusterHttp.js"));
|
|
8
|
+
exports.NodeClusterHttp = _NodeClusterHttp;
|
|
9
|
+
var _NodeClusterSocket = _interopRequireWildcard(require("./NodeClusterSocket.js"));
|
|
10
|
+
exports.NodeClusterSocket = _NodeClusterSocket;
|
|
15
11
|
var _NodeCommandExecutor = _interopRequireWildcard(require("./NodeCommandExecutor.js"));
|
|
16
12
|
exports.NodeCommandExecutor = _NodeCommandExecutor;
|
|
17
13
|
var _NodeContext = _interopRequireWildcard(require("./NodeContext.js"));
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as MessageStorage from "@effect/cluster/MessageStorage";
|
|
2
|
-
import
|
|
2
|
+
import * as Runners from "@effect/cluster/Runners";
|
|
3
|
+
import * as RunnerStorage from "@effect/cluster/RunnerStorage";
|
|
3
4
|
import type { Sharding } from "@effect/cluster/Sharding";
|
|
4
5
|
import * as ShardingConfig from "@effect/cluster/ShardingConfig";
|
|
5
6
|
import type * as Etag from "@effect/platform/Etag";
|
|
@@ -7,7 +8,6 @@ import type { HttpPlatform } from "@effect/platform/HttpPlatform";
|
|
|
7
8
|
import type { HttpServer } from "@effect/platform/HttpServer";
|
|
8
9
|
import type { ServeError } from "@effect/platform/HttpServerError";
|
|
9
10
|
import type { SqlClient } from "@effect/sql/SqlClient";
|
|
10
|
-
import type { SqlError } from "@effect/sql/SqlError";
|
|
11
11
|
import type { ConfigError } from "effect/ConfigError";
|
|
12
12
|
import * as Layer from "effect/Layer";
|
|
13
13
|
import type { NodeContext } from "./NodeContext.js";
|
|
@@ -15,16 +15,21 @@ import type { NodeContext } from "./NodeContext.js";
|
|
|
15
15
|
* @since 1.0.0
|
|
16
16
|
* @category Layers
|
|
17
17
|
*/
|
|
18
|
-
export declare const layer: <const ClientOnly extends boolean = false, const Storage extends "
|
|
18
|
+
export declare const layer: <const ClientOnly extends boolean = false, const Storage extends "local" | "sql" | "byo" = never, const Health extends "ping" | "k8s" = never>(options: {
|
|
19
19
|
readonly transport: "http" | "websocket";
|
|
20
20
|
readonly serialization?: "msgpack" | "ndjson" | undefined;
|
|
21
21
|
readonly clientOnly?: ClientOnly | undefined;
|
|
22
22
|
readonly storage?: Storage | undefined;
|
|
23
|
+
readonly runnerHealth?: Health | undefined;
|
|
24
|
+
readonly runnerHealthK8s?: {
|
|
25
|
+
readonly namespace?: string | undefined;
|
|
26
|
+
readonly labelSelector?: string | undefined;
|
|
27
|
+
} | undefined;
|
|
23
28
|
readonly shardingConfig?: Partial<ShardingConfig.ShardingConfig["Type"]> | undefined;
|
|
24
|
-
}) => ClientOnly extends true ? Layer.Layer<Sharding | Runners.Runners | MessageStorage.MessageStorage, ConfigError
|
|
29
|
+
}) => ClientOnly extends true ? Layer.Layer<Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage), ConfigError, "local" extends Storage ? never : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage) : SqlClient> : Layer.Layer<Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage), ServeError | ConfigError, "local" extends Storage ? never : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage) : SqlClient>;
|
|
25
30
|
/**
|
|
26
31
|
* @since 1.0.0
|
|
27
32
|
* @category Layers
|
|
28
33
|
*/
|
|
29
34
|
export declare const layerHttpServer: Layer.Layer<HttpPlatform | Etag.Generator | NodeContext | HttpServer, ServeError, ShardingConfig.ShardingConfig>;
|
|
30
|
-
//# sourceMappingURL=
|
|
35
|
+
//# sourceMappingURL=NodeClusterHttp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeClusterHttp.d.ts","sourceRoot":"","sources":["../../src/NodeClusterHttp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAEhE,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAA;AAClD,OAAO,KAAK,aAAa,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAGhE,OAAO,KAAK,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAElE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAIrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAMnD;;;GAGG;AACH,eAAO,MAAM,KAAK,GAChB,KAAK,CAAC,UAAU,SAAS,OAAO,GAAG,KAAK,EACxC,KAAK,CAAC,OAAO,SAAS,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,EACrD,KAAK,CAAC,MAAM,SAAS,MAAM,GAAG,KAAK,GAAG,KAAK,EAC3C,SAAS;IACT,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAAA;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1C,QAAQ,CAAC,eAAe,CAAC,EAAE;QACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC5C,GAAG,SAAS,CAAA;IACb,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAA;CACrF,KAAG,UAAU,SAAS,IAAI,GAAG,KAAK,CAAC,KAAK,CACrC,QAAQ,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,KAAK,GAAG,cAAc,CAAC,cAAc,CAAC,EAC5F,WAAW,EACX,OAAO,SAAS,OAAO,GAAG,KAAK,GAC3B,KAAK,SAAS,OAAO,GAAG,CAAC,cAAc,CAAC,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,GACrF,SAAS,CACd,GACD,KAAK,CAAC,KAAK,CACT,QAAQ,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,KAAK,GAAG,cAAc,CAAC,cAAc,CAAC,EAC5F,UAAU,GAAG,WAAW,EACxB,OAAO,SAAS,OAAO,GAAG,KAAK,GAC3B,KAAK,SAAS,OAAO,GAAG,CAAC,cAAc,CAAC,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,GACrF,SAAS,CAiDhB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,KAAK,CACrC,YAAY,GACZ,IAAI,CAAC,SAAS,GACd,WAAW,GACX,UAAU,EACZ,UAAU,EACV,cAAc,CAAC,cAAc,CAQJ,CAAA"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as MessageStorage from "@effect/cluster/MessageStorage";
|
|
5
|
+
import * as Runners from "@effect/cluster/Runners";
|
|
6
|
+
import * as RunnerStorage from "@effect/cluster/RunnerStorage";
|
|
7
|
+
import type { Sharding } from "@effect/cluster/Sharding";
|
|
8
|
+
import * as ShardingConfig from "@effect/cluster/ShardingConfig";
|
|
9
|
+
import { layerClientProtocol, layerSocketServer } from "@effect/platform-node-shared/NodeClusterSocket";
|
|
10
|
+
import type * as HttpClient from "@effect/platform/HttpClient";
|
|
11
|
+
import type * as SocketServer from "@effect/platform/SocketServer";
|
|
12
|
+
import type { SqlClient } from "@effect/sql/SqlClient";
|
|
13
|
+
import type { ConfigError } from "effect/ConfigError";
|
|
14
|
+
import * as Layer from "effect/Layer";
|
|
15
|
+
import * as NodeHttpClient from "./NodeHttpClient.js";
|
|
16
|
+
export {
|
|
17
|
+
/**
|
|
18
|
+
* @since 1.0.0
|
|
19
|
+
* @category Re-exports
|
|
20
|
+
*/
|
|
21
|
+
layerClientProtocol,
|
|
22
|
+
/**
|
|
23
|
+
* @since 1.0.0
|
|
24
|
+
* @category Re-exports
|
|
25
|
+
*/
|
|
26
|
+
layerSocketServer };
|
|
27
|
+
/**
|
|
28
|
+
* @since 1.0.0
|
|
29
|
+
* @category Layers
|
|
30
|
+
*/
|
|
31
|
+
export declare const layer: <const ClientOnly extends boolean = false, const Storage extends "local" | "sql" | "byo" = never, const Health extends "ping" | "k8s" = never>(options?: {
|
|
32
|
+
readonly serialization?: "msgpack" | "ndjson" | undefined;
|
|
33
|
+
readonly clientOnly?: ClientOnly | undefined;
|
|
34
|
+
readonly storage?: Storage | undefined;
|
|
35
|
+
readonly runnerHealth?: Health | undefined;
|
|
36
|
+
readonly runnerHealthK8s?: {
|
|
37
|
+
readonly namespace?: string | undefined;
|
|
38
|
+
readonly labelSelector?: string | undefined;
|
|
39
|
+
} | undefined;
|
|
40
|
+
readonly shardingConfig?: Partial<ShardingConfig.ShardingConfig["Type"]> | undefined;
|
|
41
|
+
}) => ClientOnly extends true ? Layer.Layer<Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage), ConfigError, "local" extends Storage ? never : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage) : SqlClient> : Layer.Layer<Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage), SocketServer.SocketServerError | ConfigError, "local" extends Storage ? never : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage) : SqlClient>;
|
|
42
|
+
/**
|
|
43
|
+
* @since 1.0.0
|
|
44
|
+
* @category Layers
|
|
45
|
+
*/
|
|
46
|
+
export declare const layerDispatcherK8s: Layer.Layer<NodeHttpClient.Dispatcher>;
|
|
47
|
+
/**
|
|
48
|
+
* @since 1.0.0
|
|
49
|
+
* @category Layers
|
|
50
|
+
*/
|
|
51
|
+
export declare const layerHttpClientK8s: Layer.Layer<HttpClient.HttpClient>;
|
|
52
|
+
//# sourceMappingURL=NodeClusterSocket.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeClusterSocket.d.ts","sourceRoot":"","sources":["../../src/NodeClusterSocket.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAEhE,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAA;AAClD,OAAO,KAAK,aAAa,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAIhE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAA;AAEvG,OAAO,KAAK,KAAK,UAAU,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,KAAK,YAAY,MAAM,+BAA+B,CAAA;AAElE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAGrD,OAAO;AACL;;;GAGG;AACH,mBAAmB;AACnB;;;GAGG;AACH,iBAAiB,EAClB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,KAAK,GAChB,KAAK,CAAC,UAAU,SAAS,OAAO,GAAG,KAAK,EACxC,KAAK,CAAC,OAAO,SAAS,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,EACrD,KAAK,CAAC,MAAM,SAAS,MAAM,GAAG,KAAK,GAAG,KAAK,EAE3C,UAAU;IACR,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1C,QAAQ,CAAC,eAAe,CAAC,EAAE;QACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC5C,GAAG,SAAS,CAAA;IACb,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAA;CACrF,KACA,UAAU,SAAS,IAAI,GAAG,KAAK,CAAC,KAAK,CACpC,QAAQ,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,KAAK,GAAG,cAAc,CAAC,cAAc,CAAC,EAC5F,WAAW,EACX,OAAO,SAAS,OAAO,GAAG,KAAK,GAC3B,KAAK,SAAS,OAAO,GAAG,CAAC,cAAc,CAAC,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,GACrF,SAAS,CACd,GACD,KAAK,CAAC,KAAK,CACT,QAAQ,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,KAAK,GAAG,cAAc,CAAC,cAAc,CAAC,EAC5F,YAAY,CAAC,iBAAiB,GAAG,WAAW,EAC5C,OAAO,SAAS,OAAO,GAAG,KAAK,GAC3B,KAAK,SAAS,OAAO,GAAG,CAAC,cAAc,CAAC,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,GACrF,SAAS,CAyChB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAuBrE,CAAA;AACD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAIjE,CAAA"}
|
package/dist/dts/index.d.ts
CHANGED
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
-
export * as
|
|
4
|
+
export * as NodeClusterHttp from "./NodeClusterHttp.js";
|
|
5
5
|
/**
|
|
6
6
|
* @since 1.0.0
|
|
7
7
|
*/
|
|
8
|
-
export * as
|
|
9
|
-
/**
|
|
10
|
-
* @since 1.0.0
|
|
11
|
-
*/
|
|
12
|
-
export * as NodeClusterShardManagerHttp from "./NodeClusterShardManagerHttp.js";
|
|
13
|
-
/**
|
|
14
|
-
* @since 1.0.0
|
|
15
|
-
*/
|
|
16
|
-
export * as NodeClusterShardManagerSocket from "./NodeClusterShardManagerSocket.js";
|
|
8
|
+
export * as NodeClusterSocket from "./NodeClusterSocket.js";
|
|
17
9
|
/**
|
|
18
10
|
* @since 1.0.0
|
|
19
11
|
*/
|
package/dist/dts/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AAEvD;;GAEG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAE3D;;GAEG;AACH,OAAO,KAAK,mBAAmB,MAAM,0BAA0B,CAAA;AAE/D;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,qBAAqB,MAAM,4BAA4B,CAAA;AAEnE;;GAEG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAE3D;;GAEG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAEnD;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as HttpRunner from "@effect/cluster/HttpRunner";
|
|
5
|
+
import * as MessageStorage from "@effect/cluster/MessageStorage";
|
|
6
|
+
import * as RunnerHealth from "@effect/cluster/RunnerHealth";
|
|
7
|
+
import * as Runners from "@effect/cluster/Runners";
|
|
8
|
+
import * as RunnerStorage from "@effect/cluster/RunnerStorage";
|
|
9
|
+
import * as ShardingConfig from "@effect/cluster/ShardingConfig";
|
|
10
|
+
import * as SqlMessageStorage from "@effect/cluster/SqlMessageStorage";
|
|
11
|
+
import * as SqlRunnerStorage from "@effect/cluster/SqlRunnerStorage";
|
|
12
|
+
import * as RpcSerialization from "@effect/rpc/RpcSerialization";
|
|
13
|
+
import * as Effect from "effect/Effect";
|
|
14
|
+
import * as Layer from "effect/Layer";
|
|
15
|
+
import * as Option from "effect/Option";
|
|
16
|
+
import { createServer } from "node:http";
|
|
17
|
+
import { layerHttpClientK8s } from "./NodeClusterSocket.js";
|
|
18
|
+
import * as NodeFileSystem from "./NodeFileSystem.js";
|
|
19
|
+
import * as NodeHttpClient from "./NodeHttpClient.js";
|
|
20
|
+
import * as NodeHttpServer from "./NodeHttpServer.js";
|
|
21
|
+
import * as NodeSocket from "./NodeSocket.js";
|
|
22
|
+
/**
|
|
23
|
+
* @since 1.0.0
|
|
24
|
+
* @category Layers
|
|
25
|
+
*/
|
|
26
|
+
export const layer = options => {
|
|
27
|
+
const layer = options.clientOnly
|
|
28
|
+
// client only
|
|
29
|
+
? options.transport === "http" ? Layer.provide(HttpRunner.layerHttpClientOnly, NodeHttpClient.layerUndici) : Layer.provide(HttpRunner.layerWebsocketClientOnly, NodeSocket.layerWebSocketConstructor)
|
|
30
|
+
// with server
|
|
31
|
+
: options.transport === "http" ? Layer.provide(HttpRunner.layerHttp, [layerHttpServer, NodeHttpClient.layerUndici]) : Layer.provide(HttpRunner.layerWebsocket, [layerHttpServer, NodeSocket.layerWebSocketConstructor]);
|
|
32
|
+
const runnerHealth = options?.clientOnly ? Layer.empty : options?.runnerHealth === "k8s" ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(Layer.provide([NodeFileSystem.layer, layerHttpClientK8s])) : RunnerHealth.layerPing.pipe(Layer.provide(Runners.layerRpc), Layer.provide(options.transport === "http" ? HttpRunner.layerClientProtocolHttpDefault.pipe(Layer.provide(NodeHttpClient.layerUndici)) : HttpRunner.layerClientProtocolWebsocketDefault.pipe(Layer.provide(NodeSocket.layerWebSocketConstructor))));
|
|
33
|
+
return layer.pipe(Layer.provide(runnerHealth), Layer.provideMerge(options?.storage === "local" ? MessageStorage.layerNoop : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlMessageStorage.layer)), Layer.provide(options?.storage === "local" ? RunnerStorage.layerMemory : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlRunnerStorage.layer)), Layer.provide(ShardingConfig.layerFromEnv(options?.shardingConfig)), Layer.provide(options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack));
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* @since 1.0.0
|
|
37
|
+
* @category Layers
|
|
38
|
+
*/
|
|
39
|
+
export const layerHttpServer = /*#__PURE__*/Effect.gen(function* () {
|
|
40
|
+
const config = yield* ShardingConfig.ShardingConfig;
|
|
41
|
+
const listenAddress = Option.orElse(config.runnerListenAddress, () => config.runnerAddress);
|
|
42
|
+
if (listenAddress._tag === "None") {
|
|
43
|
+
return yield* Effect.die("NodeClusterHttp.layerHttpServer: ShardingConfig.runnerAddress is None");
|
|
44
|
+
}
|
|
45
|
+
return NodeHttpServer.layer(createServer, listenAddress.value);
|
|
46
|
+
}).pipe(Layer.unwrapEffect);
|
|
47
|
+
//# sourceMappingURL=NodeClusterHttp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeClusterHttp.js","names":["HttpRunner","MessageStorage","RunnerHealth","Runners","RunnerStorage","ShardingConfig","SqlMessageStorage","SqlRunnerStorage","RpcSerialization","Effect","Layer","Option","createServer","layerHttpClientK8s","NodeFileSystem","NodeHttpClient","NodeHttpServer","NodeSocket","layer","options","clientOnly","transport","provide","layerHttpClientOnly","layerUndici","layerWebsocketClientOnly","layerWebSocketConstructor","layerHttp","layerHttpServer","layerWebsocket","runnerHealth","empty","layerK8s","runnerHealthK8s","pipe","layerPing","layerRpc","layerClientProtocolHttpDefault","layerClientProtocolWebsocketDefault","provideMerge","storage","layerNoop","orDie","layerMemory","layerFromEnv","shardingConfig","serialization","layerNdjson","layerMsgPack","gen","config","listenAddress","orElse","runnerListenAddress","runnerAddress","_tag","die","value","unwrapEffect"],"sources":["../../src/NodeClusterHttp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as MessageStorage from "@effect/cluster/MessageStorage";
|
|
5
|
+
import * as RunnerHealth from "@effect/cluster/RunnerHealth";
|
|
6
|
+
import * as Runners from "@effect/cluster/Runners";
|
|
7
|
+
import * as RunnerStorage from "@effect/cluster/RunnerStorage";
|
|
8
|
+
import * as ShardingConfig from "@effect/cluster/ShardingConfig";
|
|
9
|
+
import * as SocketRunner from "@effect/cluster/SocketRunner";
|
|
10
|
+
import * as SqlMessageStorage from "@effect/cluster/SqlMessageStorage";
|
|
11
|
+
import * as SqlRunnerStorage from "@effect/cluster/SqlRunnerStorage";
|
|
12
|
+
import { layerClientProtocol, layerSocketServer } from "@effect/platform-node-shared/NodeClusterSocket";
|
|
13
|
+
import * as FileSystem from "@effect/platform/FileSystem";
|
|
14
|
+
import * as RpcSerialization from "@effect/rpc/RpcSerialization";
|
|
15
|
+
import * as Effect from "effect/Effect";
|
|
16
|
+
import * as Layer from "effect/Layer";
|
|
17
|
+
import * as NodeFileSystem from "./NodeFileSystem.js";
|
|
18
|
+
import * as NodeHttpClient from "./NodeHttpClient.js";
|
|
19
|
+
import * as Undici from "./Undici.js";
|
|
20
|
+
export {
|
|
21
|
+
/**
|
|
22
|
+
* @since 1.0.0
|
|
23
|
+
* @category Re-exports
|
|
24
|
+
*/
|
|
25
|
+
layerClientProtocol,
|
|
26
|
+
/**
|
|
27
|
+
* @since 1.0.0
|
|
28
|
+
* @category Re-exports
|
|
29
|
+
*/
|
|
30
|
+
layerSocketServer };
|
|
31
|
+
/**
|
|
32
|
+
* @since 1.0.0
|
|
33
|
+
* @category Layers
|
|
34
|
+
*/
|
|
35
|
+
export const layer = options => {
|
|
36
|
+
const layer = options?.clientOnly
|
|
37
|
+
// client only
|
|
38
|
+
? Layer.provide(SocketRunner.layerClientOnly, layerClientProtocol)
|
|
39
|
+
// with server
|
|
40
|
+
: Layer.provide(SocketRunner.layer, [layerSocketServer, layerClientProtocol]);
|
|
41
|
+
const runnerHealth = options?.clientOnly ? Layer.empty : options?.runnerHealth === "k8s" ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(Layer.provide([NodeFileSystem.layer, layerHttpClientK8s])) : RunnerHealth.layerPing.pipe(Layer.provide(Runners.layerRpc), Layer.provide(layerClientProtocol));
|
|
42
|
+
return layer.pipe(Layer.provide(runnerHealth), Layer.provideMerge(options?.storage === "local" ? MessageStorage.layerNoop : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlMessageStorage.layer)), Layer.provide(options?.storage === "local" ? RunnerStorage.layerMemory : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlRunnerStorage.layer)), Layer.provide(ShardingConfig.layerFromEnv(options?.shardingConfig)), Layer.provide(options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack));
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* @since 1.0.0
|
|
46
|
+
* @category Layers
|
|
47
|
+
*/
|
|
48
|
+
export const layerDispatcherK8s = /*#__PURE__*/Layer.scoped(NodeHttpClient.Dispatcher)(Effect.gen(function* () {
|
|
49
|
+
const fs = yield* FileSystem.FileSystem;
|
|
50
|
+
const caCertOption = yield* fs.readFileString("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt").pipe(Effect.option);
|
|
51
|
+
if (caCertOption._tag === "Some") {
|
|
52
|
+
return yield* Effect.acquireRelease(Effect.sync(() => new Undici.Agent({
|
|
53
|
+
connect: {
|
|
54
|
+
ca: caCertOption.value
|
|
55
|
+
}
|
|
56
|
+
})), agent => Effect.promise(() => agent.destroy()));
|
|
57
|
+
}
|
|
58
|
+
return yield* NodeHttpClient.makeDispatcher;
|
|
59
|
+
})).pipe(/*#__PURE__*/Layer.provide(NodeFileSystem.layer));
|
|
60
|
+
/**
|
|
61
|
+
* @since 1.0.0
|
|
62
|
+
* @category Layers
|
|
63
|
+
*/
|
|
64
|
+
export const layerHttpClientK8s = /*#__PURE__*/Layer.fresh(NodeHttpClient.layerUndiciWithoutDispatcher).pipe(/*#__PURE__*/Layer.provide(layerDispatcherK8s));
|
|
65
|
+
//# sourceMappingURL=NodeClusterSocket.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeClusterSocket.js","names":["MessageStorage","RunnerHealth","Runners","RunnerStorage","ShardingConfig","SocketRunner","SqlMessageStorage","SqlRunnerStorage","layerClientProtocol","layerSocketServer","FileSystem","RpcSerialization","Effect","Layer","NodeFileSystem","NodeHttpClient","Undici","layer","options","clientOnly","provide","layerClientOnly","runnerHealth","empty","layerK8s","runnerHealthK8s","pipe","layerHttpClientK8s","layerPing","layerRpc","provideMerge","storage","layerNoop","orDie","layerMemory","layerFromEnv","shardingConfig","serialization","layerNdjson","layerMsgPack","layerDispatcherK8s","scoped","Dispatcher","gen","fs","caCertOption","readFileString","option","_tag","acquireRelease","sync","Agent","connect","ca","value","agent","promise","destroy","makeDispatcher","fresh","layerUndiciWithoutDispatcher"],"sources":["../../src/NodeClusterSocket.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
-
export * as
|
|
4
|
+
export * as NodeClusterHttp from "./NodeClusterHttp.js";
|
|
5
5
|
/**
|
|
6
6
|
* @since 1.0.0
|
|
7
7
|
*/
|
|
8
|
-
export * as
|
|
9
|
-
/**
|
|
10
|
-
* @since 1.0.0
|
|
11
|
-
*/
|
|
12
|
-
export * as NodeClusterShardManagerHttp from "./NodeClusterShardManagerHttp.js";
|
|
13
|
-
/**
|
|
14
|
-
* @since 1.0.0
|
|
15
|
-
*/
|
|
16
|
-
export * as NodeClusterShardManagerSocket from "./NodeClusterShardManagerSocket.js";
|
|
8
|
+
export * as NodeClusterSocket from "./NodeClusterSocket.js";
|
|
17
9
|
/**
|
|
18
10
|
* @since 1.0.0
|
|
19
11
|
*/
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["NodeClusterHttp","NodeClusterSocket","NodeCommandExecutor","NodeContext","NodeFileSystem","NodeHttpClient","NodeHttpPlatform","NodeHttpServer","NodeHttpServerRequest","NodeKeyValueStore","NodeMultipart","NodePath","NodeRuntime","NodeSink","NodeSocket","NodeSocketServer","NodeStream","NodeTerminal","NodeWorker","NodeWorkerRunner","Undici"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,eAAe,MAAM,sBAAsB;AAEvD;;;AAGA,OAAO,KAAKC,iBAAiB,MAAM,wBAAwB;AAE3D;;;AAGA,OAAO,KAAKC,mBAAmB,MAAM,0BAA0B;AAE/D;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,qBAAqB,MAAM,4BAA4B;AAEnE;;;AAGA,OAAO,KAAKC,iBAAiB,MAAM,wBAAwB;AAE3D;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,YAAY,MAAM,mBAAmB;AAEjD;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,MAAM,MAAM,aAAa","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/platform-node",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.99.0",
|
|
4
4
|
"description": "Platform specific implementations for the Node.js runtime",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -14,14 +14,14 @@
|
|
|
14
14
|
"mime": "^3.0.0",
|
|
15
15
|
"undici": "^7.10.0",
|
|
16
16
|
"ws": "^8.18.2",
|
|
17
|
-
"@effect/platform-node-shared": "^0.
|
|
17
|
+
"@effect/platform-node-shared": "^0.52.0"
|
|
18
18
|
},
|
|
19
19
|
"peerDependencies": {
|
|
20
|
-
"@effect/cluster": "^0.
|
|
21
|
-
"@effect/
|
|
22
|
-
"@effect/
|
|
23
|
-
"@effect/sql": "^0.
|
|
24
|
-
"effect": "^3.
|
|
20
|
+
"@effect/cluster": "^0.51.0",
|
|
21
|
+
"@effect/platform": "^0.93.0",
|
|
22
|
+
"@effect/rpc": "^0.72.0",
|
|
23
|
+
"@effect/sql": "^0.47.0",
|
|
24
|
+
"effect": "^3.19.0"
|
|
25
25
|
},
|
|
26
26
|
"publishConfig": {
|
|
27
27
|
"provenance": true
|
|
@@ -36,25 +36,15 @@
|
|
|
36
36
|
"import": "./dist/esm/index.js",
|
|
37
37
|
"default": "./dist/cjs/index.js"
|
|
38
38
|
},
|
|
39
|
-
"./
|
|
40
|
-
"types": "./dist/dts/
|
|
41
|
-
"import": "./dist/esm/
|
|
42
|
-
"default": "./dist/cjs/
|
|
39
|
+
"./NodeClusterHttp": {
|
|
40
|
+
"types": "./dist/dts/NodeClusterHttp.d.ts",
|
|
41
|
+
"import": "./dist/esm/NodeClusterHttp.js",
|
|
42
|
+
"default": "./dist/cjs/NodeClusterHttp.js"
|
|
43
43
|
},
|
|
44
|
-
"./
|
|
45
|
-
"types": "./dist/dts/
|
|
46
|
-
"import": "./dist/esm/
|
|
47
|
-
"default": "./dist/cjs/
|
|
48
|
-
},
|
|
49
|
-
"./NodeClusterShardManagerHttp": {
|
|
50
|
-
"types": "./dist/dts/NodeClusterShardManagerHttp.d.ts",
|
|
51
|
-
"import": "./dist/esm/NodeClusterShardManagerHttp.js",
|
|
52
|
-
"default": "./dist/cjs/NodeClusterShardManagerHttp.js"
|
|
53
|
-
},
|
|
54
|
-
"./NodeClusterShardManagerSocket": {
|
|
55
|
-
"types": "./dist/dts/NodeClusterShardManagerSocket.d.ts",
|
|
56
|
-
"import": "./dist/esm/NodeClusterShardManagerSocket.js",
|
|
57
|
-
"default": "./dist/cjs/NodeClusterShardManagerSocket.js"
|
|
44
|
+
"./NodeClusterSocket": {
|
|
45
|
+
"types": "./dist/dts/NodeClusterSocket.d.ts",
|
|
46
|
+
"import": "./dist/esm/NodeClusterSocket.js",
|
|
47
|
+
"default": "./dist/cjs/NodeClusterSocket.js"
|
|
58
48
|
},
|
|
59
49
|
"./NodeCommandExecutor": {
|
|
60
50
|
"types": "./dist/dts/NodeCommandExecutor.d.ts",
|
|
@@ -164,17 +154,11 @@
|
|
|
164
154
|
},
|
|
165
155
|
"typesVersions": {
|
|
166
156
|
"*": {
|
|
167
|
-
"
|
|
168
|
-
"./dist/dts/
|
|
169
|
-
],
|
|
170
|
-
"NodeClusterRunnerSocket": [
|
|
171
|
-
"./dist/dts/NodeClusterRunnerSocket.d.ts"
|
|
172
|
-
],
|
|
173
|
-
"NodeClusterShardManagerHttp": [
|
|
174
|
-
"./dist/dts/NodeClusterShardManagerHttp.d.ts"
|
|
157
|
+
"NodeClusterHttp": [
|
|
158
|
+
"./dist/dts/NodeClusterHttp.d.ts"
|
|
175
159
|
],
|
|
176
|
-
"
|
|
177
|
-
"./dist/dts/
|
|
160
|
+
"NodeClusterSocket": [
|
|
161
|
+
"./dist/dts/NodeClusterSocket.d.ts"
|
|
178
162
|
],
|
|
179
163
|
"NodeCommandExecutor": [
|
|
180
164
|
"./dist/dts/NodeCommandExecutor.d.ts"
|