Functional.Linaro 

Fuego wiki

Login or create account

Functional.Linaro

Description [edit section]

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 [edit section]

Results [edit section]

Tags [edit section]

  • first tag

Dependencies [edit section]

Status [edit section]

  • Experimental

Notes [edit section]

Setup [edit section]

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 [edit section]

  • $ fuegosh
  • (at this point, you will be root)
  • $ su jenkins

SSH_KEY [edit section]

  • 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.
        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:

    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:

    SSH_KEY=/var/lib/jenkins/.ssh/bbb_id_rsa

Here is a summary of those steps [edit section]

  • $ 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 [edit section]

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 [edit section]

  • 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