Skip to content
This repository has been archived by the owner on Jul 5, 2022. It is now read-only.

Commit

Permalink
Fix permissions issue
Browse files Browse the repository at this point in the history
  • Loading branch information
fischersean committed Apr 17, 2021
1 parent f65a1d1 commit 96c7548
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 8 deletions.
25 changes: 17 additions & 8 deletions cmd/lambda/update-distdb/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ func repopulateCounts(conn *sql.DB, sess *session.Session) (err error) {
return err
}

func downloadDb(svc *s3.S3, distBucketName string) (err error) {
func downloadDb(svc *s3.S3, distBucketName string, dbFname string) (err error) {

// Download db file from bucket
result, err := svc.GetObject(&s3.GetObjectInput{
Expand All @@ -164,17 +164,17 @@ func downloadDb(svc *s3.S3, distBucketName string) (err error) {
return err
}

err = ioutil.WriteFile(DB_NAME, buf, 0644)
err = ioutil.WriteFile(dbFname, buf, 0644)
if err != nil {
return err
}

return err
}

func uploadDb(svc *s3.S3, distBucketName string) (err error) {
func uploadDb(svc *s3.S3, distBucketName string, dbFname string) (err error) {

buf, err := ioutil.ReadFile(DB_NAME)
buf, err := ioutil.ReadFile(dbFname)
if err != nil {
return err
}
Expand All @@ -199,18 +199,27 @@ func Handler() (err error) {

S3Service := s3.New(sess)

// TODO: I am handling this file poorly.
// I need to fix this and adjust each func responsibilities
var dbFname string
if os.Getenv("DEV") == "YES" {
dbFname = DB_NAME
} else {
dbFname = "/tmp/" + DB_NAME
}

distBucketName := os.Getenv("DIST_BUCKET")
err = downloadDb(S3Service, distBucketName)
err = downloadDb(S3Service, distBucketName, dbFname)
if err != nil {
return err
}

if os.Getenv("DEV") != "YES" {
defer os.Remove(DB_NAME)
defer os.Remove(dbFname)
}

// Perform db update
conn, err := sql.Open("sqlite3", DB_NAME)
conn, err := sql.Open("sqlite3", dbFname)
if err != nil {
log.Fatal(err.Error())
}
Expand All @@ -230,7 +239,7 @@ func Handler() (err error) {
log.Println("Finished updating counts table")

// Upload the file back to s3
err = uploadDb(S3Service, distBucketName)
err = uploadDb(S3Service, distBucketName, dbFname)
return err
}

Expand Down
2 changes: 2 additions & 0 deletions phish_food/etl.py
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,8 @@ def distdb(
)

bucket.grant_read_write(handler)
tradeables_bucket.grant_read_write(handler)
count_results_table.grant_read_data(handler)

# Update db ever day at 11:30
# This should ensure that all of that day's ETL results are available
Expand Down

0 comments on commit 96c7548

Please sign in to comment.