porky_lib 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/porky_lib/file_service.rb +18 -0
- data/lib/porky_lib/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8f7a8b165ff0aea52419016bda857aa54eed937a
|
4
|
+
data.tar.gz: 42e0ecf5da4705ec06d4caca5ad5c0ac0b8b4b28
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6eb4d547ffe82efea3a1689e725c14fa6e2493e5fc3a955884f7c6a327f3b5b7eb7e7d0c9c9f2fbc5132de532fc11582aaf6682da8cbb688f5751c4f235565cd
|
7
|
+
data.tar.gz: d529b67755e6dec6724e8d9cda9323328a7e17f6e06eac468a47f8f77233e3ddc1e8a03f955e45a18eae0b8d9e16818e07f65ed6103dbb59e5dcc6453f719b02
|
data/Gemfile.lock
CHANGED
@@ -43,6 +43,24 @@ class PorkyLib::FileService
|
|
43
43
|
file_key
|
44
44
|
end
|
45
45
|
|
46
|
+
def overwrite_file(file, file_key, bucket_name, key_id, options = {})
|
47
|
+
raise FileServiceError, 'Invalid input. One or more input values is nil' if input_invalid?(file, bucket_name, key_id)
|
48
|
+
raise FileServiceError, 'Invalid input. file_key cannot be nil if overwriting an existing file' if file_key.nil?
|
49
|
+
raise FileSizeTooLargeError, "File size is larger than maximum allowed size of #{max_file_size}" if file_size_invalid?(file)
|
50
|
+
|
51
|
+
data = file_data(file)
|
52
|
+
tempfile = encrypt_file_contents(data, key_id, file_key)
|
53
|
+
|
54
|
+
begin
|
55
|
+
perform_upload(bucket_name, file_key, tempfile, options)
|
56
|
+
rescue Aws::Errors::ServiceError => e
|
57
|
+
raise FileServiceError, "Attempt to upload a file to S3 failed.\n#{e.message}"
|
58
|
+
end
|
59
|
+
|
60
|
+
# Remove tempfile from disk
|
61
|
+
tempfile.unlink
|
62
|
+
end
|
63
|
+
|
46
64
|
private
|
47
65
|
|
48
66
|
def input_invalid?(file, bucket_name, key_id)
|
data/lib/porky_lib/version.rb
CHANGED