1
1
#! /usr/bin/env bash
2
2
3
3
get_object () {
4
+ record_command " get-object" " client:$1 "
4
5
if [ $# -ne 4 ]; then
5
6
log 2 " get object command requires command type, bucket, key, destination"
6
7
return 1
7
8
fi
8
9
local exit_code=0
9
10
local error
10
11
if [[ $1 == ' s3' ]]; then
11
- error =$( aws --no-verify-ssl s3 mv " s3://$2 /$3 " " $4 " 2>&1 ) || exit_code=$?
12
+ get_object_error =$( aws --no-verify-ssl s3 mv " s3://$2 /$3 " " $4 " 2>&1 ) || exit_code=$?
12
13
elif [[ $1 == ' s3api' ]] || [[ $1 == ' aws' ]]; then
13
- error =$( aws --no-verify-ssl s3api get-object --bucket " $2 " --key " $3 " " $4 " 2>&1 ) || exit_code=$?
14
+ get_object_error =$( aws --no-verify-ssl s3api get-object --bucket " $2 " --key " $3 " " $4 " 2>&1 ) || exit_code=$?
14
15
elif [[ $1 == ' s3cmd' ]]; then
15
- error =$( s3cmd " ${S3CMD_OPTS[@]} " --no-check-certificate get " s3://$2 /$3 " " $4 " 2>&1 ) || exit_code=$?
16
+ get_object_error =$( s3cmd " ${S3CMD_OPTS[@]} " --no-check-certificate get " s3://$2 /$3 " " $4 " 2>&1 ) || exit_code=$?
16
17
elif [[ $1 == ' mc' ]]; then
17
- error =$( mc --insecure get " $MC_ALIAS /$2 /$3 " " $4 " 2>&1 ) || exit_code=$?
18
+ get_object_error =$( mc --insecure get " $MC_ALIAS /$2 /$3 " " $4 " 2>&1 ) || exit_code=$?
18
19
else
19
20
log 2 " 'get object' command not implemented for '$1 '"
20
21
return 1
21
22
fi
22
23
log 5 " get object exit code: $exit_code "
23
24
if [ $exit_code -ne 0 ]; then
24
- log 2 " error getting object: $error "
25
+ log 2 " error getting object: $get_object_error "
26
+ export get_object_error
25
27
return 1
26
28
fi
27
29
return 0
28
30
}
29
31
30
32
get_object_with_range () {
33
+ record_command " get-object" " client:s3api"
31
34
if [[ $# -ne 4 ]]; then
32
35
log 2 " 'get object with range' requires bucket, key, range, outfile"
33
36
return 1
@@ -41,6 +44,7 @@ get_object_with_range() {
41
44
}
42
45
43
46
get_object_with_user () {
47
+ record_command " get-object" " client:$1 "
44
48
if [ $# -ne 6 ]; then
45
49
log 2 " 'get object with user' command requires command type, bucket, key, save location, aws ID, aws secret key"
46
50
return 1
0 commit comments