Para desarrollar y administrar proyectos de Google Apps Script desde tu terminal en lugar del editor de Apps Script, usa la herramienta de código abierto clasp.
El clasp codelab proporciona una descripción general de todas las funciones de clasp.
Funciones
clasp incluye las siguientes funciones:
Desarrolla de forma local
clasp te permite desarrollar tus proyectos de Apps Script de forma local. Escribe código en tu computadora y súbelo a Apps Script cuando termines. También puedes descargar proyectos existentes de Apps Script para editarlos sin conexión. Usa tus herramientas de desarrollo favoritas, como git, cuando compiles proyectos de Apps Script.
Administra versiones de implementación
Crea, actualiza y visualiza varias implementaciones de tu proyecto.
Código de estructura
clasp te permite organizar tu código en directorios, que se conservan cuando los subes a script.google.com. Por ejemplo:
# On script.google.com: ├── tests/slides.gs └── tests/sheets.gs # Locally: ├── tests/ │ ├─ slides.gs │ └─ sheets.gs
Tipos de proyecto
Puedes usar clasp para administrar proyectos de secuencias de comandos independientes y vinculados a contenedores.
Proyectos independientes
Un proyecto independiente aparece como un archivo separado en tu unidad de Google Drive. Puedes crear una secuencia de comandos independiente nueva con el comando clasp create.
Proyectos vinculados a contenedores
Un proyecto vinculado a un contenedor se adjunta a un archivo de Documentos, Hojas de cálculo, Presentaciones o Formularios de Google. Puedes crear una secuencia de comandos nueva vinculada a un contenedor y adjuntarla a un archivo nuevo con el comando clasp create. También puedes adjuntar un nuevo script a un archivo existente con la marca --parentId.
Otros tipos de proyectos
clasp también admite la creación de secuencias de comandos para APIs y apps web.
Requisitos
clasp se escribe en Node.js y se distribuye con la herramienta npm. Antes de usar clasp, debes tener instalada la versión 20.0.0 o posterior de Node.js.
La instalación de Node.js requiere privilegios de administrador.
Instalación
Una vez que hayas instalado Node.js, usa el siguiente comando npm para instalar clasp:
npm install @google/clasp -g
Después de la instalación, usa el comando clasp desde cualquier directorio de tu computadora.
Usa clasp
Usa clasp para controlar una variedad de tareas desde la línea de comandos. En esta sección, se describen las operaciones comunes que se deben usar cuando se desarrolla con clasp.
Acceder
Este comando accede y autoriza la administración de los proyectos de Apps Script de tu Cuenta de Google. Una vez que se ejecuta, se te pide que accedas a una Cuenta de Google en la que se almacenan tus proyectos de Apps Script.
clasp login
Cerrar sesión
Este comando cierra la sesión de la herramienta de línea de comandos. Vuelve a acceder con clasp login para volver a autenticarte con Google antes de seguir usando clasp.
clasp logout
Crea un nuevo proyecto de Apps Script
Este comando crea un nuevo script en el directorio actual con un título opcional.
clasp create [scriptTitle] [--type <projectType>] [--parentId <parentId>]
Este comando usa los siguientes parámetros opcionales:
scriptTitle: Es el título del proyecto de secuencia de comandos.--type <projectType>: Es el tipo de proyecto que se creará. Los valores permitidos sonstandalone,docs,sheets,slides,forms,webappyapi.--parentId <parentId>: ID del archivo existente de Google Drive (Documentos, Hojas de cálculo, Presentaciones o Formularios) al que se debe vincular el nuevo proyecto de secuencia de comandos.
Este comando también crea dos archivos en el directorio actual:
- Un archivo
.clasp.jsonque almacena el ID de la secuencia de comandos - Un archivo de manifiesto del proyecto
appsscript.jsonque contiene metadatos del proyecto
Clone un proyecto existente
Este comando clona un proyecto existente en el directorio actual. La secuencia de comandos debe crearse o compartirse con tu Cuenta de Google. Para especificar el proyecto de secuencia de comandos que se clonará, debes proporcionar su ID. Puedes clonar proyectos independientes y vinculados a contenedores.
Para encontrar el ID del proyecto de secuencia de comandos, haz lo siguiente:
- Abre el proyecto de Apps Script.
- A la izquierda, haz clic en Configuración del proyecto .
En IDs, copia el ID de secuencia de comandos.
clasp clone
Descarga un proyecto de secuencia de comandos
Este comando descarga el proyecto de Apps Script de Google Drive al sistema de archivos de tu computadora.
clasp pull
Cómo subir un proyecto de secuencia de comandos
Este comando sube todos los archivos de un proyecto de secuencia de comandos desde tu computadora a Drive.
clasp push
Enumera las versiones del proyecto
Este comando enumera el número y la descripción de cada una de las versiones de un proyecto de secuencia de comandos.
clasp versions
Implementa un proyecto publicado
Implementa proyectos de secuencias de comandos como apps web, complementos de Google Workspace o ejecutables. Crea implementaciones en el editor de secuencias de comandos, en el manifiesto del proyecto o con clasp.
Para implementar un proyecto con clasp, primero crea una versión inmutable del proyecto de Apps Script. Una versión es una "instantánea" de un proyecto de secuencia de comandos y es similar a una versión ramificada de solo lectura.
clasp version [description]
Este comando muestra el número de versión recién creado. Usa ese número para implementar y anular la implementación de instancias de tu proyecto:
clasp deploy [version] [description]
clasp undeploy <deploymentId>
Este comando actualiza una implementación existente con una nueva versión y descripción:
clasp redeploy <deploymentId> <version> <description>
Mostrar lista de implementaciones
Este comando enumera los IDs de implementación, las versiones y las descripciones del proyecto de secuencia de comandos.
clasp deployments
Abre el proyecto en el editor de Apps Script
Este comando abre un proyecto de secuencia de comandos en el editor de Apps Script. El editor se inicia como una pestaña nueva en tu navegador web predeterminado.
clasp open-script
Colabora con el proyecto de código abierto clasp
Contribuye a clasp en GitHub.