From 2d13a34304d86f795a21144d8e2671606cfbc526 Mon Sep 17 00:00:00 2001 From: mryoung Date: Sat, 12 Sep 2020 11:21:13 +0200 Subject: [PATCH] Optimized the Installscript Always downloads latest release now instead of a Hardcoded version --- OpenRA/OpenRA Red Alert/egg-open-r-a.json | 31 +++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/OpenRA/OpenRA Red Alert/egg-open-r-a.json b/OpenRA/OpenRA Red Alert/egg-open-r-a.json index 1da76562..5b8aa253 100644 --- a/OpenRA/OpenRA Red Alert/egg-open-r-a.json +++ b/OpenRA/OpenRA Red Alert/egg-open-r-a.json @@ -3,7 +3,7 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2020-09-11T16:47:07+02:00", + "exported_at": "2020-09-12T11:18:59+02:00", "name": "OpenRA", "author": "patz.michael@gmail.com", "description": "OpenRA is a project that recreates and modernizes the classic Command & Conquer real time strategy games. We have developed a flexible open source game engine (the OpenRA engine) that provides a common platform for rebuilding and reimagining classic 2D and 2.5D RTS games (the OpenRA mods).", @@ -17,7 +17,7 @@ }, "scripts": { "installation": { - "script": "#!\/bin\/bash\r\n# Vanilla Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n## install packages to get version and download links\r\napt update\r\napt install -y curl wget file \r\n\r\nmkdir -p \/mnt\/server\/\r\ncd \/mnt\/server\/\r\n\r\nwget https:\/\/github.com\/OpenRA\/OpenRA\/releases\/download\/release-20200503\/OpenRA-Red-Alert-x86_64.AppImage\r\nchmod +x OpenRA-Red-Alert-x86_64.AppImage\r\n.\/OpenRA-Red-Alert-x86_64.AppImage --appimage-extract\r\nrm OpenRA-Red-Alert-x86_64.AppImage\r\ncd squashfs-root\r\nchmod +x AppRun", + "script": "#!\/bin\/bash\r\n# Vanilla Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n## install packages to get version and download links\r\napt update\r\napt install -y curl wget file jq\r\n\r\ncd \/mnt\/server\/\r\n\r\nif [ -z \"${GITHUB_USER}\" ] && [ -z \"${GITHUB_OAUTH_TOKEN}\" ] ; then\r\n echo -e \"using anon api call\"\r\nelse\r\n echo -e \"user and oauth token set\"\r\n alias curl='curl -u ${GITHUB_USER}:${GITHUB_OAUTH_TOKEN} '\r\nfi\r\n\r\n## get release info and download links\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/${GITHUB_PACKAGE}\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/${GITHUB_PACKAGE}\/releases\")\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_LINK=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})\r\nelse\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n DOWNLOAD_LINK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_LINK=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n fi\r\nfi\r\n\r\nwget $DOWNLOAD_LINK\r\n\r\n#wget https:\/\/github.com\/OpenRA\/OpenRA\/releases\/download\/release-20200503\/OpenRA-Red-Alert-x86_64.AppImage\r\nchmod +x OpenRA-Red-Alert-x86_64.AppImage\r\n.\/OpenRA-Red-Alert-x86_64.AppImage --appimage-extract\r\nrm OpenRA-Red-Alert-x86_64.AppImage\r\ncd squashfs-root\r\nchmod +x AppRun", "container": "debian:buster-slim", "entrypoint": "bash" } @@ -94,6 +94,33 @@ "user_viewable": true, "user_editable": true, "rules": "string|max:20" + }, + { + "name": "GITHUB_PACKAGE", + "description": "GITHUB_PACKAGE", + "env_variable": "GITHUB_PACKAGE", + "default_value": "OpenRA\/OpenRA", + "user_viewable": false, + "user_editable": false, + "rules": "required|string|max:20" + }, + { + "name": "MATCH", + "description": "MATCH", + "env_variable": "MATCH", + "default_value": "OpenRA-Red-Alert-x86_64.AppImage", + "user_viewable": false, + "user_editable": false, + "rules": "required|string|max:50" + }, + { + "name": "VERSION", + "description": "VERSION", + "env_variable": "VERSION", + "default_value": "latest", + "user_viewable": false, + "user_editable": false, + "rules": "required|string|max:20" } ] } \ No newline at end of file