You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
818 B
Plaintext

#!/bin/bash
# Setup YUM/DNF repository
GPG_KEY=F77BB18D
eval BASE_DIRS=~/www_static/dnf.bl0rg.net/*/*
set -e
for base_dir in $BASE_DIRS; do
restorecon -Rv $base_dir
for YUM in $base_dir/{SRPMS,i386,x86_64}; do
if [ -d $YUM ]; then
echo "== $YUM"
cd $YUM
# Check for unsigned RPMs
unsigned=`rpm --checksig *.rpm | egrep -v ': .*pgp'` || true
if [ ${#unsigned} != 0 ]; then
echo "Unsigned packages:"
echo "$unsigned"
exit 1
fi
# Create and sign repodata
createrepo --update --checkts .
if [ ! -e repodata/repomd.xml.asc \
-o repodata/repomd.xml.asc -ot repodata/repomd.xml ]; then
rm -f repodata/repomd.xml.asc
gpg -u $GPG_KEY --detach-sign --armor repodata/repomd.xml
fi
fi
done
done