UrlRepo: add support tests from url and tar

Since LAVA is not designed as a build farm, it will be used to
work with various build farm together.
So, it will be very useful to support tests/images from different sources.

In the current LAVA, LAVA supports tests from git/bzr and inline.
Support for tar and url is planned(not usable yet).

Now, with this patch, support for tar and url could be implemented.

Besides, the followings were also added in this patch.
- corresponding sample job and unit test
- Remove unused import(import indices) in testdef

Signed-off-by: Liu Wenlong <liuwl.fnst@cn.fujitsu.com>
16 jobs for test_from_tar in 15 minutes and 37 seconds (queued for 3 seconds)
Status Job ID Name Coverage
  Test
passed #70459
amd64
dispatcher-debian-10

00:02:41

passed #70457
amd64
dispatcher-debian-9

00:02:50

passed #70460
amd64
server-debian-10

00:02:45

passed #70458
amd64
server-debian-9

00:03:02

 
  Analyze
passed #70462
amd64
black

00:00:35

passed #70463
amd64
code_quality

00:00:28

passed #70464
amd64
coverage

00:06:51

54.18%
passed #70465
amd64
dockerfiles

00:00:25

passed #70466
amd64
job-schema

00:00:31

passed #70467
amd64
pylint

00:02:53

passed #70461
amd64-dind
sast

00:01:57

 
  Build
passed #70470
amd64
amd64/pkg-debian-10

00:01:18

passed #70469
amd64
amd64/pkg-debian-9

00:01:42

passed #70468
amd64
doc

00:01:14

 
  Docker
passed #70471
amd64-dind
amd64/lava-dispatcher

00:03:58

passed #70472
amd64-dind
amd64/lava-server

00:03:41