Initial commit

This commit is contained in:
simon987
2019-01-12 16:18:14 -05:00
commit 83276ce8b0
25 changed files with 1367 additions and 0 deletions

50
storage/task.go Normal file
View File

@@ -0,0 +1,50 @@
package storage
import (
"database/sql"
"github.com/Sirupsen/logrus"
"github.com/google/uuid"
)
type Task struct {
Id int64
Project int64
Assignee uuid.UUID
Retries int64
MaxRetries int64
Status string
Recipe string
}
func (database *Database) SaveTask(task *Task) error {
db := database.getDB()
taskErr := saveTask(task, db)
err := db.Close()
handleErr(err)
return taskErr
}
func saveTask(task *Task, db *sql.DB) error {
res, err := db.Exec("INSERT INTO task (project, max_retries, recipe) "+
"VALUES ($1,$2,$3)",
task.Project, task.MaxRetries, task.Recipe)
if err != nil {
logrus.WithError(err).WithFields(logrus.Fields{
"task": task,
}).Warn("Database.saveTask INSERT task ERROR")
return err
}
rowsAffected, err := res.RowsAffected()
handleErr(err)
logrus.WithFields(logrus.Fields{
"rowsAffected": rowsAffected,
"task": task,
}).Trace("Database.saveTask INSERT task")
return nil
}