flectra_community/gather.sh

75 lines
2.0 KiB
Bash
Raw Normal View History

2022-03-18 08:59:38 +00:00
# Flectra Community Module Gather
apk update
apk add jq
2022-03-19 17:03:53 +00:00
## ADD REMOTE
for i in {1..3}; do
repos=$(curl -s "https://gitlab.com/api/v4/groups/flectra-community/projects?per_page=100&page=${i}")
git config --global merge.ours.driver true
for row in $(echo "${repos}" | jq -r '.[] | @base64'); do
_jq() {
echo ${row} | base64 --decode | jq -r ${1}
}
url=$(_jq '.http_url_to_repo')
name=$(_jq '.name')
echo ${name}
echo ${url}
if [ $name != 'l10n-switzerland' ]
then
git remote add $name $url
git fetch $name
fi
done
git gc --prune=now
done
for a in 2.0 1.0; do
echo "=========================================="
echo ${a}
2022-03-19 14:00:02 +00:00
git checkout ${a}
for i in {1..3}; do
repos=$(curl -s "https://gitlab.com/api/v4/groups/flectra-community/projects?per_page=100&page=${i}")
git config --global merge.ours.driver true
for row in $(echo "${repos}" | jq -r '.[] | @base64'); do
_jq() {
echo ${row} | base64 --decode | jq -r ${1}
}
url=$(_jq '.http_url_to_repo')
name=$(_jq '.name')
2022-03-18 08:59:38 +00:00
2022-03-19 14:00:02 +00:00
echo ${name}
echo ${url}
2022-03-18 08:59:38 +00:00
2022-03-19 14:00:02 +00:00
if [ $name != 'l10n-switzerland' ]
then
git merge --no-edit --allow-unrelated-histories $name/${a}
fi
done
2022-03-18 08:59:38 +00:00
done
2022-03-19 14:00:02 +00:00
git gc --prune=now
done
2022-03-19 17:03:53 +00:00
## REMOVE
for i in {1..3}; do
repos=$(curl -s "https://gitlab.com/api/v4/groups/flectra-community/projects?per_page=100&page=${i}")
git config --global merge.ours.driver true
for row in $(echo "${repos}" | jq -r '.[] | @base64'); do
_jq() {
echo ${row} | base64 --decode | jq -r ${1}
}
url=$(_jq '.http_url_to_repo')
name=$(_jq '.name')
echo ${name}
echo ${url}
if [ $name != 'l10n-switzerland' ]
then
git remote remove $name
fi
done
done
git push --all