1

发布nodejs Web应用程序的正确方法是什么?

我当前的发布脚本正在执行以下操作:

 Sync(function(){
    var tag = getTag.sync(); //1 - getting the tag to release   
    update.sync(null, tag);  //2 - update current project to choosen tag
    archive.sync();          //3 - archive current released project 
    stop.sync();             //4 - stop server
    del.sync();              //5 - delete currently released project
    copy.sync();             //6 - copy files from scm folder
    packAssets.sync();       //7 - minify javascript. css, less files
    start.sync();            //8 - start the application
 });

更详细的描述 - 发布在同一服务器上的存储库文件夹中运行(编号与注释相同):

  1. 通过提出最后 10 个并选择数字或编写标签名称来获取标签。
  2. 将当前存储库更新为选定的标签。
  3. 存档应用程序文件夹 - 将其复制到具有唯一(数据)名称的存档文件夹。
  4. 通过调用停止服务器forever stop pid- 从现在开始 Nginx 将显示维护模式页面。
  5. 删除当前应用程序文件夹
  6. 将文件从存储库文件夹复制到发布文件夹(跳过 scm 文件夹 - 在我的情况下为 .hg)
  7. 为 JavaScript、CSS 和 Less 文件运行压缩脚本。
  8. 通过调用forever start server.js发布文件夹来启动应用程序。

函数(getTag、update、archive、stop、...)在 Sync 调用之上声明。

这是对的吗?

4

1 回答 1

2

请考虑使用以下工具来发布您的 JavaScript 应用程序,它们可能有助于 SemVer 版本控制并使发布过程更不容易出错:

  • 语义发布- 一个发布系统,可以在发布新版本软件之前和之后轻松执行操作
  • Bumped - 全自动包发布
于 2017-09-18T15:31:21.970 回答