Automated-Commit es un ejemplo sencillo y reutilizable de un flujo de trabajo de GitHub Actions que actualiza peri贸dicamente un archivo (TIMESTAMP.txt) con la fecha y hora actuales y realiza un commit autom谩tico cuando detecta cambios.
Este repositorio demuestra c贸mo automatizar tareas rutinarias en un repositorio usando GitHub Actions. El flujo de trabajo principal:
- Clona el contenido de la rama
master. - Actualiza (o crea) un archivo
TIMESTAMP.txtcon la fecha y hora actuales. - Realiza un commit si el archivo cambi贸.
- Empuja el commit de vuelta a la rama
master.
El objetivo es servir como plantilla para tareas de mantenimiento autom谩tico (por ejemplo, actualizaciones peri贸dicas, archivos de estado, o tareas programadas similares).
- Ejecutable autom谩ticamente en schedule (cada 12 horas por defecto).
- Permite ejecuci贸n manual desde la pesta帽a Actions (
workflow_dispatch). - Configuraci贸n m铆nima: nombre y correo de Git configurados en el workflow.
El flujo de trabajo est谩 definido en .github/workflows/master.yml e incluye:
- Triggers:
schedule(cron cada 12 horas) yworkflow_dispatchpara ejecuci贸n manual. - Job principal:
update_commitque se ejecuta enubuntu-latest. - Pasos: checkout, configurar Git, actualizar
TIMESTAMP.txt, commit y push. - Permisos: el workflow necesita permisos de escritura (default GITHUB_TOKEN suele bastar).
- Un repositorio en GitHub.
- GitHub Actions habilitado en el repositorio.
- Usa este repositorio como plantilla (bot贸n "Use this template") o cl贸nalo localmente.
- Abre
.github/workflows/master.ymly personaliza los valores de configuraci贸n (ver secci贸n "Configuraci贸n" abajo). - Haz push de los cambios a
masterpara activar el workflow.
- Ve a la pesta帽a
Actionsen tu repositorio. - Selecciona el workflow
Automated-Commit. - Haz clic en "Run workflow" y confirma la rama.
Edite .github/workflows/master.yml seg煤n necesites:
- Configura las variables
GIT_USER_EMAILyGIT_USER_NAMEen Settings > Secrets and variables > Variables del repositorio (opcional, si no se establecen, se usa la cuenta de GitHub Actions por defecto). - Cambia la frecuencia del cron si necesitas otro intervalo.
- Si prefieres, cambia el nombre del archivo
TIMESTAMP.txtpor otro archivo objetivo.
Buena pr谩ctica de seguridad: utiliza el GITHUB_TOKEN proporcionado por Actions para los pushes autom谩ticos; evita poner tokens de acceso personal en texto plano.
- Modificar el cron: cambia la expresi贸n en
scheduledentro del yml. - Cambiar el archivo objetivo: actualiza el nombre del archivo que el script escribe.
- Agregar pruebas o validaciones: inserta pasos adicionales antes del commit para validar cambios.
Las contribuciones son bienvenidas:
- Abre un issue para discutir cambios mayores.
- Env铆a Pull Requests con descripciones claras.
Para dudas o problemas, abra un issue en la secci贸n Issues del repositorio.
Gracias por usar Automated-Commit.