mirror of
https://github.com/coder/coder.git
synced 2025-07-08 11:39:50 +00:00
* chore: Initial database scaffolding This implements migrations and code generation for interfacing with a PostgreSQL database. A dependency is added for the "postgres" binary on the host, but that seems like an acceptable requirement considering it's our primary database. An in-memory database object can be created for simple cross-OS and fast testing. * Run tests in CI * Use Docker instead of binaries on the host * Skip database tests on non-Linux operating systems * chore: Add golangci-lint and codecov * Use consistent file names
20 lines
414 B
Go
20 lines
414 B
Go
package database
|
|
|
|
import "context"
|
|
|
|
// NewInMemory returns an in-memory store of the database.
|
|
func NewInMemory() Store {
|
|
return &memoryQuerier{}
|
|
}
|
|
|
|
type memoryQuerier struct{}
|
|
|
|
// InTx doesn't rollback data properly for in-memory yet.
|
|
func (q *memoryQuerier) InTx(ctx context.Context, fn func(Store) error) error {
|
|
return fn(q)
|
|
}
|
|
|
|
func (q *memoryQuerier) ExampleQuery(ctx context.Context) error {
|
|
return nil
|
|
}
|