TreeviewCopyright © aleen42 all right reserved, powered by aleen42
注意:
ISV技术负责人:YonBuilder技术与赋能部
ISV项目负责人:ISV产品规划运营部
开发者中心地址:https://developer.yonyoucloud.com/
沙箱环境地址:https://dbox.diwork.com/
YMS管理控制台:https://yms.yonisv.com/confcenter/
ISV开发规范:https://doc.yonisv.com/mybook/developingguideline/guideline.html
1 准备工作:
1.1 熟读规范
按照ISV开发规范文档进行命名和搭建,点击进入ISV开发规范
1.2 服务商开通
和ISV项目负责人对接,让开通服务商,开发沙箱、测试沙箱环境,如果需要原厂扩展还需要一个0租户,并提供服务商管理员账号密码、git仓库登录账号密码、开发人员账号密码、征求域名命名意见(以dev-${两位ISV编码}${1位数字}.yonisv.com为域名是否可行,不可行让客户自己提供dev-xxxx.yonisv.com的开发环境域名,生产环境的域名为pro-xxxx.yonisv.com)。
1.3 申请资源(db、redis、服务器资源),联系运维
2 开发者中心
2.1 产品管理
在
产品管理
下创建产品线,产品2.2 资源池
在
集群管理
点击注册集群,Kubeconfig文件联系运维即可,一般都在邮件里面。
- 在
资源池
里面添加资源池,选择生态数据中心、生态-开发环境
- 添加主机,接入脚本即可
2.3 应用构建专业版
2.3.1 代码推送
- 在
应用构建专业版
下创建引擎,引擎编码参考1.1 ISV规范文档 - 点击右上角脚手架,选择推送git地址,配置git信息,会直接推送脚手架代码
- 点击成员列表,绑定开发账号
2.3.2 获取沙箱环境参数
- 用管理员账号进入沙箱环境,通过cookie获取开发沙箱租户tenantid
- 在
我的应用
新建集成应用,点击开放平台获取参数appcode,appkey,appsecret,并新增用友开放API ISV REST API 路由
2.3.3 yms配置
- 联系运维配置yms信息,需提供引擎编码。
- 等待运维配置完成,自行在YMS控制中心(点击进入) 配置对应配置项,开发环境和沙箱环境
可以复制其他ISV项目的配置,修改最外层的key值为引擎编码,以及code和name,也可以手动添加如下配置:
zk管理 lock.zkserver 10.200.2.247:2181
appcode ucf.mdd.open-api.app-code appcode //2.3.2获取
appKey ucf.mdd.open-api.app-key appKey //2.3.2获取
appSecret ucf.mdd.open-api.app-secret appSecret //2.3.2获取
isv-key ucf.mdd.open-api.isv-app-key 55555
isv-secret ucf.mdd.open-api.isv-app-secret 55555
path ucf.mdd.open-api.isv-router.path /yonbip/digitalModelisv/rest/api
tenant-id ucf.mdd.open-api.tenant-id tenantid //2.3.2获取
- 两个环境记得一定要记得点击
配置文件预览并发布
- 在本地拉取git代码,并在前端fe根目录添加bin.js文件,修改后端config/config-sandbox.properties配置文件,提交到git仓库中。
access.key=JKANggKMTXiBXNzl
access.secret=SDmNBeH7aDs8rwETPjVGjTZ4RN4rYP
2.4 流水线
2.4.1 后端流水线
- 在
流水线
下创建后端流水线,应用名称和编码参考1.1 ISV开发规范,点击下一步
- 选择YMS应用
- 配置git仓库,勾选子项目,pom路径为isv-${两位ISV编码}${1位数字}-be/pom.xml,子项目路径仿照下图:
- 勾选
根目录
,勾选回填external依赖jar包
,需要创建完流水线后再重新进行配置。
- 镜像选择 yms-3.0.0-release
- 选择对应环境,生态数据中心、生态-开发环境,修改环境变量mw_profiles_active的值为sandbox,启用健康检查,创建应用即可。
2.4.2 前端流水线
- 在
流水线
下创建前端流水线,应用名称和编码参考1.1 ISV开发规范,点击下一步
- 选择node应用,配置git仓库,勾选子项目,子项目l路径填写
**isv-${两位ISV编码}${1位数字}-fe**
- 启动命令为
cd **isv-${两位ISV编码}${1位数字}-fe** && npm run build:extend && node bin.js
,选择镜像node:14-alpine,勾选健康检查,执行流水线即可。
2.4.3 配置域名
- 将1.2最终确定的域名和前后端ingress地址(部署管理-负载均衡-ingress域名)发给运维(许崇),等待配置
- 在
应用构建专业版
中修改引擎的前后端访问地址,前端为域名,后端为域名/be。(否则页面无法正常访问)
3 测试
3.1 应用构建
- 在
应用构建
新建应用,选择专业版引擎,新建实体,新建页面,预览出现表不存在即可,解决该报错需要在实体导出sql,在数据库中执行sql文件创建表结构。
3.2 页面缓存清理
- 在
我的应用
下选择集成应用-开放平台-事件订阅,配置ISV元数据缓存清理,回调地址:https://后端地址//rest/v1/openapi/isv/event,订阅事件为:ISV元数据缓存清理。(否则页面保存不会及时更新)
4 本地调试
4.1 修改配置文件
- 后端修改配置文件config/config-sandbox.properties >>> profile=dev
- 配置maven setting.xml和仓库 settings-isv.xml
- debug模式启动MDFApplication.java
- 前端修改配置文件config.env.js >>> HTTP_SERVICE_BASEURL: 'http://localhost:8080', 保存。
- 执行npm install 再执行 npm run debug
9 常见问题
9.1 参考文档
9.2 后端启动时提示ak未注册
- 友空间联系郭志龙添加ak白名单
针对商开环境验签的问题,报错请求认证中心错误,accessKey不存在问题,解决方式:以后商开环境的access.key和access.secret 采用通用的值,配置方式可以通过追加环境变量或者源码替换,如果源码和环境变量都存在,以环境变量为第一优先级生效。环境追加ak/sk公共配置(核心2环境需要用开发者中心右上角AK/SK)核心1/商开环境 access.key JKANggKMTXiBXNzl 核心1/商开环境 access.secret SDmNBeH7aDs8rwETPjVGjTZ4RN4rYP
9.3 redis,数据库提示配置错误
- 查看yms数据配置(https://yms.yonisv.com/confcenter)
9.4 前端流水线启动失败,提示没有bin.js
- 可以手动将bin.js添加放到根目录下 bin.js
9.5 页面预览时提示没有数据
- 在我的应用api授权,并在yms添加相应的ak,sk,appcode