问题标签 [webistrano]

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 回答
932 浏览

ruby-on-rails - Webistrano 卡在 deploy:update_code

我一直在尝试在我们的一台服务器上设置 webistrano。一切都很顺利,直到我尝试部署我的设置。Webistrano 目前设置在测试服务器上,所以我希望它部署到 127.0.0.1

配置包含有效用户 webistrano,应该有权访问 /home/webistrano/.subversion/servers

该用户的密码正确。有人可以阐明它可能出了什么问题吗?

puts system('id')使用indeployer.rb返回调试

ls -all /home/webistrano返回:

drwxrwxr-x. 3 webistrano webistrano 4096 Sep 27 16:59 .subversion

ls -all /home/webistrano/.subversion 返回:

这表明每个人都应该完全可读服务器?这是怎么回事?

0 投票
3 回答
404 浏览

ruby - 在 Webistrano 中使用捆绑器、capistrano 部署错误并需要 'bundler/capistrano' 配方

最近,我一直在尝试将 Webistrano 从不使用 bundler 来管理应用程序 gem 的版本升级到使用的版本。为了部署 Rails 应用程序,我们将require 'bundler/capistrano'在配方中使用为应用程序和其他相关步骤(如预编译资产等)加载捆绑程序。但是,一旦将 bundler 与 Gemfile 一起使用来指定和加载适当的 gem 环境,就会require 'bundler/capistrano'引发以下错误:

** 加载阶段配方“捆绑器”

*** 定义一个名为 `install' 的任务会影响具有该名称的现有方法

如果我从配方中排除要求,部署将继续但不使用捆绑器(否bundle exec等)

require 'rvm/capistrano'在尝试使用rvm来管理 ruby​​ 环境时,我也有类似的问题。

关于如何解决这个问题的任何想法?

0 投票
2 回答
583 浏览

capistrano - Webistrano - 如何在部署后清除全局 HTML 缓存

我是 webistrano 的新手,如果这是一件小事,我深表歉意......

我正在使用 webistrano 将 php 代码部署到多个生产服务器,这一切都很好。我的问题是我需要在代码更新后清除缓存服务器(清漆缓存)上的 HTML 缓存。我不知道如何构建将在 webistrano 机器上执行的配方(并将运行将清除缓存的相关 shell 脚本)而不是在每个部署目标机器上执行。

谢谢您的帮助,

亚里夫

0 投票
1 回答
387 浏览

ruby - 在 ubuntu 13.10 上安装 webistrano

我正在尝试在 ubuntu 13.10 上安装带有最新 ruby​​ 软件包的webistrano 。初始配置后,每次我尝试“捆绑”东西时,都会出现以下错误:

当然,我尝试安装较旧的捆绑器

但是无论我安装哪个版本的捆绑程序,它总是在相同的错误消息上失败。

我正处于依赖地狱的中间,这只是其中的一小部分......

0 投票
1 回答
42 浏览

ruby - 根据 ruby​​ 1.9 中其他变量的存在来分配变量

我得到了修复 webistrano 安装的工作,现在我陷入了收到收据的情况,其中以下任务在从 ruby​​ 1.8 更新到 ruby​​ 1.9.3 后中断

我已经确定(通过添加上述日志条目)var_onevar_two保持预期值。例如,当我希望var_one保持我得到以下日志的值时:

** var_one 中的值
*** #<Capistrano::Configuration::Namespaces::Namespace:0x000000032a6040> 的未定义局部变量或方法 `var_two'

第一种情况永远都达不到。脚本总是转到 else 情况——即使在var_one持有字符串时也是如此。

我该如何解决?

0 投票
0 回答
18 浏览

ruby - 如何在 webistrano 中按顺序为每个主机执行完整的任务(不是任务中的命令)?

我正在尝试编写 webistrano 部署配方。配方中的一项任务如下。
我试图找到所有符合条件的进程的 processIds,然后一个一个地杀死每个进程。
我有 3 台服务器(主机)。
现在,任务 kill_jar 正在以下列方式执行:

  1. 从 host1 获取逗号分隔的进程 ID。
  2. 在所有主机上回显这些进程 ID
  3. 杀死每个主机上的每个进程 id (echo)。

我想实现以下顺序:

  1. 任务在 host1 上找到与条件匹配的命令分隔的进程 ID
  2. 回应他们
  3. 用逗号分隔它们
  4. 在host1上一个一个地杀死每个进程。
  5. 对 host2 重复 1 到 4,然后对 host3 重复。

请注意,我无法访问 webistrano 服务器,也无法更新配方。每次我更改某些内容时,我都必须要求系统管理员团队为我做这件事。
我试过in: :sequence 导致脚本错误。
我也试过find_servers_for_task(current_task).each了,但没有运气。另外,我是 webistrano 的绝对初学者。

请提出实现我上面提到的序列的正确方法。