Skip to content

Commit dd4fe34

Browse files
committed
Merge remote-tracking branch 'origin/main' into bump-deps
2 parents d5e3382 + cfdebfe commit dd4fe34

File tree

9 files changed

+155
-98
lines changed

9 files changed

+155
-98
lines changed

.github/actions/benchmark_cloud/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,8 @@ runs:
9393
exit 1
9494
esac
9595
jq ".cluster_size = \"${BENCHMARK_CLUSTER_SIZE}\"" <result.json >result.json.tmp && mv result.json.tmp result.json
96-
jq ".machine = \"${{ inputs.size }}\"" <result.json >result.json.tmp && mv result.json.tmp result.json
97-
jq ".tags = [\"${BENCHMARK_TYPE}\", \"serverless\"]" <result.json >result.json.tmp && mv result.json.tmp result.json
96+
jq ".machine = \"${BENCHMARK_CLUSTER_SIZE}×${{ inputs.size }}\"" <result.json >result.json.tmp && mv result.json.tmp result.json
97+
jq ".tags = [\"${BENCHMARK_TYPE}\", \"s3\"]" <result.json >result.json.tmp && mv result.json.tmp result.json
9898
jq ".comment = \"commit:${{ inputs.sha }}\"" <result.json >result.json.tmp && mv result.json.tmp result.json
9999
mv result.json result-${{ inputs.dataset }}-cloud-${{ inputs.size }}.json
100100

.github/actions/benchmark_local/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ runs:
5353
esac
5454
jq ".system = \"${BENCHMARK_SYSTEM}\"" <result.json >result.json.tmp && mv result.json.tmp result.json
5555
jq ".date = \"$(date -u +%Y-%m-%d)\"" <result.json >result.json.tmp && mv result.json.tmp result.json
56-
jq ".machine = \"c5.4xlarge,gp3\"" <result.json >result.json.tmp && mv result.json.tmp result.json
56+
jq ".machine = \"c5.4xlarge\"" <result.json >result.json.tmp && mv result.json.tmp result.json
5757
jq ".cluster_size = 1" <result.json >result.json.tmp && mv result.json.tmp result.json
5858
jq ".comment = \"commit:${{ inputs.sha }}\"" <result.json >result.json.tmp && mv result.json.tmp result.json
5959
jq ".tags = [\"${BENCHMARK_TYPE}\", \"gp3\"]" <result.json >result.json.tmp && mv result.json.tmp result.json
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
name: "Create Check Status"
2+
description: "Create check status on github commit"
3+
inputs:
4+
github_token:
5+
description: "Github Token"
6+
required: true
7+
sha:
8+
description: "commit sha"
9+
required: true
10+
name:
11+
description: "check name"
12+
required: true
13+
status:
14+
description: "check status, Default: queued, Can be one of: queued, in_progress, completed"
15+
required: true
16+
conclusion:
17+
description: "check conclusion, Can be one of: action_required, cancelled, failure, neutral, success, skipped, stale, timed_out"
18+
required: false
19+
title:
20+
description: "check title"
21+
required: true
22+
summary:
23+
description: "check summary"
24+
required: true
25+
26+
runs:
27+
using: "composite"
28+
steps:
29+
# Docs: https://docs.github.com/en/rest/checks/runs#create-a-check-run
30+
# Rest: https://octokit.github.io/rest.js/v18#checks-create
31+
- name: Create a check run
32+
uses: actions/github-script@v6
33+
env:
34+
param_sha: ${{ inputs.sha }}
35+
param_name: ${{ inputs.name }}
36+
param_status: ${{ inputs.status }}
37+
param_conclusion: ${{ inputs.conclusion }}
38+
param_title: ${{ inputs.title }}
39+
param_summary: ${{ inputs.summary }}
40+
param_url: https://github.com/datafuselabs/databend/actions/runs/${{ github.run_id }}
41+
with:
42+
github-token: ${{ inputs.github_token }}
43+
script: |
44+
let data = {
45+
owner: context.repo.owner,
46+
repo: context.repo.repo,
47+
head_sha: process.env.param_sha,
48+
name: process.env.param_name,
49+
status: process.env.param_status,
50+
details_url: process.env.param_url,
51+
output: {
52+
title: process.env.param_title,
53+
summary: process.env.param_summart,
54+
},
55+
};
56+
if (process.env.param_status === 'completed'') {
57+
data.conclusion = process.env.param_conclusion;
58+
}
59+
await github.rest.checks.create(data);

