-
-
Notifications
You must be signed in to change notification settings - Fork 430
CI: Recipes about ChangeLog regularly fail in Linux+mingw builds #2510
Copy link
Copy link
Closed
Labels
CIEntries related to continuous integration infrastructure (here CI = tools + scripts + recipes)Entries related to continuous integration infrastructure (here CI = tools + scripts + recipes)Windowsdocumentationimpacts-release-2.8.2Issues reported against NUT release 2.8.2 (maybe vanilla or with minor packaging tweaks)Issues reported against NUT release 2.8.2 (maybe vanilla or with minor packaging tweaks)packagingportabilityWe want NUT to build and run everywhere possibleWe want NUT to build and run everywhere possible
Milestone
Metadata
Metadata
Assignees
Labels
CIEntries related to continuous integration infrastructure (here CI = tools + scripts + recipes)Entries related to continuous integration infrastructure (here CI = tools + scripts + recipes)Windowsdocumentationimpacts-release-2.8.2Issues reported against NUT release 2.8.2 (maybe vanilla or with minor packaging tweaks)Issues reported against NUT release 2.8.2 (maybe vanilla or with minor packaging tweaks)packagingportabilityWe want NUT to build and run everywhere possibleWe want NUT to build and run everywhere possible
Over the past months there have been several efforts and PRs to improve the NUT recipes (e.g. #2366, #2360), and in particular the generation of
ChangeLogfile (but only if it is older than Git metadata) and subsequent parsing intoChangeLog.adocand HTML/PDF variants. On weaker CI systems the cycle can take 10 minutes, so a number of hoops are jumped through to avoid needless rebuilds of these files (and also aidingnut-websitebuilds which generate its deliverables).Currently this is handled by
Makefile.am(to allowmake ChangeLogin the root dir) anddocs/Makefile.am(to handle PDF/HTML renditions and their prerequisites up the chain), and hoping for interaction between copies ofmakeimplementations that have a "job server" support to avoid parallel attempts to build the thing. There were earlier mishaps with several copies of a parser script writing into the same file, causing invalid content and markup; now the writes should go into temporary files and then be atomically renamed, to avoid at least that failure mode.In the recent weeks, NUT CI farm occasionally fails the Linux+mingw builds (only them, and not always) indicating that the interim
ChangeLog.xml(fromasciidoc) did not pass structuralxmllintchecks. Either something misfires about not-writing to same file from several builds (job server issue?) or we indeed have some invalid characters in section titles (was a problem earlier) or whatever; but then it would fail every time?..