diff options
Diffstat (limited to 'README')
-rw-r--r-- | README | 163 |
1 files changed, 163 insertions, 0 deletions
@@ -0,0 +1,163 @@ +##### +Weles +##### + +******** +Overview +******** + +Weles is part of SLAV_ stack. It is a simple, lightweight generic test framework. +It uses Boruta_ for DUT [#]_ reservation and MuxPi_ for accessing it. +Weles was inspired by LAVA_. + +Weles responsibilities include: + +* acquiring DUT from Boruta_ system +* flashing images to the DUT +* running tests +* presenting results in a human and computer-readable form + +.. [#] Device Under Test +.. _MuxPi: https://github.com/SamsungSLAV/muxpi +.. _Boruta: https://github.com/SamsungSLAV/boruta +.. _SLAV: https://github.com/SamsungSLAV/slav +.. _LAVA: https://www.linaro.org/initiatives/lava/ + +User provides a yaml file containing all neccessary information to perform tests: + +* required capabilities of a target device +* timeouts +* priority +* interface for accessing target +* credentials, input sequences +* test cases to be run defined as a list of: + + * commands for target + * files to be pushed to target + * artifacts to be collected from a target + +Check sample yaml for Weles in parser/sample_yaml + + +************* +Documentation +************* + +`Weles documentation`_ is hosted on Read The Docs pages. + +.. _`Weles documentation`: https://weles.rtfd.io/ + + +********** +Deployment +********** + +Docker +====== + +Prerequisites + +* Docker_ +* Make_ + +.. _Docker: https://www.docker.com/ +.. _Make: https://www.gnu.org/software/make/ + + +Clone Weles and go to that directory:: + + $ git clone https://github.com/SamsungSLAV/weles.git && cd weles + +Adjust swagger.yml to your instance. You should only edit following fields: + +* description +* termsOfService +* contact +* host + +And build Weles:: + + $ make docker-build + +Local +===== + +- git +- make +- `go (1.10+)`_ + +.. _`go (1.10+)`: https://golang.org/doc/install + + +Go get it and go to weles directory:: + + $ go get github.com/SamsungSLAV/weles + $ cd $GOPATH/src/github.com/SamsungSLAV/weles + +Weles uses Dep to manage dependencies; if you dont have it, go get it:: + + $ go get -u github.com/golang/dep/cmd/dep + +Download all dependencies:: + + $ make vendor + +Adjust swagger.yml to your instance. You should only edit following fields: + +* description +* termsOfService +* contact +* host + +Regenerate server code with your changes in the swagger.yml file:: + + $ make swagger-server-generate + +And finally we can build Weles:: + + $ make server + +The binary of Weles will be available in bin/weles-server + +Run it with -h flag:: + + $ bin/weles-server -h + +to receive full list of parameters. + + +*********** +Using Weles +*********** + +Currently server supports only http protocol. +Following flags may be ignored: + +- --tls* +- --scheme +- --socket-path + +When you run your server, you can check the API documentation on http://host:port/api/v1/docs/ +Remember to set `--boruta-address` flag with proper Boruta address or Weles won't work! + + +Contact information +=================== + ++----------------------+----------------------------------+ +| Name | E-mail | ++======================+==================================+ +| Paweł Wieczorek | p.wieczorek2@samsung.com | ++----------------------+----------------------------------+ +| Łukasz Wojciechowski | l.wojciechow@partner.samsung.com | ++----------------------+----------------------------------+ + + +******* +License +******* + +Weles is distributed under `Apache 2.0 License`_ + +.. _`Apache 2.0 License`: LICENSE + |