@@ -135,9 +135,9 @@ jobs:
135135 echo "Cleaning up disk space on k3d node..."
136136 docker exec k3d-unity-builder-agent-0 sh -c "docker system prune -af --volumes || true" 2>/dev/null || true
137137 docker exec k3d-unity-builder-agent-0 sh -c "df -h" 2>/dev/null || true
138- - name : Run cloud-runner-end2end-caching test
139- timeout-minutes : 60
140- run : yarn run test "cloud-runner-end2end-caching " --detectOpenHandles --forceExit --runInBand
138+ - name : Run cloud-runner-image test (validate image creation)
139+ timeout-minutes : 10
140+ run : yarn run test "cloud-runner-image " --detectOpenHandles --forceExit --runInBand
141141 env :
142142 UNITY_EMAIL : ${{ secrets.UNITY_EMAIL }}
143143 UNITY_PASSWORD : ${{ secrets.UNITY_PASSWORD }}
@@ -148,7 +148,6 @@ jobs:
148148 versioning : None
149149 KUBE_STORAGE_CLASS : local-path
150150 PROVIDER_STRATEGY : k8s
151- # Set resource requests for tests - increased memory to prevent OOM kills
152151 containerCpu : ' 1000'
153152 containerMemory : ' 1024'
154153 AWS_ACCESS_KEY_ID : test
@@ -176,9 +175,91 @@ jobs:
176175 sleep 3
177176 rm -rf ./cloud-runner-cache/* || true
178177 docker system prune -f || true
179- - name : Run cloud-runner-end2end-retaining test
178+ - name : Run cloud-runner-kubernetes test (simple K8s build validation)
179+ timeout-minutes : 30
180+ run : yarn run test "cloud-runner-kubernetes" --detectOpenHandles --forceExit --runInBand
181+ env :
182+ UNITY_EMAIL : ${{ secrets.UNITY_EMAIL }}
183+ UNITY_PASSWORD : ${{ secrets.UNITY_PASSWORD }}
184+ UNITY_SERIAL : ${{ secrets.UNITY_SERIAL }}
185+ PROJECT_PATH : test-project
186+ TARGET_PLATFORM : StandaloneWindows64
187+ cloudRunnerTests : true
188+ versioning : None
189+ KUBE_STORAGE_CLASS : local-path
190+ PROVIDER_STRATEGY : k8s
191+ ENABLE_K8S_E2E : ' true'
192+ containerCpu : ' 1000'
193+ containerMemory : ' 1024'
194+ AWS_ACCESS_KEY_ID : test
195+ AWS_SECRET_ACCESS_KEY : test
196+ AWS_S3_ENDPOINT : http://localhost:4566
197+ AWS_ENDPOINT : http://localhost:4566
198+ INPUT_AWSS3ENDPOINT : http://localhost:4566
199+ INPUT_AWSENDPOINT : http://localhost:4566
200+ AWS_S3_FORCE_PATH_STYLE : ' true'
201+ AWS_EC2_METADATA_DISABLED : ' true'
202+ GIT_PRIVATE_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
203+ GITHUB_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
204+ - name : Clean up K8s test resources
205+ run : |
206+ kubectl delete jobs --all --ignore-not-found=true -n default || true
207+ kubectl get pods -n default -o name 2>/dev/null | grep -E "(unity-builder-job-|helper-pod-)" | while read pod; do
208+ kubectl delete "$pod" --ignore-not-found=true || true
209+ done || true
210+ kubectl get pvc -n default -o name 2>/dev/null | grep "unity-builder-pvc-" | while read pvc; do
211+ kubectl delete "$pvc" --ignore-not-found=true || true
212+ done || true
213+ kubectl get secrets -n default -o name 2>/dev/null | grep "build-credentials-" | while read secret; do
214+ kubectl delete "$secret" --ignore-not-found=true || true
215+ done || true
216+ sleep 3
217+ rm -rf ./cloud-runner-cache/* || true
218+ docker system prune -f || true
219+ - name : Run cloud-runner-s3-steps test (validate S3 operations with K8s)
220+ timeout-minutes : 30
221+ run : yarn run test "cloud-runner-s3-steps" --detectOpenHandles --forceExit --runInBand
222+ env :
223+ UNITY_EMAIL : ${{ secrets.UNITY_EMAIL }}
224+ UNITY_PASSWORD : ${{ secrets.UNITY_PASSWORD }}
225+ UNITY_SERIAL : ${{ secrets.UNITY_SERIAL }}
226+ PROJECT_PATH : test-project
227+ TARGET_PLATFORM : StandaloneWindows64
228+ cloudRunnerTests : true
229+ versioning : None
230+ KUBE_STORAGE_CLASS : local-path
231+ PROVIDER_STRATEGY : k8s
232+ AWS_STACK_NAME : game-ci-team-pipelines
233+ containerCpu : ' 1000'
234+ containerMemory : ' 1024'
235+ AWS_ACCESS_KEY_ID : test
236+ AWS_SECRET_ACCESS_KEY : test
237+ AWS_S3_ENDPOINT : http://localhost:4566
238+ AWS_ENDPOINT : http://localhost:4566
239+ INPUT_AWSS3ENDPOINT : http://localhost:4566
240+ INPUT_AWSENDPOINT : http://localhost:4566
241+ AWS_S3_FORCE_PATH_STYLE : ' true'
242+ AWS_EC2_METADATA_DISABLED : ' true'
243+ GIT_PRIVATE_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
244+ GITHUB_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
245+ - name : Clean up K8s test resources
246+ run : |
247+ kubectl delete jobs --all --ignore-not-found=true -n default || true
248+ kubectl get pods -n default -o name 2>/dev/null | grep -E "(unity-builder-job-|helper-pod-)" | while read pod; do
249+ kubectl delete "$pod" --ignore-not-found=true || true
250+ done || true
251+ kubectl get pvc -n default -o name 2>/dev/null | grep "unity-builder-pvc-" | while read pvc; do
252+ kubectl delete "$pvc" --ignore-not-found=true || true
253+ done || true
254+ kubectl get secrets -n default -o name 2>/dev/null | grep "build-credentials-" | while read secret; do
255+ kubectl delete "$secret" --ignore-not-found=true || true
256+ done || true
257+ sleep 3
258+ rm -rf ./cloud-runner-cache/* || true
259+ docker system prune -f || true
260+ - name : Run cloud-runner-end2end-caching test
180261 timeout-minutes : 60
181- run : yarn run test "cloud-runner-end2end-retaining " --detectOpenHandles --forceExit --runInBand
262+ run : yarn run test "cloud-runner-end2end-caching " --detectOpenHandles --forceExit --runInBand
182263 env :
183264 UNITY_EMAIL : ${{ secrets.UNITY_EMAIL }}
184265 UNITY_PASSWORD : ${{ secrets.UNITY_PASSWORD }}
@@ -189,8 +270,9 @@ jobs:
189270 versioning : None
190271 KUBE_STORAGE_CLASS : local-path
191272 PROVIDER_STRATEGY : k8s
192- containerCpu : ' 512'
193- containerMemory : ' 512'
273+ # Set resource requests for tests - increased memory to prevent OOM kills
274+ containerCpu : ' 1000'
275+ containerMemory : ' 1024'
194276 AWS_ACCESS_KEY_ID : test
195277 AWS_SECRET_ACCESS_KEY : test
196278 AWS_S3_ENDPOINT : http://localhost:4566
@@ -216,9 +298,9 @@ jobs:
216298 sleep 3
217299 rm -rf ./cloud-runner-cache/* || true
218300 docker system prune -f || true
219- - name : Run cloud-runner-hooks test
301+ - name : Run cloud-runner-end2end-retaining test
220302 timeout-minutes : 60
221- run : yarn run test "cloud-runner-hooks " --detectOpenHandles --forceExit --runInBand
303+ run : yarn run test "cloud-runner-end2end-retaining " --detectOpenHandles --forceExit --runInBand
222304 env :
223305 UNITY_EMAIL : ${{ secrets.UNITY_EMAIL }}
224306 UNITY_PASSWORD : ${{ secrets.UNITY_PASSWORD }}
@@ -241,6 +323,21 @@ jobs:
241323 AWS_EC2_METADATA_DISABLED : ' true'
242324 GIT_PRIVATE_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
243325 GITHUB_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
326+ - name : Clean up K8s test resources
327+ run : |
328+ kubectl delete jobs --all --ignore-not-found=true -n default || true
329+ kubectl get pods -n default -o name 2>/dev/null | grep -E "(unity-builder-job-|helper-pod-)" | while read pod; do
330+ kubectl delete "$pod" --ignore-not-found=true || true
331+ done || true
332+ kubectl get pvc -n default -o name 2>/dev/null | grep "unity-builder-pvc-" | while read pvc; do
333+ kubectl delete "$pvc" --ignore-not-found=true || true
334+ done || true
335+ kubectl get secrets -n default -o name 2>/dev/null | grep "build-credentials-" | while read secret; do
336+ kubectl delete "$secret" --ignore-not-found=true || true
337+ done || true
338+ sleep 3
339+ rm -rf ./cloud-runner-cache/* || true
340+ docker system prune -f || true
244341 localstack :
245342 name : Cloud Runner Tests (LocalStack)
246343 runs-on : ubuntu-latest
@@ -298,6 +395,123 @@ jobs:
298395 rm -rf ./cloud-runner-cache/* || true
299396 docker system prune -f || true
300397 df -h
398+ - name : Run cloud-runner-image test (validate image creation)
399+ timeout-minutes : 10
400+ run : yarn run test "cloud-runner-image" --detectOpenHandles --forceExit --runInBand
401+ env :
402+ UNITY_EMAIL : ${{ secrets.UNITY_EMAIL }}
403+ UNITY_PASSWORD : ${{ secrets.UNITY_PASSWORD }}
404+ UNITY_SERIAL : ${{ secrets.UNITY_SERIAL }}
405+ PROJECT_PATH : test-project
406+ TARGET_PLATFORM : StandaloneWindows64
407+ cloudRunnerTests : true
408+ versioning : None
409+ KUBE_STORAGE_CLASS : local-path
410+ PROVIDER_STRATEGY : aws
411+ AWS_ACCESS_KEY_ID : test
412+ AWS_SECRET_ACCESS_KEY : test
413+ AWS_ENDPOINT : http://localhost:4566
414+ AWS_ENDPOINT_URL : http://localhost:4566
415+ AWS_S3_ENDPOINT : http://localhost:4566
416+ INPUT_AWSS3ENDPOINT : http://localhost:4566
417+ INPUT_AWSENDPOINT : http://localhost:4566
418+ AWS_S3_FORCE_PATH_STYLE : ' true'
419+ AWS_EC2_METADATA_DISABLED : ' true'
420+ GIT_PRIVATE_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
421+ GITHUB_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
422+ - name : Clean up disk space
423+ run : |
424+ rm -rf ./cloud-runner-cache/* || true
425+ docker system prune -f || true
426+ df -h
427+ - name : Run cloud-runner-environment test (validate environment variables)
428+ timeout-minutes : 30
429+ run : yarn run test "cloud-runner-environment" --detectOpenHandles --forceExit --runInBand
430+ env :
431+ UNITY_EMAIL : ${{ secrets.UNITY_EMAIL }}
432+ UNITY_PASSWORD : ${{ secrets.UNITY_PASSWORD }}
433+ UNITY_SERIAL : ${{ secrets.UNITY_SERIAL }}
434+ PROJECT_PATH : test-project
435+ TARGET_PLATFORM : StandaloneWindows64
436+ cloudRunnerTests : true
437+ versioning : None
438+ KUBE_STORAGE_CLASS : local-path
439+ PROVIDER_STRATEGY : aws
440+ AWS_ACCESS_KEY_ID : test
441+ AWS_SECRET_ACCESS_KEY : test
442+ AWS_ENDPOINT : http://localhost:4566
443+ AWS_ENDPOINT_URL : http://localhost:4566
444+ AWS_S3_ENDPOINT : http://localhost:4566
445+ INPUT_AWSS3ENDPOINT : http://localhost:4566
446+ INPUT_AWSENDPOINT : http://localhost:4566
447+ AWS_S3_FORCE_PATH_STYLE : ' true'
448+ AWS_EC2_METADATA_DISABLED : ' true'
449+ GIT_PRIVATE_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
450+ GITHUB_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
451+ - name : Clean up disk space
452+ run : |
453+ rm -rf ./cloud-runner-cache/* || true
454+ docker system prune -f || true
455+ df -h
456+ - name : Run cloud-runner-s3-steps test (validate S3 operations)
457+ timeout-minutes : 30
458+ run : yarn run test "cloud-runner-s3-steps" --detectOpenHandles --forceExit --runInBand
459+ env :
460+ UNITY_EMAIL : ${{ secrets.UNITY_EMAIL }}
461+ UNITY_PASSWORD : ${{ secrets.UNITY_PASSWORD }}
462+ UNITY_SERIAL : ${{ secrets.UNITY_SERIAL }}
463+ PROJECT_PATH : test-project
464+ TARGET_PLATFORM : StandaloneWindows64
465+ cloudRunnerTests : true
466+ versioning : None
467+ KUBE_STORAGE_CLASS : local-path
468+ PROVIDER_STRATEGY : aws
469+ AWS_STACK_NAME : game-ci-team-pipelines
470+ AWS_ACCESS_KEY_ID : test
471+ AWS_SECRET_ACCESS_KEY : test
472+ AWS_ENDPOINT : http://localhost:4566
473+ AWS_ENDPOINT_URL : http://localhost:4566
474+ AWS_S3_ENDPOINT : http://localhost:4566
475+ INPUT_AWSS3ENDPOINT : http://localhost:4566
476+ INPUT_AWSENDPOINT : http://localhost:4566
477+ AWS_S3_FORCE_PATH_STYLE : ' true'
478+ AWS_EC2_METADATA_DISABLED : ' true'
479+ GIT_PRIVATE_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
480+ GITHUB_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
481+ - name : Clean up disk space
482+ run : |
483+ rm -rf ./cloud-runner-cache/* || true
484+ docker system prune -f || true
485+ df -h
486+ - name : Run cloud-runner-hooks test (validate hooks functionality)
487+ timeout-minutes : 30
488+ run : yarn run test "cloud-runner-hooks" --detectOpenHandles --forceExit --runInBand
489+ env :
490+ UNITY_EMAIL : ${{ secrets.UNITY_EMAIL }}
491+ UNITY_PASSWORD : ${{ secrets.UNITY_PASSWORD }}
492+ UNITY_SERIAL : ${{ secrets.UNITY_SERIAL }}
493+ PROJECT_PATH : test-project
494+ TARGET_PLATFORM : StandaloneWindows64
495+ cloudRunnerTests : true
496+ versioning : None
497+ KUBE_STORAGE_CLASS : local-path
498+ PROVIDER_STRATEGY : aws
499+ AWS_ACCESS_KEY_ID : test
500+ AWS_SECRET_ACCESS_KEY : test
501+ AWS_ENDPOINT : http://localhost:4566
502+ AWS_ENDPOINT_URL : http://localhost:4566
503+ AWS_S3_ENDPOINT : http://localhost:4566
504+ INPUT_AWSS3ENDPOINT : http://localhost:4566
505+ INPUT_AWSENDPOINT : http://localhost:4566
506+ AWS_S3_FORCE_PATH_STYLE : ' true'
507+ AWS_EC2_METADATA_DISABLED : ' true'
508+ GIT_PRIVATE_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
509+ GITHUB_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
510+ - name : Clean up disk space
511+ run : |
512+ rm -rf ./cloud-runner-cache/* || true
513+ docker system prune -f || true
514+ df -h
301515 - name : Run cloud-runner-end2end-caching test
302516 timeout-minutes : 60
303517 run : yarn run test "cloud-runner-end2end-caching" --detectOpenHandles --forceExit --runInBand
@@ -315,6 +529,11 @@ jobs:
315529 AWS_SECRET_ACCESS_KEY : test
316530 AWS_ENDPOINT : http://localhost:4566
317531 AWS_ENDPOINT_URL : http://localhost:4566
532+ AWS_S3_ENDPOINT : http://localhost:4566
533+ INPUT_AWSS3ENDPOINT : http://localhost:4566
534+ INPUT_AWSENDPOINT : http://localhost:4566
535+ AWS_S3_FORCE_PATH_STYLE : ' true'
536+ AWS_EC2_METADATA_DISABLED : ' true'
318537 GIT_PRIVATE_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
319538 GITHUB_TOKEN : ${{ secrets.GIT_PRIVATE_TOKEN }}
320539 - name : Clean up disk space
0 commit comments