如何使用Capistrano有条件地清理发行版?

时间:2019-05-17 16:41:26

标签: ruby capistrano

我知道我可以使用keep_releases来保持特定的 number 版本,但是我有一系列具有符号链接的版本。例如,我有:

http://www.example.com/version/1.0.0,是某些发行版的符号链接,例如/var/www/example.com/releases/2019050101。我也有一系列所谓的“临时”发行版,它们使用/current/进行了链接。部署这些“临时”发行版之一时,/current符号链接将覆盖到最新发行版。这就是说有些发行版没有符号链接。

我要做的是指定Capistrano仅保留keep_releases个这些 transient 版本的数量。换句话说,应始终保留从根目录进行符号链接的所有发行版。

有人可以帮我做一个Capistrano食谱吗?

1 个答案:

答案 0 :(得分:0)

我最终使用了以下配方,该配方主要是the cleanup recipe in the Capistrano source的副本,除了带有一些用于确定和跳过符号链接目录的其他逻辑外,

}