cube-js/cube · error
Cube Store v${version} Artifact for ${currentTarget} doesn't
Error message
Cube Store v${version} Artifact for ${currentTarget} doesn't exist. Most probably it is still building. Please try again later. What it means
Thrown by downloadBinaryFromRelease when the cube.js GitHub release for version ${version} exists and has assets, but none matches the current platform target triple (${currentTarget}, e.g. x86_64-unknown-linux-gnu). The asset download 404'd, the release lookup succeeded, and assets exist — so this specific platform's binary is absent. It typically means the build for your OS/architecture is still in progress or was skipped/failed.
Source
Thrown at rust/cubestore/js-wrapper/src/download.ts:59
const url = `https://github.com/cube-js/cube.js/releases/download/v${version}/cubestored-${currentTarget}.tar.gz`;
try {
await downloadAndExtractFile(url, {
cwd: cubestorePath,
showProgress: true,
});
} catch (e: any) {
if (e.toString().includes('Not Found')) {
const release = await fetchRelease(version);
if (release) {
if (release.assets.length === 0) {
throw new Error(
`There are no artifacts for Cube Store v${version}. Most probably it is still building. Please try again later.`
);
}
throw new Error(
`Cube Store v${version} Artifact for ${currentTarget} doesn't exist. Most probably it is still building. Please try again later.`
);
} else {
throw new Error(
`Unable to find Cube Store release v${version}. Most probably it was removed.`
);
}
} else {
throw e;
}
}
}
View on GitHub (pinned to 7d981676b3)
Solutions
- Wait and retry later — the target build may still be running in CI; re-run after some minutes/hours.
- Check the release page assets list to confirm whether cubestored-${currentTarget}.tar.gz exists or failed to upload.
- Use a platform with published artifacts (x64 or arm64 on linux-gnu/darwin/win32 as enumerated in isCubeStoreSupported).
- Pin the previous cube.js version whose binary for your target exists.
- Build Cube Store from source with cargo and place the executable at getCubeStorePath()/bin/cubestored.
Example fix
// before
const currentTarget = getTarget();
// after: verify support before attempting download
import { isCubeStoreSupported } from './utils';
if (!isCubeStoreSupported()) {
console.warn('No prebuilt Cube Store binary for this platform; build from source or use Docker.');
} Defensive patterns
Strategy: validation
Validate before calling
import { isCubeStoreSupported } from '@cubejs-backend/cubestool/dist/utils';
import process from 'process';
if (!isCubeStoreSupported()) {
throw new Error(`No prebuilt Cube Store for ${process.platform}/${process.arch}; configure an external Cube Store or use Docker.`);
} Type guard
function isSupportedTarget(platform: string, arch: string): boolean {
return (arch === 'x64' && ['win32','linux','darwin'].includes(platform)) ||
(arch === 'arm64' && (platform === 'darwin' || platform === 'linux'));
} Try / catch
try {
await cubeStoreHandler.acquire();
} catch (e) {
if (/Artifact for .* doesn't exist/.test(String(e))) {
await fallbackToExternalCubeStore();
} else { throw e; }
} Prevention
- Verify your OS/arch is in the supported matrix (x64: win/linux/darwin; arm64: darwin/linux-gnu) before deploying
- Avoid musl-based images on arm64 (use glibc, e.g. Debian not Alpine)
- Check the release page for your exact cubestored-<target>.tar.gz before upgrading
- Keep an external Cube Store (Docker) fallback for exotic platforms
When it happens
Trigger: getBinary() -> downloadBinaryFromRelease() when the local binary is missing; the tar.gz URL https://github.com/cube-js/cube.js/releases/download/v${version}/cubestored-${currentTarget}.tar.gz returns 'Not Found'; fetchRelease() finds the release with release.assets.length > 0, so the wrapper concludes only this target's artifact is missing.
Common situations: Running on an unusual/less-common platform combination (e.g. Linux musl, FreeBSD, x86 Windows on ARM emulation) where artifacts are published last or never; starting Cube right after a release when platform-specific CI jobs are staggered; a failed build job for one target while others uploaded fine.
Related errors
- There are no artifacts for Cube Store v${version}. Most prob
- Unable to find Cube Store release v${version}. Most probably
- HTTP error! status: ${response.status}
- Unable to load @cubejs-backend/native, probably your system
- unexpected response ${response.statusText}
AI-assisted analysis of cube-js/cube@7d981676b3 (2026-09-02).
Data as JSON: /api/errors/57b1afeae154ddb5.
Report an issue: GitHub.