.github/workflows/benchmark.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jobs:
4141
- name: Generate benchmark metadata
4242
run: |
4343
echo '{}' > metadata.json
44-
jq ".sha = \"${{ github.sha }}\"" <metadata.json >metadata.json.tmp && mv metadata.json.tmp metadata.json
44+
jq ".sha = \"${{ github.event.pull_request.head.sha }}\"" <metadata.json >metadata.json.tmp && mv metadata.json.tmp metadata.json
4545
jq ".run_id = \"${{ github.run_id }}\"" <metadata.json >metadata.json.tmp && mv metadata.json.tmp metadata.json
4646
jq ".pr_id = \"${{ github.event.pull_request.number }}\"" <metadata.json >metadata.json.tmp && mv metadata.json.tmp metadata.json
4747
- name: Upload artifact

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ on:
1717
permissions:
1818
id-token: write
1919
pull-requests: write
20-
statuses: write
20+
checks: write
2121
contents: write
2222

2323
jobs:

.github/workflows/trusted-benchmark.yml

Lines changed: 89 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ on:
1515
permissions:
1616
id-token: write
1717
pull-requests: write
18-
statuses: write
18+
checks: write
1919
contents: read
2020

2121
env:
@@ -57,6 +57,54 @@ jobs:
5757
exit 1
5858
;;
5959
esac
60+
- uses: ./.github/actions/create_check_status
61+
with:
62+
github_token: ${{ secrets.GITHUB_TOKEN }}
63+
sha: ${{ steps.metadata.outputs.sha }}
64+
name: 'Benchmark Local / hits'
65+
status: queued
66+
title: "Benchmark Local for hits"
67+
summary: "status: **queued**"
68+
- uses: ./.github/actions/create_check_status
69+
with:
70+
github_token: ${{ secrets.GITHUB_TOKEN }}
71+
sha: ${{ steps.metadata.outputs.sha }}
72+
name: 'Benchmark Local / tpch'
73+
status: queued
74+
title: "Benchmark Local for tpch"
75+
summary: "status: **queued**"
76+
- uses: ./.github/actions/create_check_status
77+
with:
78+
github_token: ${{ secrets.GITHUB_TOKEN }}
79+
sha: ${{ steps.metadata.outputs.sha }}
80+
name: 'Benchmark Cloud / hits(Medium)'
81+
status: queued
82+
title: "Benchmark Cloud for hits with Medium warehouse"
83+
summary: "status: **queued**"
84+
- uses: ./.github/actions/create_check_status
85+
with:
86+
github_token: ${{ secrets.GITHUB_TOKEN }}
87+
sha: ${{ steps.metadata.outputs.sha }}
88+
name: 'Benchmark Cloud / tpch(Medium)'
89+
status: queued
90+
title: "Benchmark Cloud for tpch with Medium warehouse"
91+
summary: "status: **queued**"
92+
- uses: ./.github/actions/create_check_status
93+
with:
94+
github_token: ${{ secrets.GITHUB_TOKEN }}
95+
sha: ${{ steps.metadata.outputs.sha }}
96+
name: 'Benchmark Cloud / hits(Large)'
97+
status: queued
98+
title: "Benchmark Cloud for hits with Large warehouse"
99+
summary: "status: **queued**"
100+
- uses: ./.github/actions/create_check_status
101+
with:
102+
github_token: ${{ secrets.GITHUB_TOKEN }}
103+
sha: ${{ steps.metadata.outputs.sha }}
104+
name: 'Benchmark Cloud / tpch(Large)'
105+
status: queued
106+
title: "Benchmark Cloud for tpch with Large warehouse"
107+
summary: "status: **queued**"
60108

