2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2026-09-25 17:24:07 +00:00
Daniel Hilst 88441f6ec3 fix(xcat-core): build locks the shared tree refuses to grant
A build tree can live on an NFS re-export. The kernel refuses locks on one --
"Clients are not allowed to get file locks or delegations from a reexport
server" -- so every flock() there answers errno 524, and a build that takes one
dies before it starts.

buildrpms.pl's per-target lock and BuildUtils.pm's take_build_lock, which
builddebs.pl calls for the Ubuntu core build, are both atomic mkdir claims now.
Each records its owner and names it when it refuses.

A directory is not released by a filehandle closing, which is how both locks
were freed before. buildrpms.pl releases from END, and again in abort_builds
because that handler re-raises the signal with DEFAULT and END blocks do not run
then -- a killed build would otherwise strand the lock for every later one.
BuildUtils returns a small object whose DESTROY releases it, preserving the
caller's "hold the returned value" contract.

Both releases are guarded by owning pid: both scripts fork, and the flock they
replace could not be released by a child.

builddebs_lock.t closed the returned value to prove the lock is released, which
is "Not a GLOB reference" against the new contract. It now lets the value go out
of scope. What it asserts is unchanged: a second build of the same checkout is
refused, and the next one succeeds once the first releases.

Signed-off-by: Daniel Hilst <392820+dhilst@users.noreply.github.com>
2026-09-23 10:39:36 -03:00
2024-05-07 16:43:07 +02:00
2018-11-28 10:28:17 +08:00
2021-04-05 09:34:37 -04:00
2018-02-09 01:03:46 -05:00
2024-04-20 02:18:05 +02:00
2026-04-17 03:14:04 -03:00

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) Documentation Status
Stable (latest release) Documentation Status

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!

S
Description
No description provided
Readme EPL-1.0 236 MiB
Languages
Perl 76.7%
Shell 11.9%
JavaScript 6%
Go Template 2.4%
Python 1.5%
Other 1.1%