10 "install/**/Library/**/*",
15 with open(path,
"rb")
as f:
16 for chunk
in iter(
lambda: f.read(8192), b
""):
22for pattern
in fileglobs:
23 for path
in glob.glob(pattern, recursive=
True):
24 if os.path.isfile(path):
25 normalized = path.replace(
"\\",
"/")
26 if normalized
not in hashes:
30 {
"path": path,
"sha256": digest}
31 for path, digest
in sorted(hashes.items())
35 "os":
"${{ matrix.os }}",
36 "cc":
"${{ matrix.c_compiler }}",
37 "cxx":
"${{ matrix.cpp_compiler }}",
38 "attestation_url":
"${{ steps.attest.outputs.attestation-url }}",
39 "attestation_id":
"${{ steps.attest.outputs.attestation-id }}",
40 "commit":
"${{ github.sha }}",
41 "run_id":
"${{ github.run_id }}",
45os.makedirs(
"install", exist_ok=
True)
47with open(
"install/attestations.json",
"w")
as f:
48 json.dump(data, f, indent=2)