1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180
| # serverless.yml
#应用组织信息 app: '' # 应用名称。留空则默认取当前组件的实例名称为app名称。 stage: '' # 环境名称。默认值是 dev。建议使用${env.STAGE}变量定义环境名称
#组件信息 component: scf # (必选) 组件名称,在该实例中为scf name: scfdemo # (必选) 组件实例名称。
#组件参数配置 inputs: name: scfdemo # 云函数名称,默认为 ${name}-${stage}-${app} namespace: default role: exRole # 云函数执行角色 # 1. 默认写法,新建特定命名的 cos bucket 并上传 src: ./src # 2. src 为对象,并且制定忽略上传文件夹 node_modules # src: # src: ./code # exclude: # - 'node_modules/**' # 3. 指定 bucket name 和文件的方式,直接上传 cos 中的文件部署云函数 # src: # bucket: tinatest # bucket name 存储桶名称 # key: 'code.zip' # bucket key 指定存储桶内的文件 # 4. 指定本地文件到 bucket # src: # bucket: tinatest # bucket name # src: # 指定本地路径 handler: index.main_handler #入口 runtime: Nodejs10.15 # 运行环境 默认 Nodejs10.15 region: ap-guangzhou # 函数所在区域 description: This is a function in ${app} application. memorySize: 128 # 内存大小,单位MB timeout: 20 # 函数执行超时时间,单位秒 initTimeout: 3 # 初始化超时时间,单位秒 environment: # 环境变量 variables: # 环境变量对象 TEST: value publicAccess: true # 是否开启公网访问 installDependency: false # 是否在线安装依赖 vpcConfig: # 私有网络配置 vpcId: vpc-xxx # 私有网络的Id subnetId: subnet-xxx # 子网ID cfs: # cfs配置 - cfsId: cfs-123 mountInsId: cfs-123 localMountDir: /mnt/ remoteMountDir: / deadLetter: # 死信队列配置 type: deadLetterType name: deadLetterName filterType: deadLetterFilterType layers: #layer配置 - name: scfLayer # layer名称 version: 1 # 版本 cls: # 函数日志 logsetId: ClsLogsetId topicId: ClsTopicId eip: false # 是否开启固定IP asyncRunEnable: false # 是否启用异步执行(长时间运行) traceEnable: false # 是否状态追踪 tags: #标签配置 key1: value1 key2: value2 # tags 的key value ignoreTriggers: false # 是否忽略触发器部署 events: # 触发器 - timer: # 定时触发器 parameters: # name: timer # 触发器名称,默认timer-${name}-${stage} qualifier: $DEFAULT # 别名配置 cronExpression: '*/5 * * * * * *' # 每5秒触发一次 enable: true argument: argument # 额外的参数 - apigw: # api网关触发器,已有apigw服务,配置触发器 parameters: serviceName: serverless serviceId: service-8dsikiq6 protocols: - http netTypes: - OUTER description: the serverless service environment: release endpoints: - path: /users method: POST - path: /test/{abc}/{cde} apiId: api-id apiName: index method: GET description: Serverless REST API enableCORS: true responseType: HTML serviceTimeout: 10 isBase64Encoded: false isBase64Trigger: false base64EncodedTriggerRules: - name: Accept value: - image/jpeg - name: Content_Type value: - image/jpeg param: - name: abc position: PATH required: true type: string defaultValue: abc desc: mytest - name: cde position: PATH required: true type: string defaultValue: abc desc: mytest function: isIntegratedResponse: true functionQualifier: $DEFAULT usagePlan: usagePlanId: 1111 usagePlanName: slscmp usagePlanDesc: sls create maxRequestNum: 1000 auth: secretName: secret secretIds: - xxx - apigw: # api网关触发器,无apigw服务,自动创建服务 parameters: serviceName: apigw-xxxx protocols: - http description: the serverless service environment: release endpoints: - path: /users method: POST - cos: # cos触发器 parameters: qualifier: $DEFAULT # 别名配置 bucket: cli-appid.cos.ap-beijing.myqcloud.com filter: prefix: filterdir/ suffix: .jpg events: 'cos:ObjectCreated:*' enable: true - cmq: # CMQ Topic 触发器 parameters: qualifier: $DEFAULT # 别名配置 name: test-topic-queue enable: true filterType: 1 # 消息过滤类型,1为标签类型,2为路由匹配类型 filterKey: # 当 filterType 为1时表示消息过滤标签,当 filterType 为2时表示 Binding Key - key1 - key2 - ckafka: # ckafka触发器 parameters: qualifier: $DEFAULT # 别名配置 name: ckafka-xxx topic: test maxMsgNum: 999 retry: 10000 offset: latest timeout: 60 enable: true - cls: # cls 触发器 parameters: qualifier: '$DEFAULT' # 别名配置 topicId: 'xxx-228b-42f5-aab5-7f740cc2fb11' # 日志主题 ID maxWait: 60 # 最长等待时间,单位秒 enable: true - mps: # mps 触发器 parameters: qualifier: '$DEFAULT' # 别名配置 type: EditMediaTask # 事件类型 enable: true
|