@magnolia/cli-create-rest-endpoint-plugin
v2.0.1
Published
A plugin for Magnolia CLI to create a new rest endpoint
Readme
CreateRestEndpointPlugin
A plugin for Magnolia CLI to create a rest endpoint in a light module
Installation
Using add-plugin
Run the following command in the project's root directory:
npm run mgnl -- add-plugin @magnolia/cli-create-rest-endpoint-pluginThe command will install the plugin, and automatically register the plugin in
mgnl.config.jsfile:import CreateRestEndpointPlugin from "@magnolia/cli-create-rest-endpoint-plugin"; export default { plugins: [ new CreateRestEndpointPlugin() ] };To confirm that the plugin has been successfully installed, run:
npm run mgnl -- create-rest-endpoint --help
Manually
- Run the following command in the project's root directory:
npm install @magnolia/cli-create-rest-endpoint-plugin - Manually add CreateRestEndpointPlugin to mgnl.config.js file:
import CreateRestEndpointPlugin from "@magnolia/cli-create-rest-endpoint-plugin"; export default { plugins: [ new CreateRestEndpointPlugin() ] }; - To confirm that the plugin has been successfully installed, run:
npm run mgnl -- create-rest-endpoint --help
Usage
Options
| Short | Long | Description |
|--------------|--------------------------|----------------------------------------------------------------------------------------------------------------------------------------|
| -d [path] | --destination [path] | specify the destination (subdirectory) of the rest endpoint file; defaults to "/delivery" or to value specified in mgnl.config.js file |
| -lm [name] | --light-module [name] | set the light module for the rest endpoint; defaults to the directory specified in mgnl.config.js file |
| -s <path...> | --source <path...> | pass file path(s) to detect workspaces and generate endpoints accordingly |
| -v | --version | output the version number |
| -h | --help | display help for command |
Examples
Create rest endpoint
npm run mgnl -- create-rest-endpoint "foo"The command creates a REST endpoint only for the specified foo workspace. The endpoint will be named foo_v1 in the ./restEndpoints/delivery folder. If foo_v1.yaml already exists, the plugin will automatically increment the version number (e.g., foo_v2.yaml, foo_v3.yaml, etc.).
If neither the lightModulesPath nor the lightModule property exists in mgnl.config.js, the plugin will prompt you to choose each.
Create rest endpoint "workspace" parameter
npm run mgnl -- create-rest-endpoint "foo" --destination "/zig"The command creates a REST endpoint only for the specified foo workspace. The endpoint will be named foo_v1 in the ./restEndpoints/zig folder. If foo_v1.yaml already exists, the plugin will automatically increment the version number (e.g., foo_v2.yaml, foo_v3.yaml, etc.).
If neither the lightModulesPath nor the lightModule property exists in mgnl.config.js, the plugin will prompt you to choose each.
Create rest endpoint defined "workspace" and "destination" parameters
npm run mgnl -- create-rest-endpoint --light-module "my-lm"The command creates REST endpoints for all workspaces found in the "my-lm" light module. For the website workspace, it creates an endpoint named pages_v1, and for other workspaces it creates endpoints named [workspace]_v1. All endpoints are created in the ./restEndpoints/delivery folder. If any endpoint files already exist, the plugin will automatically increment the version numbers (e.g., pages_v2, foo_v3, etc.).
If neither the lightModulesPath nor the lightModule property exists in mgnl.config.js, the plugin will prompt you to choose each.
Plugin Documentation
For detailed documentation of the plugin, please refer to Plugin Documentation
Magnolia CMS
This plugin is created to work with Magnolia CMS. For more information, please refer to Magnolia CMS Documentation
