Update dayz_arma2co_win32.xml

This commit is contained in:
Frank Harris 2026-05-03 14:46:25 -07:00 committed by GitHub
parent 04de729227
commit 692c276bc9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -81,66 +81,31 @@ rm -f dayzmod1.9.0.tar
#Create Database ---------------------------------------
dbPass=$(</dev/urandom tr -dc _A-Z-a-z-0-9 | head -c8)
dbPass=$(</dev/urandom tr -dc 'A-Za-z0-9_' | head -c 12)
srvID=${PWD##*/}
dbID=server_${srvID}
mysqlServerID=2
dbID="server_${srvID}"
# Panel DB connection (where gsp_mysql_servers / gsp_mysql_databases live)
panelDB=panel
panelPrefix=gsp_
panelHost=mysql.iaregamer.com
panelPort=3307
panelUser=remoteuser
panelPass=Pkloyn7yvpht!
sed -i "s/^Host = .*/Host = mysql.iaregamer.com/" cfg/hiveext.ini
sed -i "s/^Port = .*/Port = 3306/" cfg/hiveext.ini
sed -i "s/^Database = .*/Database = ${dbID}/" cfg/hiveext.ini
sed -i "s/^Username = .*/Username = ${dbID}/" cfg/hiveext.ini
sed -i "s/^Password = .*/Password = ${dbPass}/" cfg/hiveext.ini
# Resolve target game DB server/profile from panel metadata (default: mysql_server_id=2 -> MySQL 5.7)
mysqlProfile=$(mysql -N -B -u${panelUser} -p${panelPass} -h${panelHost} -P${panelPort} -e "SELECT mysql_ip,mysql_port,COALESCE(NULLIF(mysql_admin_user,''),'root'),mysql_root_passwd FROM ${panelDB}.${panelPrefix}mysql_servers WHERE mysql_server_id = ${mysqlServerID} LIMIT 1")
mysql -e "
CREATE DATABASE IF NOT EXISTS \`${dbID}\`;
CREATE USER IF NOT EXISTS '${dbID}'@'%' IDENTIFIED BY '${dbPass}';
GRANT ALL ON \`${dbID}\`.* TO '${dbID}'@'%';
if [ -z "${mysqlProfile}" ]; then
echo "ERROR: Could not resolve mysql server profile id ${mysqlServerID} from ${panelDB}.${panelPrefix}mysql_servers"
exit 1
fi
DELETE FROM panel.gsp_mysql_databases WHERE db_user='${dbID}';
INSERT INTO panel.gsp_mysql_databases
(mysql_server_id, home_id, db_user, db_passwd, db_name, enabled)
VALUES (1, ${srvID}, '${dbID}', '${dbPass}', '${dbID}', 1);
"
IFS=$'\t' read -r mysqlHost mysqlPort mysqlAdminUser mysqlAdminPass &lt;&lt;EOF
${mysqlProfile}
EOF
mysql --force "${dbID}" < 1.9.0_fresh.sql
mysqlPort=${mysqlPort:-3306}
# sed -i "s/dayz_dayzmod/${dbID}/g" 1.9.0_fresh.sql
sed -i "s/Host = .*/Host = ${mysqlHost}/g" cfg/hiveext.ini
sed -i "s/Port = .*/Port = 3306/g" cfg/hiveext.ini
sed -i "s/Database = .*/Database = ${dbID}/g" cfg/hiveext.ini
sed -i "s/Username = .*/Username = ${dbID}/g" cfg/hiveext.ini
sed -i "s/Password = .*/Password = ${dbPass}/g" cfg/hiveext.ini
sed -i "s/Port = .*/Port = ${mysqlPort}/g" cfg/hiveext.ini
mysql -u${mysqlAdminUser} -p${mysqlAdminPass} -h${mysqlHost} -P${mysqlPort} -e "CREATE DATABASE IF NOT EXISTS \`${dbID}\`"
# MySQL 5.7/8 compatible user creation + grants
mysql -u${mysqlAdminUser} -p${mysqlAdminPass} -h${mysqlHost} -P${mysqlPort} -e "CREATE USER IF NOT EXISTS '${dbID}'@'localhost' IDENTIFIED BY '${dbPass}'"
mysql -u${mysqlAdminUser} -p${mysqlAdminPass} -h${mysqlHost} -P${mysqlPort} -e "CREATE USER IF NOT EXISTS '${dbID}'@'%' IDENTIFIED BY '${dbPass}'"
mysql -u${mysqlAdminUser} -p${mysqlAdminPass} -h${mysqlHost} -P${mysqlPort} -e "CREATE USER IF NOT EXISTS 'dayzhivemind'@'%' IDENTIFIED BY 'Pkloyn7yvpht!'"
mysql -u${mysqlAdminUser} -p${mysqlAdminPass} -h${mysqlHost} -P${mysqlPort} -e "GRANT ALL ON \`${dbID}\`.* TO '${dbID}'@'localhost'"
mysql -u${mysqlAdminUser} -p${mysqlAdminPass} -h${mysqlHost} -P${mysqlPort} -e "GRANT ALL ON \`${dbID}\`.* TO '${dbID}'@'%'"
mysql -u${mysqlAdminUser} -p${mysqlAdminPass} -h${mysqlHost} -P${mysqlPort} -e "GRANT ALL ON \`${dbID}\`.* TO 'dayzhivemind'@'%'"
mysql -u${mysqlAdminUser} -p${mysqlAdminPass} -h${mysqlHost} -P${mysqlPort} -e "FLUSH PRIVILEGES;"
# Import with compatibility flags for routines/events under binary logging
# Keep stderr in a file to avoid flooding panel output with non-fatal import warnings.
mysql --force --init-command="SET SESSION sql_mode=''; SET SESSION log_bin_trust_function_creators=1;" -u${mysqlAdminUser} -p${mysqlAdminPass} -h${mysqlHost} -P${mysqlPort} -D ${dbID} &lt; 1.9.0_fresh.sql 2> ./cfg/mysql_import_errors.log
mysql -u${panelUser} -p${panelPass} -h${panelHost} -P${panelPort} -e "DELETE FROM ${panelDB}.${panelPrefix}mysql_databases WHERE db_user = '${dbID}'"
# Backward-compatible insert: new schema with snapshot columns OR legacy schema.
hasSnapshotCols=$(mysql -N -B -u${panelUser} -p${panelPass} -h${panelHost} -P${panelPort} -e "SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='${panelDB}' AND TABLE_NAME='${panelPrefix}mysql_databases' AND COLUMN_NAME IN ('db_mysql_ip','db_mysql_port','db_admin_user','db_admin_passwd')")
if [ "${hasSnapshotCols}" = "4" ]; then
mysql -u${panelUser} -p${panelPass} -h${panelHost} -P${panelPort} -e "INSERT INTO ${panelDB}.${panelPrefix}mysql_databases(mysql_server_id, home_id, db_user, db_passwd, db_name, enabled, db_mysql_ip, db_mysql_port, db_admin_user, db_admin_passwd) VALUES (${mysqlServerID},${srvID},'${dbID}','${dbPass}','${dbID}',1,'${mysqlHost}','${mysqlPort}','${mysqlAdminUser}','${mysqlAdminPass}')"
else
mysql -u${panelUser} -p${panelPass} -h${panelHost} -P${panelPort} -e "INSERT INTO ${panelDB}.${panelPrefix}mysql_databases(mysql_server_id, home_id, db_user, db_passwd, db_name, enabled) VALUES (${mysqlServerID},${srvID},'${dbID}','${dbPass}','${dbID}',1)"
fi
# Create alsoRun.bat -----------------------------------