cube-js/cube · error

nothing is building branch {branch} (status {status}{}). If

Error message

nothing is building branch {branch} (status {status}{}). If the branch exists, it only compiles once it is opened in dev mode — run {} and wait on the dev-… branch it prints

What it means

Raised by wait_for_build after the IDLE_GRACE window during `--wait`: the polled build status is "none" or "stopped", meaning nothing is currently building the branch. The CLI explains that a branch only compiles once it is opened in dev mode and tells the user to run the dev-mode command and wait on the dev-… branch it prints. It bails instead of letting the wait time out silently.

Source

Thrown at rust/cube-cli/src/commands/deployments.rs:155

            // arrive bare.
            let branch = named_branch(&res);
            anyhow::bail!(
                "branch {branch} is not building ({verdict}){}. {}",
                if complaint == *verdict {
                    String::new()
                } else {
                    format!(": {complaint}")
                },
                hint(deployment, &branch)
            );
        }

        if status == "none" || status == "stopped" {
            let since = idle_since.get().unwrap_or_else(std::time::Instant::now);
            idle_since.set(Some(since));
            if since.elapsed() > IDLE_GRACE {
                let branch = named_branch(&res);
                anyhow::bail!(
                    "nothing is building branch {branch} (status {status}{}). If the branch \
                     exists, it only compiles once it is opened in dev mode — run {} and \
                     wait on the dev-… branch it prints",
                    // This branch bails instead of timing out, so the timeout's
                    // "(last seen: …)" never speaks for it.
                    if util::is_blank(&complaint) {
                        String::new()
                    } else {
                        format!(": {complaint}")
                    },
                    dev_mode_command(deployment, &branch)
                );
            }
        } else {
            idle_since.set(None);
        }

        // An unrecognised complaint rides along in the label rather than being

View on GitHub (pinned to 7d981676b3)

Solutions

  1. Run the dev-mode command the message suggests (it prints a dev-… branch) and wait on that branch instead.
  2. Check whether a prior build for this branch was stopped and restart it explicitly.
  3. Trigger the build for the branch (open it in dev mode / re-run the build command without --wait first).
  4. If builds are being reaped by idle policies, keep the branch active or adjust environment settings.

Example fix

// before: waiting on an idle branch that nothing compiles
cube deployments build 42 --branch feature/x --wait   # status: none
// after: start dev mode, use the dev- branch it prints
cube dev 42   # prints e.g. dev-alice-42
cube deployments build 42 --branch dev-alice-42 --wait
Defensive patterns

Strategy: retry

Validate before calling

# Only wait on branches that a build is actually running for
STATUS=$(cube deployments build-status 42 --branch "$BRANCH" --json | jq -r .status)
[ "$STATUS" != "none" ] && [ "$STATUS" != "stopped" ] || { echo 'start dev mode first'; exit 1; }

Try / catch

match result {
    Err(e) if e.to_string().contains("nothing is building branch") => {
        // trigger the dev-mode flow and re-wait on the dev-… branch it prints
    }
    other => other?,
}

Prevention

When it happens

Trigger: `cube deployments build/status --branch <branch> --wait` where every poll reports status "none" or "stopped" for longer than IDLE_GRACE: no orchestrator has picked up the branch, the build was stopped, or dev-mode compilation was never started for that branch.

Common situations: Expecting a build to start automatically for a branch that nobody has opened in dev mode; a previously running build that was stopped/cancelled; an idle environment where idle builds are reaped; CI waiting on a branch nobody activated.

Related errors


AI-assisted analysis of cube-js/cube@7d981676b3 (2026-09-02). Data as JSON: /api/errors/dbf7f928618a3d36. Report an issue: GitHub.