selfhosted-poc #18
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Selfhosted Runner Proof of Concept | |
run-name: selfhosted-poc | |
on: | |
push: | |
branches: # Made towards the following | |
- ci/* | |
workflow_dispatch: {} | |
jobs: | |
ping-stage-test: | |
name: Ping stage backend | |
if: false | |
runs-on: ubuntu-22.04-4-core | |
steps: | |
- name: Setup Tailscale | |
uses: tailscale/github-action@v2 | |
with: | |
oauth-client-id: ${{ SECRETS.CI_TS_OAUTH_CLIENT_ID }} | |
oauth-secret: ${{ SECRETS.CI_TS_OAUTH_SECRET }} | |
tags: tag:ci | |
- name: Setup git | |
run: | | |
git config --global --add safe.directory /__w/unreal-sdk/unreal-sdk | |
##- name: Setup curl | |
## run: | | |
## sudo apt-get update | |
## apt-get install -y curl | |
- name: Checkout this repository | |
uses: actions/checkout@v4 | |
- name: Cat uplugin file | |
run: cat LootLockerSDK/LootLockerSDK.uplugin | |
- name: Check branch | |
run: git branch | |
- name: Ping stage | |
run: | | |
curl -X POST "https://${{ SECRETS.LL_STAGE_URL }}/game/v2/session/guest" -H "Content-Type: application/json" -d "{\"game_key\": \"dev_dc52acb52a8b49be81761e709f1df9fd\", \"game_version\": \"0.10.0.0\", \"player_identifier\": \"k8s-runner-guest\"}" | |
- name: Docker Authorize | |
run: | | |
docker login ghcr.io -u ${{ SECRETS.UNREAL_DOCKER_PACKAGES_READ_USERNAME }} -p ${{ SECRETS.UNREAL_DOCKER_PACKAGES_READ_ACCESS_TOKEN }} | |
docker pull ghcr.io/epicgames/unreal-engine:dev-5.4 | |
package-sdk: | |
name: Package SDK | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
UE_VERSION: ${{ fromJson(VARS.CI_UNREAL_VERSIONS) }} | |
steps: | |
- name: Setup git | |
run: | | |
git config --global --add safe.directory /__w/unreal-sdk/unreal-sdk | |
- name: Checkout this repository | |
uses: actions/checkout@v4 | |
- name: Package SDK | |
run: | | |
SDK_PATH="$(pwd)" | |
SDK_NAME=`find "$SDK_PATH" -type f -name "*.uplugin" | sed -n -r "s/.*\/([-A-Za-z0-9_]+)\.uplugin/\1/p"` | |
SDK_VERSION=`sed -n -r 's/^ +\"VersionName\": \"([0-9]+.[0-9]+.[0-9]+)\",/\1/p' < "$SDK_PATH/$SDK_NAME/$SDK_NAME.uplugin"` | |
sed -i -r "s/^( +)(\"VersionName\": \"[0-9\.]+\",)/\1\2\n\1\"EngineVersion\": \"${{ matrix.UE_VERSION }}\",/g" "$SDK_PATH/$SDK_NAME/$SDK_NAME.uplugin" | |
CURRENT_PACKAGE_DIR="Packaged" | |
echo "PACKAGE_DIR=${CURRENT_PACKAGE_DIR}" >> $GITHUB_ENV | |
mkdir -p "$CURRENT_PACKAGE_DIR" | |
PACKAGE_NAME="${SDK_NAME}v${SDK_VERSION}_for_Unreal_Engine_${{ matrix.UE_VERSION }}.zip" | |
echo "PACKAGE_NAME=${PACKAGE_NAME}" >> $GITHUB_ENV | |
tar -a -cf "$CURRENT_PACKAGE_DIR/$PACKAGE_NAME" -C "$SDK_PATH" "$SDK_NAME" | |
echo " Package $PACKAGE_NAME produced to path $CURRENT_PACKAGE_DIR" | |
- name: Expose packaged artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ ENV.PACKAGE_NAME }} | |
path: ${{ ENV.PACKAGE_DIR }}/${{ ENV.PACKAGE_NAME }} |