Skip to content

Commit

Permalink
fix: remove assets via globs to avoid volume mount lock (jackyzha0#877)
Browse files Browse the repository at this point in the history
* Fix docker volume lock issue by altering asset cleanup method
Modified build process to prevent the deletion of the output directory.

* Add fsOps utility for filesystem operations

* Use cleanDirectory in build process to fix volume lock issue

* applied prettier

* handle ENOENT error when output dir does not exist

* remove native function in favor of rimraf

* use path.join to concatenate paths
  • Loading branch information
kon-foo authored and renyunkang committed Oct 29, 2024
1 parent 9f34f01 commit 4f600ba
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions quartz/build.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ async function buildQuartz(argv: Argv, mut: Mutex, clientRefresh: () => void) {

const release = await mut.acquire()
perf.addEvent("clean")
await rimraf(output)
await rimraf(path.join(output, "*"), { glob: true })
console.log(`Cleaned output directory \`${output}\` in ${perf.timeSince("clean")}`)

perf.addEvent("glob")
Expand Down Expand Up @@ -375,7 +375,7 @@ async function rebuildFromEntrypoint(

// TODO: we can probably traverse the link graph to figure out what's safe to delete here
// instead of just deleting everything
await rimraf(argv.output)
await rimraf(path.join(argv.output, ".*"), { glob: true })
await emitContent(ctx, filteredContent)
console.log(chalk.green(`Done rebuilding in ${perf.timeSince()}`))
} catch (err) {
Expand Down

0 comments on commit 4f600ba

Please sign in to comment.