multi_video_streaming 1.0.1 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/multi_video_streaming/utils/s3/complete_multipart_upload.rb +25 -0
- data/lib/multi_video_streaming/utils/s3/create_multipart_upload.rb +23 -0
- data/lib/multi_video_streaming/utils/s3/generate_presign_part_url.rb +25 -0
- data/lib/multi_video_streaming/utils.rb +3 -0
- data/lib/multi_video_streaming/version.rb +1 -1
- metadata +72 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ed291b5ca948c0c9a2b51efdcc2b14655e195c8707770680ec8355aa51195528
|
4
|
+
data.tar.gz: d975711e1ef5e5ebe751a21950f1369506f1367ba6af9cadc7a6d84389e836a6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 987978a9322b7cfcf5bd056d6f84c509a3d7a8d96a3eaea451b1af1b8860689e600042348a0dbd92093d2f0f23a32a86db9560f4be50ea8b8819e8a6bde6e99c
|
7
|
+
data.tar.gz: 2dca3fbac80a4c6ffe011a49077b39dddd0de6ac7225216eb6cd52895b7b5f51e1db59c903f6d3ca25e989bf0efb4308e8490f5766a95d1b01385557e36b8ed7
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MultiVideoStreaming
|
4
|
+
module Utils
|
5
|
+
module S3
|
6
|
+
def self.complete_multipart_upload(bucket:, key:, upload_id:, multipart_upload:)
|
7
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('bucket') if bucket.nil?
|
8
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('key') if key.nil?
|
9
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('upload_id') if upload_id.nil?
|
10
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('multipart_upload') if multipart_upload.nil?
|
11
|
+
|
12
|
+
s3_client = Aws::S3::Client.new(
|
13
|
+
region: ENV['AWS_REGION'],
|
14
|
+
)
|
15
|
+
|
16
|
+
s3_client.complete_multipart_upload(
|
17
|
+
bucket:,
|
18
|
+
key:,
|
19
|
+
upload_id:,
|
20
|
+
multipart_upload:
|
21
|
+
)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MultiVideoStreaming
|
4
|
+
module Utils
|
5
|
+
module S3
|
6
|
+
def self.create_multipart_upload(bucket:, key:, content_type: )
|
7
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('bucket') if bucket.nil?
|
8
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('key') if key.nil?
|
9
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('content_type') if content_type.nil?
|
10
|
+
|
11
|
+
s3_client = Aws::S3::Client.new(
|
12
|
+
region: ENV['AWS_REGION'],
|
13
|
+
)
|
14
|
+
|
15
|
+
s3_client.create_multipart_upload(
|
16
|
+
bucket:,
|
17
|
+
key:,
|
18
|
+
content_type:
|
19
|
+
)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module MultiVideoStreaming
|
4
|
+
module Utils
|
5
|
+
module S3
|
6
|
+
def self.generate_presign_part_url(upload_id:, bucket:, part_number:, key:, expires_in:)
|
7
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('upload_id') if upload_id.nil?
|
8
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('part_number') if part_number.nil?
|
9
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('bucket') if bucket.nil?
|
10
|
+
raise MultiVideoStreaming::Errors::MissingParam.new('key') if key.nil?
|
11
|
+
|
12
|
+
signer = Aws::S3::Presigner.new
|
13
|
+
|
14
|
+
signer.presigned_url(
|
15
|
+
:upload_part,
|
16
|
+
bucket:,
|
17
|
+
key:,
|
18
|
+
upload_id:,
|
19
|
+
part_number:,
|
20
|
+
expires_in:
|
21
|
+
)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -1,3 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "multi_video_streaming/utils/s3/generate_presign_url"
|
4
|
+
require "multi_video_streaming/utils/s3/create_multipart_upload"
|
5
|
+
require "multi_video_streaming/utils/s3/generate_presign_part_url"
|
6
|
+
require "multi_video_streaming/utils/s3/complete_multipart_upload"
|
metadata
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: multi_video_streaming
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Henrique Schmeller
|
8
8
|
- Gustavo Voigt
|
9
9
|
- Matheus Mazepa
|
10
|
-
autorequire:
|
10
|
+
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2024-12-09 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rspec
|
@@ -18,42 +18,56 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - "~>"
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: '3.
|
21
|
+
version: '3.13'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
26
|
- - "~>"
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
version: '3.
|
28
|
+
version: '3.13'
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
30
|
name: faker
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
32
32
|
requirements:
|
33
33
|
- - "~>"
|
34
34
|
- !ruby/object:Gem::Version
|
35
|
-
version: '2
|
35
|
+
version: '3.2'
|
36
36
|
type: :development
|
37
37
|
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
40
|
- - "~>"
|
41
41
|
- !ruby/object:Gem::Version
|
42
|
-
version: '2
|
42
|
+
version: '3.2'
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
44
|
name: simplecov
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
47
|
- - "~>"
|
48
48
|
- !ruby/object:Gem::Version
|
49
|
-
version: '0.
|
49
|
+
version: '0.22'
|
50
50
|
type: :development
|
51
51
|
prerelease: false
|
52
52
|
version_requirements: !ruby/object:Gem::Requirement
|
53
53
|
requirements:
|
54
54
|
- - "~>"
|
55
55
|
- !ruby/object:Gem::Version
|
56
|
-
version: '0.
|
56
|
+
version: '0.22'
|
57
|
+
- !ruby/object:Gem::Dependency
|
58
|
+
name: byebug
|
59
|
+
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - "~>"
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '11.1'
|
64
|
+
type: :development
|
65
|
+
prerelease: false
|
66
|
+
version_requirements: !ruby/object:Gem::Requirement
|
67
|
+
requirements:
|
68
|
+
- - "~>"
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '11.1'
|
57
71
|
- !ruby/object:Gem::Dependency
|
58
72
|
name: aws-sdk-s3
|
59
73
|
requirement: !ruby/object:Gem::Requirement
|
@@ -68,8 +82,50 @@ dependencies:
|
|
68
82
|
- - '='
|
69
83
|
- !ruby/object:Gem::Version
|
70
84
|
version: 1.96.2
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: nokogiri
|
87
|
+
requirement: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - "~>"
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: '1.16'
|
92
|
+
type: :runtime
|
93
|
+
prerelease: false
|
94
|
+
version_requirements: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
96
|
+
- - "~>"
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '1.16'
|
99
|
+
- !ruby/object:Gem::Dependency
|
100
|
+
name: rexml
|
101
|
+
requirement: !ruby/object:Gem::Requirement
|
102
|
+
requirements:
|
103
|
+
- - "~>"
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: '3.2'
|
106
|
+
type: :runtime
|
107
|
+
prerelease: false
|
108
|
+
version_requirements: !ruby/object:Gem::Requirement
|
109
|
+
requirements:
|
110
|
+
- - "~>"
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: '3.2'
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: base64
|
115
|
+
requirement: !ruby/object:Gem::Requirement
|
116
|
+
requirements:
|
117
|
+
- - "~>"
|
118
|
+
- !ruby/object:Gem::Version
|
119
|
+
version: 0.1.0
|
120
|
+
type: :runtime
|
121
|
+
prerelease: false
|
122
|
+
version_requirements: !ruby/object:Gem::Requirement
|
123
|
+
requirements:
|
124
|
+
- - "~>"
|
125
|
+
- !ruby/object:Gem::Version
|
126
|
+
version: 0.1.0
|
71
127
|
description: A ruby gem for multiples streaming video services
|
72
|
-
email:
|
128
|
+
email:
|
73
129
|
executables: []
|
74
130
|
extensions: []
|
75
131
|
extra_rdoc_files: []
|
@@ -100,6 +156,9 @@ files:
|
|
100
156
|
- lib/multi_video_streaming/services.rb
|
101
157
|
- lib/multi_video_streaming/services/https.rb
|
102
158
|
- lib/multi_video_streaming/utils.rb
|
159
|
+
- lib/multi_video_streaming/utils/s3/complete_multipart_upload.rb
|
160
|
+
- lib/multi_video_streaming/utils/s3/create_multipart_upload.rb
|
161
|
+
- lib/multi_video_streaming/utils/s3/generate_presign_part_url.rb
|
103
162
|
- lib/multi_video_streaming/utils/s3/generate_presign_url.rb
|
104
163
|
- lib/multi_video_streaming/validators.rb
|
105
164
|
- lib/multi_video_streaming/validators/platform_name_validator.rb
|
@@ -111,7 +170,7 @@ files:
|
|
111
170
|
homepage: https://rubygems.org/gems/multi_video_streaming
|
112
171
|
licenses: []
|
113
172
|
metadata: {}
|
114
|
-
post_install_message:
|
173
|
+
post_install_message:
|
115
174
|
rdoc_options: []
|
116
175
|
require_paths:
|
117
176
|
- lib
|
@@ -126,8 +185,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
126
185
|
- !ruby/object:Gem::Version
|
127
186
|
version: '0'
|
128
187
|
requirements: []
|
129
|
-
rubygems_version: 3.
|
130
|
-
signing_key:
|
188
|
+
rubygems_version: 3.5.9
|
189
|
+
signing_key:
|
131
190
|
specification_version: 4
|
132
191
|
summary: multi_video_streaming
|
133
192
|
test_files: []
|