post-merge con Python en Linux

Creado: Septiembre 19, 2022

Actualizando mi blog con Github, Gitup via post-merge con un backend en Flask (Python) en Linux. Voy a utilizar y modificar la siguiente implementación para el hook de post-merge en git.

#!/usr/bin/env bash
# MIT © Sindre Sorhus - sindresorhus.com

# git hook to run a command after `git pull` if a specified file was changed
# Run `chmod +x post-merge` to make it executable then put it into `.git/hooks/`.

changed_files="$(git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD)"

check_run() {
    echo "$changed_files" | grep --quiet "$1" && eval "$2"
}

# Example usage
# In this example it's used to run `npm install` if package.json changed
check_run *website/content* "systemctl reload barrahome"
Leer artículo...

Gunicorn reload Systemd

Creado: Septiembre 18, 2022

Recargar la configuración o cambios de Gunicorn mediante Systemd.

Se agregan estas las lineas ExecReload y ExecStop al "unit" de systemd.

El siguiente articulo describe la utilización y otros temas:

[alberto@barrahome barrahome-flask]$ cat /etc/systemd/system/barrahome.service
[Unit]
Description=Barrahome web application
After=network.target

[Service]
User=alberto
Group=alberto
WorkingDirectory=/home/alberto/barrahome-flask
ExecStart=/usr/bin/python3 /usr/bin/gunicorn  --bind 127.0.0.1:8000 website:app --pid=barrahome.pid
ExecReload = /bin/kill -s HUP $MAINPID
ExecStop = /bin/kill -s TERM $MAINPID

[Install]
WantedBy=multi-user.target
[alberto@barrahome barrahome-flask]$

Luego ejecutamos:

[alberto@barrahome barrahome-flask]$ sudo systemctl daemon-reload
[alberto@barrahome barrahome-flask]$ sudo systemctl reload barrahome
Leer artículo...

Gitup Barrahome

Creado: Septiembre 18, 2022

Guía rápida de como utilizar Gitup para actualizar mi blog automáticamente.

Instalamos Gitup:

sudo pip3 install gitup

Habilitamos el repositorio el cual actualizaremos:

gitup --add ~/barrahome-flask

Creamos una entrada de cron:

crontad -e

Agregamos la siguiente entrada:

*/5 * * * * gitup --update

Si deseamos listar los repositorios que tenemos para actualizar podemos ejecutar lo siguiente:

gitup --list

Nos dará como salida algo como esto:

[alberto@barrahome barrahome-flask]$ gitup --list
gitup: the git-repo-updater

Current bookmarks:
    /home/alberto/barrahome-flask
[alberto@barrahome barrahome-flask]$

Problemas con particiones en USB usando DD

Creado: Mayo 10, 2021

Un error que al parecer es común, luego de usar dd es que nuestro USB queda funcionando mal… al punto que formatearlo con gparted u otras herramientas es un problema, se quejara del inicio de sectores 2048, dará algún mensaje de invalido o:

physical block size is 512 bytes, but Linux says it is 2048 bytes

Esto se puede arreglar fácilmente con los siguientes comandos:

sudo parted /dev/sde mklabel msdos
sudo parted -a none /dev/sde mkpart  primary fat32 0 2048
sudo mkfs.vfat -n "Disk" /dev/sde1

Ahora podremos abrir fdisk o gparted y no tendremos el error de bloques inválidos.


DNS personalizado con Systemd y Ubuntu o CentOS

Creado: Febrero 16, 2021

Para los que no saben… y para mi que suelo olvidarme, no se puede editar resolv.conf como si nada, ahora debemos cambiar las DNS en otro fichero… para esto me creo esta entrada, a modo de recordatorio.

Configuramos las direcciones DNS en el archivo ubicado en /etc/systemd/resolved.conf, luego modificamos el parámetro comentado DNS y agregar los valores deseados:

Leer artículo...

Centos Apache SELinux

Creado: Noviembre 15, 2020

Guía rápida de como habilitar SELinux con Apache en Centos 7/8 utilizando directorio personal y otros características.

Esto es ciertamente muy básico pero útil y practico. Tener en cuenta que hay pasos los cuales me salte dado que cualquiera leyendo esto tiene una noción básica de lo que estoy escribiendo.

Luego de instalar Apache con dnf o yum pasamos a permitir Apache con el siguiente comando:

sudo setsebool -P httpd_can_network_connect 1
sudo setsebool -P httpd_enable_homedirs 1

Si quieren saber que otras opciones existen en el contexto de httpd pueden ejecutar esta variante:

sudo getsebool -a | grep "httpd_can"
Leer artículo...