Skip to content

Commit c6bfc50

Browse files
authored
Fix upload of ABI Compatibility Report HTML on failure (#1925)
* CDRIVER-5930 temporarily disable abi-compliance-check task failure for v2.0
1 parent 56048a5 commit c6bfc50

File tree

3 files changed

+13
-34
lines changed

3 files changed

+13
-34
lines changed

.evergreen/config_generator/components/abi_compliance_check.py

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -15,32 +15,20 @@ class CheckABICompliance(Function):
1515
script='.evergreen/scripts/abi-compliance-check-setup.sh'
1616
),
1717
bash_exec(
18-
command_type=EvgCommandType.SETUP,
18+
command_type=EvgCommandType.TEST,
1919
add_expansions_to_env=True,
2020
working_dir='mongoc',
2121
script='.evergreen/scripts/abi-compliance-check.sh'
2222
),
23-
bash_exec(
24-
command_type=EvgCommandType.TEST,
25-
working_dir='mongoc',
26-
env={
27-
'AWS_ACCESS_KEY_ID': '${aws_key}',
28-
'AWS_SECRET_ACCESS_KEY': '${aws_secret}',
29-
},
30-
script='''\
31-
aws s3 cp abi-compliance/compat_reports s3://mciuploads/${project}/${build_variant}/${revision}/${version_id}/${build_id}/abi-compliance/compat_reports --recursive --acl public-read --region us-east-1
32-
[[ ! -f ./abi-compliance/abi-error.txt ]]
33-
'''
34-
),
3523
s3_put(
3624
aws_key='${aws_key}',
3725
aws_secret='${aws_secret}',
3826
bucket='mciuploads',
3927
content_type='text/html',
40-
display_name='ABI Report:',
41-
local_files_include_filter='mongoc/abi-compliance/compat_reports/**/*.html',
28+
display_name='ABI Compliance Check: ',
29+
local_files_include_filter='abi-compliance/compat_reports/**/compat_report.html',
4230
permissions='public-read',
43-
remote_file='${project}/${build_variant}/${revision}/${version_id}/${build_id}/abi-compliance/compat_report.html',
31+
remote_file='${project}/${build_variant}/${revision}/${version_id}/${build_id}/abi-compliance/compat_reports/',
4432
),
4533
]
4634

.evergreen/generated_configs/functions.yml

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -9,37 +9,24 @@ functions:
99
- -c
1010
- .evergreen/scripts/abi-compliance-check-setup.sh
1111
- command: subprocess.exec
12-
type: setup
12+
type: test
1313
params:
1414
binary: bash
1515
working_dir: mongoc
1616
add_expansions_to_env: true
1717
args:
1818
- -c
1919
- .evergreen/scripts/abi-compliance-check.sh
20-
- command: subprocess.exec
21-
type: test
22-
params:
23-
binary: bash
24-
working_dir: mongoc
25-
env:
26-
AWS_ACCESS_KEY_ID: ${aws_key}
27-
AWS_SECRET_ACCESS_KEY: ${aws_secret}
28-
args:
29-
- -c
30-
- |
31-
aws s3 cp abi-compliance/compat_reports s3://mciuploads/${project}/${build_variant}/${revision}/${version_id}/${build_id}/abi-compliance/compat_reports --recursive --acl public-read --region us-east-1
32-
[[ ! -f ./abi-compliance/abi-error.txt ]]
3320
- command: s3.put
3421
params:
35-
display_name: "ABI Report:"
22+
display_name: "ABI Compliance Check: "
3623
aws_key: ${aws_key}
3724
aws_secret: ${aws_secret}
3825
bucket: mciuploads
3926
content_type: text/html
40-
local_files_include_filter: mongoc/abi-compliance/compat_reports/**/*.html
27+
local_files_include_filter: abi-compliance/compat_reports/**/compat_report.html
4128
permissions: public-read
42-
remote_file: ${project}/${build_variant}/${revision}/${version_id}/${build_id}/abi-compliance/compat_report.html
29+
remote_file: ${project}/${build_variant}/${revision}/${version_id}/${build_id}/abi-compliance/compat_reports/
4330
backtrace:
4431
- command: subprocess.exec
4532
params:

.evergreen/scripts/abi-compliance-check.sh

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,10 @@ $(pwd)/changes-install/include/libbson-1.0/bson/bson.h
6363
<libs>$(pwd)/changes-install/lib</libs>
6464
DOC
6565

66+
# Allow task to upload the HTML report despite failed status.
6667
if ! abi-compliance-checker -lib mongo-c-driver -old old.xml -new new.xml; then
67-
touch ./abi-error.txt
68+
: # CDRIVER-5930: re-enable task failure once 2.0.0 is released.
69+
# declare status
70+
# status='{"status":"failed", "type":"test", "should_continue":true, "desc":"abi-compliance-checker emitted one or more errors"}'
71+
# curl -sS -d "${status:?}" -H "Content-Type: application/json" -X POST localhost:2285/task_status || true
6872
fi

0 commit comments

Comments
 (0)