[tahoe-lafs-trac-stream] [tahoe-lafs] #1248: move logic for build steps from buildmaster config to misc/build_helpers
tahoe-lafs
trac at tahoe-lafs.org
Tue Aug 27 12:14:00 UTC 2013
#1248: move logic for build steps from buildmaster config to misc/build_helpers
-------------------------+-------------------------------------------------
Reporter: | Owner: warner
davidsarah | Status: closed
Type: defect | Milestone: soon
Priority: normal | Version: 1.8.0
Component: dev- | Keywords: buildbot build-helpers cleanup
infrastructure | install setuptools pycryptopp zfec
Resolution: |
duplicate |
Launchpad Bug: |
-------------------------+-------------------------------------------------
Changes (by zooko):
* status: new => closed
* resolution: => duplicate
Old description:
> There is some near-duplicated code in the buildmaster's {{{TestFromEgg}}}
> and {{{TestFromPrefixDir}}} classes (in {{{bbsupport.py}}}). There is
> also duplication between [source:setup.py],
> [source:misc/build_helpers/run_trial.py], and some of the tests in
> [source:src/allmydata/test/test_runner.py], for things like setting up
> {{{PYTHONPATH}}}, getting the Tahoe-LAFS version, and checking that we
> are running code from the right directory.
>
> Code in the buildmaster is more difficult to debug than code in the
> Tahoe-LAFS distribution; changes require a buildmaster restart to take
> effect, and interfere with the reproducibility of builds. So we should
> simplify these classes by having them just call scripts (or a single
> script with different arguments) in [source:misc/build_helpers].
>
> The reason why the code that is already in the distribution isn't better-
> factored, is probably that in each case we need to run it before
> importing any non-stdlib modules. It seems like there should be some way
> to work around that.
New description:
There is some near-duplicated code in the buildmaster's {{{TestFromEgg}}}
and {{{TestFromPrefixDir}}} classes (in {{{bbsupport.py}}}). There is also
duplication between [source:setup.py],
[source:misc/build_helpers/run_trial.py], and some of the tests in
[source:src/allmydata/test/test_runner.py], for things like setting up
{{{PYTHONPATH}}}, getting the Tahoe-LAFS version, and checking that we are
running code from the right directory.
Code in the buildmaster is more difficult to debug than code in the Tahoe-
LAFS distribution; changes require a buildmaster restart to take effect,
and interfere with the reproducibility of builds. So we should simplify
these classes by having them just call scripts (or a single script with
different arguments) in [source:misc/build_helpers].
The reason why the code that is already in the distribution isn't better-
factored, is probably that in each case we need to run it before importing
any non-stdlib modules. It seems like there should be some way to work
around that.
--
Comment:
Duplicate of #2049.
--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1248#comment:8>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list