61109
local:
62110
needs: metadata
@@ -97,31 +145,32 @@ jobs:
97145
databend-query --version
98146
databend-meta --version
99147
- name: Set github check status to pending
100-
uses: Sibz/github-status-action@v1
148+
uses: ./.github/actions/create_check_status
101149
with:
102-
authToken: ${{ secrets.GITHUB_TOKEN }}
103-
context: 'Benchmark Local / ${{ matrix.dataset }}'
104-
description: 'Running'
105-
state: 'pending'
150+
github_token: ${{ secrets.GITHUB_TOKEN }}
106151
sha: ${{ needs.metadata.outputs.sha }}
107-
target_url: https://github.com/datafuselabs/databend/actions/runs/${{ github.run_id }}/jobs/${{ github.job_id }}
152+
name: 'Benchmark Local / ${{ matrix.dataset }}'
153+
status: in_progress
154+
title: "Benchmark Local for ${{ matrix.dataset }}"
155+
summary: "status: **running**"
108156
- uses: ./.github/actions/benchmark_local
157+
id: benchmark
109158
with:
110159
sha: ${{ needs.metadata.outputs.sha }}
111160
run_id: ${{ needs.metadata.outputs.run_id }}
112161
dataset: ${{ matrix.dataset }}
113162
source: ${{ needs.metadata.outputs.source }}
114163
source_id: ${{ needs.metadata.outputs.source_id }}
115164
- name: Set github check status to completed
116-
if: always()
117-
uses: Sibz/github-status-action@v1
165+
uses: ./.github/actions/create_check_status
118166
with:
119-
authToken: ${{ secrets.GITHUB_TOKEN }}
120-
context: 'Benchmark Local / ${{ matrix.dataset }}'
121-
description: 'Completed'
122-
state: ${{ job.status }}
167+
github_token: ${{ secrets.GITHUB_TOKEN }}
123168
sha: ${{ needs.metadata.outputs.sha }}
124-
target_url: https://github.com/datafuselabs/databend/actions/runs/${{ github.run_id }}/jobs/${{ github.job_id }}
169+
name: 'Benchmark Local / ${{ matrix.dataset }}'
170+
status: completed
171+
conclusion: ${{ job.status }}
172+
title: "Benchmark Local for ${{ matrix.dataset }}"
173+
summary: "status: **${{ job.status }}**"
125174

126175
docker:
127176
needs: metadata
@@ -193,14 +242,14 @@ jobs:
193242
- uses: actions/checkout@v3
194243
- uses: ./.github/actions/setup_bendsql
195244
- name: Set github check status to pending
196-
uses: Sibz/github-status-action@v1
245+
uses: ./.github/actions/create_check_status
197246
with:
198-
authToken: ${{ secrets.GITHUB_TOKEN }}
199-
context: 'Benchmark Cloud / ${{ matrix.dataset }}(${{ matrix.size }})'
200-
description: 'Running'
201-
state: 'pending'
247+
github_token: ${{ secrets.GITHUB_TOKEN }}
202248
sha: ${{ needs.metadata.outputs.sha }}
203-
target_url: https://github.com/datafuselabs/databend/actions/runs/${{ github.run_id }}/jobs/${{ github.job_id }}
249+
name: 'Benchmark Cloud / ${{ matrix.dataset }}(${{ matrix.size }})'
250+
status: in_progress
251+
title: "Benchmark Cloud for ${{ matrix.dataset }} with ${{ matrix.size }} warehouse"
252+
summary: "status: **running**"
204253
- uses: ./.github/actions/benchmark_cloud
205254
id: benchmark
206255
with:
@@ -215,16 +264,16 @@ jobs:
215264
cloud_password: ${{ secrets.BENCHMARK_CLOUD_PASSWORD }}
216265
cloud_org: ${{ secrets.BENCHMARK_CLOUD_ORG }}
217266
cloud_endpoint: ${{ secrets.BENCHMARK_CLOUD_ENDPOINT }}
218-
- name: Set github check status to completed
219-
if: always()
220-
uses: Sibz/github-status-action@v1
267+
- name: Set github check status to pending
268+
uses: ./.github/actions/create_check_status
221269
with:
222-
authToken: ${{ secrets.GITHUB_TOKEN }}
223-
context: 'Benchmark Cloud / ${{ matrix.dataset }}(${{ matrix.size }})'
224-
description: 'Completed'
225-
state: ${{ job.status }}
270+
github_token: ${{ secrets.GITHUB_TOKEN }}
226271
sha: ${{ needs.metadata.outputs.sha }}
227-
target_url: https://github.com/datafuselabs/databend/actions/runs/${{ github.run_id }}/jobs/${{ github.job_id }}
272+
name: 'Benchmark Cloud / ${{ matrix.dataset }}(${{ matrix.size }})'
273+
status: completed
274+
conclusion: ${{ job.status }}
275+
title: "Benchmark Cloud for ${{ matrix.dataset }} with ${{ matrix.size }} warehouse"
276+
summary: "status: **running**"
228277

