Skip to content

Commit e054bda

Browse files
committed
check for .pkg
1 parent 3bbe6af commit e054bda

File tree

1 file changed

+24
-8
lines changed

1 file changed

+24
-8
lines changed

src/lib/owner.sh

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -124,16 +124,32 @@ update_owner() {
124124
find "$BKG_INDEX_DIR/$owner" -type f -name '*.json' ! -name '.*' -print0 | xargs -0 jq -cs '[.] | add' >"$BKG_INDEX_DIR/$owner/.json.tmp"
125125
jq -cs '{ ("package"): . }' "$BKG_INDEX_DIR/$owner/.json.tmp" >"$BKG_INDEX_DIR/$owner/.json"
126126
ytoxt "$BKG_INDEX_DIR/$owner/.json"
127-
jq -c '.package[]' "$BKG_INDEX_DIR/$owner/.json" >"$BKG_INDEX_DIR/$owner/.json.tmp"
128-
mv -f "$BKG_INDEX_DIR/$owner/.json.tmp" "$BKG_INDEX_DIR/$owner/.json"
127+
128+
# if .package exists, split it into array
129+
if jq -e '.package' "$BKG_INDEX_DIR/$owner/.json" &>/dev/null; then
130+
jq -c '.package[]' "$BKG_INDEX_DIR/$owner/.json" >"$BKG_INDEX_DIR/$owner/.json.tmp"
131+
mv -f "$BKG_INDEX_DIR/$owner/.json.tmp" "$BKG_INDEX_DIR/$owner/.json"
132+
fi
129133

130134
echo "Creating $owner repo arrays..."
131-
parallel "jq -c --arg repo {} '[.[] | select(.repo == \$repo)]' \"$BKG_INDEX_DIR/$owner/.json\" > \"$BKG_INDEX_DIR/$owner/{}/.json.tmp\"" <<<"$owner_repos"
132-
xargs -I {} bash -c "jq -cs '{ (\"package\"): . }' \"$BKG_INDEX_DIR/$owner/{}/.json.tmp\" > \"$BKG_INDEX_DIR/$owner/{}/.json\"" <<<"$owner_repos"
133-
xargs -I {} bash -c "ytoxt \"$BKG_INDEX_DIR/$owner/{}/.json\"" <<<"$owner_repos"
134-
xargs -I {} bash -c "jq -c '.package[]' \"$BKG_INDEX_DIR/$owner/{}/.json\" > \"$BKG_INDEX_DIR/$owner/{}/.json.tmp\"" <<<"$owner_repos"
135-
xargs -I {} mv -f "$BKG_INDEX_DIR/$owner/{}/.json.tmp" "$BKG_INDEX_DIR/$owner/{}/.json" <<<"$owner_repos"
136-
fi
135+
# shellcheck disable=SC2086,SC2016
136+
parallel '
137+
repo={}
138+
repo_dir="$BKG_INDEX_DIR/'"$owner"'/$repo"
139+
src="$BKG_INDEX_DIR/'"$owner"'/.json"
140+
tmp="$repo_dir/.json.tmp"
141+
dst="$repo_dir/.json"
142+
143+
jq -c --arg repo "$repo" '"'"'[.[] | select(.repo == $repo)]'"'"' "$src" >"$tmp" &&
144+
jq -cs '"'"'{ ("package"): . }'"'"' "$tmp" >"$dst" &&
145+
ytoxt "$dst"
146+
if jq -e '"'"'.package'"'"' "$dst" &>/dev/null; then
147+
jq -c '"'"'.package[]'"'"' "$dst" >"$tmp"
148+
mv -f "$tmp" "$dst"
149+
fi
150+
' ::: $owner_repos
151+
152+
fi
137153

138154
sed -i '/^\(.*\/\)*'"$owner"'$/d' "$BKG_OWNERS"
139155
echo "Updated $owner"

0 commit comments

Comments
 (0)