Files
AstraDeploy/cores/paper.sh

60 lines
1.4 KiB
Bash

#!/usr/bin/env bash
core_name_paper() {
echo "Paper"
}
core_default_port_paper() {
echo "25565"
}
core_protocol_paper() {
echo "tcp"
}
core_runtime_paper() {
echo "java"
}
core_validate_paper() {
return 0
}
core_install_paper() {
info "$(t core_install "$(core_name_paper)")"
emit_step "core_install" "$(core_name_paper)"
local url
emit_step "core_resolve_download" "paper"
url="$(get_papermc_download_url "paper" "${MC_VERSION:-latest}")"
download_as_user "$url" "$SERVER_DIR/server.jar"
emit_step "core_configure" "eula"
run_cmd bash -lc "printf 'eula=true\n' > '$SERVER_DIR/eula.txt'"
create_java_start_script "$SERVER_DIR" "server.jar" "$RAM"
}
core_post_install_paper() {
emit_step "core_post" "Paper"
run_cmd bash -lc "chown -R ${SERVER_USER}:${SERVER_USER} '$SERVER_DIR'"
emit_step "core_chown" "Paper"
open_firewall_port "$SERVER_PORT" "tcp"
emit_step "core_service" "Paper"
create_service "$CORE" "$SERVER_DIR" "$SERVICE_MODE" "$SERVER_DIR/start.sh"
start_service
}
core_update_paper() {
info "$(t core_update "$(core_name_paper)")"
emit_step "core_update" "$(core_name_paper)"
local target="$SERVER_DIR/server.jar"
backup_file "$target"
emit_step "core_backup" "$target"
local url
emit_step "core_resolve_download" "paper"
url="$(get_papermc_download_url "paper" "${MC_VERSION:-latest}")"
download_as_user_atomic "$url" "$target"
emit_step "core_update_done" "Paper"
}