229278
comment_on_pr:
230279
runs-on: [self-hosted, X64, Linux, dev]
@@ -246,6 +295,10 @@ jobs:
246295
with:
247296
name: benchmark-hits-cloud-Medium
248297
path: benchmark/clickbench/results/hits
298+
- uses: actions/download-artifact@v3
299+
with:
300+
name: benchmark-hits-cloud-Large
301+
path: benchmark/clickbench/results/hits
249302
- uses: actions/download-artifact@v3
250303
with:
251304
name: benchmark-tpch-local
@@ -254,6 +307,10 @@ jobs:
254307
with:
255308
name: benchmark-tpch-cloud-Medium
256309
path: benchmark/clickbench/results/tpch
310+
- uses: actions/download-artifact@v3
311+
with:
312+
name: benchmark-tpch-cloud-Large
313+
path: benchmark/clickbench/results/tpch
257314
- name: Get Report Prefix
258315
run: |
259316
echo "REPORT_S3_PREFIX=${{ env.BENCHMARK_S3_PREFIX }}/pr/${{ needs.metadata.outputs.source_id }}/${{ needs.metadata.outputs.run_id }}" >> $GITHUB_ENV
@@ -263,8 +320,10 @@ jobs:
263320
run: |
264321
aws s3 cp ./results/hits/result-hits-local.json ${{ env.REPORT_S3_PREFIX }}/hits-local.json
265322
aws s3 cp ./results/hits/result-hits-cloud-Medium.json ${{ env.REPORT_S3_PREFIX }}/hits-cloud-Medium.json
323+
aws s3 cp ./results/hits/result-hits-cloud-Large.json ${{ env.REPORT_S3_PREFIX }}/hits-cloud-Large.json
266324
aws s3 cp ./results/tpch/result-tpch-local.json ${{ env.REPORT_S3_PREFIX }}/tpch-local.json
267325
aws s3 cp ./results/tpch/result-tpch-cloud-Medium.json ${{ env.REPORT_S3_PREFIX }}/tpch-cloud-Medium.json
326+
aws s3 cp ./results/tpch/result-tpch-cloud-Large.json ${{ env.REPORT_S3_PREFIX }}/tpch-cloud-Large.json
268327
- name: Get latest release clickbench result
269328
working-directory: benchmark/clickbench
270329
run: |
@@ -287,7 +346,8 @@ jobs:
287346
token: ${{ github.token }}
288347
body: |
289348
![local](https://img.shields.io/static/v1?label=AWS%20EC2&message=c5.4xlarge&color=orange&logo=amazonec2)
290-
![cloud](https://img.shields.io/static/v1?label=DatabendCloud&message=Medium&color=blue&logo=icloud)
349+
![cloud](https://img.shields.io/static/v1?label=Databend%20Cloud&message=Medium&color=blue&logo=icloud)
350+
![cloud](https://img.shields.io/static/v1?label=Databend%20Cloud&message=Large&color=blue&logo=icloud)
291351
## ClickBench Report
292352
* **hits**: ${{ env.REPORT_URL_PREFIX }}/hits.html
293353
* **tpch**: ${{ env.REPORT_URL_PREFIX }}/tpch.html

0 commit comments

Comments
 (0)