labgrid-project / labgrid-project/labgrid

add option to use `scp` instead of `rsync` in `ManagedFile` for syncing files to minimal targets

Open
#1,399 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
528
Forks
278
Avg merge
2d 19h
Merged PRs (30d)
4

Description

Some embedded boards only have a minimal system only with core utilities available. So rsync cannot be used to sync files with them. But if there is ssh access (openssh, dropbear, ..) it is more likely that they have sftp implemented.

I am proposing to replace the rsync call (here) with scp or at least give the option to choose.

It can work in combination with providing ssh base args, as long as they all are converted to the config syntax with -o opt=val, e.g. -x becomes -o ForwardX11=no and so on.

an initial implementation can be found here: https://github.com/flxzt/labgrid/tree/ssh-put-file-scp

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in labgrid/util/ssh.py at the rsync call around line 325, then review the initial implementation on the ssh-put-file-scp branch. Determine how the scp choice and SSH base arguments should be exposed, and confirm that ManagedFile can sync to minimal embedded targets without requiring rsync.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
embedded-iot
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.