Using CNB Plugin
By following the guidelines in this section, you can quickly integrate a cloud-native build process in CNB to automatically build and deploy to EdgeOne Makers.
Configuring a Private Key
Use the CNB key repository for storage, then refer to it in the pipeline. The envs.yml content is as follows:
EDGEONE_API_TOKEN: oJTlMUq9**********NYzKFIw=
The complete .cnb.yml is configured as follows:
# trigger: push to master branchmain:push:# Import environment variables from private repository:# See: https://docs.cnb.cool/en/build/env.html#importing-environment-variables- imports: https://cnb.cool/***/-/blob/main/envs.ymlstages:# Build Current Project- name: Build Current Projectimage: node:20script: node -v && npm install && npm run build# Deploy Build Output to EdgeOne Makers# The ./dist directory is generated in the previous build step# See: https://www.npmjs.com/package/edgeone- name: Deploy to EdgeOne Makersimage: node:20script: npx edgeone makers deploy <outputDirectory> -n <projectName> -t $EDGEONE_API_TOKEN
Note:
npx edgeone makers deploy Parameter Description:<outputDirectory>: The folder where the project build product resides (required).
-n, --name: Project name that needs to be deployed. A new project will be created automatically if the project does not exist (required).
-e, --env: Target environment for deployment, available values: production or preview (default production).
Example: npx edgeone makers deploy ./dist -n project-name -t $EDGEONE_API_TOKEN.
Cloud Native Build (CNB)
When code is pushed to the main branch, it triggers the following build process:
1. Import required environment variables.
2. Build project using Node.js 20 environment.
3. Deploy the build output to Makers.
EdgeOne Makers Deployment
After the build is complete, the project is automatically deployed to Makers through the following process:
1. Build stage generates ./dist directory.
2. Deploy using the EdgeOne CLI tool
edgeone makers deploy.