3 API=https://api.tizen.org
10 function parallel_jobs {
11 local max_number=$((0 + ${1:-0}))
14 if [[ $(jobs -p | wc -l) -lt $max_number ]]; then
21 function check_package() {
25 # fetch file list for each package and deduce type
26 for filename in $(osc -A $API ls -u $PRJ $pkg); do
28 _aggregate) pkgtype="A"; break;;
29 _link) pkgtype="L"; break;;
30 _service) pkgtype="S"; break;;
31 *) pkgtype="U"; break;;
36 # uddate aggregate and link packages
40 osc -A $API api /source/$PRJ/$pkg/_aggregate >$pkg/_aggregate
41 osc -A $API api /source/$PRJ/$pkg/_meta >$pkg/_meta
46 osc -A $API api /source/$PRJ/$pkg/_link >$pkg/_link
58 # fetch project config
59 echo "Fetching project config for $PRJ"
60 osc -A $API meta prjconf $PRJ >_config
63 echo "Fetching project meta for $PRJ"
64 osc -A $API meta prj $PRJ >_meta
66 # check that each subdir exists on OBS project
68 for file in $(ls */@(_aggregate|_link)); do
71 if ! osc -A $API ls $PRJ $pkg &>/dev/null; then
72 echo "Package $pkg was removed on OBS. Removing dir $pkg."
77 osc -A $API ls $PRJ | while read pkg; do
78 parallel_jobs $PARALLEL_JOBS