Skip to content

implement unix domain (ipc) socket support#7519

Closed
ThomasWaldmann wants to merge 4 commits intoborgbackup:masterfrom
ThomasWaldmann:serve-socket
Closed

implement unix domain (ipc) socket support#7519
ThomasWaldmann wants to merge 4 commits intoborgbackup:masterfrom
ThomasWaldmann:serve-socket

Conversation

@ThomasWaldmann
Copy link
Member

@ThomasWaldmann ThomasWaldmann commented Apr 11, 2023

borg serve  --socket=/path/to/repo/socket      # server (listening) side
borg --repo socket:///path/to/repo create ...  # client side

fixes #6183.

server (listening) side: borg serve --socket=/path/to/repo/socket

client side: borg -r socket:///path/to/repo create ...
@ThomasWaldmann
Copy link
Member Author

ThomasWaldmann commented Apr 11, 2023

TODO / issues:

  • server side log output does not go over the socket (socket is bidi, but just 2 channels total. ssh is 3 channels and has separate stderr).
  • --socket wants the socket file path, socket:// URL wants the repo directory path. "socket" must be in repo directory.
  • add more tests

@codecov-commenter
Copy link

codecov-commenter commented Apr 11, 2023

Codecov Report

Merging #7519 (5d46220) into master (1e1c922) will decrease coverage by 0.15%.
The diff coverage is 48.14%.

📣 This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more

@@            Coverage Diff             @@
##           master    #7519      +/-   ##
==========================================
- Coverage   83.87%   83.72%   -0.15%     
==========================================
  Files          67       67              
  Lines       11817    11853      +36     
  Branches     2155     2162       +7     
==========================================
+ Hits         9911     9924      +13     
- Misses       1332     1352      +20     
- Partials      574      577       +3     
Impacted Files Coverage Δ
src/borg/remote.py 78.01% <36.36%> (-2.94%) ⬇️
src/borg/archiver/_common.py 89.72% <100.00%> (ø)
src/borg/archiver/serve_cmd.py 100.00% <100.00%> (ø)
src/borg/helpers/parseformat.py 90.82% <100.00%> (+0.08%) ⬆️

... and 1 file with indirect coverage changes

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

for ssh:// that is one connection

for socket:// it can be many connections (one after the other)
@ThomasWaldmann
Copy link
Member Author

see #7615

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add UNIX domain socket transport

2 participants