Comments (6)
Hi,
Thanks for your suggestion. I will look into how to make this possible. Probably starting with scp.
from rome.
@chrispcampbell so this is more tricky than I though as it requires to support listing as well which does not come out of the box with scp.
So there is really 2 alternatives here:
- write an scp client that supports so ( I think this might be interesting but an uphill battle)
- treat any error from scp while listing as "file not found"
from rome.
@blender Thanks for looking into this. Yeah, I'm not sure there's a way to list via scp
. However, rsync
does support this, so maybe that would be a better option? For example:
# List all files in a directory
% rsync --list-only user@hostname:/some/dir/
-rwxrwxrwx 1,081 2018/01/03 18:26:23 one.txt
-rwxrwxrwx 1,081 2018/01/03 18:26:23 two.txt
# Test presence of a certain file (when present, error code is zero)
% rsync --list-only user@hostname:/some/dir/one.txt
-rwxrwxrwx 1,081 2018/01/03 18:26:23 one.txt
% echo $?
0
# Check for another file that's not present (error code is non-zero)
% rsync --list-only user@hostname:/some/dir/three.txt
rsync: link_stat "/some/dir/three.txt" failed: No such file or directory (2)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1708) [Receiver=3.1.1]
% echo $?
23
from rome.
It's probably easier with rsync
, but at the end of the day it's still hard to tell if something went wrong while running the command (scp, or rsych) or if the file is actually missing.
I've done more exploration around scp so it'll try with that somehow.
My plan so far is to make remote caches mutually exclusive for now. This means you can't have a remote cache on S3 and an scp cache.
In the mean time, if you can mount the scp directory via FUSE, rome can use it as local
cache and all operations are supported. I know of people using dropbox as local cache...
from rome.
@chrispcampbell Thanks to @BalestraPatrick you can now use whatever backend you want
from rome.
You can try the pre-release at: https://github.com/blender/Rome/releases/tag/v0.22.0.59
from rome.
Related Issues (20)
- Xcode version specific upload/download HOT 4
- Concurrent downloads for remote cache HOT 1
- Nexus as example engine HOT 4
- [Question] Framework produces both static and dynamic output HOT 4
- Losing debug capability when using cached builds downloaded by Rome HOT 2
- Static folder isn't uploaded to remote server on Xcode 12 HOT 4
- Rome won't upload all downstream re-built frameworks HOT 3
- Rome sometimes printing partial output HOT 1
- Rome not failing when engine exit code is not zero HOT 1
- Issues running Rome with --no-skip-current HOT 6
- Needs to be updated to support XCFrameworks. HOT 13
- When using currentMap its not possible to reuse the generated binaries HOT 3
- Rome crashes when downloading dependencies HOT 1
- Skip bcsymbolmaps and dsyms when uploading/downloading a framework HOT 4
- Issues with Rome for xcframeworks HOT 24
- Failed to install latest ROME in MAC HOT 1
- using rome download --concurrently with --use-xcframeworks leads to io error: openBinaryFile: resource busy (file is locked)
- Add Rome arm64 release artifact HOT 3
- Error if carthage cache and rome cache have a file and directory with the same name
- Build failure with ghc 9.6.2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rome.