Spread backend to run on nvidia graphic card machine

We need to run snapd test suite in a machine with the nvidia graphic card which can be reached through ssh.

In this machine is installed an ubuntu cloud image (no ubuntu core). I tried to use the “external” spread backend but it is not working on the regular ubuntu cloud image, because it skips most part of the project preparation, for more information see https://github.com/snapcore/snapd/blob/master/tests/lib/prepare-restore.sh#L188 .

Currently we are just using external backend to run tests on devices with ubuntu core on it such as the pi2, pi3 and dragonboard.

So, to make the snapd test suite run on this machine I could:

  1. update the preparation scripts to setup correctly the target os when it is not ubuntu core
  2. create a new adhoc backend to address this scenario --> code example
  3. create a new adhoc backend to address this scenario and rename the external backend
  4. something else

I hear suggestions and opinions.

Thanks