小编Pet*_*son的帖子

如何使用Capistrano部署到单个特定服务器

我有一个生产系统,有几个角色的服务器.我想通过部署到该特定服务器来测试新的应用服务器,而无需重新部署到生产中的每个服务器.有没有办法让Capistrano部署到特定的服务器?理想情况下,我希望能够运行类似的东西

cap SERVER=app2.example.com ROLE=app production deploy
Run Code Online (Sandbox Code Playgroud)

如果我只是想部署到app2.example.com.

谢谢!

[更新]我通过执行以下方法尝试了wulong建议的解决方案:

cap HOSTS=app2.server.hostname ROLE=app qa deploy 
Run Code Online (Sandbox Code Playgroud)

但是除了app任务之外,capistrano似乎还在尝试为该服务器上的其他角色执行任务.也许我需要更新我的帽子版本(我正在运行v2.2.0)?

deployment capistrano release-management

56
推荐指数
1
解决办法
3万
查看次数

什么是在ruby中实现平等的正确方法

对于一个简单的类似结构的类:

class Tiger
  attr_accessor :name, :num_stripes
end
Run Code Online (Sandbox Code Playgroud)

什么是正确实现平等,以确保以正确的方式==,===,eql?,等工作,使在很好的集合类游戏的情况下,哈希等.

编辑

另外,当你想根据未暴露在类之外的状态进行比较时,实现相等性的好方法是什么?例如:

class Lady
  attr_accessor :name

  def initialize(age)
    @age = age
  end
end
Run Code Online (Sandbox Code Playgroud)

在这里,我希望我的平等方法考虑到@age,但是Lady并没有将她的年龄暴露给客户.在这种情况下我是否必须使用instance_variable_get?

ruby equality

50
推荐指数
2
解决办法
1万
查看次数

如何最好地在kubernetes集群中运行一次性迁移任务

在将新版本的应用程序部署到Kubernetes集群之前,我想要运行数据库迁移.我希望这些迁移作为Continuous Delivery管道的一部分自动运行.迁移将封装为容器映像.实现这一目标的最佳机制是什么?

解决方案的要求:

  • 能够确定迁移是否失败,以便我们随后不会尝试将新版本的应用程序部署到群集中.
  • 如果迁移失败则放弃 - 不要继续重试.
  • 能够访问日志以诊断失败的迁移.

我曾假设Kubernetes中的Jobs功能会让这很容易,但似乎有一些挑战:

使用"裸舱"会更好吗?如果是这样,那该怎么办?

docker kubernetes

23
推荐指数
2
解决办法
4721
查看次数

18
推荐指数
1
解决办法
970
查看次数

是否可以创建一个'命令行'swf?

我希望能够编写一个可以作为命令行应用程序运行的.swf文件.换句话说,我将能够创建可以与stdin和stdout交互的actionscript类,然后可以直接在命令行中执行.swf.

我怀疑这不可能.任何人都可以证实吗?

编辑: 一些答案指出,使用Flash进行命令行工作可能不是最好的选择.我在大多数情况下都完全同意.我之所以要问这个是因为我想做一些AS3代码生成,并且在运行时内反映AS3类比解析代码或走Asdoc产生的中间XML更容易.我现在正在Ruby中使用XML方法,但是希望有一个更清洁的解决方案!

apache-flex flash actionscript actionscript-3

12
推荐指数
3
解决办法
7218
查看次数

如何在vim中并排查看多个git diff

我希望能够在vim中运行一个打开git diff的命令,并为diff set中的每个文件添加一个选项卡.

所以,例如,如果我在工作树中更改了文件foo.txt和bar.txt,我运行命令,我会看到vim打开两个选项卡.第一个选项卡将包含我的工作树中的foo.txt和存储库中的foo.txt之间的并排差异,第二个选项卡将包含bar.txt的并排差异.

有人有任何想法吗?

git vim diff

10
推荐指数
2
解决办法
4312
查看次数

使用带有默认值的选项哈希作为ruby中的参数是一种很好的干净方法

假设我想要一个像这样调用的方法:

 tiger = create_tiger( :num_stripes => 12, :max_speed => 43.2 )
 tiger.num_stripes # will be 12
Run Code Online (Sandbox Code Playgroud)

其中一些选项具有默认值:

 tiger = create_tiger( :max_speed => 43.2 )
 tiger.num_stripes # will have some default value
Run Code Online (Sandbox Code Playgroud)

在方法实现中实现默认行为的一种很好的惯用ruby方法是什么?

ruby hash

8
推荐指数
4
解决办法
5266
查看次数

memcached是否有类似ORM的包装器

我正在寻找一个ruby gem(或rails插件),它以与ActiveRecord抽象SQL细节相同的方式抽象memcached的细节.我不是在寻找有助于在memcached中缓存ActiveRecord模型的东西.我敢肯定有大约4215颗宝石可以帮助解决这个问题.

理想情况下,我希望能够做到这样的事情:

class Apple < MemcachedModel
# whatever else here
end
Run Code Online (Sandbox Code Playgroud)

然后能够做的事情:

my_apple = Apple.find('some memcached key')
Run Code Online (Sandbox Code Playgroud)

这将在memcached中查找此类的JSON表示并对其进行反序列化.我也许可以做以下事情:

my_apple.color = "red"

# persist changes back to memcached
my_apple.save 

# load any changes from memcached into local model
my_apple.update
Run Code Online (Sandbox Code Playgroud)

似乎有人必须抓住这个痒,并沿着这些线创建一些东西,但每当我谷歌这样的宝石时,我只是不断出现有助于使用memcached缓存AR模型的东西.

ruby memcached

6
推荐指数
1
解决办法
1852
查看次数

如何在ruby中将便捷类方法添加到Singleton类中

假设我有一个像这样的单例类:

class Settings
  include Singleton

  def timeout
    # lazy-load timeout from config file, or whatever
  end
end
Run Code Online (Sandbox Code Playgroud)

现在,如果我想知道使用什么超时,我需要写一些类似的东西:

Settings.instance.timeout
Run Code Online (Sandbox Code Playgroud)

但我宁愿缩短那个

Settings.timeout
Run Code Online (Sandbox Code Playgroud)

实现这项工作的一个显而易见的方法是将Settings的实现修改为:

class Settings
  include Singleton

  def self.timeout
    instance.timeout
  end

  def timeout
    # lazy-load timeout from config file, or whatever
  end
end
Run Code Online (Sandbox Code Playgroud)

这是有效的,但为每个实例方法手动编写一个类方法会相当繁琐.这是红宝石,必须有一个聪明聪明的动态方式来做到这一点.

ruby singleton dynamic

5
推荐指数
1
解决办法
1083
查看次数

Xcode Instruments - 启用NSZombie检测?它在哪里?

我看过这个视频 http://www.markj.net/iphone-memory-debug-nszombie/

这家伙在仪器内部显示了一个名为Enable NSZombie Detection on Allocations的选项,但是我的仪器没有显示这个选项.这个家伙的视频是使用一年前版本的乐器完成的,我正在使用Xcode 3.2.5.你们知道这个选项现在在哪里吗?如何为iPhone应用程序启用它?

谢谢

xcode memory-management instruments ios

4
推荐指数
3
解决办法
1万
查看次数