Boost logo

Boost Testing :

From: Aleksey Gurtovoy (agurtovoy_at_[hidden])
Date: 2005-07-26 06:28:17


Carl Daniel writes:
> I need some help with regression.py - assume I know nothing about Python and
> have neither the time nor the inclination to learn it right now :)

No problem :).

>
> Two machine configuration:
> - Machine A connected to the Internet
> - Machine B not connected to the Internet, but reachable from Machine A
> via a VPN tunnel
> - Regression testing to be done on Machine B
>
> Here's what I need to do:
> - On Machine A, download the latest regression.py and Boost tarball but
> don't unpack it

Assuming the latest 'regression.py'(CVS /
http://www.meta-comm.com/engineering/boost/regression.py.gz),

    python regression.py get-source download

will download the tarball ('boost-CVS-HEAD.tar.bz2') into the script's
directory.

> - Push those files through the VPN tunnel to Machine B

I'm assuming that this one is not a problem. Let us know if it's not
the case.

> - On Machine B, do a complete regression run, but don't download the
> tarball at the start, and don't upload results at the end.

    python regression.py cleanup
    python regression.py get-source unpack
    python regression.py update-itself
    python regression.py setup [--toolsets=...]
    python regression.py test --toolsets=...
    python regression.py collect-logs --runner=<your runner id>

This will give you a single 'results/<your runner id>.zip' that needs
to be uploaded back to us.

> - Push the results through the VPN tunnel to Machine A

Again, I'm assuming that this is covered. You probably also want to
transfer back a possibly updated 'regression.py'.

> - On Machine B, clean up everything that was uploaded or created.

The 'python regression.py cleanup' step above takes care of this.

> - On Machine A, upload the results

    python regression.py upload-logs --runner=<your runner id>

will try to upload the corresponding zip from the 'results' directory.

>
> What options(s), command(s), etc, do I need to pass to regression.py to do
> each of the steps above, or how do I accomplish them most easily without
> using regression.py?
>
> Assume that before each run there's nothing on Machine B except for Python.

The above was tested and should work out-of-box, but if it doesn't or
there are some additonal complications that we didn't account for,
please let us know!

HTH,

-- 
Aleksey Gurtovoy
MetaCommunications Engineering

Boost-testing list run by mbergal at meta-comm.com