windmill-labs/windmill · error

Repository ${repository} not found

Error message

Repository ${repository} not found

What it means

Lookup miss in selectAndLogRepository: an explicit repository argument was given (matched against git_repo_resource_path, with and without the $res: prefix) but no configured repository in the local git-sync config matches it. The input at fault is the repository identifier passed on the command line versus the repositories list in gitsync-settings config; usually a typo, a missing $res: prefix form, or the repository simply not being configured locally.

Source

Thrown at cli/src/commands/gitsync-settings/utils.ts:96

  return updatedConfig;
}

// Select repository interactively if multiple exist
export async function selectAndLogRepository(
  repositories: GitSyncRepository[],
  repository?: string,
  suppressLogs?: boolean,
): Promise<GitSyncRepository> {
  let selectedRepo: GitSyncRepository;

  if (repository) {
    const found = repositories.find(
      (r: GitSyncRepository) =>
        r.git_repo_resource_path === repository ||
        r.git_repo_resource_path === `$res:${repository}`,
    );
    if (!found) {
      throw new Error(`Repository ${repository} not found`);
    }
    selectedRepo = found;
    const repoPath = selectedRepo.git_repo_resource_path.replace(/^\$res:/, "");
    if (!suppressLogs) {
      log.info(colors.cyan(`Using repository: ${colors.bold(repoPath)}`));
    }
  } else {
    selectedRepo = await selectRepository(repositories);
  }

  return selectedRepo;
}

// Generate structured diff showing field changes
export function generateStructuredDiff(
  current: any,
  backend: any,
): { [key: string]: { from: any; to: any } } {

View on GitHub (pinned to e474e8803c)

Solutions

  1. List configured repositories (wmill gitsync-settings show or read the local config) and use the exact git_repo_resource_path
  2. Try the resource path with and without the $res: prefix — the matcher accepts both forms, so a real mismatch is likely a typo
  3. Add the repository to the git-sync config first if it isn't configured yet
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at cli/src/commands/gitsync-settings/utils.ts:96 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of windmill-labs/windmill@e474e8803c (2026-09-03). Data as JSON: /api/errors/24ba7889c0b4f4b9. Report an issue: GitHub.