[IMPROVED] update.sh -- Permite actualizar el ambiente de desarrollo desde el repo

This commit is contained in:
Mauro Rosero P. 2024-12-08 16:53:08 -05:00
parent 09b233e461
commit 0362a9fc41
Signed by: mrosero
GPG key ID: 83BD2A5F674B7E26
4 changed files with 148 additions and 6 deletions

View file

@ -1,5 +1,5 @@
# AMBIENTE LOCAL PARA DESARROLLADORES (MRDEVS TOOLS)
## GUÍA PARA DESARROLLADORES - REV. 30/11/2024
## GUÍA PARA DESARROLLADORES - REV. 08/12/2024
### REQUISITOS DE INSTALACIÓN
@ -14,17 +14,17 @@ En la carpeta $HOME descargue el repositorio devs (la carpeta no debe existir):
$ cd $HOME
$ git clone https://git.rosero.one/mrosero/devs.git
#### Instalación de herramientas para gestión de contenedores
#### Instalación de herramientas básicas y de gestión de contenedores
A partir de este momento, la carpeta $HOME/devs será nuestra área de desarrollo donde se descargaran los diversos ambientes de desarrollo. Como primer paso instalaremos las herramientas básicas y de gestión de contenedores. Por razones de seguridad, priorizamos el uso de **podman**.
$ cd $HOME/devs
$ bin/bootstrap.sh
### GESTIÓN DE DNS LOCAL PARA DESARROLLADORES (DNSMASQ)
#### Actualización de ambiente local de desarrollo
#### Habilitar permiso local para puerto 53 (DNS)
Actualice los nuevos cambios y funcionalidades del ambiente de desarrollo local raíz
Antes de poder levantar el contenedor dnsmasq, se requiere dar permisos para poder habilitar el puerto 53:
$ cd $HOME/devs
$ bin/update.sh
$ dns/setport53.sh

View file

@ -12,12 +12,15 @@
#==============================================================================
bomsg_000="BOOTSTRAP"
bomsg_001="ACTUALIZAR DEVS"
bomsg_002="PERMITIR PUERTO 53"
bomsg_003="Puerto 53 no se ha liberado!"
bomsg_004="Puerto 53 (dns) ha sido liberado para uso no-root"
bomsg_005="Arquitectura desconocida:"
bomsg_006="Instalando Mozilla SOPS..."
bomsg_007="Instalación de Mozilla SOPS completada..."
bomsg_008_1="Carpeta"
bomsg_008_2="no es del ambiente de desarrollo!"
pymsg_001="Instalando python3"
pymsg_002="Instalando dialog"

79
bin/set_port53.sh Executable file
View file

@ -0,0 +1,79 @@
#!/bin/bash
#
# set_port53.sh
# Modified: 2024/12/01 15:27:00
# Derechos de Autor (C) [2024] [Mauro Rosero P. <mauro@roser.one>]
#
# Este programa es software libre: usted puede redistribuirlo y/o modificarlo
# bajo los términos de la Licencia Pública Affero General de GNU tal como
# lo publica la Free Software Foundation, ya sea la versión 3 de la licencia,
# o (a su elección) cualquier versión posterior.
#
# Este programa se distribuye con la esperanza de que sea útil,
# pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de
# COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la
# Licencia Pública Affero General de GNU para obtener más detalles.
#
# Debería haber recibido una copia de la Licencia Pública Affero General
# junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>.
DEVSPATH=devs
BIN_HOME=$HOME/$DEVSPATH
BIN_MESG=bin/msg
BIN_LIBS=bin/lib
# CHECK SHELL LANGUAGE
BIN_LANG=${LANG:0:2}
# LOAD BASE BASH LIBRARY
source $BIN_HOME/$BIN_LIBS/base.lib
#baselib_test
load_bootstrap_msg() {
local BIN_PATH=$1
local MSG_PATH=$2
local LANGUAGE=$3
# Load head messages
load_messages $BIN_PATH $MSG_PATH $LANGUAGE "head"
# Load bootstrap messages
load_messages $BIN_PATH $MSG_PATH $LANGUAGE "bootstrap"
}
install() {
local BIN_PATH=$1
local LIBRARY=$2
local MESSAGES=$3
local INSTALL_LANG=$4
# Load base bash library
source $BIN_PATH/$LIBRARY/base.lib
# Load bootstrap bash library
source $BIN_PATH/$LIBRARY/bootstrap.lib
# Load bootstrap messages
load_bootstrap_msg $BIN_PATH $MESSAGES $INSTALL_LANG
# Set port 53 (dns) tu unprivileged
unprivileged_port53
if [ $? -ne 0 ]
then
echo "$bomsg_003"
else
echo "$bomsg_004"
fi
}
# Load messages
load_bootstrap_msg $BIN_HOME $BIN_MESG $BIN_LANG
# Display Headers
display_devstools_header "- $bomsg_002"
# Run install with sudo
sudo bash -c "$(declare -f load_bootstrap_msg; declare -f install); install $BIN_HOME $BIN_LIBS $BIN_MESG $BIN_LANG"

60
bin/update.sh Executable file
View file

@ -0,0 +1,60 @@
#!/bin/bash
#
# update.sh
# Modified: 2024/12/01 15:27:00
# Derechos de Autor (C) [2024] [Mauro Rosero P. <mauro@roser.one>]
#
# Este programa es software libre: usted puede redistribuirlo y/o modificarlo
# bajo los términos de la Licencia Pública Affero General de GNU tal como
# lo publica la Free Software Foundation, ya sea la versión 3 de la licencia,
# o (a su elección) cualquier versión posterior.
#
# Este programa se distribuye con la esperanza de que sea útil,
# pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de
# COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la
# Licencia Pública Affero General de GNU para obtener más detalles.
#
# Debería haber recibido una copia de la Licencia Pública Affero General
# junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>.
DEVSPATH=devs
BIN_HOME=$HOME/$DEVSPATH
BIN_MESG=bin/msg
BIN_LIBS=bin/lib
# CHECK SHELL LANGUAGE
BIN_LANG=${LANG:0:2}
# LOAD BASE BASH LIBRARY
source $BIN_HOME/$BIN_LIBS/base.lib
#baselib_test
load_bootstrap_msg() {
local BIN_PATH=$1
local MSG_PATH=$2
local LANGUAGE=$3
# Load head messages
load_messages $BIN_PATH $MSG_PATH $LANGUAGE "head"
# Load bootstrap messages
load_messages $BIN_PATH $MSG_PATH $LANGUAGE "bootstrap"
}
# Load messages
load_bootstrap_msg $BIN_HOME $BIN_MESG $BIN_LANG
# Display Headers
display_devstools_header "- $bomsg_001"
# Run update devs environment
if [ "$PWD" == "$BIN_HOME" ]
then
git pull
else
cd $BIN_HOME
git pull
fi