问题标签 [continuous-deployment]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
396 浏览

linux - 如何进行持续部署 - AWS 上的 C++

我在存储库服务器上有一个源。该应用程序在 AWS 实例上运行。我可以制作一个脚本来记录、提取、编译并将新的二进制文件复制到它的目的地。

但是如果应用程序正在运行,我如何复制新的二进制文件?这样做的通常方法是什么?我是否必须停止应用程序才能进行更新?那么持续部署是如何工作的呢?

我正在使用linux,应用程序是C++。

0 投票
2 回答
517 浏览

database - 持续部署和数据库

在持续部署中,您有时会逐渐升级您的服务器,例如,20 人中有 2 人会使用新代码,直到我们确信一切正常。如果新代码需要数据库模式迁移会发生什么,例如字段 phone 现在是 table Phones。除非我升级所有 20 台服务器,否则某些东西会坏掉。

0 投票
2 回答
4196 浏览

database - 持续交付中的生产数据迁移模式

持续交付中的生产关系数据库(和模式)迁移模式是什么?

在许多传统开发中,DBA 从当前发布周期中创建的许多较小脚本中安排了一个大迁移脚本。但是在 CD 中,开发人员可能希望现在将更改推送到生产环境,而不是等待与其他脚本一起编译它们。

我知道 rails-migration 但对我来说使用原始 sql 脚本看起来更合理。

我还看到过像flyway这样的工具来管理迁移,但我还没有看到很多人在生产中使用它们。这就是为什么我想知道这里的常见做法是什么。

0 投票
3 回答
1884 浏览

sql-server - 不停止更新生产 IIS 网站和 SQL Server 数据库

有一个使用测试数据库的测试服务器。我们在测试服务器上测试网站。如果没问题,我们将网站和数据库模式从测试服务器更新到生产服务器。但是这种方法是非常痛苦和危险的。

首先,我们必须将用户重定向到维护页面,因此网站会暂停一段时间。

其次,如果更新时出现问题,我们必须回到旧网站,因为我们不能让网站长时间处于维护模式。

因此,我正在寻找一个可靠的解决方案来更新 IIS 网站和 Sql Server 数据库,而不会丢失数据并使用维护模式。有没有办法做到这一点?大型网站如何在不丢失数据和暂停的情况下做到这一点。

我们考虑过使用发布候选网站。我们计划暂时使用这个 RC 网站。首先,我们更新 RC 站点,然后交换 RC 和生产站点之间的绑定。但是这次数据库有问题。因为我们可以更改数据库架构,而旧的架构不能与新数据库一起使用。因此,如果我们使用带有 temp db 的临时站点,就会有数据丢失。此外,如果临时站点使用旧的生产数据库,则更新后的网站将无法使用旧数据库。所以我需要一个可靠而实用的解决方案来解决这个问题。

0 投票
2 回答
761 浏览

ruby-on-rails - 设置持续部署环境以实现高效扩展

我几乎准备好启动我的 rails 应用程序,我一直在使用单个 linode 盒进行测试。我的 git repo 目前也托管在同一个盒子上,其中还包括应用程序和数据库。我想将它们拆分为 3 个实体——一个数据库服务器和一个应用程序服务器(可以选择轻松添加更多),以及一个托管在 bitbucket 上的存储库。

理想情况下,我希望能够将我的代码提交到 bitbucket,然后设置一个提交后挂钩推送 POSTS 到应用服务器,以从存储库中提取新更改并自动开始为它们提供服务。我花了很多时间阅读有关 Puppet、Chef、Passenger 等的信息,但我已经不知所措了。我的设置按原样运行良好,但我知道时机成熟时它不会很好地扩展,所以我需要进行切换。我想要帮助的是确定除了我已经设置的工具之外我应该使用哪些工具,以使过程尽可能顺利。

谢谢

0 投票
3 回答
4247 浏览

javascript - 仅当它们已更改时才强制浏览器重新加载 css/js

