RetroDECK/.github/workflows/flathub_push_cooker.yml
2022-10-08 15:41:17 +02:00

83 lines
3 KiB
YAML

name: PUSH-cooker-flathub
on:
workflow_dispatch:
jobs:
Pushing_cooker_into_flathub:
runs-on: ubuntu-latest
steps:
- name: Pushing
shell: bash
run: |
# EDITABLES:
rd_branch=${GITHUB_REF_NAME}
echo $rd_branch
gits_folder="${GITHUB_WORKSPACE}/gits" # without last /
mkdir -vp $gits_folder
cd $gits_folder
if [ -d flathub ]; then
rm -rf flathub
fi
git clone --recursive https://github.com/flathub/net.retrodeck.retrodeck.git flathub
cd $gits_folder
git clone --recursive https://github.com/XargonWan/RetroDECK RetroDECK
cd $gits_folder/RetroDECK
# NON-EDITABLES
#relname="$rd_branch-"$(date +%d%m%y.%H%M)
relname="cooker-"$(git rev-parse --short HEAD)
git checkout $rd_branch
git submodule init
git submodule update
# NOTE: the only linked submodules are: rd-submodules/retroarch
# these must be included in the exclusion list as they must be redownloaded
#sync -rav --progress --exclude={'res/screenshots/','shared-modules/','rd-submodules/retroarch','.git/','docs','retrodeck-flatpak/','retrodeck-flatpak-cooker/','.flatpak-builder/'} ~/RetroDECK/ ~/flathub/
cd $gits_folder/flathub
git checkout -b $relname
git rm -rf *
git clean -fxd # restroing git index
# Copying only a few files as the others are cloned by git in retrodeck.sh
cd $gits_folder/RetroDECK
cp -rf \
'flathub.json' \
'LICENSE' \
'flathub.yml' \
'README.md' \
$gits_folder/flathub/
cd $gits_folder/flathub
ls -lah
# manipulating manifest
mv flathub.yml net.retrodeck.retrodeck.yml
version=$(\
curl -sL \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer ${{ secrets.TRIGGER_BUILD_TOKEN }}" \
https://api.github.com/repos/XargonWan/RetroDECK-cooker/releases/latest \
| jq .name \
)
#sha=$(curl -sL https://github.com/XargonWan/RetroDECK-cooker/releases/download/$version/RetroDECK-Artifact.sha)
#echo $sha
echo $version
sed -i 's#"url: https://github.com/XargonWan/RetroDECK-cooker/releases/download/__VERSION__/RetroDECK-Artifact.tar.gz"#"url: https://github.com/XargonWan/RetroDECK-cooker/releases/download/$version/RetroDECK-Artifact.tar.gz"#g' net.retrodeck.retrodeck.yml
sed -i 's#"sha256: __SHA__"#"sha256: $sha"#g' net.retrodeck.retrodeck.yml
echo -e "Resulting manifest:\n"
cat net.retrodeck.retrodeck.yml
git add *
git commit -m "Updated flathub/net.retrodeck.retrodeck from RetroDECK/$rd_branch"
git config --local user.name ${{ secrets.GITNAME }}
git config --local user.email ${{ secrets.GITMAIL }}
git push origin $relname