Compare commits

..

11 Commits

Author SHA1 Message Date
Ettore Di Giacinto
aeb686f426 ⬆️ Tag 0.32.4 2022-06-07 20:22:44 +02:00
Ettore Di Giacinto
f98cd401be 🐛 Fixup bad return on first cycle 2022-06-07 20:21:37 +02:00
Ettore Di Giacinto
70f99b6bb7 ⬆️ Tag 0.32.3 2022-06-07 13:10:22 +02:00
Ettore Di Giacinto
cfbd8bf708 🐛 Fixup finalizer detection
This caused finalizers to run also for already-installed packages
2022-06-07 13:09:52 +02:00
mudler
4cb21a3e02 🎨 Match exit status with panic 2022-06-06 23:33:55 +02:00
mudler
3a31639897 🎨 Don't panic on Fatal 2022-06-06 23:09:39 +02:00
Ettore Di Giacinto
bac9bac25f ⬆️ Tag 0.32.2 2022-06-06 17:39:58 +02:00
Ettore Di Giacinto
ce95b3ada4 🎨 Cleanups 2022-06-06 17:39:16 +02:00
mudler
49d8c2b972 🎨 Add test-integration-docker target 2022-06-06 17:39:16 +02:00
mudler
2b3a1555f0 🎨 Refactor, use ensureoder where necessary 2022-06-06 17:39:16 +02:00
Itxaka
03e72653c7 Fill referenceID on repo sync (#300)
Signed-off-by: Itxaka <igarcia@suse.com>
2022-06-06 17:36:19 +02:00
4 changed files with 36 additions and 21 deletions

View File

@@ -30,7 +30,7 @@ var cfgFile string
var Verbose bool var Verbose bool
const ( const (
LuetCLIVersion = "0.32.1" LuetCLIVersion = "0.32.4"
LuetEnvPrefix = "LUET" LuetEnvPrefix = "LUET"
) )

View File

@@ -17,6 +17,7 @@ package logger
import ( import (
"fmt" "fmt"
"os"
"path" "path"
"regexp" "regexp"
"runtime" "runtime"
@@ -254,7 +255,7 @@ func (l *Logger) Tracef(t string, args ...interface{}) {
func (l *Logger) Fatal(args ...interface{}) { func (l *Logger) Fatal(args ...interface{}) {
l.send(log.LevelFatal, "", args...) l.send(log.LevelFatal, "", args...)
panic("fatal error") os.Exit(2)
} }
func (l *Logger) Info(args ...interface{}) { func (l *Logger) Info(args ...interface{}) {

View File

@@ -95,6 +95,26 @@ func NewLuetFinalizerFromYaml(data []byte) (*LuetFinalizer, error) {
func OrderFinalizers(allRepos types.PackageDatabase, toInstall map[string]ArtifactMatch, solution types.PackagesAssertions) ([]*types.Package, error) { func OrderFinalizers(allRepos types.PackageDatabase, toInstall map[string]ArtifactMatch, solution types.PackagesAssertions) ([]*types.Package, error) {
var toFinalize []*types.Package var toFinalize []*types.Package
populate := func(ordered types.PackagesAssertions) error {
for _, ass := range ordered {
if ass.Value {
installed, ok := toInstall[ass.Package.GetFingerPrint()]
if !ok {
// It was a dep already installed in the system, so we can skip it safely
continue
}
treePackage, err := installed.Repository.GetTree().GetDatabase().FindPackage(ass.Package)
if err != nil {
return errors.Wrap(err, "Error getting package "+ass.Package.HumanReadableString())
}
toFinalize = append(toFinalize, treePackage)
}
}
return nil
}
if len(toInstall) == 1 { if len(toInstall) == 1 {
for _, w := range toInstall { for _, w := range toInstall {
if fileHelper.Exists(w.Package.Rel(tree.FinalizerFile)) { if fileHelper.Exists(w.Package.Rel(tree.FinalizerFile)) {
@@ -103,21 +123,8 @@ func OrderFinalizers(allRepos types.PackageDatabase, toInstall map[string]Artifa
if err != nil { if err != nil {
return toFinalize, errors.Wrap(err, "While order a solution for "+w.Package.HumanReadableString()) return toFinalize, errors.Wrap(err, "While order a solution for "+w.Package.HumanReadableString())
} }
ORDER: if err := populate(ordered); err != nil {
for _, ass := range ordered { return toFinalize, err
if ass.Value {
installed, ok := toInstall[ass.Package.GetFingerPrint()]
if !ok {
// It was a dep already installed in the system, so we can skip it safely
continue ORDER
}
treePackage, err := installed.Repository.GetTree().GetDatabase().FindPackage(ass.Package)
if err != nil {
return toFinalize, errors.Wrap(err, "Error getting package "+ass.Package.HumanReadableString())
}
toFinalize = append(toFinalize, treePackage)
}
} }
} }
} }
@@ -127,10 +134,8 @@ func OrderFinalizers(allRepos types.PackageDatabase, toInstall map[string]Artifa
return toFinalize, err return toFinalize, err
} }
for _, o := range assertions { if err := populate(assertions); err != nil {
if o.Value { return toFinalize, err
toFinalize = append(toFinalize, o.Package)
}
} }
} }

View File

@@ -457,6 +457,14 @@ func (r *LuetSystemRepository) SetVerify(p bool) {
r.LuetRepository.Verify = p r.LuetRepository.Verify = p
} }
func (r *LuetSystemRepository) GetReferenceID() string {
return r.LuetRepository.ReferenceID
}
func (r *LuetSystemRepository) SetReferenceID(ref string) {
r.LuetRepository.ReferenceID = ref
}
func (r *LuetSystemRepository) GetBackend() compiler.CompilerBackend { func (r *LuetSystemRepository) GetBackend() compiler.CompilerBackend {
return r.Backend return r.Backend
} }
@@ -1051,6 +1059,7 @@ func (r *LuetSystemRepository) fill(r2 *LuetSystemRepository) {
r2.SetPriority(r.GetPriority()) r2.SetPriority(r.GetPriority())
r2.SetName(r.GetName()) r2.SetName(r.GetName())
r2.SetVerify(r.GetVerify()) r2.SetVerify(r.GetVerify())
r2.SetReferenceID(r.GetReferenceID())
} }
func (r *LuetSystemRepository) Serialize() (*LuetSystemRepositoryMetadata, LuetSystemRepository) { func (r *LuetSystemRepository) Serialize() (*LuetSystemRepositoryMetadata, LuetSystemRepository) {