Skip to content

Commit 8098b45

Browse files
committed
fix errors when some specific endpoints were configured (like localstack dns name)
1 parent 6c16f07 commit 8098b45

File tree

2 files changed

+6
-18
lines changed

2 files changed

+6
-18
lines changed

docker-compose.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
version: "2"
1+
version: "2.1"
22

33
services:
44
app:

main.go

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -311,30 +311,22 @@ func awss3(w http.ResponseWriter, r *http.Request) {
311311
}
312312

313313
func s3get(backet, key string) (*s3.GetObjectOutput, error) {
314-
sess, err := awsSession()
315-
if err != nil {
316-
return nil, err
317-
}
318314
req := &s3.GetObjectInput{
319315
Bucket: aws.String(backet),
320316
Key: aws.String(key),
321317
}
322-
return s3.New(sess).GetObject(req)
318+
return s3.New(awsSession()).GetObject(req)
323319
}
324320

325321
func s3listFiles(w http.ResponseWriter, r *http.Request, backet, key string) {
326-
sess, serr := awsSession()
327-
if serr != nil {
328-
http.Error(w, serr.Error(), http.StatusInternalServerError)
329-
}
330322
if strings.HasSuffix(key, "/") {
331323
key = key[:len(key)-1]
332324
}
333325
req := &s3.ListObjectsInput{
334326
Bucket: aws.String(backet),
335327
Prefix: aws.String(key),
336328
}
337-
result, err := s3.New(sess).ListObjects(req)
329+
result, err := s3.New(awsSession()).ListObjects(req)
338330
if err != nil {
339331
code, message := awsError(err)
340332
http.Error(w, message, code)
@@ -352,19 +344,15 @@ func s3listFiles(w http.ResponseWriter, r *http.Request, backet, key string) {
352344
http.Error(w, string(bytes), http.StatusOK)
353345
}
354346

355-
func awsSession() (*session.Session, error) {
347+
func awsSession() *session.Session {
356348
config := &aws.Config{
357349
Region: aws.String(c.awsRegion),
358350
}
359351
if len(c.awsAPIEndpoint) > 0 {
360352
config.Endpoint = aws.String(c.awsAPIEndpoint)
353+
config.S3ForcePathStyle = aws.Bool(true)
361354
}
362-
sess, err := session.NewSession(config)
363-
if err != nil {
364-
log.Printf("[service] unable to create aws session: %s", err)
365-
return nil, err
366-
}
367-
return sess, nil
355+
return session.Must(session.NewSession(config))
368356
}
369357

370358
func setStrHeader(w http.ResponseWriter, key string, value *string) {

0 commit comments

Comments
 (0)