mirror of
https://github.com/davidallendj/magellan.git
synced 2025-12-20 03:27:03 -07:00
Minor changes and improvements
This commit is contained in:
parent
8a2541717d
commit
8e59885f55
2 changed files with 15 additions and 4 deletions
10
internal/cache/sqlite/sqlite.go
vendored
10
internal/cache/sqlite/sqlite.go
vendored
|
|
@ -4,6 +4,7 @@ import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
magellan "github.com/OpenCHAMI/magellan/internal"
|
magellan "github.com/OpenCHAMI/magellan/internal"
|
||||||
|
"github.com/OpenCHAMI/magellan/internal/util"
|
||||||
|
|
||||||
"github.com/jmoiron/sqlx"
|
"github.com/jmoiron/sqlx"
|
||||||
)
|
)
|
||||||
|
|
@ -83,6 +84,15 @@ func DeleteScannedAssets(path string, results ...magellan.ScannedAsset) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetScannedAssets(path string) ([]magellan.ScannedAsset, error) {
|
func GetScannedAssets(path string) ([]magellan.ScannedAsset, error) {
|
||||||
|
// check if path exists first to prevent creating the database
|
||||||
|
exists, err := util.PathExists(path)
|
||||||
|
if !exists {
|
||||||
|
return nil, fmt.Errorf("no file found")
|
||||||
|
} else if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// now check if the file is the SQLite database
|
||||||
db, err := sqlx.Open("sqlite3", path)
|
db, err := sqlx.Open("sqlite3", path)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("failed to open database: %v", err)
|
return nil, fmt.Errorf("failed to open database: %v", err)
|
||||||
|
|
|
||||||
|
|
@ -65,8 +65,8 @@ func CollectInventory(scannedResults *[]ScannedAsset, params *CollectParams) err
|
||||||
done = make(chan struct{}, params.Concurrency+1)
|
done = make(chan struct{}, params.Concurrency+1)
|
||||||
chanScannedResult = make(chan ScannedAsset, params.Concurrency+1)
|
chanScannedResult = make(chan ScannedAsset, params.Concurrency+1)
|
||||||
outputPath = path.Clean(params.OutputPath)
|
outputPath = path.Clean(params.OutputPath)
|
||||||
smdClient = client.NewClient(
|
smdClient = client.NewClient[client.SmdClient](
|
||||||
client.WithSecureTLS(params.CaCertPath),
|
client.WithSecureTLS[client.SmdClient](params.CaCertPath),
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
wg.Add(params.Concurrency)
|
wg.Add(params.Concurrency)
|
||||||
|
|
@ -152,13 +152,14 @@ func CollectInventory(scannedResults *[]ScannedAsset, params *CollectParams) err
|
||||||
}
|
}
|
||||||
|
|
||||||
// add all endpoints to smd
|
// add all endpoints to smd
|
||||||
err = smdClient.AddRedfishEndpoint(data, headers)
|
err = smdClient.Add(body, headers)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Error().Err(err).Msgf("failed to add Redfish endpoint")
|
log.Error().Err(err).Msgf("failed to add Redfish endpoint")
|
||||||
|
|
||||||
// try updating instead
|
// try updating instead
|
||||||
if params.ForceUpdate {
|
if params.ForceUpdate {
|
||||||
err = smdClient.UpdateRedfishEndpoint(data["ID"].(string), body, headers)
|
smdClient.Xname = data["ID"].(string)
|
||||||
|
err = smdClient.Update(body, headers)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Error().Err(err).Msgf("failed to update Redfish endpoint")
|
log.Error().Err(err).Msgf("failed to update Redfish endpoint")
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue