Custom install command no longer being run on deploy

I have a simple project consisting of a FastAPI backend and a Svelte frontend that gets built with Vite and served statically without SSR. My previous working setup involved using a custom installCommand and buildCommand to build the frontend, and this config was working as of a couple weeks ago. Now, however, the install step seems not to be running, breaking the build.

Here is the top of the last successful deploy log, from 8 December:

Running build in Washington, D.C., USA (East) – iad1
Build machine configuration: 2 cores, 8 GB
Retrieving list of deployment files...
Previous build caches not available.
Downloading 36 deployment files...
Running "vercel build"
Vercel CLI 49.1.2
Running "install" command: `cd frontend && npm install`...
added 47 packages, and audited 48 packages in 2s
7 packages are looking for funding
  run `npm fund` for details
found 0 vulnerabilities
Running "cd frontend && npm run build"
> frontend@0.1.0 build
> vite build
vite v7.2.6 building client environment for production...
...

Here is the most recent deploy log, from 20 December:

Running build in Washington, D.C., USA (East) – iad1
Build machine configuration: 2 cores, 8 GB
Retrieving list of deployment files...
Previous build caches not available.
Downloading 42 deployment files...
Running "vercel build"
Vercel CLI 50.1.3
Running "cd frontend && npm run build"
> frontend@0.3.0 build
> vite build
sh: line 1: vite: command not found
Error: Command "cd frontend && npm run build" exited with 127

The installCommand setting in vercel.json has not changed between these two builds, and the custom install command is still correctly displayed and marked active in the project settings.

Can anyone help me determine why the install command would suddenly stop being run in this instance?

1 Like

Hey Adam, did you get it working?

Not on Vercel :person_shrugging:

I just kicked off another deploy to see if anything had changed, and I’m getting the same behavior. The install step doesn’t run, and nothing in the deploy log explains why, or what changed between when it worked and when it stopped.