Closed Bug 1752438 Opened 3 years ago Closed 3 years ago

mach Don't know how to determine file URL for non-githubrepo

Categories

(Firefox Build System :: Bootstrap Configuration, defect, P1)

All
Linux
defect

Tracking

(Not tracked)

VERIFIED DUPLICATE of bug 1752437

People

(Reporter: BenB, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: regression)

./mach artifact toolchain --bootstrap --from-build linux64-clang-tidy now fails with:

taskgraph.parameters.ParameterMismatch: Don't know how to determine file URL for non-githubrepo: /foo/firefox/repo/

I have this setup since years and it used to work, so this is a regression. It seems that mach is now tripping over the local git repo path.

It's true, I am not syncing directly from github or a server, but I use cinnabar to fetch from hg into a git repo. Given that the repo is huge, have I have many firefox and thunderbird trees checked out, I check out into a local directory as repo, and then clone from there. That avoids that I need to sync out the entire tree for every single checkout. git is specifically made to allow this. Local repos are a core git feature.

It seems mach is tripping over this, since recently. This error is new, i.e. a regression.

Reproduction:

  1. Use cinnabar to check out hg (or, judging from the error message, I guess any other way to get a local git repo) to a local git repo /foo/firefox/repo/
  2. git clone /foo/firefox/repo/ mytree/
  3. cd mytree/
  4. ./mach bootstrap

Actual result:

$ ./mach artifact toolchain --bootstrap --from-build linux64-clang-tidy
Error running mach:

    ['artifact', 'toolchain', '--bootstrap', '--from-build', 'linux64-clang-tidy']

The error occurred in code that was called by the mach command. This is either
a bug in the called code itself or in the way that mach is calling it.
You can invoke |./mach busted| to check if this issue is already on file. If it
isn't, please use |./mach busted file artifact| to report it. If |./mach busted| is
misbehaving, you can also inspect the dependencies of bug 1543241.

If filing a bug, please include the full output of mach, including this error
message.

The details of the failure are as follows:

taskgraph.parameters.ParameterMismatch: Don't know how to determine file URL for non-githubrepo: /foo/firefox/myrepo/

  File "/foo/firefox/mytree/python/mozbuild/mozbuild/artifact_commands.py", line 380, in artifact_toolchain
    tasks = toolchain_task_definitions()
  File "/foo/firefox/mytree/python/mozbuild/mozbuild/toolchains.py", line 19, in toolchain_task_definitions
    toolchains = load_tasks_for_kind(params, "toolchain", root_dir=root_dir)
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/generator.py", line 490, in load_tasks_for_kind
    for task in tgg.full_task_set
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/generator.py", line 163, in full_task_set
    return self._run_until("full_task_set")
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/generator.py", line 435, in _run_until
    k, v = next(self._run)
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/generator.py", line 311, in _run
    new_tasks = kind.load_tasks(
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/generator.py", line 78, in load_tasks
    tasks = [
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/generator.py", line 78, in <listcomp>
    tasks = [
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/transforms/task.py", line 2137, in check_run_task_caches
    for task in tasks:
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/transforms/task.py", line 2047, in check_task_dependencies
    for task in tasks:
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/transforms/task.py", line 2033, in check_task_identifiers
    for task in tasks:
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/transforms/task.py", line 2014, in chain_of_trust
    for task in tasks:
  File "/foo/firefox/mytree/taskcluster/gecko_taskgraph/transforms/task.py", line 1912, in build_task
    "source": config.params.file_url(config.path, pretty=True),
  File "/foo/firefox/mytree/third_party/python/taskcluster_taskgraph/taskgraph/parameters.py", line 240, in file_url
    raise ParameterMismatch(
Sentry is attempting to send 0 pending error messages
Waiting up to 2 seconds

Can't build -> blocker

Severity: -- → S1
Priority: -- → P1
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → DUPLICATE

(moved comment to main bug)

VERIFIED FIXED in DUPLICATE

Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.