Ejecutando Comandos en Netlify

Qué es Netlify?

A veces tienes la necesidad de subir tu código a algún servicio de Cloud Computing para de cierta manera mostrar tu trabajo. Netlify es uno de esos servicios de Cloud Computing. Yo uso Netlify en conjunto con GitHub para mostrar este blog, en GitHub subo los artículos en Markdown y con cada Push que le doy al repositorio este se sincroniza con el repositorio que tengo en Netlify, Netlify luego ejecuta HUGO para hacer los archivos de las páginas que luego verás en este sitio. Digamos que, para ahorrarme el trabajo de yo tener que hacerle Deploy a mi blog, Netlify lo hace por mi, solo tengo que hacerle Push a mi repositorio en GitHub y en automático, luego de unos segundos (o minutos) el sitio estará actualizado.

Anteriormente lo hice pero muchas veces los programas se actualizan y se rompe el workflow que tenias setteado, así que para evitar eso, existen configuraciones para Netlify que puedes especificar en tu repositorio de GitHub para que al momento de hacerle Push, Netlify ejecute esas configuraciones y tu workflow no se vea afectado.

Estos archivos los tienes que poner en la raíz de tu repositorio con el nombre de netlify.toml si quieres puedes ver mi archivo de configuración en el repositorio de este blog dando click aquí.

En el archivo de configuración tengo especificado que la versión de HUGO para producción sea la 0.89.3 porque esa versión es la que estoy usando actualmente en mi workflow en mi computadora local (anteriormente probé una nueva versión pero no corría apropiadamente, nunca investigue la razón).

También me di cuenta que este archivo de configuración también se puede truquear para hacer que Netlify ejecute código ya sea en Python o en Bash. En tu archivo netlify.toml puedes especificar el comando a correr como se muestra en el siguiente screenshot.

Como puedes ver, en command = esta corriendo el comando python --version para ver la version instalada de Python, esto luego lo puedes corroborar en los logs del repositorio de Netlify y ver el output del comando que elegiste.

Modificando El Archivo de Configuración

Esto me hizo pensar, si puedes correr el comando para ver la version de Python, quiza puedas instalar librerias tambien, asi que, primero hice un script sencillo en Python con la libreria de Beem, la cual se usa para interactuar con la blockchain de HIVE. El script simplemente imprime el feed actual de la cuenta que le especifico, en este caso es la mia @cronicasdelcesar.

Este es el codigo que tengo en el archivo run.py

from beem.account import Account
acc = Account("cronicasdelcesar")
for f in acc.get_feed():
    print(f)

Y este es archivo de configuracion de netlify (el archivo netlify.toml)

[build]
publish = "public"
command = "pip install beem && python run.py"

Los 2 archivos estan en la raiz del repositorio de GitHub y hago el Push para mandarle la señal a Netlify. En el siguiente link puedes ver el log de Netlify completo donde muestra que si instaló la libreria de Beem y ejecuto correctamente el archivo run.py del repositorio.

Y aqui empieza a correr el archivo run.py donde quiero que me imprima mi feed de la cuenta de @cronicasdelcesar.

Que viene siendo lo mismo que abrir la pagina principal de cualquier front-end, en este caso Ecency, que es la que uso.

Logrando esto, creo que podemos hacer muchas cosas, especialmente interacciones entre tu blog y HIVE. Alguna idea que se me viene a la mente es sincronizar los post de tu Blog en HIVE, ciertos post con ciertos tags se publican en HIVE en ciertas comunidades dependiendo la configuracion de tu post, mi imaginacion vuela.

Este es una publicación de mi "Devblog" traducida al español (si quires ver el post original aqui esta el LINK)

Sort:  

Que tal es Netlify, varios me lo han recomendado, pero la verdad nunca me he decidido a usarlo, lo siento igual que Vercel y ese nada mas lo uso para mis proyectos de prueba

Yo solo lo he usado para subir mi blog ya que uso HUGO como Static Site Generator. Yo no uso todas las funciones de Netlify, pero en los casi 2 años que tengo usándolo nunca me ha dado problemas.

Saludos

Ahorita yo ando trabajando con AstroJS, estoy haciendo un post de el, checalo esta muy bueno

Congratulations @cronicasdelcesar! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)

You received more than 4000 upvotes.
Your next target is to reach 4250 upvotes.

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Check out our last posts:

Our Hive Power Delegations to the January PUM Winners
Feedback from the February Hive Power Up Day
Hive Power Up Month Challenge - January 2024 Winners List

Diablos. Tuve problemas para crear cuenta en Netlify, pero ellos no escuchan.

Congrats!

Thanks for your contribution to the STEMsocial community. Feel free to join us on discord to get to know the rest of us!

Please consider delegating to the @stemsocial account (85% of the curation rewards are returned).

You may also include @stemsocial as a beneficiary of the rewards of this post to get a stronger support.