package db import ( "database/sql" "code.dumpstack.io/tools/out-of-tree/api" ) func createRepoTable(db *sql.DB) (err error) { _, err = db.Exec(` CREATE TABLE IF NOT EXISTS repo ( id INTEGER PRIMARY KEY, name TEXT UNIQUE )`) return } func AddRepo(db *sql.DB, repo *api.Repo) (err error) { stmt, err := db.Prepare(`INSERT INTO repo (name) ` + `VALUES ($1);`) if err != nil { return } defer stmt.Close() res, err := stmt.Exec(repo.Name) if err != nil { return } repo.ID, err = res.LastInsertId() return } func Repos(db *sql.DB) (repos []api.Repo, err error) { stmt, err := db.Prepare(`SELECT id, name FROM repo`) if err != nil { return } defer stmt.Close() rows, err := stmt.Query() if err != nil { return } defer rows.Close() for rows.Next() { var repo api.Repo err = rows.Scan(&repo.ID, &repo.Name) if err != nil { return } repos = append(repos, repo) } return }