UNPKG

forest-cli

Version:

The Lumberjacks' toolbelt is the Forest CLI which makes easy to manage your back office application directly from the terminal.

1,847 lines 93.7 kB
{ "commands": { "branch": { "aliases": [ "branches" ], "args": { "BRANCH_NAME": { "description": "The name of the branch to create.", "name": "BRANCH_NAME", "required": false } }, "description": "Create a new branch or list your existing branches.", "flags": { "projectId": { "description": "The id of the project to create a branch in.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "delete": { "char": "d", "description": "Delete the branch.", "name": "delete", "allowNo": false, "type": "boolean" }, "force": { "description": "When deleting a branch, skip confirmation.", "name": "force", "allowNo": false, "type": "boolean" }, "help": { "description": "Display usage information.", "name": "help", "allowNo": false, "type": "boolean" }, "format": { "char": "format", "description": "Output format.", "name": "format", "default": "table", "hasDynamicHelp": false, "multiple": false, "options": [ "table", "json" ], "type": "option" }, "origin": { "char": "o", "description": "Set the origin of the created branch.", "name": "origin", "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "branch", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "branch.js" ] }, "deploy": { "aliases": [ "environments:deploy" ], "args": {}, "description": "Deploy layout changes of the current branch to the reference one.", "flags": { "help": { "description": "Display usage information.", "name": "help", "allowNo": false, "type": "boolean" }, "force": { "char": "f", "description": "Skip deploy confirmation.", "name": "force", "allowNo": false, "type": "boolean" }, "projectId": { "char": "p", "description": "The id of the project you want to deploy.", "name": "projectId", "default": null, "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "deploy", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "deploy.js" ] }, "environments": { "aliases": [ "environments:list" ], "args": {}, "description": "Manage environments.", "flags": { "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "default": null, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "format": { "char": "format", "description": "Ouput format.", "name": "format", "default": "table", "hasDynamicHelp": false, "multiple": false, "options": [ "table", "json" ], "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "environments", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "environments.js" ] }, "init": { "aliases": [ "environments:init" ], "args": {}, "description": "Set up your development environment in your current folder.", "flags": { "projectId": { "char": "p", "description": "The id of the project you want to init.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "init", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "init.js" ] }, "login": { "aliases": [], "args": {}, "description": "Sign in with an existing account.", "flags": { "email": { "char": "e", "description": "Your Forest Admin account email.", "name": "email", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "password": { "char": "P", "description": "Your Forest Admin account password (ignored if token is set).", "name": "password", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "token": { "char": "t", "description": "Your Forest Admin account token (replaces password).", "name": "token", "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "login", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "login.js" ] }, "logout": { "aliases": [], "args": {}, "description": "Sign out of your account.", "flags": {}, "hasDynamicHelp": false, "hiddenAliases": [], "id": "logout", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "logout.js" ] }, "projects": { "aliases": [ "projects:list" ], "args": {}, "description": "Manage projects.", "flags": { "format": { "char": "format", "description": "Ouput format.", "name": "format", "default": "table", "hasDynamicHelp": false, "multiple": false, "options": [ "table", "json" ], "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "projects", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "projects.js" ] }, "push": { "aliases": [ "branches:push" ], "args": {}, "description": "Push layout changes of your current branch to the branch origin.", "flags": { "force": { "description": "Skip push changes confirmation.", "name": "force", "allowNo": false, "type": "boolean" }, "help": { "description": "Display usage information.", "name": "help", "allowNo": false, "type": "boolean" }, "projectId": { "char": "p", "description": "The id of the project to work on.", "name": "projectId", "default": null, "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "push", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "push.js" ] }, "set-origin": { "aliases": [ "branches:origin" ], "args": { "ENVIRONMENT_NAME": { "description": "The environment to set as origin.", "name": "ENVIRONMENT_NAME", "required": false } }, "description": "Set an environment as your branch's origin. Your branch will build on top of that environment's layout.", "flags": { "help": { "description": "Display usage information.", "name": "help", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "set-origin", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "set-origin.js" ] }, "switch": { "aliases": [ "branch:switch" ], "args": { "BRANCH_NAME": { "description": "The name of the local branch to set as current.", "name": "BRANCH_NAME", "required": false } }, "description": "Switch to another branch in your local development environment.", "flags": { "help": { "description": "Display usage information.", "name": "help", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "switch", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "switch.js" ] }, "user": { "aliases": [], "args": {}, "description": "Display the current logged in user.", "flags": {}, "hasDynamicHelp": false, "hiddenAliases": [], "id": "user", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "user.js" ] }, "environments:create": { "aliases": [], "args": {}, "description": "Create a new environment.", "flags": { "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "default": null, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "name": { "char": "n", "description": "Environment name.", "name": "name", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "url": { "char": "u", "description": "Application URL. Required, except with --type production where it may be omitted.", "name": "url", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "type": { "char": "t", "description": "Environment type (defaults to \"remote\" when omitted). Use \"production\" to create the first production environment. Development environments are created with \"forest init\".", "name": "type", "hasDynamicHelp": false, "multiple": false, "options": [ "production", "remote" ], "type": "option" }, "format": { "char": "format", "description": "Ouput format.", "name": "format", "default": "table", "hasDynamicHelp": false, "multiple": false, "options": [ "table", "json" ], "type": "option" }, "disableRoles": { "description": "Disable roles on new environment.", "name": "disableRoles", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "environments:create", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "environments", "create.js" ] }, "environments:delete": { "aliases": [], "args": { "environmentId": { "description": "ID of an environment.", "name": "environmentId", "required": true } }, "description": "Delete an environment.", "flags": { "force": { "char": "force", "description": "Force delete.", "name": "force", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "environments:delete", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "environments", "delete.js" ] }, "environments:get": { "aliases": [], "args": { "environmentId": { "description": "ID of an environment.", "name": "environmentId", "required": true } }, "description": "Get the configuration of an environment.", "flags": { "format": { "char": "format", "description": "Output format.", "name": "format", "default": "table", "hasDynamicHelp": false, "multiple": false, "options": [ "table", "json" ], "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "environments:get", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "environments", "get.js" ] }, "environments:reset": { "aliases": [], "args": {}, "description": "Reset a remote environment by removing all layout changes", "flags": { "environment": { "char": "e", "description": "The remote environment name to reset.", "name": "environment", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "force": { "description": "Skip reset changes confirmation.", "name": "force", "allowNo": false, "type": "boolean" }, "projectId": { "char": "p", "description": "The id of the project to work on.", "name": "projectId", "default": null, "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "environments:reset", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "environments", "reset.js" ] }, "environments:update": { "aliases": [], "args": {}, "description": "Update an environment.", "flags": { "environmentId": { "char": "e", "description": "The forest environment ID to update.", "name": "environmentId", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "name": { "char": "n", "description": "To update the environment name.", "name": "name", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "url": { "char": "u", "description": "To update the application URL.", "name": "url", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "environments:update", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "environments", "update.js" ] }, "layout:apply": { "aliases": [], "args": { "file": { "description": "Layout file to apply (e.g. forest-layout.json).", "name": "file", "required": true } }, "description": "Apply a forest-layout.json to an environment (pushes JSON-Patch changes).", "flags": { "env": { "char": "e", "description": "Environment to apply to (name or id). Prompted if omitted.", "name": "env", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "team": { "char": "t", "description": "Team to apply to (name or id). Prompted if omitted.", "name": "team", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "projectId": { "char": "p", "description": "Id of the project (resolved/prompted when omitted).", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "force": { "char": "f", "description": "Skip the confirmation prompt.", "name": "force", "allowNo": false, "type": "boolean" }, "with-workflows": { "description": "Also upload workflow BPMN sidecars (workflows/<id>.bpmn) to the target env — the round-trip counterpart of `pull --with-workflows`.", "name": "with-workflows", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "layout:apply", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "layout", "apply.js" ] }, "layout:patch": { "aliases": [], "args": { "file": { "description": "JSON patch file to apply. Use \"-\" or omit to read from stdin.", "name": "file", "required": false } }, "description": "Patch the layout directly (single PATCH per domain, like the front — no pull/apply).", "flags": { "dry-run": { "description": "Print operations without sending them.", "name": "dry-run", "allowNo": false, "type": "boolean" }, "env": { "char": "e", "description": "Environment name or id.", "name": "env", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "force": { "char": "f", "description": "Skip the confirmation prompt (required when reading from stdin).", "name": "force", "allowNo": false, "type": "boolean" }, "projectId": { "char": "p", "description": "Project id.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "team": { "char": "t", "description": "Team name or id.", "name": "team", "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "layout:patch", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "layout", "patch.js" ] }, "layout:pull": { "aliases": [], "args": {}, "description": "Pull the layout (rendering) of an environment into a forest-layout.json file.", "flags": { "env": { "char": "e", "description": "Environment to pull from (name or id). Defaults to the environment of FOREST_ENV_SECRET when set, otherwise the development environment.", "name": "env", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "team": { "char": "t", "description": "Team whose layout to pull (name or id). Defaults to the \"Operations\" team.", "name": "team", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "projectId": { "char": "p", "description": "Id of the project (resolved automatically when you only have one).", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "out": { "char": "o", "description": "Output file path (default: forest-layout.json).", "name": "out", "default": "forest-layout.json", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "with-workflows": { "description": "Also download each workflow's BPMN into sidecar files (workflows/<id>.bpmn) for round-trip.", "name": "with-workflows", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "layout:pull", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "layout", "pull.js" ] }, "projects:create": { "aliases": [], "args": { "applicationName": { "description": "Name of the project to create.", "name": "applicationName", "required": true } }, "description": "Create a new Forest Admin project.", "flags": { "databaseConnectionURL": { "char": "c", "description": "Enter the database credentials with a connection URL.", "name": "databaseConnectionURL", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "databaseDialect": { "char": "d", "description": "Enter your database dialect.", "exclusive": [ "databaseConnectionURL" ], "name": "databaseDialect", "required": false, "hasDynamicHelp": false, "multiple": false, "options": [ "mongodb", "mssql", "mysql / mariadb", "postgres" ], "type": "option" }, "databaseName": { "char": "n", "description": "Enter your database name.", "exclusive": [ "databaseConnectionURL" ], "name": "databaseName", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "databaseSchema": { "char": "s", "description": "Enter your database schema.", "name": "databaseSchema", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "databaseHost": { "char": "h", "description": "Enter your database host.", "exclusive": [ "databaseConnectionURL" ], "name": "databaseHost", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "databasePort": { "char": "p", "description": "Enter your database port.", "exclusive": [ "databaseConnectionURL" ], "name": "databasePort", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "databaseUser": { "char": "u", "description": "Enter your database user.", "exclusive": [ "databaseConnectionURL" ], "name": "databaseUser", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "databasePassword": { "description": "Enter your database password.", "exclusive": [ "databaseConnectionURL" ], "name": "databasePassword", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "databaseSSL": { "description": "Use SSL for database connection.", "exclusive": [ "databaseSslMode" ], "name": "databaseSSL", "required": false, "allowNo": false, "type": "boolean" }, "mongoDBSRV": { "description": "Use SRV DNS record for mongoDB connection.", "exclusive": [ "databaseConnectionURL" ], "name": "mongoDBSRV", "required": false, "allowNo": false, "type": "boolean" }, "applicationHost": { "char": "H", "description": "Hostname of your admin backend application.", "name": "applicationHost", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "applicationPort": { "char": "P", "description": "Port of your admin backend application.", "name": "applicationPort", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "projects:create", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "options": { "databaseConnectionURL": { "oclif": { "char": "c", "description": "Enter the database credentials with a connection URL." }, "prompter": null }, "databaseDialect": { "choices": [ { "name": "mongodb", "value": "mongodb" }, { "name": "mssql", "value": "mssql" }, { "name": "mysql / mariadb", "value": "mysql" }, { "name": "postgres", "value": "postgres" } ], "exclusive": [ "databaseConnectionURL" ], "oclif": { "char": "d", "description": "Enter your database dialect." }, "prompter": { "question": "What's the database type?" } }, "databaseName": { "exclusive": [ "databaseConnectionURL" ], "oclif": { "char": "n", "description": "Enter your database name." }, "prompter": { "question": "What's the database name?" } }, "databaseSchema": { "oclif": { "char": "s", "description": "Enter your database schema." }, "prompter": { "question": "What's the database schema? [optional]", "description": "Leave blank by default" } }, "databaseHost": { "exclusive": [ "databaseConnectionURL" ], "default": "localhost", "oclif": { "char": "h", "description": "Enter your database host." }, "prompter": { "question": "What's the database hostname?" } }, "databasePort": { "exclusive": [ "databaseConnectionURL" ], "oclif": { "char": "p", "description": "Enter your database port." }, "prompter": { "question": "What's the database port?" } }, "databaseUser": { "exclusive": [ "databaseConnectionURL" ], "oclif": { "char": "u", "description": "Enter your database user." }, "prompter": { "question": "What's the database user?" } }, "databasePassword": { "exclusive": [ "databaseConnectionURL" ], "oclif": { "description": "Enter your database password." }, "prompter": { "question": "What's the database password? [optional]" } }, "databaseSSL": { "exclusive": [ "databaseSslMode" ], "type": "boolean", "default": false, "oclif": { "description": "Use SSL for database connection." }, "prompter": null }, "mongoDBSRV": { "type": "boolean", "exclusive": [ "databaseConnectionURL" ], "default": false, "oclif": { "description": "Use SRV DNS record for mongoDB connection." }, "prompter": { "question": "Use a SRV connection string?" } }, "applicationHost": { "default": "http://localhost", "oclif": { "char": "H", "description": "Hostname of your admin backend application." }, "prompter": { "question": "What's the IP/hostname on which your application will be running?" } }, "applicationPort": { "default": "3310", "oclif": { "char": "P", "description": "Port of your admin backend application." }, "prompter": { "question": "What's the port on which your application will be running?" } } }, "isESM": false, "relativePath": [ "dist", "commands", "projects", "create.js" ] }, "projects:get": { "aliases": [], "args": { "projectId": { "description": "ID of a project.", "name": "projectId", "required": true } }, "description": "Get the configuration of a project.", "flags": { "format": { "char": "f", "description": "Ouput format.", "name": "format", "default": "table", "hasDynamicHelp": false, "multiple": false, "options": [ "table", "json" ], "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "projects:get", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "projects", "get.js" ] }, "roles:apply": { "aliases": [], "args": { "file": { "description": "Path to the wide-format CSV file.", "name": "file", "required": true } }, "description": "Apply a wide-format CSV to update role permissions in an environment.", "flags": { "env": { "char": "e", "description": "Environment name to apply to.", "name": "env", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "force": { "char": "F", "description": "Skip confirmation prompt.", "name": "force", "allowNo": false, "type": "boolean" }, "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "roles:apply", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "roles", "apply.js" ] }, "roles:copy": { "aliases": [], "args": {}, "description": "Copy role permissions from one environment to another.", "flags": { "from": { "char": "f", "description": "Source environment name.", "name": "from", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "to": { "char": "t", "description": "Destination environment name.", "name": "to", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "roles:copy", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "roles", "copy.js" ] }, "roles:create": { "aliases": [], "args": {}, "description": "Create a new role in a project.", "flags": { "name": { "char": "n", "description": "Name of the role to create.", "name": "name", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "roles:create", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "roles", "create.js" ] }, "roles:export": { "aliases": [], "args": {}, "description": "Export all roles and their permissions to a wide CSV file.", "flags": { "env": { "char": "e", "description": "Environment name to export permissions for.", "name": "env", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "output": { "char": "o", "description": "Output file path (default: stdout).", "name": "output", "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "roles:export", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "roles", "export.js" ] }, "schema:apply": { "aliases": [], "args": {}, "description": "Apply the current schema of your repository to the specified environment (using your \".forestadmin-schema.json\" file).", "flags": { "secret": { "char": "s", "description": "Environment secret of the project (FOREST_ENV_SECRET).", "name": "secret", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "schema:apply", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "schema", "apply.js" ] }, "schema:diff": { "aliases": [], "args": { "environmentIdFrom": { "description": "ID of an environment to compare.", "name": "environmentIdFrom", "required": true }, "environmentIdTo": { "description": "ID of an environment to compare.", "name": "environmentIdTo", "required": true } }, "description": "Allow to compare two environment schemas", "flags": { "help": { "description": "Display usage information.", "name": "help", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "schema:diff", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "schema", "diff.js" ] }, "schema:update": { "aliases": [], "args": {}, "description": "Refresh your schema by generating files that do not currently exist.", "flags": { "config": { "char": "c", "dependsOn": [], "description": "Database configuration file to use.", "exclusive": [], "name": "config", "required": false, "default": "config/databases.js", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "outputDirectory": { "char": "o", "dependsOn": [], "description": "Output directory where to generate new files.", "exclusive": [], "name": "outputDirectory", "required": false, "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "schema:update", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "schema", "update.js" ] }, "teams:copy-layout": { "aliases": [], "args": {}, "description": "Copy a team's whole layout onto another team of the same project.", "flags": { "from": { "char": "f", "description": "Name of the team to copy the layout from.", "name": "from", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "to": { "char": "t", "description": "Name of the team to copy the layout to (its layout is overwritten).", "name": "to", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "force": { "description": "Skip the confirmation prompt.", "name": "force", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "teams:copy-layout", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "teams", "copy-layout.js" ] }, "teams:create": { "aliases": [], "args": {}, "description": "Create a new team in a project.", "flags": { "name": { "char": "n", "description": "Name of the team to create.", "name": "name", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "teams:create", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "teams", "create.js" ] }, "teams:delete": { "aliases": [], "args": {}, "description": "Delete a team from a project.", "flags": { "name": { "char": "n", "description": "Name of the team to delete.", "name": "name", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "force": { "description": "Skip the confirmation prompt.", "name": "force", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "teams:delete", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "teams", "delete.js" ] }, "users:edit": { "aliases": [], "args": {}, "description": "Edit a user's role, team(s) or permission level.", "flags": { "email": { "char": "e", "description": "Email of the user to edit.", "name": "email", "required": true, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "role": { "char": "r", "description": "New role name to assign.", "name": "role", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "team": { "char": "t", "description": "Team name to set for this project. Repeatable; this REPLACES the user’s current team set on the project.", "name": "team", "hasDynamicHelp": false, "multiple": true, "type": "option" }, "permission-level": { "char": "l", "description": "New permission level.", "name": "permission-level", "hasDynamicHelp": false, "multiple": false, "options": [ "admin", "editor", "user", "developer", "manager" ], "type": "option" }, "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "force": { "char": "f", "description": "Skip the confirmation prompt when teams would be removed.", "name": "force", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "users:edit", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "users", "edit.js" ] }, "users:invite": { "aliases": [], "args": {}, "description": "Invite users to a project.", "flags": { "email": { "char": "e", "description": "Email of the user to invite (repeat the flag to invite several users).", "name": "email", "required": true, "hasDynamicHelp": false, "multiple": true, "type": "option" }, "team": { "char": "t", "description": "Team name to add the invited users to (prompted if omitted and several exist).", "name": "team", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "role": { "char": "r", "description": "Role name to assign (prompted if omitted and several exist).", "name": "role", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "permission-level": { "char": "l", "description": "Permission level of the invited users.", "name": "permission-level", "required": true, "hasDynamicHelp": false, "multiple": false, "options": [ "admin", "editor", "user", "developer", "manager" ], "type": "option" }, "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "format": { "char": "f", "description": "Output format.", "name": "format", "default": "table", "hasDynamicHelp": false, "multiple": false, "options": [ "table", "json" ], "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "users:invite", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "users", "invite.js" ] }, "users:list": { "aliases": [], "args": {}, "description": "List all users of a project.", "flags": { "projectId": { "char": "p", "description": "Forest project ID.", "name": "projectId", "hasDynamicHelp": false, "multiple": false, "type": "option" }, "format": { "char": "f", "description": "Output format.", "name": "format", "default": "table", "hasDynamicHelp": false, "multiple": false, "options": [ "table", "json" ], "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "users:list", "pluginAlias": "forest-cli", "pluginName": "forest-cli", "pluginType": "core", "strict": true, "isESM": false, "relativePath": [ "dist", "commands", "users", "list.js" ] }, "workflow:apply": { "aliases": [], "args": { "file": { "description": "JSON workflow spec ({ name, collection, steps, id?, segments?, position?, start?, version? }). \"-\" or omit to read stdin.", "name": "file", "required": false } }, "description": "Create or update a workflow from a JSON steps spec (compiles to BPMN and uploads it). Reading the spec from stdin disables prompts: pass -p/-e/-t an