Ghost/.github/scripts/clean.sh
Chris Raible af0f26c75f
Added Dev Container setup (#21279)
no issue

- Dev Containers let you work on Ghost in a consistent, isolated
environment with all the necessary development dependencies
pre-installed. VSCode (or Cursor) can effectively run _inside_ the
container, providing a local quality development environment while
working in a well-defined, isolated environment.
- For now the default setup only works with "Clone repository in
Container Volume" or "Clone PR in Container Volume" — this allows for a
super quick and simple setup. We can also introduce another
configuration to allow opening an existing local checkout in a Dev
Container, but that's not quite ready yet.
- This PR also added the `yarn clean:hard` command which: deletes all
node_modules, cleans the yarn cache, and cleans the NX cache. This will
be necessary for opening a local checkout in a Dev Container.
- To learn more about Dev Containers, read this guide from VSCode:
https://code.visualstudio.com/docs/devcontainers/containers#_personalizing-with-dotfile-repositories

---------

Co-authored-by: Joe Grigg <joe@ghost.org>
Co-authored-by: Steve Larson <9larsons@gmail.com>
2024-10-24 11:15:08 -07:00

27 lines
695 B
Bash
Executable File

#!/bin/bash
set -e
# Clean yarn cache
echo "Cleaning yarn cache..."
if [ "$DEVCONTAINER" = "true" ]; then
# In devcontainer, these directories are mounted from the host so we can't delete them — only their contents
rm -rf .yarncache/* .yarncachecopy/*
else
yarn cache clean
fi
# Reset Nx
echo "Resetting NX cache..."
rm -rf .nxcache .nx
# Recursively delete all node_modules directories
echo "Deleting all node_modules directories..."
find . -name "node_modules" -type d -prune -exec rm -rf '{}' +
echo "Deleting all build artifacts..."
find ./ghost -type d -name "build" -exec rm -rf '{}' +
find ./ghost -type f -name "tsconfig.tsbuildinfo" -delete
echo "Cleanup complete!"