An xCAT installed from these debs could report no version at all: `lsxcatd -v` printed a bare "Version" and there was no /opt/xcat/share/xcat/version to consult. xCAT::Version ships with #XCATVERSIONSUBHERE / #XCATSVNBUILDSUBHERE placeholders that perl-xCAT/debian/rules fills by calling modifyUtils with the version and the commit. It takes the commit from ../Gitinfo, falling back to `git log`. Neither Debian builder wrote Gitinfo -- buildrpms.pl does, which is why only the deb side was affected -- so a tree without a readable .git left that argument empty. modifyUtils then hit `if [ -z "$2" ]` and returned 0 WITHOUT substituting, and neither caller checks the status, so the placeholders shipped. Two independent things had to be wrong for this to be silent, and both are fixed: modifyUtils now exits non-zero on a missing argument, so a build that cannot stamp a version fails instead of producing one that cannot identify itself. Its message was also wrong -- it checked $2 and complained about the version, which is $1 -- so each argument now names itself. builddebs.pl writes Gitinfo, as buildrpms.pl already does. BuildUtils:: git_revision prefers the checkout, falls back to an existing Gitinfo (a source export carries the real revision that way, and overwriting it with a placeholder would discard the only provenance the tree has), and only then returns "unknown" -- never the empty string modifyUtils ignores. "unknown" is now warned about rather than stamped quietly. The cause is usually not a missing .git but git refusing one it considers dubiously owned: the tree belongs to another user and the safe.directory exception sits in a config that the build's own HOME override hides. That is exactly how this went unnoticed. Not a regression -- build-ubunturepo produces byte-identical unsubstituted placeholders in the same .git-less tree, verified by running it there. It is a pre-existing hole that CD masks by writing Gitinfo in the pipeline. Verified on xcat-master-ub: with a readable checkout the deb carries 'Version ' . '2.19.0' . ' (git commit 0030133c896854119cf652eb718f92452e905696)'; without one it carries '(git commit unknown)' and the build prints the warning naming the tree, the command to run and the HOME to run it under. Nine assertions drive modifyUtils itself -- stamping both forms, and each missing argument -- and dropping either sed, or restoring the silent exit, reddens it. Signed-off-by: Daniel Hilst <392820+dhilst@users.noreply.github.com>
xCAT
xCAT is a toolkit for deployment and administration of clusters of all sizes.
The xCAT sunset was only a quick eclipse
Dear xCAT Community,
The xCAT sunset has changed course. VersatusHPC has been invited to join the xCAT Consortium, and future development will move toward direct upstream contributions coordinated with the Consortium and its existing member companies.
That matters most for Enterprise Linux 10 (EL10). EL10 support is coming to xCAT, restoring a future operating-system path for sites that still rely on xCAT. This is an important change from the previous sunset guidance, where the lack of an EL10 path was one of the strongest reasons to move away from xCAT.
The xCAT Consortium continues to recommend Confluent as the long-term successor to xCAT, and that remains the Consortium position. Users planning new cluster-management deployments should evaluate Confluent and its xCAT comparison documentation.
At the same time, xCAT is no longer sunsetted. The Consortium and participating companies will continue updating xCAT while there is community and user demand for it.
In summary:
- xCAT development is continuing upstream through the Consortium and participating companies.
- Enterprise Linux 10 support is coming.
- Confluent remains the Consortium-recommended successor and migration path.
- xCAT updates will continue while there is community and user demand.
We want to thank the xCAT Consortium and community for keeping this project moving. The sun went behind the moon for a moment, but xCAT is still here.
For more information on Confluent and how to get started, please visit the Confluent: Project Page, Documentation or Confluent vs xCAT comparison.
With thanks,
The xCAT Consortium
Documentation
xCAT Documentation is hosted on Read The Docs: https://xcat-docs.readthedocs.io
Status
| xCAT Version | Build Status |
|---|---|
| Latest (master branch) | |
| Stable (latest release) |
Looking for older versions?
Open Source License
xCAT is made available under the EPL license: https://opensource.org/licenses/eclipse-1.0.php
Developers
Want to help? Check out the developers guide!