Streaming Google storage upload
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
Hướng nghiên cứu
Đọc các hạn chế được mô tả trong google-cloud-ruby issue #1997 và kiểm tra wrapper gcs_stream_upload được liên kết, sử dụng các ví dụ streaming của nó làm điểm bắt đầu. Công việc được xem là hoàn tất khi các lượt tải lên Google storage có thể ghi dữ liệu được truyền theo luồng mà không giữ toàn bộ nội dung trong bộ nhớ, bao gồm cả dữ liệu được tạo ra thông qua IO.copy_stream.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
I am trying to solve the case of uploading files in a streaming fashion without keeping the full contents in memory
I have previously implemented the same feature in https://github.com/aws/aws-sdk-ruby/pull/1711
As identified in https://github.com/googleapis/google-cloud-ruby/issues/1997
There are some limitations in google-api-client which hard codes the use of the content length header
I have written a minimal wrapper library that monkey patches it here which should serve as a good source of inspiration: https://github.com/Fonsan/gcs_stream_upload
require 'gcs_stream_upload'
storage = Google::Cloud::Storage.new(timeout: 5 * 60)
bucket = storage.bucket('bucket')
gcs_stream_upload = GCSStreamUpload.new(bucket)
gcs_stream_upload.upload('object') do |io|
IO.copy_stream(IO.popen('yes | head -n 10'), io)
end
# => Written "y\n" * 10
gcs_stream_upload.upload('object') do |io|
io << 'data'
io << 'dat2'
end
# => Written "datadat2"
- Ngôn ngữ chính
- Ruby
- Star
- 2.9k
- Fork
- 888
- Merge trung bình
- 1 ngày 14 giờ
- Pull request đã merge (30 ngày)
- 258
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của googleapis/google-api-ruby-client
-
Please Drop ruby 3.2 supportCó thể đã có người làm @quartzmo đã nhận 11 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
googleapis/google-api-ruby-client#28001 · 6 bình luận · 24 reaction · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
google-apis-core: ClientSecrets#to_json raises NameErrorCó thể đã có người làm @torreypayne đã nhận 21 ngày trước. Đang mở
googleapis/google-api-ruby-client#27757 · 2 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
allow setting the faraday adapter to useCó thể đã có người làm @quartzmo đã nhận 4 ngày trước. Đang mởtype: feature request
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 55/100
googleapis/google-api-ruby-client#27339 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
priority: p3 type: feature request
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 45/100
googleapis/google-api-ruby-client#906 · 1 bình luận · 3 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của googleapis/google-api-ruby-client
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
scanaislop/aislop#482 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
-
ETQ admin, le select de condition d'une annotation répétable liste les champs publics deux foisĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
demarche-numerique/demarche.numerique.gouv.fr#14301 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Wrong permissions for sqliteĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
voxpupuli/puppet-powerdns#251 ·