Closed Bug 1277841 Opened 4 years ago Closed 4 years ago

'artifact install' task fails on subsequent builds: Exception: Can't find config.status

Categories

(Toolkit Graveyard :: Build Config, defect)

defect
Not set
major

Tracking

(firefox50 fixed)

RESOLVED FIXED
mozilla50
Tracking Status
firefox50 --- fixed

People

(Reporter: sebastian, Assigned: chmanchester)

References

Details

Attachments

(1 file)

My setup:
* Repository: fx-team
* MacOS X
* --enable-artifact-builds

The first build (after clobber) works. However on every subsequent build I get an error and mach just hangs:

> TheSilence:fx-team sebastian$ ./mach build
>  0:00.18 Running |mach artifact install|.
>  0:00.18 /Users/sebastian/Projects/Mozilla/fx-team/mach artifact install
> Error running mach:
> 
>     ['artifact', 'install']
> 
> 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 should consider filing a bug for this issue.
> 
> If filing a bug, please include the full output of mach, including this error
> message.
> 
> The details of the failure are as follows:
> 
> Exception: Can't find config.status
> 
>   File "/Users/sebastian/Projects/Mozilla/fx-team/python/mozbuild/mozbuild/mach_commands.py", line 1551, in artifact_install
>     artifacts = self._make_artifacts(tree=tree, job=job, skip_cache=skip_cache)
>   File "/Users/sebastian/Projects/Mozilla/fx-team/python/mozbuild/mozbuild/mach_commands.py", line 1535, in _make_artifacts
>     from mozbuild.artifacts import Artifacts
>   File "/Users/sebastian/Projects/Mozilla/fx-team/build/mach_bootstrap.py", line 442, in __call__
>     module = self._original_import(name, globals, locals, fromlist, level)
>   File "/Users/sebastian/Projects/Mozilla/fx-team/python/mozbuild/mozbuild/artifacts.py", line 66, in <module>
>     import buildconfig
>   File "/Users/sebastian/Projects/Mozilla/fx-team/build/mach_bootstrap.py", line 442, in __call__
>     module = self._original_import(name, globals, locals, fromlist, level)
>   File "/Users/sebastian/Projects/Mozilla/fx-team/build/buildconfig.py", line 13, in <module>
>     raise Exception("Can't find config.status")
> Error running mach:
> 
>     ['build']
> 
> 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 should consider filing a bug for this issue.
> 
> If filing a bug, please include the full output of mach, including this error
> message.
> 
> The details of the failure are as follows:
> 
> Exception: Process executed with non-0 exit code 1: [u'/Users/sebastian/Projects/Mozilla/fx-team/mach', u'artifact', u'install']
> 
>   File "/Users/sebastian/Projects/Mozilla/fx-team/python/mozbuild/mozbuild/mach_commands.py", line 421, in build
>     self._run_mach_artifact_install()
>   File "/Users/sebastian/Projects/Mozilla/fx-team/python/mozbuild/mozbuild/mach_commands.py", line 694, in _run_mach_artifact_install
>     pass_thru=True, ensure_exit_code=True)
>   File "/Users/sebastian/Projects/Mozilla/fx-team/python/mozbuild/mozbuild/base.py", line 650, in _run_command_in_srcdir
>     return self.run_process(cwd=self.topsrcdir, **args)
>   File "/Users/sebastian/Projects/Mozilla/fx-team/python/mach/mach/mixin/process.py", line 147, in run_process
>     raise Exception('Process executed with non-0 exit code %d: %s' % (status, args))
Summary: artifact install task fails on subsequent builds: Exception: Can't find config.status → 'artifact install' task fails on subsequent builds: Exception: Can't find config.status
Are you building with a revision between b541ce3cbff5 and b6fe7fa88db0 ?
My tip is 0ef7cc6b42c7
Sigh. We can't have nice things... of course the patch from bug 1277087 doesn't work when some mach command imports the buildconfig module because... not using the virtualenv python...
Blocks: 1277087
I'm seeing the same error for regular Firefox too
Same here. I've had to symlink config.status to /config.status to get around it.
Component: Build Config & IDE Support → Build Config
Product: Firefox for Android → Toolkit
Severity: normal → major
OS: Android → All
Mike, should you be assigned to this?
Flags: needinfo?(mh+mozilla)
(In reply to Kris Maglione [:kmag] from comment #5)
> Same here. I've had to symlink config.status to /config.status to get around
> it.

I didn't try it but after digging in a bit, I think `/config.status` does actually refer to the root of the filesystem.

Alternatively [1], backing out the changesets from bug 1277087 compiles successfully (although I don't know if there are other side effects). 

[1]: Note that I'm building Firefox for Android
(In reply to Michael Comella (:mcomella) from comment #7)
> (In reply to Kris Maglione [:kmag] from comment #5)
> > Same here. I've had to symlink config.status to /config.status to get around
> > it.
> 
> I didn't try it but after digging in a bit, I think `/config.status` does
> actually refer to the root of the filesystem.

Yeah, the buildconfig modules searches for config.status in all of the
ancestor directories of the python executable. Without the virtualenv, that's
/bin/python2.7 for me, so there aren't a lot of other options.

To be clear, this is a terrible solution. It just happened to be the quickest
way I found to get it working again. Changing my PATH to point to the
virtualenv first would probably be a better one, though.
Assignee: nobody → cmanchester
Flags: needinfo?(mh+mozilla)
Blocks: 1278415
Comment on attachment 8760500 [details]
Bug 1277841 - Use defines and substs from the artifact mach command instead of importing buildconfig in artifacts.py

https://reviewboard.mozilla.org/r/58074/#review54940
Attachment #8760500 - Flags: review?(mh+mozilla) → review+
Pushed by cmanchester@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/b27e5a33d24c
Use defines and substs from the artifact mach command instead of importing buildconfig in artifacts.py r=glandium
Duplicate of this bug: 1278495
https://hg.mozilla.org/mozilla-central/rev/b27e5a33d24c
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla50
Depends on: 1278812
No longer depends on: 1278812
Product: Toolkit → Toolkit Graveyard
You need to log in before you can comment on or make changes to this bug.