Skip to content

Commit

Permalink
Merge pull request #17529 from Homebrew/revert-17518-revert-17517-rev…
Browse files Browse the repository at this point in the history
…ert-17507-path_exec_files
  • Loading branch information
p-linnane committed Jun 18, 2024
2 parents 9a769d9 + 8e089b2 commit 4f7efbb
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 40 deletions.
21 changes: 4 additions & 17 deletions Library/Homebrew/dev-cmd/bottle.rb
Original file line number Diff line number Diff line change
Expand Up @@ -628,17 +628,6 @@ def bottle_formula(formula)

return unless args.json?

if keg
keg_prefix = "#{keg}/"
path_exec_files = [keg/"bin", keg/"sbin"].select(&:exist?)
.flat_map(&:children)
.select(&:executable?)
.map { |path| path.to_s.delete_prefix(keg_prefix) }
all_files = keg.find
.select(&:file?)
.map { |path| path.to_s.delete_prefix(keg_prefix) }
end

json = {
formula.full_name => {
"formula" => {
Expand All @@ -663,12 +652,10 @@ def bottle_formula(formula)
"date" => Pathname(filename.to_s).mtime.strftime("%F"),
"tags" => {
bottle_tag.to_s => {
"filename" => filename.url_encode,
"local_filename" => filename.to_s,
"sha256" => sha256,
"tab" => tab.to_bottle_hash,
"path_exec_files" => path_exec_files,
"all_files" => all_files,
"filename" => filename.url_encode,
"local_filename" => filename.to_s,
"sha256" => sha256,
"tab" => tab.to_bottle_hash,
},
},
},
Expand Down
26 changes: 3 additions & 23 deletions Library/Homebrew/github_packages.rb
Original file line number Diff line number Diff line change
Expand Up @@ -323,7 +323,7 @@ def upload_bottle(user, token, skopeo, formula_full_name, bottle_hash, keep_old:
processed_image_refs << manifest["annotations"]["org.opencontainers.image.ref.name"]
end

manifests += bottle_hash["bottle"]["tags"].flat_map do |bottle_tag, tag_hash|
manifests += bottle_hash["bottle"]["tags"].map do |bottle_tag, tag_hash|
bottle_tag = Utils::Bottles::Tag.from_symbol(bottle_tag.to_sym)

tag = GitHubPackages.version_rebuild(version, rebuild, bottle_tag.to_s)
Expand Down Expand Up @@ -384,18 +384,13 @@ def upload_bottle(user, token, skopeo, formula_full_name, bottle_hash, keep_old:

local_file_size = File.size(local_file)

path_exec_files_string = if (path_exec_files = tag_hash["path_exec_files"].presence)
path_exec_files.join(",")
end

descriptor_annotations_hash = {
"org.opencontainers.image.ref.name" => tag,
"sh.brew.bottle.cpu.variant" => cpu_variant,
"sh.brew.bottle.digest" => tar_gz_sha256,
"sh.brew.bottle.glibc.version" => glibc_version,
"sh.brew.bottle.size" => local_file_size.to_s,
"sh.brew.tab" => tab.to_json,
"sh.brew.path_exec_files" => path_exec_files_string,
}.compact_blank

annotations_hash = formula_annotations_hash.merge(descriptor_annotations_hash).merge(
Expand Down Expand Up @@ -426,28 +421,13 @@ def upload_bottle(user, token, skopeo, formula_full_name, bottle_hash, keep_old:
validate_schema!(IMAGE_MANIFEST_SCHEMA_URI, image_manifest)
manifest_json_sha256, manifest_json_size = write_hash(blobs, image_manifest)

bottle_manifests = T.let([{
{
mediaType: "application/vnd.oci.image.manifest.v1+json",
digest: "sha256:#{manifest_json_sha256}",
size: manifest_json_size,
platform: platform_hash,
annotations: descriptor_annotations_hash,
}], T::Array[T::Hash[Symbol, String]])

if (all_files = tag_hash["all_files"].presence)
all_files_json_sha256, all_files_size = write_hash(blobs, all_files)
bottle_manifests << {
mediaType: "application/sh.brew.all_files+json",
digest: "sha256:#{all_files_json_sha256}",
size: all_files_size,
annotations: {
"org.opencontainers.image.ref.name" => tag,
"sh.brew.bottle.cpu.variant" => cpu_variant,
}.compact_blank,
}
end

bottle_manifests
}
end

index_json_sha256, index_json_size = write_image_index(manifests, blobs, formula_annotations_hash)
Expand Down

0 comments on commit 4f7efbb

Please sign in to comment.