From e710d72b1ee7b3d0cd57631d3bfe08b15ab8e178 Mon Sep 17 00:00:00 2001 From: Frostebite Date: Wed, 19 Jul 2023 19:21:08 +0100 Subject: [PATCH] tests --- .../workflows/cloud-runner-ci-pipeline.yml | 1 + .../tests/cloud-runner-kubernetes.test.ts | 50 +++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 src/model/cloud-runner/tests/cloud-runner-kubernetes.test.ts diff --git a/.github/workflows/cloud-runner-ci-pipeline.yml b/.github/workflows/cloud-runner-ci-pipeline.yml index 2dec228b..7e42c8b8 100644 --- a/.github/workflows/cloud-runner-ci-pipeline.yml +++ b/.github/workflows/cloud-runner-ci-pipeline.yml @@ -110,6 +110,7 @@ jobs: #- 'cloud-runner-caching' - 'cloud-runner-end2end-locking' - 'cloud-runner-end2end-caching' + - 'cloud-runner-kubernetes' - 'cloud-runner-end2end-retaining' - 'cloud-runner-environment' #- 'cloud-runner-hooks' diff --git a/src/model/cloud-runner/tests/cloud-runner-kubernetes.test.ts b/src/model/cloud-runner/tests/cloud-runner-kubernetes.test.ts new file mode 100644 index 00000000..6fefa505 --- /dev/null +++ b/src/model/cloud-runner/tests/cloud-runner-kubernetes.test.ts @@ -0,0 +1,50 @@ +import BuildParameters from '../../build-parameters'; +import { Cli } from '../../cli/cli'; +import ImageTag from '../../image-tag'; +import UnityVersioning from '../../unity-versioning'; +import CloudRunner from '../cloud-runner'; +import CloudRunnerOptions from '../options/cloud-runner-options'; +import CloudRunnerLogger from '../services/core/cloud-runner-logger'; +import setups from './cloud-runner-suite.test'; +import { v4 as uuidv4 } from 'uuid'; + +async function CreateParameters(overrides: any) { + if (overrides) { + Cli.options = overrides; + } + + return await BuildParameters.create(); +} + +describe('Cloud Runner Kubernetes', () => { + it('Responds', () => {}); + setups(); + if (CloudRunnerOptions.cloudRunnerDebug) { + it('Build can contact log service', async () => { + const overrides = { + versioning: 'None', + projectPath: 'test-project', + unityVersion: UnityVersioning.determineUnityVersion('test-project', UnityVersioning.read('test-project')), + targetPlatform: 'StandaloneLinux64', + cacheKey: `test-case-${uuidv4()}`, + containerHookFiles: `debug-cache`, + customJob: ` + - name: 'step 1' + image: 'ubuntu' + commands: 'curl http://$LOG_SERVICE_IP:80''`, + }; + if (CloudRunnerOptions.providerStrategy !== `k8s`) { + return; + } + const buildParameter = await CreateParameters(overrides); + expect(buildParameter.projectPath).toEqual(overrides.projectPath); + + const baseImage = new ImageTag(buildParameter); + const results = await CloudRunner.run(buildParameter, baseImage.toString()); + + CloudRunnerLogger.log(results); + + CloudRunnerLogger.log(`run 1 succeeded`); + }, 1_000_000_000); + } +});