forked from adamm/autogits
51 lines
1004 B
Bash
Executable File
51 lines
1004 B
Bash
Executable File
#!/usr/bin/bash
|
|
|
|
# Factory meta data checked-out
|
|
export DEVEL_PACKAGES=$PWD/Factory/pkgs/_meta/devel_packages
|
|
devel=$PWD/devel_update.sh
|
|
|
|
function getorg {
|
|
osc meta prj $1 | grep scmsync | sed -e's,^.*src\.opensuse\.org/,,' -e 's,/_ObsPrj.*$,,'
|
|
}
|
|
|
|
function factory {
|
|
$devel get $1
|
|
}
|
|
|
|
function message {
|
|
org=$1
|
|
pkg=$2
|
|
dprj=$3
|
|
echo "This package is developed in git at https://src.opensuse.org/${org}/${pkg} for OBS package ${dprj}/${pkg} -- see https://en.opensuse.org/openSUSE:OBS_to_Git"
|
|
}
|
|
|
|
obs=$1
|
|
|
|
if [ -z "$1" ]; then
|
|
obs=$(cat migrated_projects)
|
|
fi
|
|
|
|
for p in $obs; do
|
|
org=$(getorg $p)
|
|
if [ -z "$org" ]; then
|
|
echo $p is not in git!
|
|
continue
|
|
fi
|
|
|
|
packages=$(osc ls $p)
|
|
for pkg in $packages; do
|
|
dprj=$(factory $pkg)
|
|
if [ "$dprj" != "$p" ]; then
|
|
# not devel project
|
|
continue
|
|
fi
|
|
msg=$(message $org $pkg $dprj)
|
|
|
|
if [ -n "$msg" ]; then
|
|
echo $msg
|
|
osc meta attribute openSUSE:Factory $pkg --attribute OBS:RejectBranch --set "$msg" > /dev/null || exit 1
|
|
fi
|
|
done
|
|
done
|
|
|