Auto-tools/Projects/MozmillBuildbot: Difference between revisions

→‎Long-term Recommendations: noting that force build TTW should be fixed
(→‎Outstanding Issues: note inability to get crashreport symbols file)
(→‎Long-term Recommendations: noting that force build TTW should be fixed)
Line 58: Line 58:


* '''Make buildbotcustom a python package:''' reason:  there's no reason not to (except legacy reasons, continue reading) and having the python be installable saves the trouble with messing with the <tt>PYTHONPATH</tt>.  There is a considerable downside in practical terms, however;  http://hg.mozilla.org/build/buildbotcustom is a top level repository;  all files therein would have to be moved to http://hg.mozilla.org/build/buildbotcustom/buildbotcustom with the top level directory containing a <tt>setup.py</tt> file.  While the effort is minimal, it may cause issues for existing installations which, while easily resolvable, might involve some work.
* '''Make buildbotcustom a python package:''' reason:  there's no reason not to (except legacy reasons, continue reading) and having the python be installable saves the trouble with messing with the <tt>PYTHONPATH</tt>.  There is a considerable downside in practical terms, however;  http://hg.mozilla.org/build/buildbotcustom is a top level repository;  all files therein would have to be moved to http://hg.mozilla.org/build/buildbotcustom/buildbotcustom with the top level directory containing a <tt>setup.py</tt> file.  While the effort is minimal, it may cause issues for existing installations which, while easily resolvable, might involve some work.
* '''Allow force build through the web:''' several factories, including the MozmillFactory, use a buildstep like:
        def get_fileURL(build):
            fileURL = build.source.changes[-1].files[0]
            build.setProperty('fileURL', fileURL, 'DownloadFile')
            return fileURL
        self.addStep(DownloadFile(
        url_fn=get_fileURL,
        filename_property='build_filename',
        haltOnFailure=True,
        name="download_build",
        ))
However, for the case of TTW force builds, <tt>build.source.changes</tt> is an empty tuple, so the step fails with an exception.  In general, if <tt>build.source.changes</tt> is empty, a URL should be constructed from the platform and other variables appropriate to the build
947

edits