Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check whl size #34767

Merged
merged 8 commits into from
Aug 16, 2021
Merged
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 35 additions & 6 deletions paddle/scripts/paddle_build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -689,18 +689,18 @@ function get_precision_ut_mac() {
on_precision=1
re=$(cat ut_list|awk -F ' ' '{print }' | awk 'BEGIN{ all_str=""}{if (all_str==""){all_str=$1}else{all_str=all_str"$|^"$1}} END{print "^"all_str"$"}')
UT_list_prec_1='ut_list_prec2'
for case in $UT_list; do
flag=$(echo $case|grep -oE $re)
for ut_case in $UT_list; do
flag=$(echo $ut_case|grep -oE $re)
if [ -n "$flag" ];then
if [ -z "$UT_list_prec" ];then
UT_list_prec="^$case$"
UT_list_prec="^$ut_case$"
elif [[ "${#UT_list_prec}" -gt 10000 ]];then
UT_list_prec_1="$UT_list_prec_1|^$case$"
UT_list_prec_1="$UT_list_prec_1|^$ut_case$"
else
UT_list_prec="$UT_list_prec|^$case$"
UT_list_prec="$UT_list_prec|^$ut_case$"
fi
else
echo ${case} "won't run in PRECISION_TEST mode."
echo ${ut_case} "won't run in PRECISION_TEST mode."
fi
done
fi
Expand All @@ -722,6 +722,31 @@ function fetch_upstream_develop_if_not_exist() {
fi
}

function check_whl_size() {
if [ ! "${pr_whl_size}" ];then
echo "pr whl size not found "
exit 1
fi

dev_whl_size=`du -m ${PADDLE_ROOT}/build/python/dist/*.whl|awk '{print $1}'`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems like we're trying to get "dev_whl_size" and "pr_whl_size" from the same place: ${PADDLE_ROOT}/build/python/dist/*.whl

Is it because we rebuilt "develop" branch after obtaining "pr_whl_size" ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

是的,会执行两边,第一次是PR的,第二次是develop分支的

echo "dev_whl_size: ${dev_whl_size}"
pr_whl_size=196

whldiffSize=`expr ${pr_whl_size} - ${dev_whl_size}`
if [ ${whldiffSize} -gt 10 ] ; then
approval_line=`curl -H "Authorization: token ${GITHUB_API_TOKEN}" https://api.github.com/repos/PaddlePaddle/Paddle/pulls/${GIT_PR_ID}/reviews?per_page=10000`
APPROVALS=`echo ${approval_line}|python ${PADDLE_ROOT}/tools/check_pr_approval.py 1 22334008 22361972`
echo "current pr ${GIT_PR_ID} got approvals: ${APPROVALS}"
if [ "${APPROVALS}" == "FALSE" ]; then
echo "=========================================================================================="
echo "This PR make the release paddlepaddle whl size growth exceeds 10 M."
echo "Then you must have one RD (jim19930609 (Recommend) or JiabinYang) approval for this PR\n"
echo "=========================================================================================="
exit 6
fi
fi
}

function generate_upstream_develop_api_spec() {
fetch_upstream_develop_if_not_exist
cur_branch=`git branch | grep \* | cut -d ' ' -f2`
Expand All @@ -730,6 +755,9 @@ function generate_upstream_develop_api_spec() {
cmake_gen $1
build $2
cp ${PADDLE_ROOT}/python/requirements.txt /tmp
pr_whl_size=`du -m ${PADDLE_ROOT}/build/python/dist/*.whl|awk '{print $1}'`
echo "pr_whl_size: ${pr_whl_size}"


git checkout $cur_branch
generate_api_spec "$1" "DEV"
Expand Down Expand Up @@ -2234,6 +2262,7 @@ function main() {
example_code=$?
summary_check_problems $check_style_code $[${example_code_gpu} + ${example_code}] "$check_style_info" "${example_info_gpu}\n${example_info}"
assert_api_spec_approvals
check_whl_size
;;
build)
cmake_gen ${PYTHON_ABI:-""}
Expand Down