You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.1 KiB
41 lines
1.1 KiB
#!/bin/bash
|
|
|
|
# HEADER: ===========================================================
|
|
# HEADER: This file is automanaged by puppet
|
|
# HEADER: While it can still be managed manually, it is definitely not recommended.
|
|
# HEADER: Any manual changes to this file run the risk of being overwritten!
|
|
# HEADER: ===========================================================
|
|
|
|
## "repofix" keeps the puppet manifests updated from gitea
|
|
## a quick check confirms alterationa to local files
|
|
## else.. those are updated with latest from gitea
|
|
|
|
set -u
|
|
|
|
## -- path to the Puppet manifest dirs
|
|
REPOBASE=/var/lib/puppet/manifests
|
|
|
|
echo "$(date +'%F_%R:%S') ==== START ==== "
|
|
|
|
## -- check each repo in turn
|
|
cd ${REPOBASE}
|
|
for REPO in $(ls -d *)
|
|
do
|
|
cd ${REPOBASE}/${REPO}
|
|
echo -e "$(date +'%F_%R:%S') checking ${REPO} ... \c"
|
|
STATUS="$(git status | tail -n1)"
|
|
if [[ ! ${STATUS} =~ "nothing to commit" ]]
|
|
then
|
|
echo "need to fix $REPO, showing diff on next line"
|
|
git diff
|
|
git fetch origin &> /dev/null
|
|
git reset --hard origin/master &> /dev/null
|
|
else
|
|
echo " ${STATUS}"
|
|
fi
|
|
git pull &> /dev/null
|
|
done
|
|
|
|
echo "$(date +'%F_%R:%S') ------ END ------"
|
|
|
|
|
|
|