This site was originally managed using Jekyll and deployed to Github Pages. Now this is a work in progress migrating to Firebase using Bazel. Jekyll still needs to be executed outside of Bazel.
To set things up, I needed to create a pnpm-lock.yaml file. To do this, I installed pnpm via Brew and used it to generate the lock file from package.json:
# Install pnpm
brew install pnpm
# Create pnpm lock file
pnpm install --lockfile-only
# Uninstall pnpm
brew uninstall pnpmI also needed to ignore the node_modules directory:
echo "node_modules" > .bazelignoreFor bundle, I needed to configure packages to be installed in the workspace:
bundle config set --local path 'vendor/bundle'bazel run buildbazel run servebazel run deploy- Use the ruby/bundle external rules to make this build hermetic