Optimized the Installscript

Always downloads latest release now instead of a Hardcoded version
This commit is contained in:
mryoung 2020-09-12 11:21:13 +02:00
parent eba1b1c20d
commit 2d13a34304

View File

@ -3,7 +3,7 @@
"meta": { "meta": {
"version": "PTDL_v1" "version": "PTDL_v1"
}, },
"exported_at": "2020-09-11T16:47:07+02:00", "exported_at": "2020-09-12T11:18:59+02:00",
"name": "OpenRA", "name": "OpenRA",
"author": "patz.michael@gmail.com", "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).", "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": { "scripts": {
"installation": { "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", "container": "debian:buster-slim",
"entrypoint": "bash" "entrypoint": "bash"
} }
@ -94,6 +94,33 @@
"user_viewable": true, "user_viewable": true,
"user_editable": true, "user_editable": true,
"rules": "string|max:20" "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"
} }
] ]
} }