linux平台上人机交互项目发布工具

  • A+
所属分类:linux技术
摘要

    对于上线步骤较为繁琐且注意的细节很多的项目,尽可能减少人为现场操作命令,让机器自动化实现上线功能尤为重要。


1、需求描述

Technorati 标记:

    对于上线步骤较为繁琐且注意的细节很多的项目,尽可能减少人为现场操作命令,让机器自动化实现上线功能尤为重要。

2、工具概述

    工具启动后,会提示用户选择按系统指引执行(a)或输入指定指令执行(b)

       每一步都会进行简单的用户交互(Y/N)后系统自动执行确认后的命令

       工具包含的功能有:执行sql文件、发布应用程序、启动(重启)应用程序

3、工具结构

    项目名称

       etc/

           sh/

               help.sh

               step.sh

               top.sh

               wrapper.sh

           const.lst

           dbinfo.cfg

           file.cfg

           func.cfg

           step.lst

           step_run.log

       log/

       source/

       tool/

             execSqlFile.sh

       run.sh

   目录或文件说明:

   etc/        配置文件存放目录

   etc/sh    可执行的shell脚本,如help.sh,输出工具帮助信息;step.sh,输出项目部署步骤信息;top.sh,输出项目部署标题;wrapper.sh,自定义shell脚本的包装类,可实现shell脚本执行前后动作,如日志打印

   etc/const.lst    工具常量文件

   etc/dbinfo.cfg  数据库连接信息

   etc/file.cfg       所有文件或目录常量文件

   etc/func.cfg     公共函数

   step.lst           项目部署步骤清单

   step_run.log    步骤执行日志,日志内容包含步骤名称、执行状态(0成功 1失败)、开始时间、结束时间、耗时(秒)

   log/                日志目录

  source/            数据文件存放目录

  tool/                工具脚本存放目录,如execSqlFile.sh,传入可执行sql文件路径参数,用于 执行sql文件

  run.sh              工具启动脚本