有很多关于我的问题的问题和答案[我希望浏览器永远缓存 js/css。在新版本中,如果某些 js/css 文件已更新,浏览器应重新加载并缓存它们。]

这个解决方案对我来说似乎最合适: 强制浏览器重新加载缓存的 CSS/JS 文件的优雅方法是什么?

但是,只有一件事我无法弄清楚。该解决方案利用 last_modified_time。但是,我不允许使用它。我需要使用其他一些机制。

有什么选择?是否有可能在构建期间预先计算版本并通过构建脚本在 jsps 中更新(替换)它们(在部署之前,以便不在运行时计算版本号)?为此目的有任何现有工具吗?我使用 Java/Jsp。

0 投票
2 回答
3702 浏览

git - Azure 云服务和 Git 持续部署?

有没有一种方法可以让我不仅将 Git 用作代码存储库,还可以将其用于构建和持续部署到 Azure(云服务,而不是网站)?我怀疑没有给出缺少的构建环境,除非但想在注销之前确认这一点。

从理论上讲,我可以看到将 Git 托管在 Windows 服务器上,该服务器也进行构建和部署 - 不确定是否有人将其简化为实践。

0 投票
3 回答
1370 浏览

azure - TFSPreview.com 和 Azure 证书在部署时表现不佳

所以我设置了 TFS 持续部署,我遇到了这样一种情况,即我的构建编译得很好,但在与 Azure 通信时在部署阶段失败。我的日志看起来像

我尝试了 Azure 门户中的“与 TFS 断开连接”链接,然后验证了 Azure 门户的“证书”部分中的证书。我使用指纹哈希确认相同的证书也在我的本地计算机的证书存储(“我的”存储)中。然后我通过 Azure 门户重新链接 TFS。

但我仍然得到同样的错误。任何想法?

更新 我还尝试了一些额外的步骤,似乎没有任何工作:(

  1. 删除了整个云服务
  2. 创建了一个新的云服务(同名)
  3. VS2012 在生产和登台上部署到云服务(因为我需要为前端使用和后端测试提供服务)
  4. 验证门户的云服务“证书”部分中的 Windows Azure 工具证书(与我的本地副本匹配)。我知道这与 TFS 和 Azure 之间的不同
  5. 去了 TFSPreview.com => 左上齿轮 => 项目管理 => 服务 => 没有看到链接的服务
  6. 转到用户配置文件 => 连接 => 列出 OAuth 连接(Windows Azure 的 MANAGE-PROD CLOUDAPP)=> 删除它
  7. 在 Azure 门户中,将新设置的云服务链接回 TFSPreview.com
  8. 在 VS2012 本地,断开 TFS ('team' => 'disconnect')
  9. 在VS2012本地,退出TFS('team' => 'connect' => 'sign out' at the bottom)
  10. 重新登录 TFS,连接到团队项目
  11. 做了一个微不足道的更改 => 签入 => 触发持续部署

=> 和以前一样的错误:?

谢谢

0 投票
2 回答
37563 浏览

jenkins - 如何使用 JUnit 设置 Jenkins

我们有一个JUnit通常从 Eclipse 运行的测试套件。我们最近开始尝试获得更好的开发环境。作为其中的一部分,我们已经开始在Jenkins. JUnit如果可以在我们的构建过程中运行测试套件,我们也希望它。为此,我认为我们需要一种从命令行执行测试套件的方法,以便我们可以将它们集成到其中Jenkins并解析它们的输出。

我们如何设置Jenkins来运行我们的测试?

0 投票
1 回答
2131 浏览

jenkins - 从哪里可以下载 Jenkins build-pipeline-plugin?

我正在尝试找到可以下载最新版本 Jenkins 构建的位置

管道插件https://wiki.jenkins-ci.org/display/JENKINS/Build+Pipeline+Plugin但我

无法这样做。我签出代码并在我的系统上构建它,但是当我安装

插件它没有向我显示构建管道的视图选项。如果可以的话会很有帮助

帮我找到插件的位置?