FrontPage 

Fuego wiki

Login or create account

Functional.Linaro in 'raw' format

= Description =

This test can be used to run tests from the Linaro test definition suite.

As of February, 2019, the test is a proof of concept and only tested with
smoke tests. There are FIXTHIS lines to indicate what is left.

= Resources =
 * https://github.com/Linaro/test-definitions.git

= Results =

= Tags =
 * first tag

= Dependencies =


= Status =
 * Experimental

= Notes =

== Setup ==
Here are some notes on setting up for this test:
 
The test definitions only support running on a board via ssh without
using a password.  Therefore, you must provide an SSH_KEY for the board.

These instructions use the Fuego board 'bbb' as the board for this setup.

=== Enter the docker container ===
 * $ fuegosh
 * (at this point, you will be root)
 * $ su jenkins

=== SSH_KEY ===
 * If not done already, prepare ssh keys for your board
   * $ ssh-keygen -t rsa
   * (change the filename to include the board name (from id_rsa to bbb_id_rsa)
   * the output should look something like this.
{{{#!YellowBox
Enter file in which to save the key (/var/lib/jenkins/.ssh/id_rsa): /var/lib/jenkins/.ssh/bbb_id_rsa
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in bbb_id_rsa.
Your public key has been saved in bbb_id_rsa.pub.
The key fingerprint is:
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx jenkins@timdesk
The key's randomart image is:
+---[RSA 2048]----+
|.(image omitted).|
+-----------------+
}}}
 * put the bbb_id_rsa.pub file on the board, in the .ssh directory of the account used for testing.
    * this can be done using the tool 'ssh-copy-id', as follows:
      * $ ssh-copy-id -i bbb_id_rsa.pub root@10.0.1.2  (use the correct login account and IP address)
      * (this will prompt for the password for the root account)
    * you can test this by using ssh, to check that it doesn't require a password
      * $ ssh -i bbb_id_rsa root@10.0.1.2
      * (you should be logged in without a request for a password)

 * install ssh key into the jenkins ssh config file
    * (still inside the docker container, as user 'jenkins')
    * vi ~/.ssh/config
       * adjust or add a Host section
         * put the Host line:  Host 10.0.1.2 <- replace with your boards ip address ($IPADDR)
         * put an indented line for the IdentityFile: IdentityFile ~/.ssh/bbb_id_rsa

When done, the config should have a section that looks like this:
{{{#!YellowBox
Host 10.0.1.2
    IdentityFile ~/.ssh/bbb_id_rsa
}}}

Finally, add the SSH_KEY attribute to the board file.  That is, in the
file: fuego-ro/boards/bbb.board, add the line:

{{{#!YellowBox
SSH_KEY=/var/lib/jenkins/.ssh/bbb_id_rsa
}}}

=== Here is a summary of those steps ===
 * $ fuegosh
 * $ su jenkins
 * $ cd /var/lib/jenkins/.ssh
 * $ ssh-keygen -t rsa
   * (in the prompts from ssh-keygen, change the filename to include the board name (from id_rsa to bbb_id_rsa)
 * $ ssh-copy-id -i bbb_id_rsa.pub root@10.0.1.2  (use the correct login account and IP address)
 * $ ssh -i bbb_id_rsa root@10.0.1.2 (test that no password is required)
 * $ vi config
   * (add Host and IdentityFile lines)
 * $ ssh root@10.0.1.2 (test that no password is required)
 * $ exit
 * $ exit
 * $ vi fuego-ro/bbb.board
   * (add SSH_KEY line (possibly comment out PASSWORD))
 * $ ftc run-test -b bbb -t fuego_board_check (test that Fuego has access to board for testing)



=== Jenkins job setup ===
Now, add a job for Functional.linaro to Jenkins
  * $ftc add-job -b bbb -t Functional.linaro
  * (this should create the job: bbb.default.Functional.linaro)

=== Execute the job ===
 * execute the job from jenkins, by finding the job in the Jenkins interface, and clicking on 'Build
    - expected results
        - table with each test case and the results (PASS/FAIL/SKIP)
        - run.json
        - csv




TBWiki engine 1.8.3 by Tim Bird