vendor dependencies with dep
This commit is contained in:
parent
93d8310491
commit
1384296a47
2712 changed files with 965742 additions and 0 deletions
79
vendor/github.com/go-pg/migrations/db.go
generated
vendored
Normal file
79
vendor/github.com/go-pg/migrations/db.go
generated
vendored
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
package migrations
|
||||
|
||||
import (
|
||||
"io"
|
||||
"strings"
|
||||
|
||||
"github.com/go-pg/pg"
|
||||
"github.com/go-pg/pg/orm"
|
||||
"github.com/go-pg/pg/types"
|
||||
)
|
||||
|
||||
var tableName = "gopg_migrations"
|
||||
|
||||
func SetTableName(name string) {
|
||||
tableName = name
|
||||
}
|
||||
|
||||
type DB interface {
|
||||
Exec(query interface{}, params ...interface{}) (orm.Result, error)
|
||||
ExecOne(query interface{}, params ...interface{}) (orm.Result, error)
|
||||
Query(model, query interface{}, params ...interface{}) (orm.Result, error)
|
||||
QueryOne(model, query interface{}, params ...interface{}) (orm.Result, error)
|
||||
|
||||
Model(model ...interface{}) *orm.Query
|
||||
Select(model interface{}) error
|
||||
Insert(model ...interface{}) error
|
||||
Update(model ...interface{}) error
|
||||
Delete(model interface{}) error
|
||||
CreateTable(model interface{}, opt *orm.CreateTableOptions) error
|
||||
DropTable(model interface{}, opt *orm.DropTableOptions) error
|
||||
|
||||
CopyFrom(r io.Reader, query interface{}, params ...interface{}) (orm.Result, error)
|
||||
CopyTo(w io.Writer, query interface{}, params ...interface{}) (orm.Result, error)
|
||||
|
||||
FormatQuery(dst []byte, query string, params ...interface{}) []byte
|
||||
}
|
||||
|
||||
func getTableName() types.ValueAppender {
|
||||
return pg.Q(tableName)
|
||||
}
|
||||
|
||||
func Version(db DB) (int64, error) {
|
||||
var version int64
|
||||
_, err := db.QueryOne(pg.Scan(&version), `
|
||||
SELECT version FROM ? ORDER BY id DESC LIMIT 1
|
||||
`, getTableName())
|
||||
if err != nil {
|
||||
if err == pg.ErrNoRows {
|
||||
return 0, nil
|
||||
}
|
||||
return 0, err
|
||||
}
|
||||
return version, nil
|
||||
}
|
||||
|
||||
func SetVersion(db DB, version int64) error {
|
||||
_, err := db.Exec(`
|
||||
INSERT INTO ? (version, created_at) VALUES (?, now())
|
||||
`, getTableName(), version)
|
||||
return err
|
||||
}
|
||||
|
||||
func createTables(db DB) error {
|
||||
if ind := strings.IndexByte(tableName, '.'); ind >= 0 {
|
||||
_, err := db.Exec(`CREATE SCHEMA IF NOT EXISTS ?`, pg.Q(tableName[:ind]))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
_, err := db.Exec(`
|
||||
CREATE TABLE IF NOT EXISTS ? (
|
||||
id serial,
|
||||
version bigint,
|
||||
created_at timestamptz
|
||||
)
|
||||
`, getTableName())
|
||||
return err
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue