#remote #call #build #key-file #cli

app rust-call

让远程开发更加优雅

6 个版本

0.3.0 2021 年 8 月 31 日
0.2.0 2021 年 6 月 14 日
0.1.3 2021 年 5 月 7 日

#key-file 中排名 28

每月下载量 21

Apache-2.0

25KB
632 行代码(不含注释)

目录

Call:让远程开发更加优雅

License

Build Status


它能做什么

Call 是一个易于使用的远程开发命令工具。它可以帮助您轻松且优雅地构建远程开发。它可以与 makefilejustfile 一起使用。

Call 提供了三种方式。

  • openssh 无密码 SSH 登录

  • password 带密码 SSH 登录

  • keypair 使用私钥文件 SSH 登录

它是如何工作的(现在)

已实现的当前功能

  • 步骤 1:将数据同步到指定服务器

  • 步骤 2:在远程服务器上执行命令

架构

快速开始

开始您的第一个项目非常简单。

步骤 1:安装 call 命令工具

cargo install --git  https://github.com/bingryan/call.git

或者

cargo install rust-call

步骤 2:初始化 call

cd your_project_homepage
call i

your_project_homepage 中将会有一个 call.yml 文件。然后您可以配置 call.yml。例如

call:
  config:
    active:
      openssh:
        - dev  # active server label
    runner: make  # make -> makefile , just -> justfile
  mapping:
    src: . # current dir
    dest: ~/workspace/call  # remote path
    exclude: # Ignored directories in .gitignore will also be ignored
      - ./target
      - README.md
  server:
    openssh:
      dev: # label for openssh server
        host:
          - 192.168.2.49 # multiple
        port: 22
        authentication_type: openssh
        username: rust # remote server username


步骤 3:运行 call

如果您的项目有 makefile,将 make xxx 替换为 call xxx 命令。

如果您的项目有 justfile,将 just xxx 替换为 call xxx 命令。

要求

  • openssh (rsync)
  • password (rsync,sshpass)
  • keypair (rsync)
# Debian/Ubuntu
$ sudo apt-get install rsync
$ sudo apt-get install sshpass

# Red Hat
$ sudo yum install rsync
$ sudo yum install sshpass

# Arch Linux
$ sudo pacman -S rsync
$ sudo pacman -S sshpass

# MacOS
$ brew install rsync
$ brew install http://git.io/sshpass.rb(if notwork, copy raw content to `sshpass.rb`: brew install sshpass.rb)

待办事项

  • Call 服务器(中继服务器):能够与客户端协调以建立连接的中继服务器(使用其他端口转发工具)。
  • 默认模板(将模板.yml 放置在 ~/.call/template.yml 下,并在运行时直接复制:call i)

教程

教程文档

贡献

欢迎贡献者加入此项目。请查看 CONTRIBUTING 了解如何为此项目做出贡献。

依赖关系

~7–17MB
~200K SLoC