Skip to content

npm run build fails with "go.mod file not found" when using worker-go template #187

@uji

Description

@uji

Describe the bug When creating a new project using the worker-go template via create-cloudflare, the initial deployment (and build) fails.
The error indicates that the Go build command cannot find a go.mod file in the project directory.

To Reproduce Steps to reproduce the behavior

Node.js: v24.12.0
Go: go1.25.5 darwin/arm64

  1. Run: npm create cloudflare@latest -- --template github.com/syumai/workers/_templates/cloudflare/worker-go
  2. Follow the prompts and select "Yes" for "Do you want to deploy your application?".
  3. See error during the custom build step.
Logs
 ⛅️ wrangler 4.58.0
───────────────────
[custom build] Running: npm run build
[custom build]
[custom build] > project@0.0.0 build
[custom build] > go run github.com/syumai/workers/cmd/workers-assets-gen -mode=go && GOOS=js GOARCH=wasm go build -o ./build/app.wasm .
[custom build]
[custom build]
[custom build] no required module provides package github.com/syumai/workers/cmd/workers-assets-gen: go.mod file not found in current directory or any parent directory; see 'go help modules'
[custom build]
✘ [ERROR] Error: Command failed with exit code 1: npm run build

  no required module provides package github.com/syumai/workers/cmd/workers-assets-gen: go.mod file
  not found in current directory or any parent directory; see 'go help modules'

  > project@0.0.0 build
  > go run github.com/syumai/workers/cmd/workers-assets-gen -mode=go && GOOS=js GOARCH=wasm go build
  -o ./build/app.wasm .

      at makeError
  (/Users/{path}/project/node_modules/wrangler/wrangler-dist/cli.js:125264:18)
      at handlePromise
  (/Users/{path}/project/node_modules/wrangler/wrangler-dist/cli.js:125731:29)
      at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
      at async runCommand
  (/Users/{path}/project/node_modules/wrangler/wrangler-dist/cli.js:125924:5)
      at async runCustomBuild
  (/Users/{path}/project/node_modules/wrangler/wrangler-dist/cli.js:125937:5)
      at async getEntry
  (/Users/{path}/project/node_modules/wrangler/wrangler-dist/cli.js:213998:3)
      at async Object.handler
  (/Users/{path}/project/node_modules/wrangler/wrangler-dist/cli.js:214616:23)
      at async Object.handler
  (/Users/{path}/project/node_modules/wrangler/wrangler-dist/cli.js:166237:7) {
    shortMessage: 'Command failed with exit code 1: npm run build',
    command: 'npm run build',
    escapedCommand: 'npm run build',
    exitCode: 1,
    signal: undefined,
    signalDescription: undefined,
    stdout: '\n' +
      '> project@0.0.0 build\n' +
      '> go run github.com/syumai/workers/cmd/workers-assets-gen -mode=go && GOOS=js GOARCH=wasm go
  build -o ./build/app.wasm .\n',
    stderr: "no required module provides package github.com/syumai/workers/cmd/workers-assets-gen:
  go.mod file not found in current directory or any parent directory; see 'go help modules'",
    failed: true,
    timedOut: false,
    isCanceled: false,
    killed: false
  }



✘ [ERROR] Running custom build `npm run build` failed. There are likely more logs from your build command above.

Expected behavior

The build should succeed, and the application should be deployed to Cloudflare Workers.
OR, if manual initialization (e.g., go mod init) is required before the first deploy, it should be clearly stated in the documentation or the deployment option should be disabled/warned during initialization.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions