Dne 2.2.2017 v 22:36 Cleber Rosa napsal(a):

----- Original Message -----
From: "Andrei Stepanov" <[email protected]>
To: "avocado-devel" <[email protected]>
Sent: Wednesday, February 1, 2017 11:48:11 AM
Subject: [Avocado-devel] What is a right way to install avocado?

Hello.

We are currently experiencing some issues with avocado / avocado-vt.

Our automation can be described in next steps:

0. Install RHEL 6/7.
1. Clone "master" branches for avocado/avocado-vt from github.

Hi Andrei,

Do you need specific features of Avocado not present in the LTS version?  I would 
strongly recommend that for "production testing", you'd use a more stable 
version of Avocado.  If you're willing to take a look at this suggested approach, let me 
if the fix for the Workstation version of EPEL6 works for you.

2. In avocado dir:

make requirements
python setup.py install

3. In avocado-vt dir:
make link
pip install sphinx
pip install -r requirements.txt
python setup.py install


For avocado-vt, an RPM package is also available (non-LTS, but designed to work 
with avocado LTS).  Most dependencies would be solved by the package install 
alone.  Then, dependencies for the test provider, say tp-qemu, could also be 
installed alongside it (but manually specified).

Well actually let's cc some Avocado-vt maintainers. I'm wondering what version of Avocado are you using to run Avocado-vt. We try to keep the backward compatibility (avocado-vt -> avocado) but it's always better to use what the mainstream uses as it is more tested. Maybe, if the version is not changing frequently, it'd make sense to mention the "known-to-work" Avocado version in the Avocado-vt GetStarted documentation.

As for the RPM IIRC we do not provide them, but you can use `make rpm` to produce one. Anyway to install it you need RPMs. I think Autotest and Aexpect one is in one of our repos, other dependencies can be obtain from EPEL but only for primary architectures and I'm not sure they are all no-arch. Still you could use `src.rpm` to rebuild it for your architecture and push it into your repository.

Overall I think the correct approach would be just to get a machine somewhere and create a script to periodically check for the latest deps RPMs, rebuild them and publish them in you repo. For Avocado I'd freeze the version mainstream is using and update occasionally. For Avocado-vt I think you need the master, which means you could either build the RPM on test machine or just be fine with weekly updates from your custom repo script. Bonus points would be for sharing (internally) this repo with other teams.

Lukáš


4. Run tests.

Above commands are run from root account.
We cannot use this approach any more.
It doesn't work with RHEL7.3.

I have opened a bug: https://bugzilla.redhat.com/show_bug.cgi?id=1417613
Than I had discussion with Tomas Orsava.

The problem is, running pip as root in Fedora/EPEL is not supported and
will break your system.

https://fedoraproject.org/wiki/Changes/Making_sudo_pip_safe

My question is: what is official way to install avocado/avocado-vt?

Invoking pip commands from root account is a bad approach.

Is there a safe way to install avocado & avocado-vt?



Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to