专业版沙箱/生产环境搭建

提前准备项:
1.购买资源(需要资源购买,请联系 赵强zhaoqiangs@yonyou.com)购买后会提供机器ip和kubeconfig.json认证信息
2.开发者中心账号密码(资源下来了,需要用管理员账号 注册集群、创建资源池、创建引擎和流水线)
3.gitee或gitlap代码仓库账号密码(用来推送专业版脚手架代码,推荐gitee 稳定;github由于公司网络限制,不支持)
4.域名前缀 *.yonisv.com

一、注册集群

地址:https://developer.yonyoucloud.com/
账号密码:使用管理员账号、密码,选择自己的租户。
登录开发者中心,打开“全部产品”
容器服务--》集群管理--》注册集群

图

集群名称 自定义即可
云平台类型:华为云
认证方式:Kubeconfig
图

点击上传kubeconfig.json文件,保存即可。
图

二、资源池管理

1. 添加资源池

容器服务 -》 资源池管理 -》 添加资源池
图
图

2. 添加主机

注:添加主机,仅绑定node节点即可,不要绑定ingress机器

图
我们isv标准资源套餐里面有两个node节点主机(针对机器ip起个对应的主机别名,比如:node1,node2),注意不要绑定ingress机器
每添加一个主机,都接入一个对应的ip
图
图

三、创建引擎

若已有资源池,可忽略上面第一、二步。

1.登录开发者中心

访问:开发服务YonBuilder—>应用构建专业版
图

2.新建引擎

图
注:编码命名规则,由不少于4位的小写字母或数字组成,且不能以数字开头
图
编码:引擎编码
名称:引擎名称 (对应-应用构建-新增应用-选择的 应用引擎)
引擎信息查看:点击查看进入引擎信息页面
图

3.推送GIT地址(推荐gitee 稳定)

推荐,先在git或gitee上创建一个空仓库。仓库里的项目名 建议取 引擎编码!
然后在“脚手架”处推送git地址(平台就会把脚手架代码推送到你上面建的git空仓库里)。 图

配置git仓库信息:
图
填写对应的仓库信息(git仓库地址必须小写),可以通过点击 立即验证 git仓库地址格式填写的正确性,点击确定后,等待代码推送(大约1分钟), 可能会出现超时但git仓库里面已经有代码生成的情况,此时不需要再次点击确定。

注:用户名、密码 是上面创建的git或gitee仓库的账户、密码。
若推送失败,但你确认地址、账号、密码无误,再次确定即可,尝试重新推送

4.创建流水线

前端、后端流水线创建过程步骤:

创建流水线的这种方式,需要 前、后端 一个个单独创建流水线;然后上传配置文件。 图
图

详细步骤:

图
下一步 图
后端流水线 源码构建:
图
前端流水线 源码构建:
图

图
选择自己的"数据中心"下的"资源池" 图
图
然后点击“创建应用”。就会创建流水线并第一次自动执行。

5.解析短域名

需要一个https的短域名

  • ISV把自己要使用的域名,告诉对接的 用友-生态项目部的开发人员,对其进行解析。
  • 查看ingress域名 图
  • 配置https证书及域名和实例ingress域名的映射关系

  • 然后ISV获取到解析后的域名后,需要在开发者中心 修改前后端地址 图
    访问地址,为空即可(为空时走统一node域名),否则预览时报错。

6.配置文件修改

6.1 后端配置文件修改

  • 创建application.properties配置文件
  • 创建mdd-redis.properties配置文件
  • 创建mdd-redis.properties配置文件
    脚手架代码里有这三个配置文件,copy下来修改自己对应的配置项
    图

也可以直接使用我们整理的配置文件(提取了公共变量,配置项少些) 后端配置文件

6.1.1 获取access.key和access.secret信息

登录开发者中心,获取access.secret
图

6.1.2 获取appkey和appsecret信息
  • 进入沙箱环境
    图
    搜索:我的应用 --》添加自建应用 --》集成开发 图
    图
    应用名称、应用标签等信息自定义填写。 图
    下一步,点下“开发平台”按钮, 下一步,点下“API授权” 图
    然后就可以自己 在该租户下 创建一套:appcode、appkey、appsecret。
    复制下面这对 appKey、appSecret。如果调用协同某些接口,或使用生态租户 也需要配置appCode,将其配置到配置文件中!
    图
6.1.3 授权API

通过“新增API”获取对应的api授权功能。 图 勾选ISV REST API路由,然后点击左下角的确定按钮。【授权,否则后台启动报错!!!】 图
此时一个具有ISV REST API路由授权的集成开发应用就创建好了。

6.1.4 订阅事件

该事件订阅 是保存设计器时 触发清UI元数据缓存的。 图
新增订阅事件、如图所示 图
填写回调地址(注意:‘game2021.yonisv.com’ 是自己项目解析的域名,不是统一node的域名) 点击保存按钮,完成缓存的订阅。 示例:

https://game2021.yonisv.com/be/rest/v1/openapi/isv/event

注:点击“测试”按钮,验证是否配置正确。
保存 设计器 时触发该事件订阅 清UI元数据缓存。

6.2 前端配置文件env.json

