Skip to main content

A CLI to sync codebases and execute commands remotely

Project description

Remote

Code Quality pypi versions license

Work with remote hosts seamlessly Remote uses rsync and ssh to create a seamless working environment from a local directory to remote directories. Most used features are:

  • Remotely execute commands from any sub-directory.
  • Drop into remote interactive sessions.
  • Fire off parallel remote commands on multiple hosts.

Executables and purpose

  • remote-init: set up a local directory to point to a remote directory
  • remote-ignore: set up directories / files to ignore while pushing
  • remote-push: explicitly push local changes remote
  • remote-pull: pull a directory from remote to local
  • remote: execute a command remotely, after first syncing the local tree with the remote tree
  • remote-explain: explain your remote setup, explain what command actually will get run
  • remote-quick: execute a command remotely, without syncing the trees
  • remote-add: add another remote host to the mirror list
  • mremote: execute a remote command on all the hosts, after first syncing the local tree with the remote trees

Changelog

1.4.4

  • add the host labeling in toml config files

1.4.3

  • Fixed rsync bugs

1.4.2

  • Add the possibility to start an ssh tunnel during the remote execution

1.4.1

  • Fail ssh and rsync when password is requested by adding -o BatchMode=yes
  • add -K to rsync ssh command to make it homogenous with ssh
  • Support rsync's --include-from to make exclude overrides possible

1.4.0

  • TOML config support
  • .gitignore files can be used as a source for sync ignore

1.3.8

  • Unit tests
  • Releases with good versions

1.3.7

  • Moving to pypi releases

1.3.6

  • Fix reverse-sync breakage for remote-dirs without trailing /
  • Reverse-sync always, even when remote command fails

1.3.5

  • Support for relative and absolute paths (including leading ~ and /) in remote directory
  • Support for global variables $RSHELL and $RSHELL_OPTS to configure remote shell invocation

1.3.4

  • Support for choice of login shell and shell options for remote host in .remote file
  • Better initialization for mremote screen

1.3.3

  • Fixing a bug in command execution for zsh based shells

1.3.2

  • Fixing signal handling, cleanup of temp files
  • Fixing a bug in inferring verbose mode

1.3.1

  • More comprehensive ignore rule specifications (push, pull, both) for .remoteignore files
  • Command-line argument improvements to remote, remote-push, remote-pull and remote-explain

1.3.0

  • Adding command line flags for remote, remote-push
  • Dropping remote-push-dry since remote-push -n is an equivalent alternative.
  • Improving remote-explain output to include diff status

1.2.7

  • remote-explain supports -c flag to test connection to the remote host

1.2.6

  • Support for remote-explain, a tool to explain your remote setup

1.2.5

  • Support for adding .remote related files to .gitignore

1.2.4

  • More robust parameter parsing

1.2.3

  • Support for initializing environment per remoted directory through .remoteenv file

1.2.2

  • Fail fast when local directory is not setup for remote
  • Support kerberos auth (through ssh -K)

1.2.1

  • New executables: remote-set, remote-host
  • mremote now uses screen

1.2.0

  • Support for multiple-hosts
  • New executables: remote-add and mremote

1.1.3

  • remote-pull: now pulls without syncing the trees
  • remote-quick: when you want to execute a command without syncing the trees

1.1.2

  • More fixes to md5 generation (verified to work on mac and linux)
  • Silent ssh connections for reduced verbosity

1.1.1

  • Robust in finding appropriate md5 utility

1.1

  • Added remote-pull
  • Moved remote-sync to remote-push

1.0

  • First drop

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

remote-exec-1.4.4.tar.gz (25.8 kB view hashes)

Uploaded Source

Built Distribution

remote_exec-1.4.4-py3-none-any.whl (21.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page