Hello,
I have followed the official Netlify documentation for deploying a Hugo static site, including the proper use of Git submodules for my site’s theme.
However, when deploying the site from my Git repository to Netlify, the build fails with an error saying:
Error: module “hugo-theme-monochrome” not found; either add it as a Hugo Module or store it in “/opt/build/repo/themes”.: module does not exist
hugo-theme-monochrome
is the name of the theme from here, which is also specified in my Hugo site’s config.toml
.
I can’t figure out why Netlify’s build process is failing to pull in the theme’s submodule.
I tried using netlify.toml
in my repository and also without where I specify build settings in my Netlify site’s build and deploy settings page. In both cases, the settings are:
[build]
command = "hugo --gc --minify"
publish = "public"
I also tried specifying the Hugo version but that didn’t make a difference.
Here’s a representative build log:
4:20:20 PM: build-image version: d7b3813f01c06610bc1723ff1b22446513ee7941 (focal)
4:20:20 PM: build-image tag: v4.14.3
4:20:20 PM: buildbot version: be0925a1b4e8f8d2c5a767f3e0decf8856cad273
4:20:20 PM: Building without cache
4:20:20 PM: Starting to prepare the repo for build
4:20:21 PM: No cached dependencies found. Cloning fresh repo
4:20:21 PM: git clone git@gitlab.com:penyuan/personal-site
4:20:22 PM: Preparing Git Reference refs/heads/main
4:20:23 PM: Parsing package.json dependencies
4:20:24 PM: Starting build script
4:20:24 PM: Installing dependencies
4:20:24 PM: Python version set to 2.7
4:20:24 PM: Downloading and installing node v16.18.1...
4:20:24 PM: Downloading https://nodejs.org/dist/v16.18.1/node-v16.18.1-linux-x64.tar.xz...
4:20:25 PM: Computing checksum with sha256sum
4:20:25 PM: Checksums matched!
4:20:27 PM: Now using node v16.18.1 (npm v8.19.2)
4:20:27 PM: Enabling node corepack
4:20:27 PM: Started restoring cached build plugins
4:20:27 PM: Finished restoring cached build plugins
4:20:27 PM: Attempting ruby version 2.7.2, read from environment
4:20:28 PM: Using ruby version 2.7.2
4:20:28 PM: Using PHP version 8.0
4:20:28 PM: Started restoring cached go cache
4:20:28 PM: Finished restoring cached go cache
4:20:28 PM: Installing Go version 1.17 (requested 1.17)
4:20:34 PM: unset GOOS;
4:20:34 PM: unset GOARCH;
4:20:34 PM: export GOROOT='/opt/buildhome/.gimme/versions/go1.17.linux.amd64';
4:20:34 PM: export PATH="/opt/buildhome/.gimme/versions/go1.17.linux.amd64/bin:${PATH}";
4:20:34 PM: go version >&2;
4:20:34 PM: export GIMME_ENV="/opt/buildhome/.gimme/env/go1.17.linux.amd64.env"
4:20:34 PM: go version go1.17 linux/amd64
4:20:34 PM: Detected 2 framework(s)
4:20:35 PM: null at version null
4:20:35 PM: null at version null
4:20:35 PM: Installing missing commands
4:20:35 PM: Verify run directory
4:20:36 PM:
4:20:36 PM: ────────────────────────────────────────────────────────────────
4:20:36 PM: Netlify Build
4:20:36 PM: ────────────────────────────────────────────────────────────────
4:20:36 PM:
4:20:36 PM: ❯ Version
4:20:36 PM: @netlify/build 28.1.13
4:20:36 PM:
4:20:36 PM: ❯ Flags
4:20:36 PM: baseRelDir: true
4:20:36 PM: buildId: 636e7642a5d32704259bd8da
4:20:36 PM: deployId: 636e7642a5d32704259bd8dc
4:20:36 PM:
4:20:36 PM: ❯ Current directory
4:20:36 PM: /opt/build/repo
4:20:36 PM:
4:20:36 PM: ❯ Config file
4:20:36 PM: No config file was defined: using default values.
4:20:36 PM:
4:20:36 PM: ❯ Context
4:20:36 PM: production
4:20:36 PM:
4:20:36 PM: ────────────────────────────────────────────────────────────────
4:20:36 PM: 1. Build command from Netlify app
4:20:36 PM: ────────────────────────────────────────────────────────────────
4:20:36 PM:
4:20:36 PM: $ hugo --gc --minify
4:20:36 PM: Error: module "hugo-theme-monochrome" not found; either add it as a Hugo Module or store it in "/opt/build/repo/themes".: module does not exist
4:20:36 PM: Total in 0 ms
4:20:36 PM:
4:20:36 PM: ────────────────────────────────────────────────────────────────
4:20:36 PM: "build.command" failed
4:20:36 PM: ────────────────────────────────────────────────────────────────
4:20:36 PM:
4:20:36 PM: Error message
4:20:36 PM: Command failed with exit code 255: hugo --gc --minify
4:20:36 PM:
4:20:36 PM: Error location
4:20:36 PM: In Build command from Netlify app:
4:20:36 PM: hugo --gc --minify
4:20:36 PM:
4:20:36 PM: Resolved config
4:20:36 PM: build:
4:20:36 PM: command: hugo --gc --minify
4:20:36 PM: commandOrigin: ui
4:20:36 PM: publish: /opt/build/repo/public
4:20:36 PM: publishOrigin: ui
4:20:37 PM: Caching artifacts
4:20:37 PM: Started saving build plugins
4:20:37 PM: Finished saving build plugins
4:20:37 PM: Started saving pip cache
4:20:37 PM: Finished saving pip cache
4:20:37 PM: Started saving emacs cask dependencies
4:20:37 PM: Finished saving emacs cask dependencies
4:20:37 PM: Started saving maven dependencies
4:20:37 PM: Finished saving maven dependencies
4:20:37 PM: Started saving boot dependencies
4:20:37 PM: Finished saving boot dependencies
4:20:37 PM: Started saving rust rustup cache
4:20:37 PM: Finished saving rust rustup cache
4:20:37 PM: Started saving go dependencies
4:20:37 PM: Finished saving go dependencies
4:20:40 PM: Build failed due to a user error: Build script returned non-zero exit code: 2
4:20:40 PM: Creating deploy upload records
4:20:40 PM: Failing build: Failed to build site
4:20:40 PM: Failed during stage 'building site': Build script returned non-zero exit code: 2
4:20:40 PM: Finished processing build request in 19.968050701s
I see a handful of other threads here that suggested making sure the themes
directory is available, so I committed that to my site’s Git repository, but that still didn’t help.
Can anyone advise on what I might be missing and how to fix this? Thank you!