跳转到主要内容

remux 允许您并行地在多个远程机器上运行本地项目

项目描述

rmux

rmux 允许您并行地在多个远程机器上运行本地项目。

命令名称来自remote-tmux,因为它允许在多个远程机器上同步复用命令。

最初的目的允许测试在其他平台上的本地项目更改,例如在另一个发行版上运行tox。

用法

# run df locally
rmux df

# close tmux session
exit

# run df on two remote hosts, syncronized windows
HOSTS="node1 node2" rmux df

# run a script downloaded from the web (installs pip)
rmux -w https://bootstrap.pypa.io/get-pip.py

如果未定义HOSTS变量,则工具将默认为本地主机,但它仍然会使用其逻辑执行rsync并使用tmux和ssh运行命令。

工作原理

rmux将通过在当前目录或其父目录中查找.git文件夹来检测当前项目。如果找不到任何.git文件夹,则将跳过rsync部分。

脚本不会rsync.gitignored文件,但它会同步未跟踪的文件。

远程机器上的目标文件夹是 ~/.cache/.rmux/<项目名称>,它也将成为默认目录。

远程用户基于主机名或您的ssh配置。

安装

pip install rmux

由于rmux目前仅是一个纯bash脚本,我使用了pip wheel作为跨平台和易于使用的分发方式。此外,它还允许我轻松升级。

如果您愿意,可以直接下载shell脚本并将其添加到您的路径中。

参见

  • tmux - 终端多路复用器
  • tmux-xpanes - tmux的自动窗口布局,rmux的当前要求。不过,如果您只有一个远程主机,应该也可以避免使用它,只需提出一个功能请求,我可以实现它。
  • direnv - 定义针对当前目录的特定环境变量。如果您想为每个项目使用不同的HOSTS集合,这可以非常有用,并且可以避免在命令行中提及它们。
  • rtox 允许在远程机器上运行tox,这是原始项目。有了rmux,您就不再需要rtox了,您只需使用 rmux tox 而不是 rtox,最大的区别是会话不会自动关闭,并且您现在可以在多个远程主机上运行,而不仅仅是单个主机。

链接

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分发

rmux-1.0.6.tar.gz (456.9 kB 查看哈希值)

上传时间

构建分发

rmux-1.0.6-py2-none-any.whl (10.4 kB 查看哈希值)

上传时间 Python 2

支持者:

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面