fix(go): workflow errors fixes;

This commit is contained in:
Vishal Dalwadi 2025-06-06 15:42:30 +05:30
parent 48957c02fa
commit da5115221f
8 changed files with 62 additions and 13 deletions

View file

@ -2,6 +2,8 @@ package controller
import (
"context"
"github.com/gravitl/netmaker/db"
"github.com/gravitl/netmaker/schema"
"os"
"testing"
@ -23,6 +25,9 @@ type NetworkValidationTestCase struct {
var netHost models.Host
func TestMain(m *testing.M) {
db.InitializeDB(schema.ListModels()...)
defer db.CloseDB()
database.InitializeDatabase()
defer database.CloseDB()
logic.CreateSuperAdmin(&models.User{

View file

@ -233,6 +233,9 @@ func getConfig(w http.ResponseWriter, r *http.Request) {
if servercfg.IsPro {
scfg.IsPro = "yes"
}
scfg.ClientID = logic.Mask()
scfg.ClientSecret = logic.Mask()
json.NewEncoder(w).Encode(scfg)
// w.WriteHeader(http.StatusOK)
}

View file

@ -4,11 +4,9 @@ import (
"context"
"database/sql"
"errors"
"fmt"
"github.com/gravitl/netmaker/db"
"time"
"github.com/gravitl/netmaker/servercfg"
_ "github.com/lib/pq"
)
@ -28,14 +26,6 @@ var PG_FUNCTIONS = map[string]interface{}{
isConnected: pgIsConnected,
}
func getPGConnString() string {
pgconf := servercfg.GetSQLConf()
pgConn := fmt.Sprintf("host=%s port=%d user=%s "+
"password=%s dbname=%s sslmode=%s connect_timeout=5",
pgconf.Host, pgconf.Port, pgconf.Username, pgconf.Password, pgconf.DB, pgconf.SSLMode)
return pgConn
}
func initPGDB() error {
gormDB := db.FromContext(db.WithContext(context.TODO()))

View file

@ -10,9 +10,6 @@ import (
_ "github.com/mattn/go-sqlite3" // need to blank import this package
)
// == sqlite ==
const dbFilename = "netmaker.db"
// SqliteDB is the db object for sqlite database connections
var SqliteDB *sql.DB

View file

@ -110,3 +110,24 @@ func BeginTx(ctx context.Context) context.Context {
return context.WithValue(ctx, dbCtxKey, dbInCtx.Begin())
}
// CloseDB close a connection to the database
// (if one exists). It panics if any error
// occurs.
func CloseDB() {
if db == nil {
return
}
sqlDB, err := db.DB()
if err != nil {
panic(err)
}
err = sqlDB.Close()
if err != nil {
panic(err)
}
db = nil
}

View file

@ -3,6 +3,8 @@ package functions
import (
"context"
"encoding/json"
"github.com/gravitl/netmaker/db"
"github.com/gravitl/netmaker/schema"
"os"
"testing"
@ -23,6 +25,9 @@ var (
)
func TestMain(m *testing.M) {
db.InitializeDB(schema.ListModels()...)
defer db.CloseDB()
database.InitializeDatabase()
defer database.CloseDB()
logic.CreateSuperAdmin(&models.User{

View file

@ -1,6 +1,8 @@
package logic
import (
"github.com/gravitl/netmaker/db"
"github.com/gravitl/netmaker/schema"
"testing"
"time"
@ -11,6 +13,9 @@ import (
)
func TestCreateEnrollmentKey(t *testing.T) {
db.InitializeDB(schema.ListModels()...)
defer db.CloseDB()
database.InitializeDatabase()
defer database.CloseDB()
t.Run("Can_Not_Create_Key", func(t *testing.T) {
@ -60,6 +65,9 @@ func TestCreateEnrollmentKey(t *testing.T) {
}
func TestDelete_EnrollmentKey(t *testing.T) {
db.InitializeDB(schema.ListModels()...)
defer db.CloseDB()
database.InitializeDatabase()
defer database.CloseDB()
newKey, _ := CreateEnrollmentKey(0, time.Time{}, []string{"mynet", "skynet"}, nil, nil, true, uuid.Nil, false, false)
@ -81,6 +89,9 @@ func TestDelete_EnrollmentKey(t *testing.T) {
}
func TestDecrement_EnrollmentKey(t *testing.T) {
db.InitializeDB(schema.ListModels()...)
defer db.CloseDB()
database.InitializeDatabase()
defer database.CloseDB()
newKey, _ := CreateEnrollmentKey(1, time.Time{}, nil, nil, nil, false, uuid.Nil, false, false)
@ -105,6 +116,9 @@ func TestDecrement_EnrollmentKey(t *testing.T) {
}
func TestUsability_EnrollmentKey(t *testing.T) {
db.InitializeDB(schema.ListModels()...)
defer db.CloseDB()
database.InitializeDatabase()
defer database.CloseDB()
key1, _ := CreateEnrollmentKey(1, time.Time{}, nil, nil, nil, false, uuid.Nil, false, false)
@ -143,6 +157,9 @@ func removeAllEnrollments() {
//Test that cheks if it can't tokenize
func TestTokenize_EnrollmentKeys(t *testing.T) {
db.InitializeDB(schema.ListModels()...)
defer db.CloseDB()
database.InitializeDatabase()
defer database.CloseDB()
newKey, _ := CreateEnrollmentKey(0, time.Time{}, []string{"mynet", "skynet"}, nil, nil, true, uuid.Nil, false, false)
@ -176,6 +193,9 @@ func TestTokenize_EnrollmentKeys(t *testing.T) {
}
func TestDeTokenize_EnrollmentKeys(t *testing.T) {
db.InitializeDB(schema.ListModels()...)
defer db.CloseDB()
database.InitializeDatabase()
defer database.CloseDB()
newKey, _ := CreateEnrollmentKey(0, time.Time{}, []string{"mynet", "skynet"}, nil, nil, true, uuid.Nil, false, false)

View file

@ -3,6 +3,8 @@ package logic
import (
"context"
"fmt"
"github.com/gravitl/netmaker/db"
"github.com/gravitl/netmaker/schema"
"net"
"os"
"testing"
@ -14,6 +16,9 @@ import (
)
func TestMain(m *testing.M) {
db.InitializeDB(schema.ListModels()...)
defer db.CloseDB()
database.InitializeDatabase()
defer database.CloseDB()
peerUpdate := make(chan *models.Node)
@ -41,6 +46,9 @@ func TestCheckPorts(t *testing.T) {
}
//not sure why this initialization is required but without it
// RemoveHost returns database is closed
db.InitializeDB(schema.ListModels()...)
defer db.CloseDB()
database.InitializeDatabase()
RemoveHost(&h, true)
CreateHost(&h)