refactor(core): route aggregate layers through nodes (#34621)
This commit is contained in:
@@ -9,6 +9,7 @@ import { Global } from "./global"
|
|||||||
import { EffectFlock } from "./util/effect-flock"
|
import { EffectFlock } from "./util/effect-flock"
|
||||||
import { makeGlobalNode } from "./effect/app-node"
|
import { makeGlobalNode } from "./effect/app-node"
|
||||||
import { filesystem } from "./effect/app-node-platform"
|
import { filesystem } from "./effect/app-node-platform"
|
||||||
|
import { LayerNode } from "./effect/layer-node"
|
||||||
import { makeRuntime } from "./effect/runtime"
|
import { makeRuntime } from "./effect/runtime"
|
||||||
import { NpmConfig } from "./npm-config"
|
import { NpmConfig } from "./npm-config"
|
||||||
|
|
||||||
@@ -259,7 +260,7 @@ export const node = makeGlobalNode({
|
|||||||
deps: [FSUtil.node, Global.node, filesystem, EffectFlock.node],
|
deps: [FSUtil.node, Global.node, filesystem, EffectFlock.node],
|
||||||
})
|
})
|
||||||
|
|
||||||
const { runPromise } = makeRuntime(Service, defaultLayer)
|
const { runPromise } = makeRuntime(Service, LayerNode.compile(node))
|
||||||
|
|
||||||
export async function install(...args: Parameters<Interface["install"]>) {
|
export async function install(...args: Parameters<Interface["install"]>) {
|
||||||
return runPromise((svc) => svc.install(...args))
|
return runPromise((svc) => svc.install(...args))
|
||||||
|
|||||||
@@ -206,6 +206,8 @@ export const cleanupLayer = Layer.effectDiscard(
|
|||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
|
|
||||||
export const defaultCleanupLayer = Layer.merge(defaultLayer, cleanupLayer.pipe(Layer.provide(defaultLayer)))
|
export const cleanupNode = makeGlobalNode({
|
||||||
|
name: "tool-output-cleanup",
|
||||||
export const cleanupNode = makeGlobalNode({ name: "tool-output-cleanup", layer: defaultCleanupLayer, deps: [] })
|
layer: Layer.merge(layer, cleanupLayer.pipe(Layer.provide(layer))),
|
||||||
|
deps: [FSUtil.node, Global.node],
|
||||||
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user