File tree Expand file tree Collapse file tree 2 files changed +17
-8
lines changed
Expand file tree Collapse file tree 2 files changed +17
-8
lines changed Original file line number Diff line number Diff line change 1+ ## 2.0.2
2+
3+ ### [ Fixed]
4+
5+ * ` ProxyStorage ` : le test d'existence d'un objet S3 se fait via la lecture du premier octet (le fonctionnement via préfixe n'est pas fiable).
6+
17## 2.0.0
28
39### [ Fixed]
Original file line number Diff line number Diff line change @@ -99,6 +99,7 @@ my $SWIFT_TOKEN = undef;
9999# ## S3
100100my $S3_HOST = undef ;
101101my $S3 = undef ;
102+ my $S3CLIENT = undef ;
102103
103104# ###################################################################################################
104105# Group: Controls methods #
@@ -216,6 +217,13 @@ sub checkEnvironmentVariables {
216217 aws_secret_access_key => $ENV {ROK4_S3_SECRETKEY },
217218 vendor => $S3_VENDOR
218219 );
220+
221+ $S3CLIENT = Net::Amazon::S3::Client-> new (
222+ host => $S3_HOST ,
223+ aws_access_key_id => $ENV {ROK4_S3_KEY },
224+ aws_secret_access_key => $ENV {ROK4_S3_SECRETKEY },
225+ vendor => $S3_VENDOR
226+ );
219227 }
220228
221229 return TRUE;
@@ -916,15 +924,10 @@ sub isPresent {
916924 return FALSE;
917925 }
918926
919- my $result = $S3 -> list_bucket({
920- bucket => $bucketName ,
921- prefix => $objectName
922- });
927+ my $object = $S3CLIENT -> bucket( name => $bucketName )-> object( key => $objectName );
923928
924- if (! defined $result ) {
925- ERROR(sprintf " Cannot request S3 storage : %s (%s )" , $S3 -> errstr, $S3 -> err);
926- return FALSE;
927- } elsif (scalar (@{$result -> {keys }} == 0)) {
929+ eval { $object -> range (" bytes=0-1" )-> get; };
930+ if ($@ ) {
928931 return FALSE;
929932 } else {
930933 return TRUE;
You can’t perform that action at this time.
0 commit comments