Skip to content

Commit 080d040

Browse files
authored
Merge pull request #39 from xumia/test-cherry-pick
Merged PR 7124116: Support to collect build metrics
2 parents 4b27ca9 + 6caccce commit 080d040

1 file changed

Lines changed: 37 additions & 0 deletions

File tree

.pipelines/post-build-steps.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Post build steps to collect build logs
2+
# Required packages: python3, azcopy
3+
4+
parameters:
5+
- name: 'storageUrlPrefix'
6+
type: string
7+
default: 'https://sonicazurepipelines.blob.core.windows.net/buildinternal'
8+
- name: 'sasKey'
9+
type: string
10+
default: $(sonicazurepipelines-SasToken)
11+
12+
steps:
13+
- script: |
14+
timestamp=$(date '+%Y%m%d-%H%M%S-%N')
15+
relative_path="${timestamp:0:4}/${timestamp:4:2}/${timestamp:6:2}"
16+
timelinefile="buildtimelines_$timestamp.json"
17+
buildlogfile="buildlogs_$timestamp.json"
18+
curl -s -o collect-build-logs.py 'https://raw.githubusercontent.com/sonic-net/sonic-pipelines/main/azure-pipelines/scripts/collect-build-logs.py'
19+
chmod a+x collect-build-logs.py
20+
build_url="$(System.TeamFoundationCollectionUri)DefaultCollection/$(System.TeamProjectId)/_apis/build/builds/$(Build.BuildId)"
21+
./collect-build-logs.py "$build_url" "$(System.AccessToken)" "$timelinefile" "$buildlogfile"
22+
ls -lt "$timelinefile" "$buildlogfile" 2>/dev/null
23+
if [ -f $timelinefile ]; then
24+
azcopy cp $timelinefile $PUBLISH_URL_PREFIX/buildtimelines/$relative_path/$timelinefile$SASKEY
25+
fi
26+
27+
if [ ! -f $buildlogfile ]; then
28+
azcopy cp $timelinefile $PUBLISH_URL_PREFIX/buildlogs/$relative_path/$buildlogfile$SASKEY
29+
fi
30+
31+
exit 0
32+
env:
33+
PUBLISH_URL_PREFIX: ${{ parameters.storageUrlPrefix }}
34+
SASKEY: ${{ parameters.sasKey }}
35+
condition: always()
36+
continueOnError: true
37+
displayName: "Collect build logs"

0 commit comments

Comments
 (0)