ci: add smoke workflow against sdk_demo_backend#10
Merged
Conversation
Adds .github/workflows/smoke.yml that runs the existing PlayMode SmokeTest against a freshly-booted sdk_demo_backend on every PR and push to main. The workflow: - checks asobi-unity out as an embedded UPM package under _unity_project/Packages/com.asobi.sdk - scaffolds a minimal Unity 2022.3.50f1 host project that lists the package as a testable - clones widgrensit/sdk_demo_backend, brings it up via docker compose, and waits for /api/v1/auth/register to respond < 500 - runs PlayMode tests via game-ci/unity-test-runner@v4 with ASOBI_URL=http://localhost:8084 - dumps docker compose logs on failure and tears the stack down in always() Requires UNITY_LICENSE, UNITY_EMAIL and UNITY_PASSWORD repo secrets to be configured before the job can pass.
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
.github/workflows/smoke.ymlthat runs the existingTests/Runtime/SmokeTest.cs(PlayMode,[UnityTest]) against a freshly-bootedwidgrensit/sdk_demo_backendon every PR and push tomain._unity_project/, embeds asobi-unity atPackages/com.asobi.sdk/, and lists it as atestableso the package's PlayMode tests get picked up bygame-ci/unity-test-runner@v4.sdk_demo_backendviadocker compose up -d, pollsPOST /api/v1/auth/registeruntil it responds< 500, runs the test withASOBI_URL=http://localhost:8084, dumpsdocker compose logson failure, and tears down withdocker compose down -vinalways().SMOKE.mdflow (auth + WS, matchmaker →match.matched, input → state) — the test was already updated in feat: smoke test (UnityTest; CI deferred on license activation) #8 / DX sweep: default port 8084, README quickstart fixes (no fake typed events) #9 and is unchanged here.Required secrets
Before this job can pass, the maintainer must add the following repo secrets (
game-ci/unity-test-runner@v4requirement):UNITY_LICENSE— contents of the activatedUnity_v2022.x.ulflicense file (personal/plus). For Pro, useUNITY_SERIALinstead — adjust the workflow if so.UNITY_EMAIL— Unity ID email used to activate the license.UNITY_PASSWORD— Unity ID password.Until those are present the job will fail at the test-runner step with an activation error; the docker bring-up and teardown will still run.
Test plan
UNITY_LICENSE,UNITY_EMAIL,UNITY_PASSWORDto repo secrets.sdk_demo_backend.docker compose logsare dumped on intentional failure (e.g. break the test temporarily) and that the stack is torn down regardless.