UNPKG

@lucidcms/core

Version:

The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.

2 lines 1.57 kB
import{startLoggerBuffering as e,stopLoggerBuffering as t}from"../../logger/index.mjs";import n from"../../i18n/prepare-translations.mjs";import{destroyKVAdapter as r,getInitializedKVAdapter as i}from"../../kv/lifecycle.mjs";import a from"../../../utils/services/create-service-context.mjs";import o from"../logger.mjs";import s from"../../config/load-config-file.mjs";import c from"../services/run-sync-tasks.mjs";import l from"../services/validate-env-vars.mjs";const u=async u=>{let d,f,p,m,h,g,_=async()=>{f&&(await Promise.allSettled([g?.destroy(),r(d,{config:f,env:p,runtimeContext:m})]),g=void 0,d=void 0)};try{e();let r=o.startTimer(),v=await s({prepareRuntime:!0});f=v.config,p=v.env,m=v.runtimeContext,h=(await n({config:f,projectRoot:v.projectRoot})).translationStore,u?.skipEnvValidation!==!0&&(await l({envSchema:v.envSchema,env:v.env})||(await t(),process.exit(1))),d=await i(f,{env:p,runtimeContext:m}),g=await f.db.connect(p),await c({config:f,database:g,translationStore:h,kv:d,env:p,runtimeContext:m})||(await _(),await t(),process.exit(1)),o.info(`Clearing KV cache...`),await d.clear(a({config:f,database:g,translationStore:h,env:p,runtimeContext:m,kv:d})),await _();let y=r();o.log(o.createBadge(`LUCID CMS`),`Sync completed`,o.color.green(`successfully`),`in`,o.color.green(o.formatMilliseconds(y)),{spaceAfter:!0,spaceBefore:!0}),await t(),process.exit(0)}catch(e){await _(),e instanceof Error?o.errorInstance(e,`Sync failed`):o.error(`Sync failed`,`Unknown error`),await t(),process.exit(1)}};export{u as default}; //# sourceMappingURL=sync.mjs.map