Post on 25-Aug-2020
transcript
October 27, 2016
CEWG Japan Mini Jamboree 2016
Kyohei Oki
Yuichi Kusakabe
Fujitsu TEN
AGL-JTA CIAT tool for AGL
1
Self Introduction
2
Kyohei Oki (kyohei.oki@jp.fujitsu.com)
Fujitsu Ten Software Engineer (2012 ~ )
Agenda
3
WHAT is CIAT
WHY use AGL-JTA
HOW to use AGL-JTA
DEMO Future Work
WHAT is CIAT
4
Continuous Integration and Automated Test https://wiki.automotivelinux.org/eg-ciat#explanation_of_ciat https://lists.linuxfoundation.org/pipermail/automotive-
discussions/2015-July/000591.html
CIAT is supposed to include: CI pipeline which executes tests on user's demand or triggered
by upstream changes automatically collection of source code from upstream automated instructions for building/deploying built distro ability to include binary artifacts automated test pipeline which executes sets of tests publishing of built distro/component and test results/logs mechanism for formal code review prior to merging of changes demonstration of license compliance
WHY use AGL-JTA
5
based on Fuego formerly called JTA (Jenkins Test Automation) A host/target script engine and a jenkins front-end official automated test framwork for LTSI project
advantages lots of plugins to extend features highly customizable flexible test configuration running tests in batches not imposing any demands on boards or distributions easy yet flexible board setup
WHY use AGL-JTA
6
match AGL CIAT’s goals
CIAT’s goals AGL-JTA’s feature
flexible trigger build triggers
(like gerrit, cron job)
collection of source code Source Code Management
(SCM, like git)
instructions for building/deploying
host/target script engine
include binary artifacts host/target script engine
executing sets of tests job trigger of jenkins
publishing of distro and test results
plugins of jenkins, or use SCM to upload distro/result
code review (offered by gerrit)
demonstration of license compliance
(offered by gerrit)
HOW to use AGL-JTA
7
simple test jenkins will call script engine first, then gather test result/log
from script engine script engine will do the work
• cross-compile testsuite for target board • load testsuite to target board then execute • gather test logs
jenkins
(frontend) script engine
(backend)
execute test script run test on board
return result return logs
HOW to use AGL-JTA
8
have a glance – homepage
HOW to use AGL-JTA
9
have a glance – execute tests
HOW to use AGL-JTA
10
have a glance – execute tests
HOW to use AGL-JTA – CIAT
11
role in AGL’s CIAT for Automated Test mainly also involves building/deploying images
work flow trigger collect source code build/deploy distro to target board execute tests on board public test result
instance private server – inhouse CIAT (mid-term test)
HOW to use AGL-JTA – CIAT
12
AGL-JTA server
1. trigger
2. collect source code
CIAT.inhouse_mid
CIAT.inhouse_deploy
CIAT.batch_test
3. build & deploy distro
4. execute sets of tests, like Benchmark.bc, Functional.zlib
CIAT.upload 5. publish test result
private server – inhouse CIAT
HOW to use AGL-JTA
13
CIAT environment hardware setting
hub
target board
AGL-JTA compile server
TFTP/NFS server
Internet (AGL gerrit)
HOW to use AGL-JTA
14
CIAT environment hardware setting
1. AGL-JTA 2. TFTP/NFS server 3. compile server
hub
Internet
porter
HOW to use AGL-JTA
15
more flexible way to share test result public git repo for storing test result AGL-JTA gather required test result and display still in developing
xxx company's AGL-JTA
FTEN's AGL-JTA
yyy company's AGL-JTA
public git repo
my AGL-JTA
HOW to use AGL-JTA – share test result
16
CIAT.upload one part of CIAT (publishing test result) called by CIAT.mid, CIAT.inhouse_mid test summary, test info, manifest, detailed results
public git repo for test result git:
https://gerrit.automotivelinux.org/gerrit/gitweb?p=staging/agl-jta-results.git;a=summary
branch for each snapshot 1st-level directories are for company & target board
HOW to use AGL-JTA – display test result
17
make shared test result easy to read and compare
HOW to use AGL-JTA – display test result
18
make shared test result easy to read and compare
HOW to use AGL-JTA
19
simple test REAME docs/jta-docs.pdf docs/How-to-Add-Test-Cases-on-JTA
CIAT
docs/How-to-Configure-CIAT-on-AGL-JTA.pdf
More documents for your instances
DEMO
20
Demo contents Inhouse CIAT Carry out a test in a manual trigger and operate slowly Test is IOZONE performance -> Filesystem tests Compare results and introduce display detail
CIAT
Enviroment
build & deploy
test
display result
trigger Today
Enviroment
build & deploy
test
display result
trigger
manual
Future Work
21
board supporting trigger display cooperate with fuego ...
Future Work
22
board supporting current
• CIAT for porter • simple test for porter & MinnowBoard
future work • Dragon board • more board?
trigger current
• gerrit trigger future work
• for different types of changes uploaded to gerrit • for snapshot/release
Future Work
23
display current
• only display result of each tests future work
• display detailed information/log of each tests • test environment information
cooperate with fuego fix gap between fuego share features and test cases
Future Work
24
AGL support https://jta.automotivelinux.org/
your suggestion to improve it
sharing test cases
sharing test results
participate in improving AGL-JTA and AGL’s CIAT
25
Thank you!
kyohei.oki@jp.fujitsu.com yuichi.kusakabe@jp.fujitsu.com