add datapack functionality
This commit is contained in:
parent
4e72971d7f
commit
5a517d12ad
3 changed files with 43 additions and 3 deletions
|
@ -26,15 +26,19 @@ function backup_create() {
|
|||
}
|
||||
|
||||
function backup_destroy() {
|
||||
checkBackupDir "${1}"
|
||||
|
||||
local backupdir="$(getValueByKey 'PODMAN_DIRECTORY')/${1}/backup"
|
||||
if [[ ! -f "${backupdir}/${2}.tar.gz" ]]; then
|
||||
log e "Backup ${2%} does not exist! Check again using '$(basename 0) backup list'"
|
||||
log e "Backup '${2}' does not exist! Check again using '$(basename 0) backup list'"
|
||||
exit 1
|
||||
fi
|
||||
rm "${backupdir}/${2}.tar.gz"
|
||||
}
|
||||
|
||||
function backup_list() {
|
||||
checkBackupDir "${1}"
|
||||
|
||||
local backupdir="$(getValueByKey 'PODMAN_DIRECTORY')/${1}/backup"
|
||||
local found_backups=($(find "$backupdir" -type f -print))
|
||||
|
||||
|
|
|
@ -4,20 +4,50 @@ function datapack_help() {
|
|||
usage_general
|
||||
cat<<EOF
|
||||
commands:
|
||||
fetch [download-url] [servername]
|
||||
delete [datapack-name] [servername]
|
||||
fetch [servername] [download-url]
|
||||
delete [servername] [datapack-name]
|
||||
list [servername]
|
||||
EOF
|
||||
}
|
||||
|
||||
function datapack_fetch() {
|
||||
checkDatapackDir "${1}"
|
||||
|
||||
local datapack_dir="$(getValueByKey 'PODMAN_DIRECTORY')/${1}/data/world/datapacks"
|
||||
local datapack_name="$(echo ${2} | awk -F/ '{print $NF}')"
|
||||
|
||||
if [[ -f "${datapack_dir}/${datapack_name}" ]]; then
|
||||
log e "Datapack '${datapack_name}' does already exist!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
curl -L "${2}" -o "${datapack_dir}/${datapack_name}"
|
||||
}
|
||||
|
||||
function datapack_delete() {
|
||||
checkDatapackDir "${1}"
|
||||
|
||||
local datapack_dir="$(getValueByKey 'PODMAN_DIRECTORY')/${1}/data/world/datapacks"
|
||||
if [[ ! -f "${datapack_dir}/${2}" ]]; then
|
||||
log e "Datapack '${2}' does not exist! Check again using '$(basename 0) datapack list'"
|
||||
exit 1
|
||||
fi
|
||||
rm "${datapack_dir}/${2}"
|
||||
}
|
||||
|
||||
function datapack_list() {
|
||||
checkDatapackDir "${1}"
|
||||
|
||||
local datapack_dir="$(getValueByKey 'PODMAN_DIRECTORY')/${1}/data/world/datapacks"
|
||||
local found_datapacks=($(find "$datapack_dir" -type f -print))
|
||||
|
||||
if [[ "${#found_datapacks[@]}" -eq 0 ]]; then
|
||||
log i "No datapacks found for '$1'"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
log i "Found ${#found_datapacks[@]} datapacks:"
|
||||
for datapack in "${found_datapacks[@]}"; do
|
||||
echo "- $(basename ${datapack})"
|
||||
done
|
||||
}
|
||||
|
|
|
@ -115,3 +115,9 @@ function checkBackupDir() {
|
|||
mkdir -p "$(getValueByKey 'PODMAN_DIRECTORY')/${1}/backup"
|
||||
fi
|
||||
}
|
||||
|
||||
function checkDatapackDir() {
|
||||
if [[ ! -d "$(getValueByKey 'PODMAN_DIRECTORY')/${1}/data/world/datapacks" ]]; then
|
||||
mkdir -p "$(getValueByKey 'PODMAN_DIRECTORY')/${1}/data/world/datapacks"
|
||||
fi
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue