diff --git a/.chloggen/target-allocator-file-watch.yaml b/.chloggen/target-allocator-file-watch.yaml new file mode 100644 index 0000000000..fd1fa3f755 --- /dev/null +++ b/.chloggen/target-allocator-file-watch.yaml @@ -0,0 +1,16 @@ +# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' +change_type: bug_fix + +# The name of the component, or a single word describing the area of concern, (e.g. operator, target allocator, github action) +component: target allocator + +# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). +note: Update file watcher to detect file write events + +# One or more tracking issues related to the change +issues: [2349] + +# (Optional) One or more lines of additional information to render under the primary note. +# These lines will be padded with 2 spaces and then inserted directly into the document. +# Use pipe (|) for multiline entries. +subtext: diff --git a/cmd/otel-allocator/watcher/file.go b/cmd/otel-allocator/watcher/file.go index a6bbd15fd0..ef7ea166bc 100644 --- a/cmd/otel-allocator/watcher/file.go +++ b/cmd/otel-allocator/watcher/file.go @@ -70,7 +70,9 @@ func (f *FileWatcher) Watch(upstreamEvents chan Event, upstreamErrors chan error case <-f.closer: return nil case fileEvent := <-f.watcher.Events: - if fileEvent.Op == fsnotify.Create { + // Using Op.Has as per this doc - https://github.com/fsnotify/fsnotify/blob/9342b6df577910c6eac718dc62845d8c95f8548b/fsnotify.go#L30 + if fileEvent.Op.Has(fsnotify.Create) || fileEvent.Op.Has(fsnotify.Write) { + f.logger.Info("File change detected", "event", fileEvent.Op.String()) upstreamEvents <- Event{ Source: EventSourceConfigMap, Watcher: Watcher(f),