-
Notifications
You must be signed in to change notification settings - Fork 17
132 lines (120 loc) · 4.06 KB
/
csit-perf-report.yml
File metadata and controls
132 lines (120 loc) · 4.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
---
name: csit-perf-report
# yamllint disable-line rule:truthy
on:
workflow_dispatch:
inputs:
job_type:
description: "The type of job: iterative or coverage."
required: true
type: choice
options:
- iterative
- coverage
default: iterative
dut:
description: "CSIT test/ subdirectory containing suites to execute."
required: true
type: choice
options:
- dpdk
- trex
- vpp
default: vpp
node:
description: Performance testbed node.
required: true
type: choice
options:
- 2n-aws
- 2n-c6in
- 2n-c7gn
- 2n-emr
- 2n-grc
- 2n-icx
- 2n-spr
- 2n-zn2
- 3n-alt
- 3n-emr
- 3n-icx
- 3n-icxd
- 3n-oct
- 3n-snr
- 3na-spr
- 3nb-spr
default: 2n-emr
branch:
description: Branch or patch.
required: true
type: choice
options:
- rls2602
default: rls2602
suite_gen_params:
description: Parameters for the suite generator.
required: true
type: string
permissions:
contents: read
jobs:
dispatch:
runs-on:
- ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- name: Prepare node selection matrix
id: set-matrix
uses: fdio/csit/.github/actions/csit-report-dispatch@89e40adc504ab4f2b4ae15a91e26b2f2c754cbf8
with:
node: ${{ github.event.inputs.node }}
dut: ${{ github.event.inputs.dut }}
csit-perf-report:
needs: dispatch
# yamllint disable-line rule:line-length
name: csit-${{ github.event.inputs.dut }}-perf-report-${{ github.event.inputs.job_type }}-${{ github.event.inputs.branch == 'rls2602' && '2602' }}-${{ matrix.node }}
runs-on:
- self-hosted
- nomad
- fdio:arch=${{ matrix.executor_arch }}
- fdio:class=builder
- fdio:size=csit
- fdio:namespace=prod
- fdio:os=${{ matrix.os }}
- fdio:workflow=${{ github.run_id }}
timeout-minutes: 1440
strategy:
matrix: ${{ fromJSON(needs.dispatch.outputs.matrix) }}
env:
# yamllint disable-line rule:line-length
BUILD_TAG: ${{ github.job }}-master-${{ matrix.node }}-${{ github.run_id }}
# yamllint disable-line rule:line-length
JOB_NAME: csit-${{ github.event.inputs.dut }}-perf-report-${{ github.event.inputs.job_type }}-${{ github.event.inputs.branch == 'rls2602' && '2602' }}-${{ matrix.node }}
GERRIT_BRANCH: ${{ github.event.inputs.branch }}
TEST_TAG_STRING: ${{ github.event.inputs.suite_gen_params }}
steps:
- name: Git Checkout CSIT
uses: actions/checkout@v6
with:
ref: ${{ github.event.inputs.branch }}
fetch-depth: 0
- name: Setup Environment
# yamllint disable-line rule:line-length
uses: fdio/.github/.github/actions/setup-executor-env@b728d1589228e2891a4241a1bba362d76895c225
- name: Run CSIT Bootstrap
# yamllint disable-line rule:line-length
uses: fdio/csit/.github/actions/csit-bootstrap@a372372ca8f89676c55631f8650468dfab86cc2a
with:
bootstrap_script: bootstrap_verify_perf.sh
with_oper: false
- name: AWS S3 Publish Logs
if: ${{ !cancelled() && (success() || failure()) }}
# yamllint disable-line rule:line-length
uses: fdio/.github/.github/actions/aws-s3-publish-logs@a28ad9abc70855292df1ea0d59829e814e78c2f4
with:
aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws_region: ${{ vars.AWS_REGION }}
s3_bucket: ${{ vars.S3_BUCKET }}
# yamllint disable-line rule:line-length
s3_path: csit-${{ github.event.inputs.dut }}-perf-report-${{ github.event.inputs.job_type }}-${{ github.event.inputs.branch == 'rls2602' && '2602' }}-${{ matrix.node }}/${{ github.run_id }}