Operational Data #
The operational data reflect the current status of HFR, all runs and testbeds managed by it. It is stored on the HFR executor.
The Structure #
The operational data is represented by a list of items. Each item represents a run managed by the HFR. The length of this list is the number of runs managed by HFR.
[
Run(
node=str(),
conf=RunConf(
workflow=str(),
# The item 'inputs' depends on the GHA workflow specification,
# example is for the report workflow.
inputs={
"job_type": str(),
"dut": str(),
"node": str(),
"branch": str(),
"suite_gen_params": str(),
"my_run_id": str()
},
name=str(),
ref=str()
),
tb=Testbed(
name=str(),
node=str(),
tg=dict(),
status=str(),
pre_reserved_by=str(),
job=str(),
run_id=str()
),
data=RunData(
gha_data=dict(),
gha_retries=int(),
hfr_id=str(),
hfr_status=str(),
hfr_conclusion=str(),
hfr_duration=str(),
nr_of_runs=str()
)
),
Run()
]
Run #
See: Testing Process Configuration
The item “my_run_id” is added by the HFR.
Testbed #
See: Interface
RunData #
The structure “RunData” keeps up-to-date operational data about the run.
gha_data:
- Data generated by GHA.
gha_retries:
- Number of retries if the GHA does not provide data about a run (e.g.: response = 404)
hfr_id:
- Run ID set by HFR, used to identify the run when it is started by HFR in GHA and it has not set GHA run_id.
hfr_status:
- Set by HFR (see The Core):
- queued,
- started,
- running,
- finished,
- canceled.
hfr_conclusion:
- set by HFR:
- success,
- cancelled,
- gha_failure.
hfr_duration:
- The life time of the run in HFR. Can be different from the time in GHA.
nr_of_runs:
- Number of runs of the same run, it is used when the run is canceled and should be re-run again.
Export of operational data #
The operational data is exported in csv format. Only a subset of operational data is exported. If you are interested in details, all operational data is available in JSON format. The export is done in each iteration of HFR so the exported data reflect the current status.
Subset of operational data #
This data is exported to csv file:
- DUT
- Node
- Job type
- Testbed
- Run
- HFR ID
- HFR status
- HFR conclusion
- Run URL
- Run status
- Run conclusion
- Duration
- Log
Example (all runs are done):
DUT,Node,Job type,Testbed,Run,HFR ID,HFR status,HFR conclusion,Run URL,Run status,Run conclusion,Duration,Log
vpp,2n-icx,coverage,lf_2n_icx_testbed213,csit-vpp-perf-report-coverage-2602-2n-icx,0128555726,finished,success,https://github.com/FDio/csit/actions/runs/23595703085,completed,success,0:06:38,https://logs.fd.io/vex-yul-rot-jenkins-1/csit-vpp-perf-report-coverage-2602-2n-icx/23595703085
vpp,2n-icx,coverage,lf_2n_icx_testbed212,csit-vpp-perf-report-coverage-2602-2n-icx,0130371639,finished,success,https://github.com/FDio/csit/actions/runs/23595704092,completed,success,0:06:37,https://logs.fd.io/vex-yul-rot-jenkins-1/csit-vpp-perf-report-coverage-2602-2n-icx/23595704092
vpp,2n-zn2,coverage,lf_2n_zn2_testbed210,csit-vpp-perf-report-coverage-2602-2n-zn2,0528623122,finished,success,https://github.com/FDio/csit/actions/runs/23595994863,completed,success,0:04:26,https://logs.fd.io/vex-yul-rot-jenkins-1/csit-vpp-perf-report-coverage-2602-2n-zn2/23595994863
vpp,2n-zn2,coverage,lf_2n_zn2_testbed210,csit-vpp-perf-report-coverage-2602-2n-zn2,0796401351,finished,success,https://github.com/FDio/csit/actions/runs/23596191259,completed,success,0:04:29,https://logs.fd.io/vex-yul-rot-jenkins-1/csit-vpp-perf-report-coverage-2602-2n-zn2/23596191259
Information about the testbeds #
The information about testbeds includes:
- Name
- Status
- Run
- Run ID
- Host
- Port
Example (all runs are done):
Name,Status,Run,Run ID,Host,Port
lf_2n_icx_testbed212,available,,,10.30.51.82,6001
lf_2n_icx_testbed213,available,,,10.30.51.84,6001
lf_2n_icx_testbed214,available,,,10.30.51.86,6001
lf_2n_zn2_testbed210,available,,,10.30.51.61,6001