+++ /dev/null
-#!/bin/bash
-
-API=https://api.tizen.org
-PRJ=${1:-Tizen:3.0.2014.Q3:Common}
-
-PARALLEL_JOBS=8
-
-set -e
-
-function parallel_jobs {
- local max_number=$((0 + ${1:-0}))
- while true; do
- jobs &>/dev/null
- if [[ $(jobs -p | wc -l) -lt $max_number ]]; then
- break
- fi
- sleep 0.3
- done
-}
-
-cd $(dirname $0)
-
-# fetch project config
-echo "Fetching project config for $PRJ"
-osc -A $API meta prjconf $PRJ >_config
-
-# fetch project meta
-echo "Fetching project meta for $PRJ"
-osc -A $API meta prj $PRJ >_meta
-
-# check that each subdir exists on OBS project
-shopt -s extglob
-for file in $(ls */@(_aggregate|_link)); do
- pkg=$(dirname $file)
- echo "Checking $pkg"
- if ! osc -A $API ls $PRJ $pkg &>/dev/null; then
- echo "Package $pkg was removed on OBS. Removing dir $pkg."
- git rm -rf $pkg
- fi
-done
-
-function check_package() {
- pkg=$1
- pkgtype="X"
-
- # fetch file list for each package and deduce type
- for filename in $(osc -A $API ls -u $PRJ $pkg); do
- case $filename in
- _aggregate) pkgtype="A"; break;;
- _link) pkgtype="L"; break;;
- _service) pkgtype="S"; break;;
- *) pkgtype="U"; break;;
- esac
- done
- msg="$pkgtype $pkg"
-
- # uddate aggregate and link packages
- case $pkgtype in
- A)
- mkdir -p $pkg
- osc -A $API api /source/$PRJ/$pkg/_aggregate >$pkg/_aggregate
- osc -A $API api /source/$PRJ/$pkg/_meta >$pkg/_meta
- msg="$msg (updated)"
- ;;
- L)
- mkdir -p $pkg
- osc -A $API api /source/$PRJ/$pkg/_link >$pkg/_link
- msg="$msg (updated)"
- ;;
- *)
- ;;
- esac
-
- echo $msg
-}
-
-# fetch packages list
-osc -A $API ls $PRJ | while read pkg; do
- parallel_jobs $PARALLEL_JOBS
- check_package $pkg &
-done
-
-parallel_jobs 1
-