{
    "domainKey": "devcom2021",
    "default": {
        "base_url": "https://game2021.yonisv.com/be",
        "tpl_url": "https://ms-dbox.yyuap.com/mdf",
        "report_url": "https://intelliv-dbox.yyuap.com",
        "print_url": "https://game2021.yonisv.com/be",
        "workflow_url": "https://yb-dbox.yyuap.com",
        "customize_button_url": "https://game2021.yonisv.com/be",
        "file_url": "https://ezone-dbox.yyuap.com",
        "cooperation_url" : "https://ykj-esn-test.oss-cn-beijing.aliyuncs.com/suite/cooperation/build"
    }

domainKey 改为自己的引擎编码;
base_url、print_url、customize_button_url 改为自己解析的域名

7.修改流水线配置

7.1 前端流水线

  • 维护配置文件: 图
    图
    图
    上传上一步的配置文件,并修改绝对路径。

  • 修改流水线其他配置项: 图
    图
    子项目路径:前端项目文件目录名 图
    图

    #配置前端启动命令,***-fe 是自己的 前端脚手架 文件名。
    cd ***-fe && npm run build:extend && node bin.js
    
  • 流水线绑定配置文件: 图
    图
    保存重新执行流水线。

7.2 后端流水线

  • 维护配置文件: 图
    图
    上传上一步的配置文件。

  • 修改流水线其他配置项: 图
    图
    ROOT POM路径:后端文件名/pom.xml
    子项目路径:后端文件名/bootstrap模块文件名

图
图

  • 流水线绑定配置文件:
    图
    图

保存重新执行流水线。

7.3 然后确认下,前、后端 实例是否成功启动,通过开发者中心查看后台日志。

图

8.验证

访问 https://解析的域名/menu
若页面返回如下,表示引擎及流水线 已创建完成。下面就可以进入专业版开发了。 图

四、添加开发成员

1.沙箱环境开发成员添加流程

《ISV沙箱环境》开发成员添加流程-详细步骤

2.引擎添加开发成员

上一步添加开发成员后,需要在指定的引擎-成员列表 下,添加开发成员,这样开发人员在沙箱环境创建应用时,才能选到该引擎。

图
图
图

3.快速入门(本地调试访问)

快速入门(本地调试访问)


五、环境搭建可能遇到的问题

1.容器启动失败

容器日志报Tomcat异常;
tomcat版本问题:
图
选择上面这个版本。

2.预览设计器报错

预览设计器,报错如下:
图

解决方案:开发者中心的引擎-访问地址,不要配置自己的域名,配置为空(为空的话走统一node域名,配置自己域名就走自己的域名,统一node升级后的注意点)
图

3.后端idea启动报错:不兼容的类型

图
改成下面的: 图

4.后端启动报错:open api tenant auth provider failed, please check your configuration

检查配置文件:【都可以从开发者中心的引擎的配置文件中拔下来】

#个人开发者中心的 鉴权配置
access.key=J29QhAJNl4M********
access.secret=F5w7P9FwxS2vfoob3P2aG********
#openapi的 授权
ucf.mdd.open-api.api-host=https://open-api-dbox.yyuap.com
ucf.mdd.open-api.app-key=d5a4c695d1f3405fbff6********
ucf.mdd.open-api.app-secret=329bb719b0c14650a3d37c9********

5.沙箱/生产 配置中心的配置未生效,读取的本地配置文件

前端gitee部署后,未读取配置中心配置文件,而是读取的本地代码的。 是由于平台路径配错了
1.首先,确认代码的配置文件的绝对路径:
图
2.修改平台的绝对路径为 上面的路径,注意 上面路径要去掉env.json,因为下面默认带了。
图

6.沙箱环境 UI模板缓存问题

修改UI设计器后,预览不生效,需要清redis才生效 需要订阅事件,自动触发清缓存

找到自己的--》我的应用--》集成开发--》开发平台

图

回调地址中的域名就是 上面解析的域名,其他的是固定的
https://自己域名/be/rest/v1/openapi/isv/event
然后,创建订阅:
ISV_METACACHE_CLEAN
ISV元数据缓存清理

图

7.脚手架开发

后端脚手架扩展开发,尽量不要在脚手架模块内开发,要新增一个Module开发,方便后期升级脚手架。 图

注:1.要在bootstrap-pom.xml 新增Module依赖;2.新模块包路径,建议最好按 com.yonyou.ucf.mdf.app 前缀,否则 启动类还得加你们自己的扫描包
        <!-- 新增模块 -->
        <dependency>
            <groupId>com.yonyou.ucf</groupId>
            <artifactId>dev-devcom2021-tools</artifactId>
            <version>${project.version}</version>
        </dependency>

另外,Module名称 建议和脚手架模块命名规则一致:dev-引擎编码-自定义

8.点击节点【勾选 自动编码 的节点】 找不到表字段 ytenant_id

报错: 图
或者,报: 图

专业版需要初始化sql预制系统表:
图

9.自动编码报错

{"999","com/yonyou/ucf/mdd/ext/bill/common/BillNumberInfoUtils"}

解决:执行流水线 第一次 ,勾选强制拉取依赖

10.新的ISV租户,使用工作流需要注册

友空间找 张达(zhangdav@yonyou.com),或者自己调接口注册:

#post请求
#最后面的参数: sy01(ISV的引擎编码) 、ED、PC  都注册一下
https://ys.diwork.com/ubpm-process-center-be/rest/registered/registeredServer/sy01
https://ys.diwork.com/ubpm-process-center-be/rest/registered/registeredServer/ED
https://ys.diwork.com/ubpm-process-center-be/rest/registered/registeredServer/PC

#入参租户id
{
    "tenantId": "ISV租户id"
}

11.新的ISV租户,使用业务流需要注册

提供租户id、引擎编码、后端域名--》友空间找 闫祖越(yanzyf@yonyou.com)

Copyright © 用友 -【生态技术部】 2021 all right reserved,powered by Gitbook修订时间: 2022-02-18 18:53:00

results matching ""

    No results matching ""