Fix/overlay destroy (#2707)

* feature: Make all errors in console.error be including an error for that stack tract

* feature: Make all errors in console.error be including an error for that stack tract

* fix: Add the tinisubreaper for the subreapers to know they are not the reaper

* fix: overlay always destroyed

* chore: Move the style of destroy to just private
This commit is contained in:
Jade
2024-08-14 11:16:23 -06:00
committed by GitHub
parent 7ef25a3816
commit c704626a39
19 changed files with 261 additions and 137 deletions

View File

@@ -3,7 +3,7 @@ import * as oet from "./oldEmbassyTypes"
import { Volume } from "../../../Models/Volume"
import * as child_process from "child_process"
import { promisify } from "util"
import { daemons, startSdk, T } from "@start9labs/start-sdk"
import { daemons, startSdk, T, utils } from "@start9labs/start-sdk"
import "isomorphic-fetch"
import { Manifest } from "./matchManifest"
import { DockerProcedureContainer } from "./DockerProcedureContainer"
@@ -124,19 +124,19 @@ export const polyfillEffects = (
wait(): Promise<oet.ResultType<string>>
term(): Promise<void>
} {
const dockerProcedureContainer = DockerProcedureContainer.of(
const promiseOverlay = DockerProcedureContainer.createOverlay(
effects,
manifest.id,
manifest.main,
manifest.volumes,
)
const daemon = dockerProcedureContainer.then((dockerProcedureContainer) =>
const daemon = promiseOverlay.then((overlay) =>
daemons.runCommand()(
effects,
{ id: manifest.main.image },
[input.command, ...(input.args || [])],
{
overlay: dockerProcedureContainer.overlay,
overlay,
},
),
)
@@ -224,16 +224,16 @@ export const polyfillEffects = (
return new Promise((resolve) => setTimeout(resolve, timeMs))
},
trace(whatToPrint: string): void {
console.trace(whatToPrint)
console.trace(utils.asError(whatToPrint))
},
warn(whatToPrint: string): void {
console.warn(whatToPrint)
console.warn(utils.asError(whatToPrint))
},
error(whatToPrint: string): void {
console.error(whatToPrint)
console.error(utils.asError(whatToPrint))
},
debug(whatToPrint: string): void {
console.debug(whatToPrint)
console.debug(utils.asError(whatToPrint))
},
info(whatToPrint: string): void {
console.log(false)
@@ -357,7 +357,7 @@ export const polyfillEffects = (
})
spawned.stderr.on("data", (data: unknown) => {
console.error(String(data))
console.error(`polyfill.runAsync`, utils.asError(data))
})
const id = async () => {