2.2.1 功能框架

学习目标

这一节,我们从 基础知识、简单实践、小结 三个方面来学习

基础知识

问题:为什么不按照简单脚本的思路进行编写

为什么?
    1、命令多
    2、功能多
    3、不好组合
解决方案:
    一句话:化整为零,各个击破

脚本框架

编写大型脚本有一个流程:
    一、脚本框架
    二、命令填充
    三、完善功能
        增加日志功能
        增加锁文件功能
        增加主函数逻辑
        增加参数安全措施

需求

完成代码发布流程框架,一个流程(步骤)即一个功能
	- 用函数来实现

简单实践

实践

脚本内容
#!/bin/bash
# 功能:打包代码	
# 版本: v0.1
# 作者: 书记
# 联系: superopsmsb.com

# 获取代码
get_code(){
  echo "获取代码"
}

# 打包代码
tar_code(){
  echo "打包代码"
}

# 传输代码
scp_code(){
  echo "传输代码"
}

# 关闭应用
stop_serv(){
  echo "关闭应用"
  echo "关闭nginx应用"
  echo "关闭django应用"
}

# 解压代码
untar_code(){
  echo "解压代码"
}

# 放置代码
fangzhi_code(){
  echo "放置代码"
  echo "备份老文件"
  echo "放置新文件"
}

# 开启应用
start_serv(){
  echo "开启应用"
  echo "开启django应用"
  echo "开启nginx应用"
}

# 检查
check(){
  echo "检查项目"
}

# 部署函数
deploy_pro(){
  get_code
  tar_code
  scp_code
  stop_serv
  untar_code
  fangzhi_code
  start_serv
  check
}

# 主函数
main(){
  deploy_pro
}

# 执行主函数
main