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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d18415866a16c1e772e6d8fd42219d338ee282766baaf7efb3fd5c08c0a23802
4
- data.tar.gz: 66714ba99c486f0304420784d87fa5856488908b623cb44efc49433f30f46f8f
3
+ metadata.gz: ed291b5ca948c0c9a2b51efdcc2b14655e195c8707770680ec8355aa51195528
4
+ data.tar.gz: d975711e1ef5e5ebe751a21950f1369506f1367ba6af9cadc7a6d84389e836a6
5
5
  SHA512:
6
- metadata.gz: daa2a29c3bc2fd14945045243176c901df9c302934e14cb9ed16da7474715683946c43b384bd250a33bb842a40c8a1da8a5c288f439c3d6aa0fac29010bee463
7
- data.tar.gz: 2a4e34e96fbea9c80285f46a2a86500dd313c550bcf8530fc22bd9a11c2aa6063584dc41764d27ce5f218dec99353260786c667e7ea9c7d773dc3f0cc24d666d
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"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MultiVideoStreaming
4
- VERSION = "1.0.1"
4
+ VERSION = "1.1.0"
5
5
  end
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.1
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: 2023-09-05 00:00:00.000000000 Z
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.0'
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.0'
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.12'
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.12'
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.17'
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.17'
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.0.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: []