CLI tool for Serverless Plus
- Tencent Cloud
- AWS
- Aliyun
$ npm i @slsplus/cli -g$ slsplus -h
Usage: slsplus [options] [command]
Options:
-v, --version output the current version
-h, --help display help for command
Commands:
config Config for slsplus cli
clone <source> [destination] clone a repository into a newly created directory
parse [options] parse serverless config file with costomize and environment variables replacement
faas Operation for faas
app Operation for serverless application
migrate [options] Migrate old serverless config to uniform config
init [options] Initialize command for serverless project
bundle [options] Bundle command for serverless project
help [command] display help for command
Example call:
$ slsplus --helpNotice: Below examples will use
spinstead ofslsplus.
Config credentils for vendors:
$ sp configInitialize command for serverless project:
$ sp init -uIt will start an UI config server for serverless project.
$ sp clone https://github.com/serverless-plus/cliBefore using faas command, you should run sp config to config tencent cloud credentilas.
Get faas logs:
$ sp faas logs --name=scfdemo --limit=1Invoke faas:
$ sp faas invoke --name=scfdemoInvoke with event:
$ sp faas invoke --name=scfdemo --event=./event.jsonWarm up faas:
# name parameter is the name of cloud function
$ sp faas warm --name=scfdemoUsing bundle command, you can bundle your project with dependencies into one file, so you need not to upload node_modules directory.
$ sp bundle --input=app.js --file=./sls.js
If you do not pass --file option, it will be bundled to sls.prod.js by default.
Before using app command, you should run sp config to config tencent cloud credentilas.
Warm up serverless application:
# name parameter is the name configured in serverless.yml
$ sp app warm --app=appname --name=scfdemo --stage=dev$ sp parse -o -s '{"src":"./"}'Parse command will parse serverless config file with costomize and environment variables replacement.
For example, before is:
inputs:
region: ${env:REGION}If process.env.REGION=ap-guangzhou, after parsing, the serverless.yml will be:
inputs:
src: ./
region: ap-guangzhou$ slsplus migrateThis command will auto migrate your old yaml config to latest version.
All git commit mesage must follow below syntax:
type(scope?): subject #scope is optionalsupport type:
- feat: add new feature
- fix: fix bug or patch feature
- ci: CI
- chore: modify config, nothing to do with production code
- docs: create or modifiy documents
- refactor: refactor project
- revert: revert
- test: test
Most of time, we just use feat and fix.
For CI test, should copy .env.example to .env.test, then config below environment variables to yours:
# tencent credentials
TENCENT_SECRET_ID=xxx
TENCENT_SECRET_KEY=xxx
# cos url for project code download in CI environment
CODE_URL_COS=xxx
# git ulr for git project
CODE_URL_GIT=xxx
# nextjs
CODE_URL_COS_NEXTJS=xxx
STATIC_URL_NEXTJS=xxx
# nuxtjs
CODE_URL_COS_NUXTJS=xxx
STATIC_URL_NUXTJS=xxxMIT License
Copyright (c) 2020 Serverless Plus