TopGit theo dõi SYSTRAN/storages trên GitHub, đã đạt 3 sao.
Tóm tắt dựng từ metadata GitHub của chính dự án — chưa có bài review TopGit. Trang sẽ tự động cập nhật khi bài review đầy đủ được xuất bản.
VÌ SAO CHƯA CÓ REVIEW
TopGit viết bài đầy đủ cho repo có nhiều sao nhất và được yêu cầu nhiều nhất. Trang này là snapshot trong thời gian chờ — xem README gốc ở tab READ ME.
This installs the package systran-storages and command line utility systran-storages-cli allowing to easily test the connections to the different services.
Features
For each service, the library provides the following functions:
get_file(remote_path, local_path): download a remote file to a local file. If the file is already present (based on checksum and/or date and/or file size), the local file is not modified.
get_directory(remote_path, local_path): recursively download all the files from a given directory.
stream(remote_path, buffer_size=1024): stream the content of the file through a generator function in buffer_size packets. If the service does not support streaming, file is first downloaded locally to a temporary directory then streamed.
push(local_path, remote_path): push a local file to a remote location
mkdir(local_path, remote_path): create a remote directory
listdir(remote_path, recursive=False): list of the files and directory at the remote_path location. Returns dictionary where keys are the file/directory name and values are stat of files/directories.
delete(remote_path, recursive=False): delete a file or a directory
rename(remote_path, new_remote_path): rename a remote_file
stat(remote_path): statistic on file or directory - returns {'is_dir': True} for directory, and {'size': SIZE, 'last_modified': TIMESTAMP} for files
exists(remote_path): check if a remote file or directory exists
Configuration
Configuration of the services is done with a JSON dictionary: {"key1": DEF1, "key2": DEF2, ..., "keyN": DEFN}, where key1...keyN are the identifiers of each storage, and DEF1...DEFN their configuration.
Configurations DEFI are JSON dictionary with following fields:
{
"description": "description of the storage (optional)",
"type": "local|ssh|s3|swift|http",
[STORAGE_OPTIONS]
}
The dictionary is passed to the StorageClient constructor:
from systran_storages import StorageClient
client = StorageClient(services)
systran_storages/bin/storages_cli.py gives a comprehensive usage example.
Usage
The different services are method of the client object where remote_path is a string in the format storage:path:
storage is the identifier of the storage as defined in the configuration dictionary
path is a path relative to the storage referenced by storage
Paths use / delimiter. Path starts with / and no relative path accessor like ., .. are supported. For the storages with actual directory structure (S3, Swift, ...), a hierarchical file organization is simulated.
Services
Local
Type of the service is local.
Storage options:
(optional, default '/') basedir: defines the base directory where files are stored.
SSH
Type of the service is ssh.
Storage options:
(required) server: name of IP of the remote server
(option, default 22) port: name of the port to connect to
(required) user: login to connect with on the server
(optional) password: user password, preferably use pkey
(optional) pkey: private key used to connect on the service. The value does not include header (-----BEGIN RSA PRIVATE KEY-----) and tail (-----END RSA PRIVATE KEY-----)
(optional, default user home) basedir: defines the base directory where files are stored.
S3
Type of the service is s3.
Storage options:
(required) bucket_name
(required) access_key_id
(required) secret_access_key
(optional) region_name
(optional) assume_role: arn of assume_role
(optional) transfer_config: additional transfer configuration parameters as defined here: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/customizations/s3.html.
Swift
Type of the service is swift.
Storage options:
(required) container_name
(optional) auth_config: if provided, defines the configuration for authentifying to the Open Stack service (https://docs.openstack.org/python-swiftclient/latest/service-api.html#authentication).
Trang TopGit này là một snapshot — tab "Readme" hiển thị nguyên văn README của repo (đã bỏ link, giữ ảnh). Repo GitHub ở github.com/SYSTRAN/storages là nguồn chính thức.
SYSTRAN/storages có bao nhiêu sao?
SYSTRAN/storages có 3 sao GitHub — tải lại trang để xem số mới nhất, hoặc xem trực tiếp github.com/SYSTRAN/storages. TopGit phản chiếu số sao của GitHub nhưng không cam kết đến từng phút.
SYSTRAN/storages có tag gì không?
Bản đồng bộ chưa ghi nhận topic GitHub nào cho SYSTRAN/storages. GitHub topics hiển thị ở thanh bên phải trang repo — đó là nơi đáng kiểm tra nhất.
SYSTRAN/storages có website riêng không?
TopGit chưa ghi nhận URL trang chủ cho SYSTRAN/storages. Phần README ở tab phía trên thường có link demo, hoặc xem mô tả GitHub của repo.
SYSTRAN/storages còn đang phát triển không?
Commit gần nhất trên SYSTRAN/storages là 6 tháng trước (theo timestamp GitHub). Repo có 11 fork — một chỉ báo về mức độ quan tâm của cộng đồng.
SYSTRAN/storages dùng license gì?
SYSTRAN/storages phát hành theo license MIT. Nên mở file LICENSE trên GitHub để xác nhận — license metadata đôi khi lệch với thực tế dự án.
SYSTRAN/storages viết bằng ngôn ngữ gì?
SYSTRAN/storages chủ yếu viết bằng Python. Trường "language" của GitHub dựa trên phần lớn byte ở nhánh mặc định.
Đọc đầy đủ README ở tab phía trên.
storages có đáng để bạn bỏ thời gian?
ChatGPT, Claude và Perplexity đều đọc được trang này. Hỏi thử xem họ nghĩ gì về storages.