remove old qcows if filesize on server has changed
This commit is contained in:
parent
022e8ff19b
commit
3768d0e77b
2 changed files with 22 additions and 0 deletions
|
@ -65,8 +65,25 @@ sync_all_images() {
|
||||||
/lmn/vm/
|
/lmn/vm/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
delete_old_qcows() {
|
||||||
|
cd /lmn/vm
|
||||||
|
for qcow2 in *.qcow2; do
|
||||||
|
qcowsize=$(stat -c%s "${qcow2}")
|
||||||
|
if [[ -f "${qcow2}.size" ]] && [[ "${qcowsize}" != $(<"${qcow2}.size") ]]; then
|
||||||
|
torrent="${qcow2}.torrent"
|
||||||
|
session="${torrent//./_}"
|
||||||
|
if vmimage-torrent status | grep -qw ^"$session"; then
|
||||||
|
vmimage-torrent stop "${qcow2}"
|
||||||
|
fi
|
||||||
|
rm "${qcow2}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
sync_all_torrents() {
|
sync_all_torrents() {
|
||||||
rsync -ai rsync://server:/vmimages-download/*.torrent /lmn/vm/
|
rsync -ai rsync://server:/vmimages-download/*.torrent /lmn/vm/
|
||||||
|
rsync -ai rsync://server:/vmimages-download/*.size /lmn/vm/
|
||||||
|
delete_old_qcows
|
||||||
rsync -ai rsync://server:/vmimages-download/*.xml /lmn/vm/
|
rsync -ai rsync://server:/vmimages-download/*.xml /lmn/vm/
|
||||||
RSYNC_COMMAND=$(rsync -ai --delete --exclude=mimeinfo.cache rsync://server:/vmimages-download/desktop/ /usr/local/share/applications/ | sed '/ \.\//d')
|
RSYNC_COMMAND=$(rsync -ai --delete --exclude=mimeinfo.cache rsync://server:/vmimages-download/desktop/ /usr/local/share/applications/ | sed '/ \.\//d')
|
||||||
if [[ $? -eq 0 ]] && [[ -n "${RSYNC_COMMAND}" ]]; then
|
if [[ $? -eq 0 ]] && [[ -n "${RSYNC_COMMAND}" ]]; then
|
||||||
|
|
|
@ -42,9 +42,14 @@ upload_image() {
|
||||||
cd /lmn/vm
|
cd /lmn/vm
|
||||||
# (re-) create torrent file
|
# (re-) create torrent file
|
||||||
sudo -u lmnsynci /usr/local/bin/vmimage-torrent create "${VM_NAME}.qcow2"
|
sudo -u lmnsynci /usr/local/bin/vmimage-torrent create "${VM_NAME}.qcow2"
|
||||||
|
# create size-information-file
|
||||||
|
stat -c%s "${VM_NAME}.qcow2" > "${VM_NAME}.qcow2.size"
|
||||||
|
chown lmnsynci:lmnsynci "${VM_NAME}.qcow2.size"
|
||||||
# Upload Torrent, qcow2 and machine-definition-XML
|
# Upload Torrent, qcow2 and machine-definition-XML
|
||||||
[[ -f "/lmn/vm/${VM_NAME}.qcow2.torrent" ]] && rsync -av --password-file=/etc/rsync.secret \
|
[[ -f "/lmn/vm/${VM_NAME}.qcow2.torrent" ]] && rsync -av --password-file=/etc/rsync.secret \
|
||||||
"/lmn/vm/${VM_NAME}.qcow2.torrent" rsync://vmuser@server:/vmimages-upload/
|
"/lmn/vm/${VM_NAME}.qcow2.torrent" rsync://vmuser@server:/vmimages-upload/
|
||||||
|
rsync -av --password-file=/etc/rsync.secret "/lmn/vm/${VM_NAME}.qcow2.size" \
|
||||||
|
rsync://vmuser@server:/vmimages-upload/
|
||||||
rsync -av --password-file=/etc/rsync.secret "/lmn/vm/${VM_NAME}.qcow2" \
|
rsync -av --password-file=/etc/rsync.secret "/lmn/vm/${VM_NAME}.qcow2" \
|
||||||
rsync://vmuser@server:/vmimages-upload/
|
rsync://vmuser@server:/vmimages-upload/
|
||||||
rsync -av --password-file=/etc/rsync.secret "/lmn/vm/${VM_NAME}.xml" \
|
rsync -av --password-file=/etc/rsync.secret "/lmn/vm/${VM_NAME}.xml" \
|
||||||
|
|
Loading…
Add table
Reference in a new issue