#!/bin/bash UPLOAD_DIR=/home/di-ci/upload set -e cd /home/di-apt/pub # $1 target (apt component), e.g development # $2 name, e.g di-smp # $3 file, e.g di-smp.deb # $4 distro, e.g stretch (or di for jessie) add_deb_to_repo() { reprepro -C $1 remove $4 "$2" reprepro deleteunreferenced reprepro -C $1 includedeb $4 "$3" } # $1 directory, e.g /home/di-ci/upload/jessie # $2 reponame, e.g di, stretch add_packages_from_dir() { for target in development testing acceptation production; do for i in `find $1/${target} -name *.deb 2>/dev/null`; do if [ -e "$i" ]; then pkg=`basename $i` echo "[`date`][$target] $pkg" sudo /bin/chmod g+w `dirname $i` sudo /bin/chmod g+w $i dpkg-sig -k 907592FF --sign builder $i NAME=`dpkg --info $i | grep 'Package' | awk '{print $NF}'` add_deb_to_repo "${target}" "$NAME" "$i" $2 rm -f $i fi done done } add_packages_from_dir ${UPLOAD_DIR}/jessie di add_packages_from_dir ${UPLOAD_DIR}/stretch stretch # NOTE: this must be last as it eats all packages from the root upload dir # compatibility with old ci uploads add_packages_from_dir ${UPLOAD_DIR} di