1、概要

部署flowable工作流引擎,需要根据所在服务器的IP和MySQL账密信息,修改很多配置项,为方便,这些配置项,采用脚本批处理的方式,将用户在终端输入的信息,进行处理并修改配置项(以往的操作是,先将压缩包解压,再将war包解压,修改配置文件,再将文件打成war包,最后部署测试,及其容易出错)。节省了大量的时间。

脚本完整版地址:

https://flowable.oss-cn-beijing.aliyuncs.com/semi_auto_deploy_flowable_sample.sh

flowable下载地址

https://github.com/flowable/flowable-engine/releases/tag/flowable-6.3.0

2、脚本内容

脚本做了以下事情:

  • 解压flowable.zip

  • 创建flowable-admin等5个文件夹,并将flowable-admin.war等5个war包依次移动至相对应的文件夹

  • 解压war包 && 进入指定目录,处理配置文件

  • 接受用户输入的配置项各项信息

  • 每一个配置文件输入结束时,会确认是否要继续,正确输入y,则生成application.properies配置文件

  • 错误则输入n,输入指定的数字,进行纠正,直至用户输入y确认成配置文件

  • 将处理好的文件,打包成war包

3、实现

如图,使用的时候,保证脚本和压缩包在同一目录下:

这段代码是获取文件路径

CURDIR=$(  cd $(dirname ${BASH_SOURCE[0]})  pwd)

这段代码是处理用户输入的内容

cd flowable-admin/WEB-INF/classesrm -rf application.propertiestouch application.properties# 提示端口,如果不输入,会有默认值9988echo -n "[1]please input the server.port = ? (default is 9988)"read portif [[ $port == "" ]]; then  port='9988'fiecho -n "your server.port is $port"echo -n "[13]please input the MySQL server host ip = ? (default is 127.0.0.1)"read MySQLHostIpif [[ $MySQLHostIp == "" ]]; then  MySQLHostIp='127.0.0.1'fiecho -n "[14]please input the MySQL server host port = ? (default is 3306)"read MySQLHostPortif [[ $MySQLHostPort == "" ]]; then  MySQLHostPort='3306'fi

上文说过,如果错了,是可以根据序号修正输入信息的。如果flag不为y,则会一直询问正确输入,直至输入y为止。

read flagwhile [[ $flag == "n" ]]; do  echo 'input number 1 to 26, the numbers are not continuous'  echo 'your number is'  read aNum  case $aNum in  1)    echo 'number is 1, please fix your [port] current!'    read line1    port=$line1    ;;  13)    echo 'number is 13, please fix your [the MySQL server host ip] current!'    read line13    MySQLHostIp=$line13    ;;  14)    echo 'number is 14, please fix your [the MySQL server host port] current!'    read line14    MySQLHostPort=$line14    ;;  *)    echo 'Error'    ;;  esac  echo -n "confirm,if wrong, please choice 'n' to fix it !, input y/n:"  read flagdone

最后,使用

cat >application.properties <<EOF

并配合类似:

spring.datasource.username=$datasourceUsernamespring.datasource.password=$datasourcePassword

将读取终端input的变量值写入要生成的配置文件中。

4、最后

使用Bash Shell的好处,不需要再额外部署运行环境,也无需担心三方部署系统对生产机器带来不可预知的错误和问题。

可以尝试自己的工作或者学习中,有没有需要一个Bash Shell来解决的。

