Skip to content

Commit 6ff839f

Browse files
refactor: Cleanup UpdateApplication mechanism, get rid of the SKIP func (#9)
1 parent 67a63ab commit 6ff839f

File tree

2 files changed

+14
-28
lines changed

2 files changed

+14
-28
lines changed

internal/app/updater/commit.go

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ func commitChangesLocked(cfg HelmUpdaterConfig, state *SyncIterationState) (*[]C
3737
// after the UpdateApplication cycle has finished.
3838
func commitChangesGit(cfg HelmUpdaterConfig, write changeWriter) (*[]ChangeEntry, error) {
3939
var apps []ChangeEntry
40-
var skip bool
4140
var gitCommitMessage string
4241

4342
logCtx := log.WithContext().AddField("application", cfg.AppName)
@@ -97,11 +96,8 @@ func commitChangesGit(cfg HelmUpdaterConfig, write changeWriter) (*[]ChangeEntry
9796
}
9897

9998
// write changes to files
100-
if err, skip, apps = write(cfg, gitC); err != nil {
99+
if apps, err = write(cfg, gitC); err != nil {
101100
return nil, err
102-
//TODO: Review how to do when skip
103-
} else if skip {
104-
return nil, nil
105101
}
106102

107103
commitOpts := &git.CommitOptions{}

internal/app/updater/override.go

Lines changed: 13 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -12,43 +12,37 @@ import (
1212

1313
var _ changeWriter = writeOverrides
1414

15-
type changeWriter func(cfg HelmUpdaterConfig, gitC git.Client) (err error, skip bool, apps []ChangeEntry)
15+
type changeWriter func(cfg HelmUpdaterConfig, gitC git.Client) (apps []ChangeEntry, err error)
1616

1717
//writeOverrides writes the overrides to the git files
18-
func writeOverrides(cfg HelmUpdaterConfig, gitC git.Client) (err error, skip bool, apps []ChangeEntry) {
18+
func writeOverrides(cfg HelmUpdaterConfig, gitC git.Client) (apps []ChangeEntry, err error) {
1919
targetFile := path.Join(gitC.Root(), cfg.GitConf.File, cfg.File)
2020

21+
apps = make([]ChangeEntry, 0)
22+
2123
_, err = os.Stat(targetFile)
2224
if err != nil {
2325
log.WithContext().
2426
AddField("application", cfg.AppName).
2527
Errorf("target file %s doesn't exist.", cfg.File)
2628

27-
return err, true, nil
29+
return apps, err
2830
}
2931

30-
apps, err = overrideValues(cfg, targetFile)
31-
if err == fmt.Errorf("no changes") {
32-
return fmt.Errorf("target and marshaled keys for all targets are the same, skipping commit"), true, nil
33-
}
32+
apps = overrideValues(apps, cfg, targetFile)
3433

3534
if len(apps) == 0 {
36-
return fmt.Errorf("nothing to update, skipping commit"), true, nil
35+
return apps, fmt.Errorf("nothing to update, skipping commit")
3736
}
3837

39-
err = gitC.Add(targetFile)
40-
41-
return err, false, apps
38+
return apps, gitC.Add(targetFile)
4239
}
4340

4441
// overrideValues overrides values in the given file
45-
func overrideValues(cfg HelmUpdaterConfig, targetFile string) ([]ChangeEntry, error) {
46-
var noChange int
42+
func overrideValues(apps []ChangeEntry, cfg HelmUpdaterConfig, targetFile string) []ChangeEntry {
4743
var err error
4844

49-
apps := make([]ChangeEntry, 0)
5045
logCtx := log.WithContext().AddField("application", cfg.AppName)
51-
5246
for _, app := range cfg.UpdateApps {
5347
// define new entry
5448
var newEntry ChangeEntry
@@ -87,18 +81,14 @@ func overrideValues(cfg HelmUpdaterConfig, targetFile string) ([]ChangeEntry, er
8781
newEntry.NewValue = *newValue
8882

8983
// check if there is any change
90-
if oldValue != newValue {
91-
apps = append(apps, newEntry)
92-
} else {
84+
if oldValue == newValue {
9385
logCtx.Infof("target for key %s is the same, skipping", app.Key)
9486

95-
noChange++
87+
continue
9688
}
97-
}
9889

99-
if noChange == len(cfg.UpdateApps) {
100-
return nil, fmt.Errorf("no changes")
90+
apps = append(apps, newEntry)
10191
}
10292

103-
return apps, nil
93+
return apps
10494
}

0 commit comments

Comments
 (0)