https://d226lax1qjow5r.cloudfront.net/blog/blogposts/send-sms-github-actions-dr/Send-SMS-with-GitHub-Actions.png

Enviar SMS con GitHub Actions

Publicado el May 12, 2021

Tiempo de lectura: 3 minutos

Hay jefes de todas las formas y tamaños. Algunos se desentienden y te dejan trabajar al máximo de tus capacidades. Otros adoptan un enfoque más directo y miden tus logros únicamente a través del código que produces. Al fin y al cabo, si no escribes código, ¿para qué te pagamos?

¿Quieres demostrarle a tu jefe lo duro que trabajas? Por supuesto. Con el poder de Nexmo y GitHub Actions, puedes asegurarte una excelente revisión anual y un considerable aumento de sueldo.

Requisitos previos

Vonage API Account

To complete this tutorial, you will need a Vonage API account. If you don’t have one already, you can sign up today and start building with free credit. Once you have an account, you can find your API Key and API Secret at the top of the Vonage API Dashboard.

This tutorial also uses a virtual phone number. To purchase one, go to Numbers > Buy Numbers and search for one that meets your needs.

En el momento de escribir estas líneas, GitHub Actions se encuentra en fase beta pública. Si no eres miembro de la beta, tendrás que solicitar la beta.

¿Qué es GitHub Actions?

Acciones de GitHub es una nueva herramienta de GitHub en la que se combinan acciones individuales para crear un flujo de trabajo que se ejecuta en diferentes tipos de eventos de activación. tipos de eventos.

Cada acción es un contenedor Docker que contiene un único punto de entrada. La acción vive dentro de un contenedor Dockerfile con LABEL que proporciona información sobre la acción.

Por ejemplo, digamos que quieres imprimir el nombre del usuario (referido como el Actor de GitHub) en la consola. Crearías un repositorio que contenga un Dockerfile con el siguiente contenido:

FROM alpine:3.8

LABEL "com.github.actions.name"="Print GitHub Actor"
LABEL "com.github.actions.description"="Print the GITHUB_ACTOR environment variable to the console."
LABEL "com.github.actions.icon"="user"
LABEL "com.github.actions.color"="blue"

LABEL "repository"="https://github.com/cr0wst/display-github-actor-action"
LABEL "homepage"="https://smcrow.net"
LABEL "maintainer"="Steve Crow <steve.crow@nexmo.com>"

ENTRYPOINT ["sh", "-c", "echo $GITHUB_ACTOR"]

Toda esta acción ejecuta el comando echo $GITHUB_ACTOR donde $GITHUB_ACTOR es una variable de entorno que GitHub proporciona al contenedor que contiene al usuario que lanzó la acción.

Para obtener más información sobre Docker, consulte Visión general de Docker.

La ventaja de GitHub Actions es que permite crear acciones reutilizables que otros pueden utilizar en sus flujos de trabajo.

Crear su primer flujo de trabajo

Para esta guía crearás un nuevo repositorio con un flujo de trabajo que envía a tu jefe un mensaje de texto cada vez que se recibe un push.

Crear un repositorio

En primer lugar, cree un nuevo repositorio:

Creating a new repository on GitHubCreating a new repository on GitHub

Crear un nuevo flujo de trabajo

Después de crear su repositorio, tendrá que navegar a la pestaña de acciones donde verá un botón para crear un nuevo flujo de trabajo:

Create your first workflow on GitHubCreate your first workflow on GitHub

Los flujos de trabajo pueden crearse en la interfaz gráfica de usuario (GUI) o mediante la creación de un archivo workflow archivo.

Vincular el activador de acción a una acción

Arrastre el conector azul hacia abajo para crear su primera acción.

Drag the connector to create a new actionDrag the connector to create a new action

La acción que va a introducir es la acción Acción Nexmo SMS. Esta acción utiliza el Nexmo CLI para enviar mensajes de texto.

En la casilla "Buscar o introducir una acción..." ponga nexmo-community/nexmo-sms-action@master y pulse el botón utilizar.

Enter the Nexmo Send SMS ActionEnter the Nexmo Send SMS Action

Esta acción requiere que se definan tres variables secretas:

  • NEXMO_API_KEY que contiene su Clave API Nexmo.

  • NEXMO_API_SECRET que contiene su Secreto API Nexmo.

  • NEXMO_NUMBER que contiene el número desde el que enviar el mensaje.

Te recomiendo almacenar el número de tu jefe en otra variable secreta.

Desplázate hacia abajo e introduce tus variables secretas. Yo utilizaré la variable de entorno BOSS_NUMBER para almacenar el número que recibirá el SMS.

Para fines de prueba, y probablemente para fines de producción, yo no recomendaría el uso de su jefe de real de tu jefe. Pruébalo primero con tu número de teléfono. El número de teléfono debe estar en formato internacional, sin espacios ni caracteres especiales que separen los números. Por ejemplo, 15551239876.

Define your secretsDefine your secrets

El comando funciona tomando un argumento en forma de RECIPIENT_NUMBER The contents of the message. Puede utilizar variables como $BOSS_NUMBER y $GITHUB_ACTOR en los argumentos, que se resuelven al ejecutar la acción.

Ahora, introduzca lo siguiente en la casilla args casilla

$BOSS_NUMBER Hey boss! Just letting you know that I, $GITHUB_ACTOR, just pushed some code.

Ahora puede pulsar el botón "Hecho" y guardar su acción con el botón "Iniciar confirmación" de la esquina superior derecha:

Save your actionSave your action

Guardar la acción es un push en sí misma. Si miras en la pestaña de acciones, puedes ver el estado de tu acción.

See the status of the action in progressSee the status of the action in progress

Debería recibir un mensaje de texto al guardar su acción y en cualquier envío adicional al repositorio.

Text message which states that you are working.Text message which states that you are working.

Conclusión

Muy pronto tu jefe empezará a darse cuenta del verdadero valor que aportas a la empresa. Tu trabajo llenará su bandeja de entrada de mensajes de texto y le provocará un estado de euforia del tipo "mis subordinados directos son increíbles".

You being praised by all of your bosses.You being praised by all of your bosses.

Echa un vistazo a hey-boss-im-trabajando para ver un ejemplo completo de este flujo de trabajo. También puede encontrarlo como parte de nuestro Catálogo Nexmo Extend.

Compartir:

https://a.storyblok.com/f/270183/150x150/a3d03a85fd/placeholder.svg
Steve CrowAntiguos alumnos de Vonage

Steve se autoproclama matemático y rey de la sátira. También le gustan los galgos, los rompecabezas enrevesados y los juegos de mesa europeos. Cuando no está hablando de matemáticas con gente que no es matemática o de Java con gente que no es de Java, se le puede encontrar tomando café y hackeando código.