Zope 3 的文件系统同步工具。
项目描述
为Zope3提供文件同步
FSSync项目(zope.app.fssync)为ZODB中驻留的Zope3内容提供文件系统同步支持。此包定义了一个基于Web的API,并支持一些标准的zope.app内容类型和标准的安全策略。
此项目建立在更通用的zope.fssync包之上,该包提供对象序列化和反序列化工具。如果您需要一个纯Python API,且与ZODB和Zope3安全机制无关,您应该查看zope.fssync。
FSSync包括一个类似于svn或cvs的命令行客户端。输入
bin/zsync help
以获取可用命令和更多信息。如果您想看到zsync客户端的实际操作,可以运行演示应用程序
bin/demo start
在您的浏览器中打开 https://127.0.0.1:8080/manage 并使用 zsync 作为用户名和密码登录。通过ZMI添加一个包含一些文件的 demo 文件夹。之后,运行命令行客户端进行初始检出
bin/zsync checkout http://zsync:zsync@localhost:8080/demo ./parts/checkout
编辑检出目录中的一个文件并提交更改
bin/zsync commit ./parts/checkout
修改后的文件现在应该可在服务器上使用。
SSH
除了http之外,Zsync现在还支持通过ssh进行通信。ssh URL看起来像
zsync+ssh://user:passwd@host:port/path
zsync协议与HTTP相同,只是在ssh中发送。
在服务器端,ssh服务器可以检查公钥以强制执行安全策略(尽管演示服务器不这么做),并负责将zsync请求传递给Zope,并通过ssh返回响应。
在src/zope/app/fssync/demo_server.py中有一个示例ssh服务器。要使用它,首先确保zope正在运行。然后启动服务器。
sudo bin/demo-ssh-server
这将在端口2200上启动一个示例ssh服务器。为了读取ssh主机密钥,服务器必须以root身份运行。
在另一个终端中使用zsync客户端连接到它
bin/zsync co zsync+ssh://zsync:zsync@localhost:2200/demo parts/co2
这会将示例文件夹检出至parts/co2文件夹。
您应该能够在检出时正常工作。Zsync将使用ssh进行通信,但其他方面将正常工作。
扩展zsync
zsync脚本由buildout.cfg的以下部分生成
[zsync] recipe = zc.recipe.egg eggs = zope.app.fssync entry-points = zsync=zope.app.fssync.main:main
如果您想在您的应用程序中使用zope.app.fssync,您可能需要定义特定于应用程序的序列化和反序列化器。有关更多文档,请参阅zope/app/fssync/fssync.txt
。您可能还需要具有额外依赖项的自己的zsync脚本。只需将必要的eggs添加到项目对应的buildout片段中即可。
更改
3.6
ssh传输现在在特定于应用程序的文件中查找known_hosts,以及正常的known_hosts文件和用户Agent中。如果POSIX,则文件为~/.ssh/fssync_known_hosts;如果是win32,则为~/ssh/fssync_known_hosts。
BUGFIX:ssh传输现在将提示用户是否希望使用未识别的主机密钥。如果他说“是”,它将被添加到fssync known_hosts文件中。如果他说是“否”,则引发异常。
BUGFIX:如果用户的公钥被加密,fssync将提示输入密码。
3.5
添加了-zsync状态命令的-v –verbose开关。默认情况下,详细模式是关闭的。
添加了对提交元数据文件后避免冲突的支持。
添加了“resolved”作为“resolve”命令的别名。
添加了“merge”命令。它允许将一个检出处的更改合并到另一个检出处。
添加了ssh网络传输。客户端现在可以使用zsync+ssh:// URL与服务器通信。
项目详细信息
zope.app.fssync-3.6.0.tar.gz的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 0b8d19c88e164271cc51f2418ef3f604de2a72d0d2da80a083e8e7c440ca332c |
|
MD5 | d62c637bbe3ac50ac7fc17316aef713f |
|
BLAKE2b-256 | fcd48cc68863d1dddd8a7d68b76fc8085d3a069bf6dd12b91016b79146e2b234 |