Improve method of retrieving tagged releases

This commit is contained in:
Lue 2022-11-01 04:35:45 +00:00
parent 1a47dc4b55
commit 12ee2c75b7
No known key found for this signature in database
GPG key ID: 1B176485AE01B912
2 changed files with 15 additions and 18 deletions

1
.gitignore vendored
View file

@ -1,3 +1,2 @@
sources.old.json
sources.new.json
sources.new2.json

32
update
View file

@ -12,29 +12,27 @@ def toentry(vsn; x):
to_entries[] |
select(.key as $key | any($targets[]; . == $key)) | {
(todarwin(.key)): {
"url": .value.tarball,
"sha256": .value.shasum,
"version": $version,
"url": .value.tarball,
"sha256": .value.shasum,
"version": $version,
}
}
)] | add;
)] | add | first(values, {});
to_entries[] | {
reduce to_entries[] as $entry ({}; . * (
$entry | {
(.key): (
if (.key != "master") then
toentry(.key; .value)
else {
"latest": toentry(.value.version; .value),
(.value.date): toentry(.value.version; .value),
} end
if (.key != "master") then
toentry(.key; .value)
else {
"latest": toentry(.value.version; .value),
(.value.date): toentry(.value.version; .value),
} end
)
}
}
))
' > sources.new.json
# Merge all of the objects from the previous step. Maybe there is a way
# to do this in one command (probably), but I don't know how!
jq -s add sources.new.json > sources.new2.json
# For debugging
# cat sources.new.json
# exit
@ -43,4 +41,4 @@ jq -s add sources.new.json > sources.new2.json
cp sources.json sources.old.json
# Recursive merge
jq -s '.[0] * .[1]' sources.old.json sources.new2.json > sources.json
jq -s '.[0] * .[1]' sources.old.json sources.new.json > sources.json