mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-27 13:37:30 +00:00
Merge pull request #26423 from wojtek-t/speedup_update_codecget
Speedup update_codecgen by precomputing dependencies.
This commit is contained in:
commit
90ca2aae24
@ -56,11 +56,14 @@ function cleanup {
|
|||||||
}
|
}
|
||||||
trap cleanup EXIT
|
trap cleanup EXIT
|
||||||
|
|
||||||
# Sort all files in the dependency order.
|
# Precompute dependencies for all directories.
|
||||||
|
# Then sort all files in the dependency order.
|
||||||
number=${#generated_files[@]}
|
number=${#generated_files[@]}
|
||||||
result=""
|
result=""
|
||||||
for (( i=0; i<number; i++ )); do
|
for (( i=0; i<number; i++ )); do
|
||||||
visited[${i}]=false
|
visited[${i}]=false
|
||||||
|
file="${generated_files[${i}]/\.generated\.go/.go}"
|
||||||
|
deps[${i}]=$(go list -f '{{range .Deps}}{{.}}{{"\n"}}{{end}}' ${file} | grep "^${my_prefix}")
|
||||||
done
|
done
|
||||||
###echo "DBG: found $number generated files"
|
###echo "DBG: found $number generated files"
|
||||||
###for f in $(echo "${generated_files[@]}" | sort); do
|
###for f in $(echo "${generated_files[@]}" | sort); do
|
||||||
@ -70,11 +73,9 @@ done
|
|||||||
# NOTE: depends function assumes that the whole repository is under
|
# NOTE: depends function assumes that the whole repository is under
|
||||||
# $my_prefix - it will NOT work if that is not true.
|
# $my_prefix - it will NOT work if that is not true.
|
||||||
function depends {
|
function depends {
|
||||||
file="${generated_files[$1]/\.generated\.go/.go}"
|
|
||||||
rhs="$(dirname ${generated_files[$2]/#./${my_prefix}})"
|
rhs="$(dirname ${generated_files[$2]/#./${my_prefix}})"
|
||||||
###echo "DBG: does ${file} depend on ${rhs}?"
|
###echo "DBG: does ${file} depend on ${rhs}?"
|
||||||
deps=$(go list -f '{{range .Deps}}{{.}}{{"\n"}}{{end}}' ${file} | grep "^${my_prefix}")
|
for dep in ${deps[$1]}; do
|
||||||
for dep in ${deps}; do
|
|
||||||
###echo "DBG: checking against $dep"
|
###echo "DBG: checking against $dep"
|
||||||
if [[ "${dep}" == "${rhs}" ]]; then
|
if [[ "${dep}" == "${rhs}" ]]; then
|
||||||
###echo "DBG: = yes"
|
###echo "DBG: = yes"
|
||||||
|
Loading…
Reference in New Issue
Block a user