Skip to content

git_config: path is ignored if repo is already cloned #274

@patrick-stephens

Description

@patrick-stephens

During testing added #232, discovered a failure issue when using different path configuration but not changing config_dir.

The local repo is made up of 4 files:

  1. initial-config1.yaml
  2. initial-config2.yaml
  3. runtime-config1.yaml
  4. runtime-config2.yaml

The two runtime-config*.yaml files are different but everything is in the same repo with the same commit.
Each initial-configX.yaml file is configured to use path: runtime-configX.yaml.

If we run fluent-bit -c initial-config1.yaml it correctly invokes runtime-config1.yaml.
Unfortunately if we then run fluent-bit -c initial-config2.yaml it actually invokes runtime-config1.yaml even though it reports path=runtime-config2.yaml.

Unfortunately it looks like when we start up as we have already cloned the repo it seems to automatically run the previous config it had found even though it should be using a different path.

# [2026/05/01 14:11:46.629686302] [ info] [input:git_config:git_config.0] git_config initialized: repo=file:///tmp/bats-run-3b9Ndb/test/35/repo ref=main path=runtime-config2.yaml config_dir=/tmp/fluentbit-git poll_interval=10s
# [2026/05/01 14:11:46.634197405] [ info] [input:git_config:git_config.0] no previous config found, will process next commit
# [2026/05/01 14:11:46.634219462] [ info] [input:git_config:git_config.0] found existing git config to load on startup: /tmp/fluentbit-git/configs/4c9bc05c9afae3a45300156f2b36554003a29b7b.yaml
# [2026/05/01 14:11:46.634221954] [ info] [input:git_config:git_config.0] header file already exists: /tmp/fluentbit-git/configs/header.yaml
# [2026/05/01 14:11:46.634226727] [ info] [input:git_config:git_config.0] git_config plugin started, polling every 10 seconds
# [2026/05/01 14:11:46.634247980] [ info] [engine] Shutdown Grace Period=1, Shutdown Input Grace Period=0
# [2026/05/01 14:11:56.529117939] [ info] [input:git_config:git_config.0] triggering startup reload with existing config: /tmp/fluentbit-git/configs/4c9bc05c9afae3a45300156f2b36554003a29b7b.yaml
# [2026/05/01 14:11:56.529263917] [ info] [git_config] sending reload signal (SIGHUP) for config: /tmp/fluentbit-git/configs/4c9bc05c9afae3a45300156f2b36554003a29b7b.yaml
# [2026/05/01 14:11:56] [engine] caught signal (SIGHUP)
# [2026/05/01 14:11:56.529371605] [ info] reloading instance pid=1162 tid=0x7ed7e5d70780
# [2026/05/01 14:11:56.529625366] [ info] [reload] stop everything of the old context
...
<Now runs runtime-config1.yaml configuration instead of the correct runtime-config2.yaml>

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions