diff --git a/dist/index.js b/dist/index.js index 6003d75d..68bebe16 100644 Binary files a/dist/index.js and b/dist/index.js differ diff --git a/dist/index.js.map b/dist/index.js.map index 560e37b1..78d6280c 100644 Binary files a/dist/index.js.map and b/dist/index.js.map differ diff --git a/dist/platforms/ubuntu/steps/activate.sh b/dist/platforms/ubuntu/steps/activate.sh index 81eb2ffc..49ecc376 100755 --- a/dist/platforms/ubuntu/steps/activate.sh +++ b/dist/platforms/ubuntu/steps/activate.sh @@ -4,64 +4,13 @@ echo "Changing to \"$ACTIVATE_LICENSE_PATH\" directory." pushd "$ACTIVATE_LICENSE_PATH" -if [[ -n "$UNITY_LICENSE" ]] || [[ -n "$UNITY_LICENSE_FILE" ]]; then +if [[ -n "$UNITY_SERIAL" && -n "$UNITY_EMAIL" && -n "$UNITY_PASSWORD" ]]; then # - # PERSONAL LICENSE MODE - # - # This will activate Unity, using a license file - # - # Note that this is the ONLY WAY for PERSONAL LICENSES in 2020. - # * See for more details: https://gitlab.com/gableroux/unity3d-gitlab-ci-example/issues/5#note_72815478 - # - # The license file can be acquired using `webbertakken/request-manual-activation-file` action. - echo "Requesting activation (personal license)" - - # Set the license file path - FILE_PATH=UnityLicenseFile.ulf - - if [[ -n "$UNITY_LICENSE" ]]; then - # Copy license file from Github variables - echo "$UNITY_LICENSE" | tr -d '\r' > $FILE_PATH - elif [[ -n "$UNITY_LICENSE_FILE" ]]; then - # Copy license file from file system - cat "$UNITY_LICENSE_FILE" | tr -d '\r' > $FILE_PATH - fi - - # Activate license - ACTIVATION_OUTPUT=$(unity-editor \ - -logFile /dev/stdout \ - -quit \ - -manualLicenseFile $FILE_PATH) - - # Store the exit code from the verify command - UNITY_EXIT_CODE=$? - - # The exit code for personal activation is always 1; - # Determine whether activation was successful. - # - # Successful output should include the following: - # - # "LICENSE SYSTEM [2020120 18:51:20] Next license update check is after 2019-11-25T18:23:38" - # - ACTIVATION_SUCCESSFUL=$(echo $ACTIVATION_OUTPUT | grep 'Next license update check is after' | wc -l) - - # Set exit code to 0 if activation was successful - if [[ $ACTIVATION_SUCCESSFUL -eq 1 ]]; then - UNITY_EXIT_CODE=0 - fi; - - # Remove license file - rm -f $FILE_PATH - -elif [[ -n "$UNITY_SERIAL" && -n "$UNITY_EMAIL" && -n "$UNITY_PASSWORD" ]]; then - # - # PROFESSIONAL (SERIAL) LICENSE MODE + # SERIAL LICENSE MODE # # This will activate unity, using the activating process. # - # Note: This is the preferred way for PROFESSIONAL LICENSES. - # - echo "Requesting activation (professional license)" + echo "Requesting activation" # Activate license unity-editor \ diff --git a/dist/platforms/ubuntu/steps/return_license.sh b/dist/platforms/ubuntu/steps/return_license.sh index f0f68b58..f2ee12c1 100755 --- a/dist/platforms/ubuntu/steps/return_license.sh +++ b/dist/platforms/ubuntu/steps/return_license.sh @@ -13,7 +13,7 @@ if [[ -n "$UNITY_LICENSING_SERVER" ]]; then # /opt/unity/Editor/Data/Resources/Licensing/Client/Unity.Licensing.Client --return-floating "$FLOATING_LICENSE" elif [[ -n "$UNITY_SERIAL" ]]; then # - # PROFESSIONAL (SERIAL) LICENSE MODE + # SERIAL LICENSE MODE # # This will return the license that is currently in use. # diff --git a/src/model/build-parameters.ts b/src/model/build-parameters.ts index 8c322124..57d649ad 100644 --- a/src/model/build-parameters.ts +++ b/src/model/build-parameters.ts @@ -12,6 +12,7 @@ import { Cli } from './cli/cli'; import GitHub from './github'; import CloudRunnerOptions from './cloud-runner/options/cloud-runner-options'; import CloudRunner from './cloud-runner/cloud-runner'; +import * as core from '@actions/core'; class BuildParameters { // eslint-disable-next-line no-undef @@ -127,6 +128,7 @@ class BuildParameters { ); } unitySerial = this.getSerialFromLicenseFile(Input.unityLicense); + core.setSecret(unitySerial); } else { unitySerial = Input.unitySerial!; } diff --git a/src/model/docker.ts b/src/model/docker.ts index aec955bc..cd33f863 100644 --- a/src/model/docker.ts +++ b/src/model/docker.ts @@ -62,7 +62,6 @@ class Docker { --workdir ${dockerWorkspacePath} \ --rm \ ${ImageEnvironmentFactory.getEnvVarString(parameters, additionalVariables)} \ - --env UNITY_SERIAL \ --env GITHUB_WORKSPACE=${dockerWorkspacePath} \ --env GIT_CONFIG_EXTENSIONS \ ${gitPrivateToken ? `--env GIT_PRIVATE_TOKEN="${gitPrivateToken}"` : ''} \ @@ -93,7 +92,6 @@ class Docker { const { workspace, actionFolder, - unitySerial, gitPrivateToken, dockerWorkspacePath, dockerCpuLimit, @@ -105,7 +103,6 @@ class Docker { --workdir c:${dockerWorkspacePath} \ --rm \ ${ImageEnvironmentFactory.getEnvVarString(parameters)} \ - --env UNITY_SERIAL="${unitySerial}" \ --env GITHUB_WORKSPACE=c:${dockerWorkspacePath} \ ${gitPrivateToken ? `--env GIT_PRIVATE_TOKEN="${gitPrivateToken}"` : ''} \ --volume "${workspace}":"c:${dockerWorkspacePath}" \ diff --git a/src/model/image-environment-factory.ts b/src/model/image-environment-factory.ts index c66697b4..6162b50b 100644 --- a/src/model/image-environment-factory.ts +++ b/src/model/image-environment-factory.ts @@ -1,4 +1,3 @@ -import { ReadLicense } from './input-readers/test-license-reader'; import { DockerParameters, StringKeyValuePair } from './shared-types'; class ImageEnvironmentFactory { @@ -23,14 +22,18 @@ class ImageEnvironmentFactory { public static getEnvironmentVariables(parameters: DockerParameters, additionalVariables: StringKeyValuePair[] = []) { let environmentVariables: StringKeyValuePair[] = [ - { name: 'UNITY_LICENSE', value: process.env.UNITY_LICENSE || ReadLicense() }, - { name: 'UNITY_LICENSE_FILE', value: process.env.UNITY_LICENSE_FILE }, { name: 'UNITY_EMAIL', value: process.env.UNITY_EMAIL }, { name: 'UNITY_PASSWORD', value: process.env.UNITY_PASSWORD }, { name: 'UNITY_SERIAL', value: parameters.unitySerial }, - { name: 'UNITY_LICENSING_SERVER', value: parameters.unityLicensingServer }, + { + name: 'UNITY_LICENSING_SERVER', + value: parameters.unityLicensingServer, + }, { name: 'UNITY_VERSION', value: parameters.editorVersion }, - { name: 'USYM_UPLOAD_AUTH_TOKEN', value: process.env.USYM_UPLOAD_AUTH_TOKEN }, + { + name: 'USYM_UPLOAD_AUTH_TOKEN', + value: process.env.USYM_UPLOAD_AUTH_TOKEN, + }, { name: 'PROJECT_PATH', value: parameters.projectPath }, { name: 'BUILD_TARGET', value: parameters.targetPlatform }, { name: 'BUILD_NAME', value: parameters.buildName }, @@ -41,12 +44,21 @@ class ImageEnvironmentFactory { { name: 'VERSION', value: parameters.buildVersion }, { name: 'ANDROID_VERSION_CODE', value: parameters.androidVersionCode }, { name: 'ANDROID_KEYSTORE_NAME', value: parameters.androidKeystoreName }, - { name: 'ANDROID_KEYSTORE_BASE64', value: parameters.androidKeystoreBase64 }, + { + name: 'ANDROID_KEYSTORE_BASE64', + value: parameters.androidKeystoreBase64, + }, { name: 'ANDROID_KEYSTORE_PASS', value: parameters.androidKeystorePass }, { name: 'ANDROID_KEYALIAS_NAME', value: parameters.androidKeyaliasName }, { name: 'ANDROID_KEYALIAS_PASS', value: parameters.androidKeyaliasPass }, - { name: 'ANDROID_TARGET_SDK_VERSION', value: parameters.androidTargetSdkVersion }, - { name: 'ANDROID_SDK_MANAGER_PARAMETERS', value: parameters.androidSdkManagerParameters }, + { + name: 'ANDROID_TARGET_SDK_VERSION', + value: parameters.androidTargetSdkVersion, + }, + { + name: 'ANDROID_SDK_MANAGER_PARAMETERS', + value: parameters.androidSdkManagerParameters, + }, { name: 'ANDROID_EXPORT_TYPE', value: parameters.androidExportType }, { name: 'ANDROID_SYMBOL_TYPE', value: parameters.androidSymbolType }, { name: 'CUSTOM_PARAMETERS', value: parameters.customParameters }, @@ -86,7 +98,9 @@ class ImageEnvironmentFactory { } } } - if (parameters.sshAgent) environmentVariables.push({ name: 'SSH_AUTH_SOCK', value: '/ssh-agent' }); + if (parameters.sshAgent) { + environmentVariables.push({ name: 'SSH_AUTH_SOCK', value: '/ssh-agent' }); + } return environmentVariables; }