fix: close controller-peers-env-fallback validation gaps (bug-1909..1912)
- bug-1912: xce_parse_peers() ignores whitespace around entries and skips
blank ones, matching xceadmin's resolve_controllers(), so "a=h:1, b=h:2"
names the second candidate "b" (5 libxce tests + regression case).
- bug-1911: xcecd frees the -l log dir before the -h / --version returns
(regression case: no LeakSanitizer report, exit 0).
- bug-1910: both version scripts build the apiserver with -mod=vendor
(as the meson build does) instead of -mod=readonly, so they no longer
need a Go module cache.
- bug-1909: test-version-startup-consistency.sh accepts exactly the
dirty-content-fingerprint pairing ('<sha>-<8 hex>' in --version with
'<sha>-dirty' in the startup log), with self-test cases (e)/(f).
Both version scripts now exit 0 on a dirty tree with XCE_CONTROLLER_PEERS
set; regression script 35/35; xce-build all: C 127/0, scheduler 16/0,
xceadmin 364 passed, no ASAN reports.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
66520e6b1a
commit
ef6e562cde
7 changed files with 159 additions and 9 deletions
|
|
@ -438,6 +438,7 @@ int main(int argc, char* argv[])
|
|||
* version_buf -- the startup INFO log lines further down keep
|
||||
* reading the original version_buf, untouched. */
|
||||
printf("%s\n", version_display_buf);
|
||||
FREEUP(logdir); /* bug-1911: -l may have allocated it */
|
||||
return 0;
|
||||
case 'h':
|
||||
default:
|
||||
|
|
@ -460,6 +461,7 @@ int main(int argc, char* argv[])
|
|||
" preserved, e.g. "
|
||||
"sudo --preserve-env=XCE_CONTROLLER_PEERS xcecd ...\n",
|
||||
argv[0]);
|
||||
FREEUP(logdir); /* bug-1911: -l may have allocated it */
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue