Skip to content

Commit

Permalink
inclusion de información persistente.
Browse files Browse the repository at this point in the history
  • Loading branch information
GorillaTi committed Oct 10, 2024
1 parent e8d143e commit b3dbc23
Showing 1 changed file with 68 additions and 34 deletions.
102 changes: 68 additions & 34 deletions install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,11 @@
# Instalación de la herramienta de copia de seguridad de bases de datos
# Version: 1.0.0

# Variables Globales
tmp_logs="/tmp/logs.log"

# Exit if any command fails
# set -eou pipefail
set -eou pipefail

f_create_directories() {
# Variables locales
Expand All @@ -22,20 +25,20 @@ f_create_directories() {
while [ "$status" -le 0 ]; do
# Verificando la existencia de los direcorios
if [ ! -d "$directorie" ]; then
echo "[WARNING] Directorio $directorie no encontrado"
echo "[WARNING] Directorio $directorie no encontrado" >>"$tmp_logs" 2>&1
# Creando el directorio
mkdir -p "$directorie"
# Validadndo la cracion del directorio
ress=${?}
if [[ $ress -eq 0 ]]; then
echo "[WARNING] Directorio $directorie creado con exito"
echo "[WARNING] Directorio $directorie creado con exito" >>"$tmp_logs" 2>&1
status=0
else
echo "[ERROR] Directorio $directorie no creado "
echo "[ERROR] Directorio $directorie no creado " >>"$tmp_logs" 2>&1
exit 1
fi
else
echo "[INFO] Directorio $directorie encontrado"
echo "[INFO] Directorio $directorie encontrado" >>"$tmp_logs" 2>&1
status=1
fi
done
Expand All @@ -45,11 +48,14 @@ f_install() {
local dir_root="bkpxdb"
local dir_src="src"
local dir_data="data"
local dir_config="config"
local dir_log="logs"
local repo_url="https://raw.githubusercontent.com/GorillaTi/bkpxdb/refs/heads/$1"

# Generando estructura de directorios necesarias
# Directorio raiz
f_create_directories "$dir_root"

# Creando directorio de fuente
f_create_directories "$dir_root/$dir_src"
f_create_directories "$dir_root/$dir_src/list"
Expand All @@ -61,50 +67,78 @@ f_install() {

#Creando directorio de bkp
f_create_directories "$dir_root/$dir_data"
f_create_directories "$dir_root/$dir_data/$dir_config"

# Descargando archiivos necesarios
# db.lst
if [[ -f "$dir_root/$dir_src/list/db.lst" ]]; then
echo "[INFO] El archivo $dir_root/$dir_src/list/db.lst ya existe"
echo "[INFO] El archivo $dir_root/$dir_src/list/db.lst ya existe" >>"$tmp_logs" 2>&1
else
wget -nc -O "$dir_root/$dir_src/list/db.lst" https://raw.githubusercontent.com/GorillaTi/bkpxdb/refs/heads/main/src/list/db.lst.example
echo "[WARNING] El archivo $dir_root/$dir_src/list/db.lst ha sido descargado"
{
wget -nc -O "$dir_root/$dir_src/list/db.lst" "$repo_url/src/list/db.lst.example"
echo "[WARNING] El archivo $dir_root/$dir_src/list/db.lst ha sido descargado"
} >>"$tmp_logs" 2>&1
fi
# db_list.csv
if [[ -f "$dir_root/$dir_src/list/db_list.csv" ]]; then
echo "[INFO] El archivo $dir_root/$dir_src/list/db_list.csv ya existe"
echo "[INFO] El archivo $dir_root/$dir_src/list/db_list.csv ya existe" >>"$tmp_logs" 2>&1
else
wget -nc -O "$dir_root/$dir_src/list/db_list.csv" https://raw.githubusercontent.com/GorillaTi/bkpxdb/refs/heads/main/src/list/db_list.csv.example
echo "[WARNING] El archivo $dir_root/$dir_src/list/db_list.csv ha sido descargado"
{
wget -nc -O "$dir_root/$dir_src/list/db_list.csv" "$repo_url/src/list/db_list.csv.example"
echo "[WARNING] El archivo $dir_root/$dir_src/list/db_list.csv ha sido descargado"
} >>"$tmp_logs" 2>&1
fi
crontab
#crontab
if [[ -f "$dir_root/$dir_src/crontab" ]]; then
echo "[INFO] El archivo $dir_root/$dir_src/crontab ya existe"
echo "[INFO] El archivo $dir_root/$dir_src/crontab ya existe" >>"$tmp_logs" 2>&1
else
{
wget -nc -O "$dir_root/$dir_src/crontab" "$repo_url/src/crontab.example"
echo "[WARNING] El archivo $dir_root/$dir_src/crontab ha sido descargado"
} >>"$tmp_logs" 2>&1
fi
#.conf
if [[ -f "$dir_root/$dir_src/.conf" ]]; then
echo "[INFO] El archivo $dir_root/$dir_src/.conf ya existe" >>"$tmp_logs" 2>&1
else
{
wget -nc -O "$dir_root/$dir_src/.conf" $repo_url/src/.conf.example
echo "[WARNING] El archivo $dir_root/$dir_src/.conf ha sido descargado"
} >>"$tmp_logs" 2>&1
fi
# crontab
if [[ -f "$dir_root/$dir_data/$dir_config/bkpxdb-cron" ]]; then
echo "[INFO] El archivo $dir_root/$dir_data/$dir_config/bkpxdb-cron ya existe" >>"$tmp_logs" 2>&1
else
wget -nc -O "$dir_root/$dir_src/crontab" https://raw.githubusercontent.com/GorillaTi/bkpxdb/refs/heads/main/src/crontab.example
echo "[WARNING] El archivo $dir_root/$dir_src/crontab ha sido descargado"
{
wget -nc -O "$dir_root/$dir_data/$dir_config/bkpxdb-cron" "$repo_url/src/crontab.example"
echo "[WARNING] El archivo $dir_root/$dir_data/$dir_config/bkpxdb-cron ha sido descargado"
} >>"$tmp_logs" 2>&1
fi
# FIXME: solucionar problemas de funcionamiento
# .conf
# if [[ -f "$dir_root/$dir_src/.conf" ]]; then
# echo "[INFO] El archivo $dir_root/$dir_src/.conf ya existe"
# else
# wget -nc -O "$dir_root/$dir_src/.conf" https://raw.githubusercontent.com/GorillaTi/bkpxdb/refs/heads/main/src/.conf.example
# echo "[WARNING] El archivo $dir_root/$dir_src/.conf ha sido descargado"
# fi

# docker-compose.yml
if [[ -f "$dir_root/docker-compose.yml" ]]; then
echo "[INFO] El archivo $dir_root/docker-compose.yml ya existe"
echo "[INFO] El archivo $dir_root/docker-compose.yml ya existe" >>"$tmp_logs" 2>&1
else
wget -O "$dir_root/docker-compose.yml" https://raw.githubusercontent.com/GorillaTi/bkpxdb/refs/heads/main/docker-compose.yml
echo "[WARNING] El archivo $dir_root/docker-compose.yml ha sido descargado"
{
wget -O "$dir_root/docker-compose.yml" "$repo_url/docker-compose.yml"
echo "[WARNING] El archivo $dir_root/docker-compose.yml ha sido descargado"
} >>"$tmp_logs" 2>&1
fi
tree -a "bkpxdb"
echo "Cambiando al directorio $dir_root"
# echo "cd $dir_root"
cd $dir_root
echo "Inicial el contenedor ejecutar"
# echo "docker compose up -d "
docker compose up -d

tree -a "bkpxdb" >>"$tmp_logs" 2>&1
echo "Cambiando al directorio $dir_root" >>"$tmp_logs" 2>&1

cd $dir_root >>"$tmp_logs" 2>&1
echo "Inicial el contenedor ejecutar" >>"$tmp_logs" 2>&1

docker compose up -d >>"$tmp_logs" 2>&1

echo "Contenedor inicializado con el nombre bkpxdb" >>"$tmp_logs" 2>&1
}
f_install
# Ejecutando la instalación
truncate -s 0 "$tmp_logs"
echo "################## INICIANDO LA INSTALACIO $(date +"%Y-%m-%d_%H:%M:%S")##################" >>"$tmp_logs" 2>&1
f_install "12-solucion-de-problemas"
echo "################## FIN DE LA INSTALACION $(date +"%Y-%m-%d_%H:%M:%S")##################" >>"$tmp_logs" 2>&1
cat "$tmp_logs" >"install_$(date +"%Y-%m-%d_%H:%M:%S").log"

0 comments on commit b3dbc23

Please sign in to comment.