亚马逊EC2上是否有mercurial托管?

亚马逊EC2上是否有mercurial托管?,mercurial,amazon-s3,amazon-ec2,Mercurial,Amazon S3,Amazon Ec2,我需要能够从mercurial中的标签更新我的ec2实例,当它重置时,这样我的应用程序总是设置在正确的版本 如果能够将我的更改推送到mercurial主机上,并在重置实例时通过ec2网络自动更新实例,那就太好了 我真的不想在同一个实例(甚至是专用实例)上托管mercurial。您想要的是mercurial本机支持使用S3作为数据存储后端,并且不存在这样的代码。您可以找到一个S3网桥来运行(或者一个S3->DAV网桥,您可以将其作为文件系统装载),然后告诉Hg从该虚拟文件系统推拉数据,否则您将需要

我需要能够从mercurial中的标签更新我的ec2实例,当它重置时,这样我的应用程序总是设置在正确的版本

如果能够将我的更改推送到mercurial主机上,并在重置实例时通过ec2网络自动更新实例,那就太好了


我真的不想在同一个实例(甚至是专用实例)上托管mercurial。

您想要的是mercurial本机支持使用S3作为数据存储后端,并且不存在这样的代码。您可以找到一个S3网桥来运行(或者一个S3->DAV网桥,您可以将其作为文件系统装载),然后告诉Hg从该虚拟文件系统推拉数据,否则您将需要一个专用的ec2实例来实际提供数据(您可以按需启动它,但它的延迟非常糟糕,您可能很清楚这一点)

S3有一个名为FUSE的文件系统,但它看起来主要是一个商业产品的驱动程序


(另一方面,根据您的ec2体系结构,并假设您在多个实例上有重叠的正常运行时间,理论上您可以利用Hg的分布式特性,使用现有实例在它们之间传递更改,而无需“根”当然,如果您只有一个实例,那么这是一个非初学者。)

Nick的做法是正确的。我怀疑可以使用mercurial提供的静态http://fallback方法对S3进行只读托管。然后,您可以使用非ec2回购,并使用类似s3sync的东西将.hg目录放在S3上,从中您的ec2节点可以有效地签出。我认为您唯一现实的选择是s3fs,但是您必须关注写入重叠-S3不提供锁定。我查看了其他一些S3文件系统库,但它们几乎都是像iSCSI一样实现的-它们模拟S3中的块设备,可以作为磁盘装载到本地计算机上,但您不能一次装载到多台计算机上。