flowable工作流_使用Bash Shell实现flowable配置文件修改定制相关推荐

  1. flowable工作流_【程序源代码】Springboot开源工作流开发框架

    关键字:springboot 工作流框架 管理系统  框架 正文 | 内容 01 - [介绍] zjmzxfzhl 是基于 SpringBoot + Spring Security OAuth2(Sh ...

  2. 初识flowable工作流-实现简单请假流程SpringBoot+VUE

    一.前言 大家好,因为目前手里需要用到flowable工作流,之前没有接触过,所以在这里记录一下学习的进度,开始后台使用SpringCloud分布式框架和前端Vue框架实现一个简单的请假流程. 二.代 ...

  3. flowable工作流 流程变量_信也科技工作流平台的技术实践

    1 背景 随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下: 目前OA流程引擎无法满足企业特定业务流程需求,且移动端体验差,定制化困难,使用门槛高,影响简单流程 ...

  4. flowable工作流技术学习

    一.flowable工作流引擎中文文档 Flowable BPMN 用户手册 (v 6.3.0) 这个文档内容太多,稍微看看就好,具体学习还得从demo里面去学习. 二.flowable项目下载地址与 ...

  5. Flowable工作流入门

    Flowable工作流入门 本文链接:https://blog.csdn.net/qq_37059838/article/details/83576097 原作者:吕小小布 下载地址:Flowable ...

  6. Flowable工作流引擎

    Flowable工作流引擎 Flowable-基础篇(根据BV1Pb4y1p7Ku整理) 一.简介 Flowable是BPMN的一个基于java的软件实现,不过Flowable不仅仅包括BPMN,还有 ...

  7. Flowable工作流引擎技术方案

    应对越来越多的工作流使用场景,以及越来越灵活的业务情形,我们亟需对工作流引擎进行一次重构优化.目前市场上主流的工作流引擎,一种是我们熟知的activiti,另外一种就是flowable.众所周知,fl ...

  8. Flowable 工作流引擎

    Flowable是一个流行的轻量级的采用Java开发的业务流程引擎.通过Flowable流程引擎,我们可以部署BPMN2.0的流程定义(一般为XML文件),通过流程定义创建流程实例,查询和访问流程相关 ...

  9. SpringBoot整合Flowable工作流引擎框架

    Flowable工作流引擎框架介绍 一个Java编写的轻量级业务流程引擎,为开发人员.系统管理员和业务用户提供工作流和业务流程管理(BPM)平台. 不仅包括BPMN,还有DMN决策表和CMMN Cas ...

  10. springboot flowable 工作流

    我们使用docker拉起一个mysql镜像 $ docker pull mysql Using default tag: latest latest: Pulling from library/mys ...

最新文章

  1. 利用HoloLens进行无人船舶驾驶!微软日本概念视频
  2. 如何在GitHub上重命名存储库?
  3. 虚幻引擎UE4-命令行使用的一些技巧
  4. 2725. [Violet 6]故乡的梦(删边最短路同[TJOI2012]桥)
  5. android studio vfs,Android Studio:尝试呈现XML布局的InvalidVirtualFileAccessException
  6. Java 200+ 面试题补充 ThreadLocal 模块
  7. Less中的命名空间
  8. 过程语句 oracle,Oracle 过程控制语句整理
  9. 升级到 MySQL 8.0,Facebook 付出的代价。。
  10. ArcGIS操作总结(更新中......)
  11. 作为项目经理如何开展BI项目
  12. 给大学生的劝告——你们为何应该开始接触UNIX/Linux
  13. .woff2/svg/woff文件报404错误
  14. Gmail 为什么打不开
  15. Python ------ return返回值等
  16. 正则表达式-RegExp-常用正则表达式
  17. Leetcode滑窗系列(java):643. 子数组最大平均数 I
  18. 终于稀里糊涂完成了模仿天猫整站ssm
  19. 西门子PLC编程软件,最新版本是TIA STEP7 V16,功能更加强大
  20. 《2022 大数据技术与架构视频合集》附PPT和文档,限时下载

热门文章

  1. Citrix MCS桌面管理技术解读
  2. 点击次数(thinkphp)
  3. jdbc的commit和rollback
  4. vue事件发射与接收(可实现页面传值和非父子组件传值)
  5. hdfs中与file数组类似的数组_Java中的数组
  6. HTML实现学习网站首页
  7. 全网首发:ProGuard保持一个类名函数名需要加public
  8. eclipse中出现代码覆盖的颜色信息,如何去掉
  9. 泰山OFFICE正式在UOS应用商店上架
  10. 分析华为毕昇JDK8:类数据共享CDS有效果,幅度很小