* bootstrap encryption key * secret key message change in cli and secret key file content trimmed * Migrate encryption code to latest version * pull in newer code * tidying up * working data encryption layer * fix tests * remove stray comment * fix a few minor issues and improve the comments * split out databasefilename with param to two methods to be more obvious * DB encryption integration (#6374) * json methods moved under DBConnection * store encryption fixed * cleaned * review comments addressed * newstore value fixed * backup test updated * logrus format config updated * Fix for newStore Co-authored-by: Matt Hook <hookenz@gmail.com> * Minor improvements * Improve the export code. Add missing webhook for import * rename HelmUserRepositorys to HelmUserRepositories * fix logging messages * when starting portainer with a key (first use) http is disabled by default. But when starting fresh without a key, http is enabled? * Fix bug for default settings on new installs Co-authored-by: Prabhat Khera <prabhat.khera@portainer.io> Co-authored-by: Prabhat Khera <91852476+prabhat-org@users.noreply.github.com>
30 lines
1.0 KiB
Go
30 lines
1.0 KiB
Go
package main
|
|
|
|
import (
|
|
"log"
|
|
|
|
portainer "github.com/portainer/portainer/api"
|
|
"github.com/portainer/portainer/api/datastore"
|
|
"github.com/sirupsen/logrus"
|
|
)
|
|
|
|
func importFromJson(fileService portainer.FileService, store *datastore.Store) {
|
|
// EXPERIMENTAL - if used with an incomplete json file, it will fail, as we don't have a way to default the model values
|
|
importFile := "/data/import.json"
|
|
if exists, _ := fileService.FileExists(importFile); exists {
|
|
if err := store.Import(importFile); err != nil {
|
|
logrus.WithError(err).Debugf("Import %s failed", importFile)
|
|
|
|
// TODO: should really rollback on failure, but then we have nothing.
|
|
} else {
|
|
logrus.Printf("Successfully imported %s to new portainer database", importFile)
|
|
}
|
|
// TODO: this is bad - its to ensure that any defaults that were broken in import, or migrations get set back to what we want
|
|
// I also suspect that everything from "Init to Init" is potentially a migration
|
|
err := store.Init()
|
|
if err != nil {
|
|
log.Fatalf("Failed initializing data store: %v", err)
|
|
}
|
|
}
|
|
}
|