paper-maker出题流程
1、教师填好题目的相关信息(name
、 type
、Github
地址(包括script.sh
脚本文件、templeteRepo
(基于这么模板做题)、readme.md
(题目描述)
))后点击保存按钮后
2、添加一个字段status
,默认值为1(保存按钮为pending
状态),将这四个字段保存至mongo
中,并给前台返回一个_id
字段,前台应将这个_id
通过replace
的方法放到url
中(不用push
的原因是页面进行回退操作后会先返回新建的界面然后才到试卷列表界面,而replace
会直接返回到试卷列表界面)
3、这时Jenkins
获取本机的IP
地址和Github
地址进行一系列检查,如果检测到Github
仓库地址里的字段有错误,则去mongo
中更新status
为0(新建试题失败),若检测所有数据没有问题则进入步骤4
4、这时Jenkins
通过curl
给一个新的接口发送请求(包括status
=2(新建试题成功)和result
字段),这时通过_id
从mongo
中找出name
、type
、description
(readme
文件转换成String
格式),并保存至mySQL中,将script.sh
脚本文件保存至web-api
中一个文件夹
网友评论