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
23 # fetch project config
24 echo "Fetching project config for $PRJ"
25 osc -A $API meta prjconf $PRJ >_config
28 echo "Fetching project meta for $PRJ"
29 osc -A $API meta prj $PRJ >_meta
31 # check that each subdir exists on OBS project
33 for file in $(ls */@(_aggregate|_link)); do
36 if ! osc -A $API ls $PRJ $pkg &>/dev/null; then
37 echo "Package $pkg was removed on OBS. Removing dir $pkg."
42 function check_package() {
46 # fetch file list for each package and deduce type
47 for filename in $(osc -A $API ls -u $PRJ $pkg); do
49 _aggregate) pkgtype="A"; break;;
50 _link) pkgtype="L"; break;;
51 _service) pkgtype="S"; break;;
52 *) pkgtype="U"; break;;
57 # uddate aggregate and link packages
61 osc -A $API api /source/$PRJ/$pkg/_aggregate >$pkg/_aggregate
62 osc -A $API api /source/$PRJ/$pkg/_meta >$pkg/_meta
67 osc -A $API api /source/$PRJ/$pkg/_link >$pkg/_link
78 osc -A $API ls $PRJ | while read pkg; do
79 parallel_jobs $PARALLEL_JOBS