normaliseeol

This commit is contained in:
Michael McGuinness
2024-12-18 18:54:48 +00:00
parent 2209b877f5
commit fc4214336e
1728 changed files with 288180 additions and 288180 deletions
+45 -45
View File
@@ -1,45 +1,45 @@
package database
import (
"context"
"fmt"
"gotemplate/internal/env"
"log"
"github.com/jackc/pgx/v5"
"github.com/jackc/pgx/v5/pgxpool"
)
func createConnectionString() string {
driver := "postgres"
dbUser := env.GetRequired("DB_USER")
dbPass := env.GetRequired("DB_PASS")
dbHost := env.GetRequired("DB_HOST")
dbPort := env.GetRequired("DB_PORT")
dbName := env.GetRequired("DB_NAME")
connStr := fmt.Sprintf("%s://%s:%s@%s:%s/%s?sslmode=disable", driver, dbUser, dbPass, dbHost, dbPort, dbName)
return connStr
}
func GetDBPool(ctx context.Context) *pgxpool.Pool {
connStr := createConnectionString()
pool, err := pgxpool.New(ctx, connStr)
if err != nil {
log.Fatalf("Unable to create database pool: %v\n", err)
}
return pool
}
func GetDBConn(ctx context.Context) *pgx.Conn {
connStr := createConnectionString()
conn, err := pgx.Connect(ctx, connStr)
if err != nil {
log.Fatalf("Unable to connect to database: %v\n", err)
}
return conn
}
package database
import (
"context"
"fmt"
"gotemplate/internal/env"
"log"
"github.com/jackc/pgx/v5"
"github.com/jackc/pgx/v5/pgxpool"
)
func createConnectionString() string {
driver := "postgres"
dbUser := env.GetRequired("DB_USER")
dbPass := env.GetRequired("DB_PASS")
dbHost := env.GetRequired("DB_HOST")
dbPort := env.GetRequired("DB_PORT")
dbName := env.GetRequired("DB_NAME")
connStr := fmt.Sprintf("%s://%s:%s@%s:%s/%s?sslmode=disable", driver, dbUser, dbPass, dbHost, dbPort, dbName)
return connStr
}
func GetDBPool(ctx context.Context) *pgxpool.Pool {
connStr := createConnectionString()
pool, err := pgxpool.New(ctx, connStr)
if err != nil {
log.Fatalf("Unable to create database pool: %v\n", err)
}
return pool
}
func GetDBConn(ctx context.Context) *pgx.Conn {
connStr := createConnectionString()
conn, err := pgx.Connect(ctx, connStr)
if err != nil {
log.Fatalf("Unable to connect to database: %v\n", err)
}
return conn
}
+85 -85
View File
@@ -1,85 +1,85 @@
package database
import (
"database/sql"
"fmt"
"gotemplate/internal/env"
"log"
"os"
"path"
"github.com/golang-migrate/migrate/v4"
"github.com/golang-migrate/migrate/v4/database/postgres"
_ "github.com/golang-migrate/migrate/v4/source/file"
)
func createDB() {
dbUser := env.GetRequired("DB_USER")
dbPass := env.GetRequired("DB_PASS")
dbHost := env.GetRequired("DB_HOST")
dbPort := env.GetRequired("DB_PORT")
dbName := env.GetRequired("DB_NAME")
driver := "postgres"
connStr := fmt.Sprintf("%s://%s:%s@%s:%s?sslmode=disable", driver, dbUser, dbPass, dbHost, dbPort)
db, err := sql.Open(driver, connStr)
if err != nil {
log.Fatalf("Error opening database: %v", err)
}
defer db.Close()
result, err := db.Exec(fmt.Sprintf("SELECT 'CREATE DATABASE %s' WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = '%s')", dbName, dbName))
if err != nil {
log.Fatalf("Error creating database: %v", err)
}
rows, err := result.RowsAffected()
if err != nil {
log.Fatal(err)
} else if rows == 0 {
log.Printf("Database already exists: %s", dbName)
} else {
log.Printf("Database created: %s", dbName)
}
}
func RunMigrations() {
createDB()
connStr := createConnectionString()
driver := "postgres"
db, err := sql.Open(driver, connStr)
if err != nil {
log.Fatalf("failed to open database: %v", err)
}
defer db.Close()
if err = db.Ping(); err != nil {
log.Fatal("Failed to connect to database:", err)
}
conn, err := postgres.WithInstance(db, &postgres.Config{})
if err != nil {
log.Fatal(err)
}
migPath := "file://" + path.Join(os.Getenv("PWD"), "database/migrations")
m, err := migrate.NewWithDatabaseInstance(
migPath,
driver,
conn,
)
if err != nil {
log.Fatalf("failed to create migrate instance: %v", err)
}
err = m.Up()
if err == migrate.ErrNoChange {
log.Println("No changes required")
} else if err != nil {
log.Fatalf("failed to apply migrations: %v", err)
} else {
log.Println("Migrations applied successfully!")
}
}
package database
import (
"database/sql"
"fmt"
"gotemplate/internal/env"
"log"
"os"
"path"
"github.com/golang-migrate/migrate/v4"
"github.com/golang-migrate/migrate/v4/database/postgres"
_ "github.com/golang-migrate/migrate/v4/source/file"
)
func createDB() {
dbUser := env.GetRequired("DB_USER")
dbPass := env.GetRequired("DB_PASS")
dbHost := env.GetRequired("DB_HOST")
dbPort := env.GetRequired("DB_PORT")
dbName := env.GetRequired("DB_NAME")
driver := "postgres"
connStr := fmt.Sprintf("%s://%s:%s@%s:%s?sslmode=disable", driver, dbUser, dbPass, dbHost, dbPort)
db, err := sql.Open(driver, connStr)
if err != nil {
log.Fatalf("Error opening database: %v", err)
}
defer db.Close()
result, err := db.Exec(fmt.Sprintf("SELECT 'CREATE DATABASE %s' WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = '%s')", dbName, dbName))
if err != nil {
log.Fatalf("Error creating database: %v", err)
}
rows, err := result.RowsAffected()
if err != nil {
log.Fatal(err)
} else if rows == 0 {
log.Printf("Database already exists: %s", dbName)
} else {
log.Printf("Database created: %s", dbName)
}
}
func RunMigrations() {
createDB()
connStr := createConnectionString()
driver := "postgres"
db, err := sql.Open(driver, connStr)
if err != nil {
log.Fatalf("failed to open database: %v", err)
}
defer db.Close()
if err = db.Ping(); err != nil {
log.Fatal("Failed to connect to database:", err)
}
conn, err := postgres.WithInstance(db, &postgres.Config{})
if err != nil {
log.Fatal(err)
}
migPath := "file://" + path.Join(os.Getenv("PWD"), "database/migrations")
m, err := migrate.NewWithDatabaseInstance(
migPath,
driver,
conn,
)
if err != nil {
log.Fatalf("failed to create migrate instance: %v", err)
}
err = m.Up()
if err == migrate.ErrNoChange {
log.Println("No changes required")
} else if err != nil {
log.Fatalf("failed to apply migrations: %v", err)
} else {
log.Println("Migrations applied successfully!")
}
}
+32 -32
View File
@@ -1,32 +1,32 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.27.0
package repository
import (
"context"
"github.com/jackc/pgx/v5"
"github.com/jackc/pgx/v5/pgconn"
)
type DBTX interface {
Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
Query(context.Context, string, ...interface{}) (pgx.Rows, error)
QueryRow(context.Context, string, ...interface{}) pgx.Row
}
func New(db DBTX) *Queries {
return &Queries{db: db}
}
type Queries struct {
db DBTX
}
func (q *Queries) WithTx(tx pgx.Tx) *Queries {
return &Queries{
db: tx,
}
}
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.27.0
package repository
import (
"context"
"github.com/jackc/pgx/v5"
"github.com/jackc/pgx/v5/pgconn"
)
type DBTX interface {
Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
Query(context.Context, string, ...interface{}) (pgx.Rows, error)
QueryRow(context.Context, string, ...interface{}) pgx.Row
}
func New(db DBTX) *Queries {
return &Queries{db: db}
}
type Queries struct {
db DBTX
}
func (q *Queries) WithTx(tx pgx.Tx) *Queries {
return &Queries{
db: tx,
}
}
+9 -9
View File
@@ -1,9 +1,9 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.27.0
package repository
type Name struct {
Name string
}
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.27.0
package repository
type Name struct {
Name string
}
+30 -30
View File
@@ -1,30 +1,30 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.27.0
// source: name.sql
package repository
import (
"context"
)
const addName = `-- name: AddName :exec
INSERT INTO names (name) VALUES ($1)
`
func (q *Queries) AddName(ctx context.Context, name string) error {
_, err := q.db.Exec(ctx, addName, name)
return err
}
const getName = `-- name: GetName :one
SELECT name as dbName FROM names where name = $1
`
func (q *Queries) GetName(ctx context.Context, name string) (string, error) {
row := q.db.QueryRow(ctx, getName, name)
var dbname string
err := row.Scan(&dbname)
return dbname, err
}
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.27.0
// source: name.sql
package repository
import (
"context"
)
const addName = `-- name: AddName :exec
INSERT INTO names (name) VALUES ($1)
`
func (q *Queries) AddName(ctx context.Context, name string) error {
_, err := q.db.Exec(ctx, addName, name)
return err
}
const getName = `-- name: GetName :one
SELECT name as dbName FROM names where name = $1
`
func (q *Queries) GetName(ctx context.Context, name string) (string, error) {
row := q.db.QueryRow(ctx, getName, name)
var dbname string
err := row.Scan(&dbname)
return dbname, err
}