Skip to content

Commit

Permalink
better logging
Browse files Browse the repository at this point in the history
  • Loading branch information
drichelson committed May 26, 2024
1 parent ca80f68 commit 3e98062
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 8 deletions.
14 changes: 12 additions & 2 deletions internal/dorkly/reconcile.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,8 @@ func (r *Reconciler) Reconcile(ctx context.Context) error {
}

newArchive = project.toRelayArchive()
err = newArchive.injectSecrets(r.secretsService)
return err
logger.Infof("Local yaml project: %v", newArchive.String())
return newArchive.injectSecrets(r.secretsService)
})
if err != nil {
return err
Expand All @@ -65,6 +65,7 @@ func (r *Reconciler) Reconcile(ctx context.Context) error {
err = runStep("Merge existing archive and local yaml project files into reconciled archive", func() error {
var err error
reconciledArchive, err = reconcile(*existingArchive, *newArchive)
logger.Infof("Merged archive for upload: %v", reconciledArchive.String())
return err
})
if err != nil {
Expand All @@ -84,6 +85,7 @@ func reconcile(old, new RelayArchive) (RelayArchive, error) {

// Process new envs
for _, envKey := range compareResult.new {
logger.With("env", envKey).Info("New environment found")
//set all versions to 1
newEnv := new.envs[envKey]
newEnv.metadata.EnvMetadata.Version = 1
Expand All @@ -96,9 +98,13 @@ func reconcile(old, new RelayArchive) (RelayArchive, error) {
}

// TODO: Process deleted envs.. wtf.
for _, envKey := range compareResult.deleted {
logger.With("env", envKey).Error("Deleted environment found. Doing nothing for now...")
}

// Process existing envs
for _, envKey := range compareResult.existing {
logger.With("env", envKey).Info("Existing environment found")
shouldChangeDataId := false
// compare env metadata:
oldEnv := old.envs[envKey]
Expand All @@ -107,6 +113,7 @@ func reconcile(old, new RelayArchive) (RelayArchive, error) {
// compare env metadata ignoring versions
newEnv.metadata.EnvMetadata.Version = oldEnv.metadata.EnvMetadata.Version
if !reflect.DeepEqual(oldEnv.metadata, newEnv.metadata) {
logger.With("env", envKey).Info("Environment metadata changed.")
newEnv.metadata.EnvMetadata.Version++
shouldChangeDataId = true
}
Expand All @@ -117,6 +124,7 @@ func reconcile(old, new RelayArchive) (RelayArchive, error) {

// Process new flags
for _, flagKey := range compareResult.new {
logger.With("env", envKey).With("flag", flagKey).Info("Found new flag")
flag := newEnv.data.Flags[flagKey]
flag.Version = 1
newEnv.data.Flags[flagKey] = flag
Expand All @@ -125,6 +133,7 @@ func reconcile(old, new RelayArchive) (RelayArchive, error) {

// Process deleted flags
for _, flagKey := range compareResult.deleted {
logger.With("env", envKey).With("flag", flagKey).Info("Found deleted flag")
deletedFlag := oldEnv.data.Flags[flagKey]
deletedFlag.Version++
deletedFlag.Deleted = true
Expand All @@ -139,6 +148,7 @@ func reconcile(old, new RelayArchive) (RelayArchive, error) {
newFlag := newEnv.data.Flags[flagKey]
newFlag.Version = oldFlag.Version
if !reflect.DeepEqual(oldFlag, newFlag) {
logger.With("env", envKey).With("flag", flagKey).Info("Found modified flag")
newFlag.Version++
newEnv.data.Flags[flagKey] = newFlag
shouldChangeDataId = true
Expand Down
16 changes: 10 additions & 6 deletions internal/dorkly/relay_archive.go
Original file line number Diff line number Diff line change
Expand Up @@ -312,6 +312,7 @@ func loadRelayArchiveFromTarGzFile(path string) (*RelayArchive, error) {
// }
//}

logger.Infof("Existing archive: %v", ad.String())
return &ad, nil

}
Expand All @@ -337,28 +338,31 @@ func readTarGz(srcFile string) (map[string][]byte, error) {
for {
header, err := tr.Next()
if err == io.EOF {
break // End of archive
break // End of archive or root directory
}
if err != nil {
return nil, err
}

filename := filepath.Base(header.Name)
if filename == "." {
continue
}
var buf bytes.Buffer
if _, err := io.Copy(&buf, tr); err != nil {
return nil, err
}
// We expect all files to be in the root directory of the archive so we strip out the leading ./ from the filename
contents[filepath.Base(header.Name)] = buf.Bytes()
contents[filename] = buf.Bytes()
}

filenames := make([]string, 0, len(contents))
for filename := range contents {
if filename != "." {
filenames = append(filenames, filename)
}
filenames = append(filenames, filename)
}
sort.Strings(filenames)

l.With("contents", filenames).Infof("Found %d files in archive", len(contents))
l.With("contents", filenames).Infof("Found %d files in archive", len(filenames))

return contents, nil
}

0 comments on commit 3e98062

Please sign in to comment.