Add plugin upload workflow and related enhancements

- Introduced a new upload workflow for the Atlas plugin to Roblox using Lune and OpenCloud.
- Added `UploadDetails.json` to store plugin metadata.
- Updated `build.rs` to include `UploadDetails.json` in the plugin snapshot.
- Enhanced `plugin.project.json` to reference the new `UploadDetails`.
- Added a new submodule for `opencloud-execute` to facilitate plugin uploads.
- Created scripts for publishing the plugin via both PowerShell and Bash.
- Updated GitHub Actions workflow to include steps for installing Rokit and uploading the plugin.

These changes aim to streamline the plugin release process and improve integration with Roblox's marketplace.
This commit is contained in:
Joe 2026-02-19 06:12:03 -06:00
parent 8cf140af3a
commit 4918fb80c7
16 changed files with 752 additions and 19 deletions

27
scripts/publish-plugin.sh Executable file
View file

@ -0,0 +1,27 @@
#!/usr/bin/env bash
# Build and publish the Atlas plugin to the Creator Store via OpenCloud.
# Loads env vars from .env file in the repo root.
# Required .env vars: PLUGIN_UPLOAD_TOKEN, PLUGIN_CI_UNIVERSE_ID, PLUGIN_CI_PLACE_ID
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ENV_FILE="$SCRIPT_DIR/../.env"
if [ -f "$ENV_FILE" ]; then
set -a
source "$ENV_FILE"
set +a
fi
if [ -z "${PLUGIN_UPLOAD_TOKEN:-}" ]; then
echo "Error: PLUGIN_UPLOAD_TOKEN not set. Add it to .env or set as env var." >&2
exit 1
fi
export RBX_API_KEY="$PLUGIN_UPLOAD_TOKEN"
export RBX_UNIVERSE_ID="${PLUGIN_CI_UNIVERSE_ID:-}"
export RBX_PLACE_ID="${PLUGIN_CI_PLACE_ID:-}"
echo "Building and uploading plugin..."
lune run upload-plugin Atlas.rbxm