docker-icingaweb2/get-mods.sh
Alexander A. Klimov 1af83f6284 Add license headers
2020-07-23 10:54:51 +02:00

57 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# Icinga Web 2 Docker image | (c) 2020 Icinga GmbH | GPLv2+
set -exo pipefail
BRANCH="$1"
get_tag () {
git -C dockerweb2-temp tag --sort=-version:refname |grep -vFe - |head -n 1
}
get_special () {
if [ ! -e "icingaweb2/modules/$2" ]; then
rm -rf dockerweb2-temp
git clone --bare "https://github.com/Icinga/${1}.git" dockerweb2-temp
case "$2" in
icingadb)
REF=2c0662c420617712bd26234da550dcf8d4afcdb8 # v1.0.0-rc1+
;;
incubator|ipl|reactbundle)
REF="$(get_tag)"
;;
*)
if [ -n "$BRANCH" ] && git -C dockerweb2-temp show -s --oneline "$BRANCH"; then
REF="$BRANCH"
else
REF="$(get_tag)"
fi
;;
esac
git -C dockerweb2-temp archive "--prefix=icingaweb2/modules/${2}/" "$REF" |tar -x
rm -rf dockerweb2-temp
fi
}
get_mod () {
get_special "icingaweb2-module-$1" "$1"
}
get_mod audit
get_mod aws
get_mod businessprocess
get_mod cube
get_mod director
get_mod fileshipper
get_mod graphite
get_special icingadb-web icingadb
get_mod idoreports
get_mod incubator
get_mod ipl
get_mod pdfexport
get_mod reactbundle
get_mod reporting
get_mod vspheredb
get_mod x509