🖐️ Ubuntu: Como evitar actualizar el Kernel

En linux los drivers del hardware que usas son desarrollados por la comunidad de software libre. Y como tal, pueden tener algunos bugs en su funcionamiento o pueden simplemente no ser soportados. En alguna ocasion ( en realidad mas de una ) un hardware puede funcionar bien en una version de los drivers y en la siguiente no :( . Y como la mayoria de los drivers vienen integrado en el kernel de linux, una actualizacion de kernel puede desactivar algun dispositivo de tu maquina. Para prevenir eso, evito actualizar el kernel una vez que estan todos mis dipositivos funcionando.

⚙ Docker Compose: no module named ordered_dict

Hoy dia, fallo la ejecucion de docker-compose en uno de mis servidores.

El problema:

E ImportError: No module named ordered_dict

La solución ?

Asegurarnos de tener la version urllib3-1.22, actualmente la version en produccion es la 1.26 Para tal efecto ejecutamos los siguientes comandos
pip uninstall urllib3 pip install urllib3=1.22
#HappyCoding

Bash: Ejecutar un proceso en domingo

Tenemos un proceso configurado en CRON para ejecutar un script de bash. Sin embargo, ciertas partes de dicho proceso solo deben ejecutarse un dia a la semana. Para eso vamos a programar nuestro script en bash para solo se ejecute en domingo.
day=`date +%u` if [ $day eq 0 ]; then # Proceso que se ejecuta solo en domingo fi
El comando date +%u nos devuelve el numero de dia de la semana. Siendo 0 domingo, 1 Lunes, 2 Martes, 3 Miercoles, 4 Jueves, 5 Viernes, 6 Sabado. #HappyCoding

Python - Parametros de funcion en formato JSON

Cuando desarrollamos en python podemos tener una funcion con multiples argumentos.
def addCart( precio, cantidad, producto ): pass
Si hemos recibido dichos parametros en un objeto JSON o los tenemos guardados en un diccionario, podemos pasarlo directamente. Python, se encargara de asignar a cada parametro la propiedad correspondiete del objeto. Para esto debemos pasar la variable a la funcion anteponiendo dos asteriscos.
addCart(**params)