## ⚠️ATTENTION! ⚠️ Upgrading procedure: **Database:** After this PR will be merged you need to backup your DB first (you can use the db-assembler or any mysql client to generate the dump) and restore it after. The reason is that we use now docker named volumes instead of binded ones to improve performance. **Conf & client data**: if you use the default configuration, both the etc and the data folder are now available inside the **/env/docker**. Finally, you can cleanup the /docker folder previously used by our system. ## Changes Proposed: This PR will implement the [devcontainer ](https://code.visualstudio.com/docs/remote/containers) feature for VSCode. Allowing us to develop and debug directly within the container in the same way on all OSes. * Implemented support for vscode dev-container feature by remote-extension suite * Docker performance optimizations for MacOS and non-linux hosts * Bash system improvements * Implemented first command using Deno runtime environment (typescript) and [commander.js] * Implemented wait mechanism for db_assembler * Implemented db migration command * possibility to run the authserver and worldserver with GDB using the integrated simple-restarter * Implemented docker multi-stage mechanism to use one single Dockerfile for all the services * client-data downloader now creates a placeholder to avoid downloading the same version of data files multiple times * deployment of pre-compiled docker images on [docker hub](https://hub.docker.com/u/acore), you can test them [here](https://github.com/azerothcore/acore-docker)
52 lines
1.3 KiB
Bash
52 lines
1.3 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
ROOTPATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )/../../" && pwd )"
|
|
|
|
source "$ROOTPATH/apps/bash_shared/includes.sh"
|
|
|
|
if [ -f "./config.sh" ]; then
|
|
source "./config.sh" # should overwrite previous
|
|
fi
|
|
|
|
echo "This is a dev-only procedure to export the DB into the SQL base files. All base files will be overwritten."
|
|
read -p "Are you sure you want to continue (y/N)? " choice
|
|
case "$choice" in
|
|
y|Y ) echo "Exporting the DB into the SQL base files...";;
|
|
* ) return;;
|
|
esac
|
|
|
|
echo "===== STARTING PROCESS ====="
|
|
|
|
|
|
function export() {
|
|
echo "Working on: "$1
|
|
database=$1
|
|
|
|
var_base_path="DB_"$database"_PATHS"
|
|
base_path=${!var_base_path%/}
|
|
|
|
base_conf="TPATH="$base_path";\
|
|
CLEANFOLDER=1; \
|
|
CHMODE=0; \
|
|
TEXTDUMPS=0; \
|
|
PARSEDUMP=1; \
|
|
FULL=0; \
|
|
DUMPOPTS='--skip-comments --skip-set-charset --routines --extended-insert --order-by-primary --single-transaction --quick'; \
|
|
"
|
|
|
|
var_base_conf="DB_"$database"_CONF"
|
|
base_conf=$base_conf${!var_base_conf}
|
|
|
|
var_base_name="DB_"$database"_NAME"
|
|
base_name=${!var_base_name}
|
|
|
|
|
|
bash "$AC_PATH_DEPS/acore/mysql-tools/mysql-tools" "dump" "" "$base_name" "" "$base_conf"
|
|
}
|
|
|
|
for db in ${DATABASES[@]}
|
|
do
|
|
export "$db"
|
|
done
|
|
|
|
echo "===== DONE ====="
|