La CLI de ESA (esa-cli) le permite gestionar el ciclo de vida completo de Functions and Pages desde su terminal. Con ella puede crear proyectos, depurar localmente, desplegar en todos los puntos de presencia (POP) y configurar dominios personalizados y rutas.
Con la CLI de ESA usted puede:
Desarrollo local: cree proyectos, inicie un servicio de depuración local que simula el entorno de producción y pruebe las funciones perimetrales antes del despliegue.
Despliegue: confirme versiones y despliéguelas en todos los POP.
Gestión de dominios y rutas: configure dominios personalizados y rutas para sus proyectos de Functions and Pages.
Compatibilidad con proyectos de múltiples archivos: la CLI empaqueta y compila automáticamente las dependencias del proyecto, incluidos los módulos de npm, para que pueda desplegar proyectos locales de Node.js en la nube.
Para consultar la referencia completa de comandos y el código fuente, visite el repositorio de GitHub de la CLI de ESA.
Requisitos previos
Antes de empezar, asegúrese de contar con lo siguiente:
Instale la CLI
Instale la CLI de ESA de forma global mediante npm y compruebe la instalación:
npm install esa-cli -g # Install the CLI globally
esa-cli -v # Verify the installed version
esa-cli --help # View available commands
Inicie sesión en su cuenta
Obtenga su AccessKey ID y su AccessKey secret en la consola de Resource Access Management (RAM) de Alibaba Cloud. Después, ejecute el siguiente comando:
esa-cli login
Para cerrar sesión:
esa-cli logout
Nota: Si solo necesita depurar código localmente, omita este paso. La autenticación no es obligatoria para la depuración local.
Inicialice un proyecto
Ejecute esa-cli init para crear un proyecto. La CLI le solicitará introducir un nombre de proyecto y seleccionar una plantilla.
esa-cli init
Depure localmente
Una vez que haya escrito su código, inicie el servicio de depuración local:
esa-cli dev
La CLI empaqueta automáticamente el archivo de entrada e inicia un servidor local que simula el entorno de producción.

Atajos de teclado disponibles durante la depuración:
|
Tecla |
Acción |
|
|
Abre la página de depuración en el navegador |
|
|
Limpia el panel |
|
|
Sale de la depuración |
Si desea usar un puerto específico:
esa-cli dev --port <port>
Depure con Chrome DevTools
El código de EdgeRoutine se ejecuta en el lado del servidor. Por ello, la consola de vista previa del navegador no muestra la salida de las instrucciones console del archivo de entrada. Para consultar dicha salida, utilice Chrome DevTools:
Abra
chrome://inspect#devicesen Chrome.En la sección Remote Target, busque la sesión de depuración en ejecución.
Haga clic en inspect para abrir DevTools y consultar la salida de la consola.
Utilice Edge Storage API y Cache API de forma local
La depuración local admite Edge Storage API y Cache API dentro de su código.
Nota: Para proteger la seguridad de sus datos en línea, el servicio de almacenamiento perimetral no recupera ni establece datos en línea durante la depuración local.
Para simular datos de almacenamiento perimetral de manera local, cree un archivo kv.json en el directorio raíz del proyecto. Colóquelo al mismo nivel que el archivo de configuración esa.jsonc:
{
"namespace": {
"k1": "v1",
"k2": "v2"
}
}
Acceda a los datos simulados desde su código:
const edgeKv = new EdgeKV({ namespace: 'namespace' });
async function run() {
const data = await edgeKv.get('k1', { type: 'text' });
console.log(data); // 'v1'
}
Confirme una versión
Cuando termine la depuración local, confirme su código como una versión:
esa-cli commit
Despliegue en producción
Despliegue una versión en todos los POP en línea:
esa-cli deploy
La CLI le pedirá seleccionar una versión y un entorno de destino.
Para comprobar el estado del despliegue o eliminar una versión:
esa-cli deployments list # View deployment status
esa-cli deployments delete <versionId> # Delete a version
Configure dominios personalizados
Vincule un nombre de dominio a sus proyectos de Functions and Pages. El dominio debe ser un subdominio de su sitio de ESA y contar con un registro ICP. Una vez vinculado, Functions and Pages actúa como servidor de origen para ese dominio, y el dominio resuelve directamente hacia su función perimetral.
esa-cli domain list
esa-cli domain add <domainName>
esa-cli domain delete <domainName>
Configure rutas
Vincule una ruta a su sitio de ESA. Cuando una solicitud coincide con la ruta, se activa la ejecución de Functions and Pages. Esto permite que Functions and Pages se comunique con el servidor de origen del sitio.
esa-cli route list
esa-cli route add [route] [site]
esa-cli route delete <route>
Gestione funciones
Consulte y elimine funciones mediante la CLI:
esa-cli project list # List all functions
esa-cli project delete <PROJECT_NAME> # Delete a function
Referencia de comandos
|
Comando |
Descripción |
|
|
Inicializa un proyecto a partir de una plantilla de ESA |
|
|
Inicia el servicio de depuración local |
|
|
Envía el código del proyecto a la nube y lo guarda como una versión |
|
|
Despliega una versión en todos los POP en línea |
|
|
Consulta los despliegues de la versión actual o elimina una versión |
|
|
Muestra todos los proyectos de Functions and Pages o elimina una función |
|
|
Muestra información sobre todos los sitios asociados a su cuenta |
|
|
Gestiona los nombres de dominio vinculados a Functions and Pages |
|
|
Gestiona las rutas vinculadas a Functions and Pages |
|
|
Inicia sesión con un AccessKey ID y un AccessKey secret |
|
|
Cierra la sesión |
|
|
Gestiona el archivo de configuración de la CLI de ESA |
|
|
Selecciona el idioma de visualización de la CLI |