simplify
This commit is contained in:
@@ -3,29 +3,12 @@
|
||||
*/
|
||||
import { bareHolesailEnvTruthy } from './bare-holesail-env.js'
|
||||
import {
|
||||
BARE_HOLESAIL_STATE_GUEST,
|
||||
bareHolesailManagedReadState,
|
||||
bareHolesailManagedServiceIsRunning,
|
||||
bareHolesailManagedSessionUsesGuestHolesailState,
|
||||
bareHolesailManagedStartOne,
|
||||
bareHolesailManagedWriteState
|
||||
} from './bare-holesail-managed.js'
|
||||
|
||||
/**
|
||||
* Guest session: persist **`bare-www-*`** next to initd boot state. Unlocked: caller's default
|
||||
* **`~/.holesail/state.json`** (same as other managed rows).
|
||||
* @param {Record<string, string | undefined>} env
|
||||
*/
|
||||
function wwwHolesailManagedEnv(env) {
|
||||
if (bareHolesailManagedSessionUsesGuestHolesailState(env)) {
|
||||
return {
|
||||
.../** @type {Record<string, string | undefined>} */ (env),
|
||||
BARE_OS_HOLESAIL_STATE: BARE_HOLESAIL_STATE_GUEST
|
||||
}
|
||||
}
|
||||
return /** @type {Record<string, string | undefined>} */ (env)
|
||||
}
|
||||
|
||||
export const BARE_OS_WWW_HOLESAIL_CONNECTION_ID_PREFIX = 'bare-www-'
|
||||
|
||||
/**
|
||||
@@ -64,8 +47,10 @@ export async function ensureBareOsWwwHolesailTunnel(ctx, env, port) {
|
||||
}
|
||||
if (!ctx.b4a || typeof ctx.b4a.from !== 'function') return
|
||||
|
||||
const gEnv = wwwHolesailManagedEnv(env)
|
||||
const { path, state } = await bareHolesailManagedReadState(ctx, gEnv)
|
||||
const { path, state } = await bareHolesailManagedReadState(
|
||||
ctx,
|
||||
/** @type {Record<string, string | undefined>} */ (env)
|
||||
)
|
||||
/** Holesail server mode requires an explicit loopback host. */
|
||||
const wantHost = '127.0.0.1'
|
||||
/** @type {Record<string, unknown>} */
|
||||
@@ -84,7 +69,11 @@ export async function ensureBareOsWwwHolesailTunnel(ctx, env, port) {
|
||||
if (server && curPort === p && enabled && hostOk) {
|
||||
if (bareHolesailManagedServiceIsRunning()) {
|
||||
try {
|
||||
await bareHolesailManagedStartOne(ctx, gEnv, id)
|
||||
await bareHolesailManagedStartOne(
|
||||
ctx,
|
||||
/** @type {Record<string, string | undefined>} */ (env),
|
||||
id
|
||||
)
|
||||
} catch {
|
||||
/* may already run */
|
||||
}
|
||||
@@ -100,11 +89,19 @@ export async function ensureBareOsWwwHolesailTunnel(ctx, env, port) {
|
||||
if (k) next.key = k
|
||||
}
|
||||
state.connections[id] = next
|
||||
await bareHolesailManagedWriteState(ctx, gEnv, state)
|
||||
await bareHolesailManagedWriteState(
|
||||
ctx,
|
||||
/** @type {Record<string, string | undefined>} */ (env),
|
||||
state
|
||||
)
|
||||
void path
|
||||
if (bareHolesailManagedServiceIsRunning()) {
|
||||
try {
|
||||
await bareHolesailManagedStartOne(ctx, gEnv, id)
|
||||
await bareHolesailManagedStartOne(
|
||||
ctx,
|
||||
/** @type {Record<string, string | undefined>} */ (env),
|
||||
id
|
||||
)
|
||||
} catch (e) {
|
||||
try {
|
||||
ctx.console?.error?.(
|
||||
|
||||
Reference in New Issue
Block a user