diff --git a/src/storage/s3.js b/src/storage/s3.js index 12173e860..c6c80a413 100644 --- a/src/storage/s3.js +++ b/src/storage/s3.js @@ -561,7 +561,7 @@ async function testConfig(apiConfig) { const putParams = { Bucket: apiConfig.bucket, - Key: path.join(apiConfig.prefix, 'cloudron-testfile'), + Key: path.join(apiConfig.prefix, 'snapshot/cloudron-testfile'), Body: 'testcontent' }; @@ -569,9 +569,18 @@ async function testConfig(apiConfig) { const [putError] = await safe(s3.putObject(putParams).promise()); if (putError) throw new BoxError(BoxError.EXTERNAL_ERROR, `Error put object cloudron-testfile. Message: ${putError.message} HTTP Code: ${putError.code}`); + const listParams = { + Bucket: apiConfig.bucket, + Prefix: path.join(apiConfig.prefix, 'snapshot'), + MaxKeys: 1 + }; + + const [listError] = await safe(s3.listObjects(listParams).promise()); + if (listError) throw new BoxError(BoxError.EXTERNAL_ERROR, `Error listing objects. Message: ${listError.message} HTTP Code: ${listError.code}`); + const delParams = { Bucket: apiConfig.bucket, - Key: path.join(apiConfig.prefix, 'cloudron-testfile') + Key: path.join(apiConfig.prefix, 'snapshot/cloudron-testfile') }; const [delError] = await safe(s3.deleteObject(delParams).promise());