Configurar y desplegar un worker en Cloudflare puede parecer sencillo, pero los pequeños errores de configuración pueden frenar el proceso. Aquí se recorre paso a paso cómo compilar un proyecto, solucionar errores comunes, crear un repositorio en GitHub y conectarlo con Cloudflare para lograr un flujo de CI/CD automatizado que facilite futuros despliegues.
¿Qué errores comunes aparecen al compilar un proyecto con Wrangler?
Al intentar compilar por primera vez, es habitual encontrarse con fallos que parecen inexplicables. En este caso, el problema fue no haber ingresado a la carpeta correcta del proyecto [01:00]. Los cambios en el archivo .gitignore se agregaron en una ubicación equivocada, fuera de la raíz del proyecto example1.
Para corregirlo, los pasos fueron:
- Eliminar el
.gitignore mal ubicado.
- Eliminar la carpeta
node_modules y el archivo de lock.
- Copiar las dependencias al
package.json correcto.
- Ejecutar
npm install nuevamente desde la raíz del proyecto.
Otro error frecuente tiene que ver con las rutas de los assets [02:12]. El archivo myLogo originalmente se importaba desde la carpeta assets, pero tras copiar una nueva configuración, la ruta cambió a la raíz. La solución fue revertir solo los cambios específicos que marcaba el editor y volver a compilar.
¿Cómo conectar tu repositorio de GitHub con Cloudflare?
Una vez que el proyecto compila correctamente, el siguiente paso es preparar el flujo de integración y despliegue continuo (CI/CD) [02:55]. Esto se logra creando un repositorio en GitHub y conectándolo con Cloudflare.
¿Cuál es el proceso para crear el repositorio?
- Crear un nuevo repositorio público en GitHub con las opciones por defecto.
- Realizar el primer commit con un mensaje descriptivo, por ejemplo: "clase uno".
- Hacer push para subir el código al repositorio remoto.
¿Cómo se vincula con Cloudflare?
Desde el dashboard de Cloudflare, se selecciona la opción de conectar una aplicación [03:30]. Se elige el repositorio recién creado, la rama main y se configura npm como gestor de paquetes. Las demás opciones se dejan por defecto.
Es importante que el nombre del worker en el archivo de configuración local coincida con el que ya existe en Cloudflare [04:25]. Si se cambia localmente, hay que volver a compilar antes de ejecutar el deploy para que el nombre se respete correctamente.
¿Qué sucede cuando ejecutas el deploy con Wrangler por primera vez?
El comando de deploy de Wrangler solicita permisos de autenticación la primera vez que se ejecuta [04:40]. Se debe autorizar hacia qué cuenta de Cloudflare se asociará el proyecto. Si existen varias organizaciones vinculadas, el CLI muestra las opciones disponibles para seleccionar.
Tras un deploy exitoso, Wrangler proporciona una URL pública donde la aplicación queda accesible [05:20]. En el dashboard de Cloudflare se pueden verificar los deployments realizados y acceder a los logs de observabilidad para monitorear el comportamiento.
¿Cómo se automatiza el deploy con CI/CD?
Para dejar de hacer deploys manuales, se conecta el repositorio de GitHub directamente desde Cloudflare [05:50]. Al hacerlo, el sistema sincroniza el proyecto y verifica que el nombre del worker coincida. Si hay discrepancias porque los cambios no se han subido al repositorio, Cloudflare muestra una advertencia que desaparece tras hacer push.
Una vez conectado, Cloudflare compila el proyecto en sus propios servidores [06:40]. Un detalle interesante es cómo Cloudflare optimiza recursos: los builds se ejecutan en data centers que se encuentran en horario no prime. Por ejemplo, si estás en Bogotá durante el día, la compilación podría ocurrir en servidores europeos donde el tráfico es menor en ese momento.
Con el deploy automatizado funcionando, cada push al repositorio dispara una nueva compilación y despliegue sin intervención manual. Más adelante se podrá agregar persistencia al contador utilizando los tipos primitivos de storage que ofrece Cloudflare, como KV o Durable Objects.
¿Ya probaste conectar tu primer worker con GitHub? Comparte tu experiencia o dudas en los comentarios.