diff --git a/.github/workflows/build-tests-ubuntu.yml b/.github/workflows/build-tests-ubuntu.yml index 810a2e73..17004e4f 100644 --- a/.github/workflows/build-tests-ubuntu.yml +++ b/.github/workflows/build-tests-ubuntu.yml @@ -59,6 +59,10 @@ jobs: - Android # Build an Android .apk. - WebGL # WebGL. steps: + - name: Clear Space for Android Build + if: matrix.targetPlatform == 'Android' + uses: jlumbroso/free-disk-space@v1.3.1 + ########################### # Checkout # ########################### diff --git a/action.yml b/action.yml index 09f95e08..0ade5fcb 100644 --- a/action.yml +++ b/action.yml @@ -253,6 +253,10 @@ inputs: description: 'The path to mount the workspace inside the docker container. For windows, leave out the drive letter. For example c:/github/workspace should be defined as /github/workspace' + skipActivation: + default: 'false' + required: false + description: 'Skip the activation/deactivation of Unity. This assumes Unity is already activated.' outputs: volume: diff --git a/dist/index.js b/dist/index.js index bde8c763..0a5c8f1d 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 c86b6465..5bcdd0b2 100644 Binary files a/dist/index.js.map and b/dist/index.js.map differ diff --git a/dist/licenses.txt b/dist/licenses.txt index d21d19f2..377c4f67 100644 Binary files a/dist/licenses.txt and b/dist/licenses.txt differ diff --git a/dist/platforms/mac/entrypoint.sh b/dist/platforms/mac/entrypoint.sh index bea8f36a..90819bbe 100755 --- a/dist/platforms/mac/entrypoint.sh +++ b/dist/platforms/mac/entrypoint.sh @@ -1,32 +1,40 @@ #!/usr/bin/env bash # -# Create directories for license activation +# Perform Activation # -UNITY_LICENSE_PATH="/Library/Application Support/Unity" +if [ "$SKIP_ACTIVATION" != "true" ]; then + UNITY_LICENSE_PATH="/Library/Application Support/Unity" -if [ ! -d "$UNITY_LICENSE_PATH" ]; then - echo "Creating Unity License Directory" - sudo mkdir -p "$UNITY_LICENSE_PATH" - sudo chmod -R 777 "$UNITY_LICENSE_PATH" -fi; + if [ ! -d "$UNITY_LICENSE_PATH" ]; then + echo "Creating Unity License Directory" + sudo mkdir -p "$UNITY_LICENSE_PATH" + sudo chmod -R 777 "$UNITY_LICENSE_PATH" + fi; -ACTIVATE_LICENSE_PATH="$ACTION_FOLDER/BlankProject" -mkdir -p "$ACTIVATE_LICENSE_PATH" + ACTIVATE_LICENSE_PATH="$ACTION_FOLDER/BlankProject" + mkdir -p "$ACTIVATE_LICENSE_PATH" + + source $ACTION_FOLDER/platforms/mac/steps/activate.sh +else + echo "Skipping activation" +fi # -# Run steps +# Run Build # -source $ACTION_FOLDER/platforms/mac/steps/activate.sh + source $ACTION_FOLDER/platforms/mac/steps/build.sh -source $ACTION_FOLDER/platforms/mac/steps/return_license.sh # -# Remove license activation directory +# License Cleanup # -rm -r "$ACTIVATE_LICENSE_PATH" +if [ "$SKIP_ACTIVATION" != "true" ]; then + source $ACTION_FOLDER/platforms/mac/steps/return_license.sh + rm -r "$ACTIVATE_LICENSE_PATH" +fi # # Instructions for debugging diff --git a/dist/platforms/ubuntu/steps/runsteps.sh b/dist/platforms/ubuntu/steps/runsteps.sh index e8376051..adfd584b 100644 --- a/dist/platforms/ubuntu/steps/runsteps.sh +++ b/dist/platforms/ubuntu/steps/runsteps.sh @@ -5,15 +5,23 @@ # source /steps/set_extra_git_configs.sh source /steps/set_gitcredential.sh -source /steps/activate.sh -# If we didn't activate successfully, exit with the exit code from the activation step. -if [[ $UNITY_EXIT_CODE -ne 0 ]]; then - exit $UNITY_EXIT_CODE +if [ "$SKIP_ACTIVATION" != "true" ]; then + source /steps/activate.sh + + # If we didn't activate successfully, exit with the exit code from the activation step. + if [[ $UNITY_EXIT_CODE -ne 0 ]]; then + exit $UNITY_EXIT_CODE + fi +else + echo "Skipping activation" fi source /steps/build.sh -source /steps/return_license.sh + +if [ "$SKIP_ACTIVATION" != "true" ]; then + source /steps/return_license.sh +fi # # Instructions for debugging diff --git a/dist/platforms/windows/entrypoint.ps1 b/dist/platforms/windows/entrypoint.ps1 index fac75b74..4d7057e6 100644 --- a/dist/platforms/windows/entrypoint.ps1 +++ b/dist/platforms/windows/entrypoint.ps1 @@ -2,7 +2,7 @@ Get-Process # Import any necessary registry keys, ie: location of windows 10 sdk # No guarantee that there will be any necessary registry keys, ie: tvOS -Get-ChildItem -Path c:\regkeys -File | ForEach-Object {reg import $_.fullname} +Get-ChildItem -Path c:\regkeys -File | ForEach-Object { reg import $_.fullname } # Register the Visual Studio installation so Unity can find it regsvr32 C:\ProgramData\Microsoft\VisualStudio\Setup\x64\Microsoft.VisualStudio.Setup.Configuration.Native.dll @@ -14,18 +14,25 @@ Get-Process -Name regsvr32 | ForEach-Object { Stop-Process -Id $_.Id -Force } . "c:\steps\set_gitcredential.ps1" # Activate Unity -. "c:\steps\activate.ps1" +if ($env:SKIP_ACTIVATION -ne "true") { + . "c:\steps\activate.ps1" -# If we didn't activate successfully, exit with the exit code from the activation step. -if ($ACTIVATION_EXIT_CODE -ne 0) { + # If we didn't activate successfully, exit with the exit code from the activation step. + if ($ACTIVATION_EXIT_CODE -ne 0) { exit $ACTIVATION_EXIT_CODE + } +} +else { + Write-Host "Skipping activation" } # Build the project . "c:\steps\build.ps1" # Free the seat for the activated license -. "c:\steps\return_license.ps1" +if ($env:SKIP_ACTIVATION -ne "true") { + . "c:\steps\return_license.ps1" +} Get-Process diff --git a/package.json b/package.json index 48d3bbaf..d17c6f36 100644 --- a/package.json +++ b/package.json @@ -28,12 +28,12 @@ "node": ">=18.x" }, "dependencies": { - "@actions/cache": "^3.1.3", - "@actions/core": "^1.10.0", - "@actions/exec": "^1.1.0", - "@actions/github": "^5.0.0", + "@actions/cache": "^3.2.4", + "@actions/core": "^1.10.1", + "@actions/exec": "^1.1.1", + "@actions/github": "^6.0.0", "@kubernetes/client-node": "^0.16.3", - "@octokit/core": "^3.5.1", + "@octokit/core": "^5.1.0", "async-wait-until": "^2.0.12", "aws-sdk": "^2.1081.0", "base-64": "^1.0.0", @@ -50,7 +50,6 @@ "yaml": "^2.2.2" }, "devDependencies": { - "@evilmartians/lefthook": "^1.2.9", "@types/base-64": "^1.0.0", "@types/jest": "^27.4.1", "@types/node": "^17.0.23", @@ -69,6 +68,7 @@ "jest-circus": "^27.5.1", "jest-fail-on-console": "^3.0.2", "js-yaml": "^4.1.0", + "lefthook": "^1.6.1", "prettier": "^2.5.1", "ts-jest": "^27.1.3", "ts-node": "10.8.1", diff --git a/src/model/build-parameters.ts b/src/model/build-parameters.ts index 6710a4da..42c05915 100644 --- a/src/model/build-parameters.ts +++ b/src/model/build-parameters.ts @@ -22,6 +22,7 @@ class BuildParameters { public customImage!: string; public unitySerial!: string; public unityLicensingServer!: string; + public skipActivation!: string; public runnerTempPath!: string; public targetPlatform!: string; public projectPath!: string; @@ -59,7 +60,7 @@ class BuildParameters { public kubeVolumeSize!: string; public kubeVolume!: string; public kubeStorageClass!: string; - public runAsHostUser!: String; + public runAsHostUser!: string; public chownFilesTo!: string; public commandHooks!: string; public pullInputList!: string[]; @@ -146,6 +147,7 @@ class BuildParameters { customImage: Input.customImage, unitySerial, unityLicensingServer: Input.unityLicensingServer, + skipActivation: Input.skipActivation, runnerTempPath: Input.runnerTempPath, targetPlatform: Input.targetPlatform, projectPath: Input.projectPath, @@ -168,7 +170,7 @@ class BuildParameters { customParameters: Input.customParameters, sshAgent: Input.sshAgent, sshPublicKeysDirectoryPath: Input.sshPublicKeysDirectoryPath, - gitPrivateToken: Input.gitPrivateToken || (await GithubCliReader.GetGitHubAuthToken()), + gitPrivateToken: Input.gitPrivateToken ?? (await GithubCliReader.GetGitHubAuthToken()), runAsHostUser: Input.runAsHostUser, chownFilesTo: Input.chownFilesTo, dockerCpuLimit: Input.dockerCpuLimit, @@ -190,7 +192,7 @@ class BuildParameters { branch: Input.branch.replace('/head', '') || (await GitRepoReader.GetBranch()), cloudRunnerBranch: CloudRunnerOptions.cloudRunnerBranch.split('/').reverse()[0], cloudRunnerDebug: CloudRunnerOptions.cloudRunnerDebug, - githubRepo: Input.githubRepo || (await GitRepoReader.GetRemote()) || 'game-ci/unity-builder', + githubRepo: (Input.githubRepo ?? (await GitRepoReader.GetRemote())) || 'game-ci/unity-builder', isCliMode: Cli.isCliMode, awsStackName: CloudRunnerOptions.awsStackName, gitSha: Input.gitSha, diff --git a/src/model/image-environment-factory.ts b/src/model/image-environment-factory.ts index 2df52f1a..fe16ca9d 100644 --- a/src/model/image-environment-factory.ts +++ b/src/model/image-environment-factory.ts @@ -29,6 +29,7 @@ class ImageEnvironmentFactory { name: 'UNITY_LICENSING_SERVER', value: parameters.unityLicensingServer, }, + { name: 'SKIP_ACTIVATION', value: parameters.skipActivation }, { name: 'UNITY_VERSION', value: parameters.editorVersion }, { name: 'USYM_UPLOAD_AUTH_TOKEN', @@ -81,20 +82,12 @@ class ImageEnvironmentFactory { ]; if (parameters.providerStrategy === 'local-docker') { for (const element of additionalVariables) { - if ( - environmentVariables.find( - (x) => element !== undefined && element.name !== undefined && x.name === element.name, - ) === undefined - ) { + if (!environmentVariables.some((x) => element?.name === x?.name)) { environmentVariables.push(element); } } for (const variable of environmentVariables) { - if ( - environmentVariables.find( - (x) => variable !== undefined && variable.name !== undefined && x.name === variable.name, - ) === undefined - ) { + if (!environmentVariables.some((x) => variable?.name === x?.name)) { environmentVariables = environmentVariables.filter((x) => x !== variable); } } diff --git a/src/model/input.ts b/src/model/input.ts index 4d2ea09f..7d772a22 100644 --- a/src/model/input.ts +++ b/src/model/input.ts @@ -46,11 +46,11 @@ class Input { } static get region(): string { - return Input.getInput('region') || 'eu-west-2'; + return Input.getInput('region') ?? 'eu-west-2'; } static get githubRepo(): string | undefined { - return Input.getInput('GITHUB_REPOSITORY') || Input.getInput('GITHUB_REPO') || undefined; + return Input.getInput('GITHUB_REPOSITORY') ?? Input.getInput('GITHUB_REPO') ?? undefined; } static get branch(): string { @@ -74,19 +74,19 @@ class Input { } static get runNumber(): string { - return Input.getInput('GITHUB_RUN_NUMBER') || '0'; + return Input.getInput('GITHUB_RUN_NUMBER') ?? '0'; } static get targetPlatform(): string { - return Input.getInput('targetPlatform') || Platform.default; + return Input.getInput('targetPlatform') ?? Platform.default; } static get unityVersion(): string { - return Input.getInput('unityVersion') || 'auto'; + return Input.getInput('unityVersion') ?? 'auto'; } static get customImage(): string { - return Input.getInput('customImage') || ''; + return Input.getInput('customImage') ?? ''; } static get projectPath(): string { @@ -108,85 +108,85 @@ class Input { } static get runnerTempPath(): string { - return Input.getInput('RUNNER_TEMP') || ''; + return Input.getInput('RUNNER_TEMP') ?? ''; } static get buildName(): string { - return Input.getInput('buildName') || Input.targetPlatform; + return Input.getInput('buildName') ?? Input.targetPlatform; } static get buildsPath(): string { - return Input.getInput('buildsPath') || 'build'; + return Input.getInput('buildsPath') ?? 'build'; } static get unityLicensingServer(): string { - return Input.getInput('unityLicensingServer') || ''; + return Input.getInput('unityLicensingServer') ?? ''; } static get buildMethod(): string { - return Input.getInput('buildMethod') || ''; // Processed in docker file + return Input.getInput('buildMethod') ?? ''; // Processed in docker file } static get manualExit(): boolean { - const input = Input.getInput('manualExit') || false; + const input = Input.getInput('manualExit') ?? false; return input === 'true'; } static get customParameters(): string { - return Input.getInput('customParameters') || ''; + return Input.getInput('customParameters') ?? ''; } static get versioningStrategy(): string { - return Input.getInput('versioning') || 'Semantic'; + return Input.getInput('versioning') ?? 'Semantic'; } static get specifiedVersion(): string { - return Input.getInput('version') || ''; + return Input.getInput('version') ?? ''; } static get androidVersionCode(): string { - return Input.getInput('androidVersionCode') || ''; + return Input.getInput('androidVersionCode') ?? ''; } static get androidExportType(): string { - return Input.getInput('androidExportType') || 'androidPackage'; + return Input.getInput('androidExportType') ?? 'androidPackage'; } static get androidKeystoreName(): string { - return Input.getInput('androidKeystoreName') || ''; + return Input.getInput('androidKeystoreName') ?? ''; } static get androidKeystoreBase64(): string { - return Input.getInput('androidKeystoreBase64') || ''; + return Input.getInput('androidKeystoreBase64') ?? ''; } static get androidKeystorePass(): string { - return Input.getInput('androidKeystorePass') || ''; + return Input.getInput('androidKeystorePass') ?? ''; } static get androidKeyaliasName(): string { - return Input.getInput('androidKeyaliasName') || ''; + return Input.getInput('androidKeyaliasName') ?? ''; } static get androidKeyaliasPass(): string { - return Input.getInput('androidKeyaliasPass') || ''; + return Input.getInput('androidKeyaliasPass') ?? ''; } static get androidTargetSdkVersion(): string { - return Input.getInput('androidTargetSdkVersion') || ''; + return Input.getInput('androidTargetSdkVersion') ?? ''; } static get androidSymbolType(): string { - return Input.getInput('androidSymbolType') || 'none'; + return Input.getInput('androidSymbolType') ?? 'none'; } static get sshAgent(): string { - return Input.getInput('sshAgent') || ''; + return Input.getInput('sshAgent') ?? ''; } static get sshPublicKeysDirectoryPath(): string { - return Input.getInput('sshPublicKeysDirectoryPath') || ''; + return Input.getInput('sshPublicKeysDirectoryPath') ?? ''; } static get gitPrivateToken(): string | undefined { @@ -194,27 +194,27 @@ class Input { } static get runAsHostUser(): string { - return Input.getInput('runAsHostUser') || 'false'; + return Input.getInput('runAsHostUser')?.toLowerCase() ?? 'false'; } static get chownFilesTo() { - return Input.getInput('chownFilesTo') || ''; + return Input.getInput('chownFilesTo') ?? ''; } static get allowDirtyBuild(): boolean { - const input = Input.getInput('allowDirtyBuild') || false; + const input = Input.getInput('allowDirtyBuild') ?? false; return input === 'true'; } static get cacheUnityInstallationOnMac(): boolean { - const input = Input.getInput('cacheUnityInstallationOnMac') || false; + const input = Input.getInput('cacheUnityInstallationOnMac') ?? false; return input === 'true'; } static get unityHubVersionOnMac(): string { - const input = Input.getInput('unityHubVersionOnMac') || ''; + const input = Input.getInput('unityHubVersionOnMac') ?? ''; return input !== '' ? input : ''; } @@ -228,11 +228,11 @@ class Input { } static get dockerWorkspacePath(): string { - return Input.getInput('dockerWorkspacePath') || '/github/workspace'; + return Input.getInput('dockerWorkspacePath') ?? '/github/workspace'; } static get dockerCpuLimit(): string { - return Input.getInput('dockerCpuLimit') || os.cpus().length.toString(); + return Input.getInput('dockerCpuLimit') ?? os.cpus().length.toString(); } static get dockerMemoryLimit(): string { @@ -252,20 +252,24 @@ class Input { } return ( - Input.getInput('dockerMemoryLimit') || `${Math.floor((os.totalmem() / bytesInMegabyte) * memoryMultiplier)}m` + Input.getInput('dockerMemoryLimit') ?? `${Math.floor((os.totalmem() / bytesInMegabyte) * memoryMultiplier)}m` ); } static get dockerIsolationMode(): string { - return Input.getInput('dockerIsolationMode') || 'default'; + return Input.getInput('dockerIsolationMode') ?? 'default'; } static get containerRegistryRepository(): string { - return Input.getInput('containerRegistryRepository') || 'unityci/editor'; + return Input.getInput('containerRegistryRepository') ?? 'unityci/editor'; } static get containerRegistryImageVersion(): string { - return Input.getInput('containerRegistryImageVersion') || '3'; + return Input.getInput('containerRegistryImageVersion') ?? '3'; + } + + static get skipActivation(): string { + return Input.getInput('skipActivation')?.toLowerCase() ?? 'false'; } public static ToEnvVarFormat(input: string) { diff --git a/yarn.lock b/yarn.lock index 6755cec8..86fcc540 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,10 +7,10 @@ resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== -"@actions/cache@^3.1.3": - version "3.2.2" - resolved "https://registry.yarnpkg.com/@actions/cache/-/cache-3.2.2.tgz#e7bbb5f9b67c613f96f98f91506c69424c9aa288" - integrity sha512-6D0Jq5JrLZRQ3VApeQwQkkV20ZZXjXsHNYXd9VjNUdi9E0h93wESpxfMJ2JWLCUCgHNLcfY0v3GjNM+2FdRMlg== +"@actions/cache@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@actions/cache/-/cache-3.2.4.tgz#793aade7375ba436295ff5ae6139be9d06dfab30" + integrity sha512-RuHnwfcDagtX+37s0ZWy7clbOfnZ7AlDJQ7k/9rzt2W4Gnwde3fa/qjSjVuz4vLcLIpc7fUob27CMrqiWZytYA== dependencies: "@actions/core" "^1.10.0" "@actions/exec" "^1.0.1" @@ -20,7 +20,7 @@ "@azure/abort-controller" "^1.1.0" "@azure/ms-rest-js" "^2.6.0" "@azure/storage-blob" "^12.13.0" - semver "^6.1.0" + semver "^6.3.1" uuid "^3.3.3" "@actions/core@^1.10.0", "@actions/core@^1.2.6": @@ -31,22 +31,30 @@ "@actions/http-client" "^2.0.1" uuid "^8.3.2" -"@actions/exec@^1.0.1", "@actions/exec@^1.1.0": +"@actions/core@^1.10.1": + version "1.10.1" + resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.10.1.tgz#61108e7ac40acae95ee36da074fa5850ca4ced8a" + integrity sha512-3lBR9EDAY+iYIpTnTIXmWcNbX3T2kCkAEQGIQx4NVQ0575nk2k3GRZDTPQG+vVtS2izSLmINlxXf0uLtnrTP+g== + dependencies: + "@actions/http-client" "^2.0.1" + uuid "^8.3.2" + +"@actions/exec@^1.0.1", "@actions/exec@^1.1.1": version "1.1.1" resolved "https://registry.npmjs.org/@actions/exec/-/exec-1.1.1.tgz" integrity sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w== dependencies: "@actions/io" "^1.0.1" -"@actions/github@^5.0.0": - version "5.1.1" - resolved "https://registry.yarnpkg.com/@actions/github/-/github-5.1.1.tgz#40b9b9e1323a5efcf4ff7dadd33d8ea51651bbcb" - integrity sha512-Nk59rMDoJaV+mHCOJPXuvB1zIbomlKS0dmSIqPGxd0enAXBnOfn4VWF+CGtRCwXZG9Epa54tZA7VIRlJDS8A6g== +"@actions/github@^6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@actions/github/-/github-6.0.0.tgz#65883433f9d81521b782a64cc1fd45eef2191ea7" + integrity sha512-alScpSVnYmjNEXboZjarjukQEzgCRmjMv6Xj47fsdnqGS73bjJNDpiiXmp8jr0UZLdUB6d9jW63IcmddUP+l0g== dependencies: - "@actions/http-client" "^2.0.1" - "@octokit/core" "^3.6.0" - "@octokit/plugin-paginate-rest" "^2.17.0" - "@octokit/plugin-rest-endpoint-methods" "^5.13.0" + "@actions/http-client" "^2.2.0" + "@octokit/core" "^5.0.1" + "@octokit/plugin-paginate-rest" "^9.0.0" + "@octokit/plugin-rest-endpoint-methods" "^10.0.0" "@actions/glob@^0.1.0": version "0.1.2" @@ -63,6 +71,14 @@ dependencies: tunnel "^0.0.6" +"@actions/http-client@^2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@actions/http-client/-/http-client-2.2.0.tgz#f8239f375be6185fcd07765efdcf0031ad5df1a0" + integrity sha512-q+epW0trjVUUHboliPb4UF9g2msf+w61b32tAkFEwL/IwP0DQWgbCMM0Hbe3e3WXSKz5VcUXbzJQgy8Hkra/Lg== + dependencies: + tunnel "^0.0.6" + undici "^5.25.4" + "@actions/io@^1.0.1": version "1.1.3" resolved "https://registry.yarnpkg.com/@actions/io/-/io-1.1.3.tgz#4cdb6254da7962b07473ff5c335f3da485d94d71" @@ -590,11 +606,6 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" -"@evilmartians/lefthook@^1.2.9": - version "1.4.9" - resolved "https://registry.yarnpkg.com/@evilmartians/lefthook/-/lefthook-1.4.9.tgz#3166b4cd663874a22d650964dfd512b87da812bd" - integrity sha512-ZnROKwxDs8dJ+pmpXX2xHwU+Ui5P1Md5DMCIQsZCZHngtRb2jOwbUf7AaGJeYVoaC6J2Hb7IL2wYvwfwA2Oy3w== - "@fastify/busboy@^2.0.0": version "2.0.0" resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-2.0.0.tgz#f22824caff3ae506b18207bad4126dbc6ccdb6b8" @@ -920,91 +931,85 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@octokit/auth-token@^2.4.4": - version "2.5.0" - resolved "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz" - integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g== - dependencies: - "@octokit/types" "^6.0.3" +"@octokit/auth-token@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-4.0.0.tgz#40d203ea827b9f17f42a29c6afb93b7745ef80c7" + integrity sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA== -"@octokit/core@^3.5.1", "@octokit/core@^3.6.0": - version "3.6.0" - resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.6.0.tgz#3376cb9f3008d9b3d110370d90e0a1fcd5fe6085" - integrity sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q== +"@octokit/core@^5.0.1", "@octokit/core@^5.1.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@octokit/core/-/core-5.1.0.tgz#81dacf0197ed7855e6413f128bd6dd9e121e7d2f" + integrity sha512-BDa2VAMLSh3otEiaMJ/3Y36GU4qf6GI+VivQ/P41NC6GHcdxpKlqV0ikSZ5gdQsmS3ojXeRx5vasgNTinF0Q4g== dependencies: - "@octokit/auth-token" "^2.4.4" - "@octokit/graphql" "^4.5.8" - "@octokit/request" "^5.6.3" - "@octokit/request-error" "^2.0.5" - "@octokit/types" "^6.0.3" + "@octokit/auth-token" "^4.0.0" + "@octokit/graphql" "^7.0.0" + "@octokit/request" "^8.0.2" + "@octokit/request-error" "^5.0.0" + "@octokit/types" "^12.0.0" before-after-hook "^2.2.0" universal-user-agent "^6.0.0" -"@octokit/endpoint@^6.0.1": - version "6.0.12" - resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" - integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA== +"@octokit/endpoint@^9.0.0": + version "9.0.4" + resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-9.0.4.tgz#8afda5ad1ffc3073d08f2b450964c610b821d1ea" + integrity sha512-DWPLtr1Kz3tv8L0UvXTDP1fNwM0S+z6EJpRcvH66orY6Eld4XBMCSYsaWp4xIm61jTWxK68BrR7ibO+vSDnZqw== dependencies: - "@octokit/types" "^6.0.3" - is-plain-object "^5.0.0" + "@octokit/types" "^12.0.0" universal-user-agent "^6.0.0" -"@octokit/graphql@^4.5.8": - version "4.8.0" - resolved "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz" - integrity sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg== +"@octokit/graphql@^7.0.0": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-7.0.2.tgz#3df14b9968192f9060d94ed9e3aa9780a76e7f99" + integrity sha512-OJ2iGMtj5Tg3s6RaXH22cJcxXRi7Y3EBqbHTBRq+PQAqfaS8f/236fUrWhfSn8P4jovyzqucxme7/vWSSZBX2Q== dependencies: - "@octokit/request" "^5.6.0" - "@octokit/types" "^6.0.3" + "@octokit/request" "^8.0.1" + "@octokit/types" "^12.0.0" universal-user-agent "^6.0.0" -"@octokit/openapi-types@^12.11.0": - version "12.11.0" - resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-12.11.0.tgz#da5638d64f2b919bca89ce6602d059f1b52d3ef0" - integrity sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ== +"@octokit/openapi-types@^19.1.0": + version "19.1.0" + resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-19.1.0.tgz#75ec7e64743870fc73e1ab4bc6ec252ecdd624dc" + integrity sha512-6G+ywGClliGQwRsjvqVYpklIfa7oRPA0vyhPQG/1Feh+B+wU0vGH1JiJ5T25d3g1JZYBHzR2qefLi9x8Gt+cpw== -"@octokit/plugin-paginate-rest@^2.17.0": - version "2.21.3" - resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz#7f12532797775640dbb8224da577da7dc210c87e" - integrity sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw== +"@octokit/plugin-paginate-rest@^9.0.0": + version "9.1.5" + resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-9.1.5.tgz#1705bcef4dcde1f4015ee58a63dc61b68648f480" + integrity sha512-WKTQXxK+bu49qzwv4qKbMMRXej1DU2gq017euWyKVudA6MldaSSQuxtz+vGbhxV4CjxpUxjZu6rM2wfc1FiWVg== dependencies: - "@octokit/types" "^6.40.0" + "@octokit/types" "^12.4.0" -"@octokit/plugin-rest-endpoint-methods@^5.13.0": - version "5.16.2" - resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz#7ee8bf586df97dd6868cf68f641354e908c25342" - integrity sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw== +"@octokit/plugin-rest-endpoint-methods@^10.0.0": + version "10.3.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-10.3.0.tgz#cba45a365ebc5dbeeca2db95466a514e69c5aa75" + integrity sha512-c/fjpoHispRvBZuRoTVt/uALg7pXa9RQbXWJiDMk6NDkGNomuAZG7YuYYpZoxeoXv+kVRjIDTsO0e1z0pei+PQ== dependencies: - "@octokit/types" "^6.39.0" - deprecation "^2.3.1" + "@octokit/types" "^12.4.0" -"@octokit/request-error@^2.0.5", "@octokit/request-error@^2.1.0": - version "2.1.0" - resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz" - integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg== +"@octokit/request-error@^5.0.0": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-5.0.1.tgz#277e3ce3b540b41525e07ba24c5ef5e868a72db9" + integrity sha512-X7pnyTMV7MgtGmiXBwmO6M5kIPrntOXdyKZLigNfQWSEQzVxR4a4vo49vJjTWX70mPndj8KhfT4Dx+2Ng3vnBQ== dependencies: - "@octokit/types" "^6.0.3" + "@octokit/types" "^12.0.0" deprecation "^2.0.0" once "^1.4.0" -"@octokit/request@^5.6.0", "@octokit/request@^5.6.3": - version "5.6.3" - resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0" - integrity sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A== +"@octokit/request@^8.0.1", "@octokit/request@^8.0.2": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@octokit/request/-/request-8.2.0.tgz#125c547bc3f4c0e2dfa38c6829a1cf00027fbd98" + integrity sha512-exPif6x5uwLqv1N1irkLG1zZNJkOtj8bZxuVHd71U5Ftuxf2wGNvAJyNBcPbPC+EBzwYEbBDdSFb8EPcjpYxPQ== dependencies: - "@octokit/endpoint" "^6.0.1" - "@octokit/request-error" "^2.1.0" - "@octokit/types" "^6.16.1" - is-plain-object "^5.0.0" - node-fetch "^2.6.7" + "@octokit/endpoint" "^9.0.0" + "@octokit/request-error" "^5.0.0" + "@octokit/types" "^12.0.0" universal-user-agent "^6.0.0" -"@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.39.0", "@octokit/types@^6.40.0": - version "6.41.0" - resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.41.0.tgz#e58ef78d78596d2fb7df9c6259802464b5f84a04" - integrity sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg== +"@octokit/types@^12.0.0", "@octokit/types@^12.4.0": + version "12.5.0" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-12.5.0.tgz#a60003ad6bb073e5cac936f6ecf47c834f87c058" + integrity sha512-YJEKcb0KkJlIUNU/zjnZwHEP8AoVh/OoIcP/1IyR4UHxExz7fzpe/a8IG4wBtQi7QDEqiomVLX88S6FpxxAJtg== dependencies: - "@octokit/openapi-types" "^12.11.0" + "@octokit/openapi-types" "^19.1.0" "@opentelemetry/api@^1.0.1": version "1.4.1" @@ -2475,7 +2480,7 @@ depd@^2.0.0: resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -deprecation@^2.0.0, deprecation@^2.3.1: +deprecation@^2.0.0: version "2.3.1" resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== @@ -3814,11 +3819,6 @@ is-plain-object@^3.0.0: resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-3.0.1.tgz#662d92d24c0aa4302407b0d45d21f2251c85f85b" integrity sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g== -is-plain-object@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" - integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== - is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" @@ -4596,6 +4596,60 @@ language-tags@=1.0.5: dependencies: language-subtag-registry "~0.3.2" +lefthook-darwin-arm64@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/lefthook-darwin-arm64/-/lefthook-darwin-arm64-1.6.1.tgz#387d245d39673ceede01da7de2a0d44d2c368e85" + integrity sha512-q6+sYr2Dpt6YnBGXRjMFcXZUnVB97nH+s7EP/tX8m9ewvQxLPqIiUPyAumfyJ2Siomkc5WgAinG+kT63VjUN3A== + +lefthook-darwin-x64@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/lefthook-darwin-x64/-/lefthook-darwin-x64-1.6.1.tgz#a677f7262d29317964c96f13509c06d3bf54e93f" + integrity sha512-utm7FwtbW8SxGMALIw5/iG4loYS2FI0crDKp/YIamrZgQr6M4pS2C3rxGj5OwiHFIm3arVU+3VZywdvRLJAw0w== + +lefthook-freebsd-arm64@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/lefthook-freebsd-arm64/-/lefthook-freebsd-arm64-1.6.1.tgz#3d527cfa40da0b57b2b81e853f7c11bd13fc618c" + integrity sha512-F2BoDnGznkJyn6lyhmXpu62yq7SMCeHAl3Bl8c+P6mXfmatjjxEpVmrzRuzKMPd/MRGpy2B/glkuyO4wZZazow== + +lefthook-freebsd-x64@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/lefthook-freebsd-x64/-/lefthook-freebsd-x64-1.6.1.tgz#fbc9a5a7c2acaacc5494cf0e21083f21bad8057d" + integrity sha512-/NBjMUtnwvdc/p821sfPnZCbWZ6FQkAvnvjoaQu6tkajKZbZYSKsl7UtAicO0nT+79BQFt7TbaZjpua2T9tM5w== + +lefthook-linux-arm64@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/lefthook-linux-arm64/-/lefthook-linux-arm64-1.6.1.tgz#5f50008da8fa164ba9d83542361a0c83429da6ae" + integrity sha512-ke+2ni/bmxgYJSRsH+uIYYfTLj2It7WP+mcF4rfJHRbzn5yDYIjFgylUMC2CgW5urS4DSbxcRIbAqLY3OXAHnw== + +lefthook-linux-x64@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/lefthook-linux-x64/-/lefthook-linux-x64-1.6.1.tgz#a1370cbfc2def92ff7dd1f7dcc71bddca97a8286" + integrity sha512-/HLkl9jt3XRjT0RPaLpAgUQmvp4zV/KKZ/8x6xslPl89krv3ZkHKKrqeaHdhiengq3hzx3N+KbOfFcxBRzdT6A== + +lefthook-windows-arm64@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/lefthook-windows-arm64/-/lefthook-windows-arm64-1.6.1.tgz#eaffe44e437182e417006ef7b68f49f219fb7e5e" + integrity sha512-RyQ8S4/45BpJpRPy7KsOuJeXQ5FOa7MASoPtOYvrXt4A8kayCv1jlGs7MTv3XJbUosCJhfNpw3ReeHVGfw1KIw== + +lefthook-windows-x64@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/lefthook-windows-x64/-/lefthook-windows-x64-1.6.1.tgz#c3da7ec991918543be69fe268e91dc5f77ec7548" + integrity sha512-poYLk2tfg1Ncr4aZeFuhHjv1qH6f9hX3tV1FOK2MfWkXkRTYPl6MF5h/ONMIv71BsLjGbAA7LNXM5Mj4/B//lQ== + +lefthook@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/lefthook/-/lefthook-1.6.1.tgz#56d35b18ba2231b93d669434c1bd52c4532299e9" + integrity sha512-1T+tk0V6ubZgiZJGi39QlLMAcgEw+lhoDeSpT3L8Y/f8nUpJW9ntcMOmt+uvMfQ3TVjNcR1r/Lhtm7gTqgdcPg== + optionalDependencies: + lefthook-darwin-arm64 "1.6.1" + lefthook-darwin-x64 "1.6.1" + lefthook-freebsd-arm64 "1.6.1" + lefthook-freebsd-x64 "1.6.1" + lefthook-linux-arm64 "1.6.1" + lefthook-linux-x64 "1.6.1" + lefthook-windows-arm64 "1.6.1" + lefthook-windows-x64 "1.6.1" + leven@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" @@ -5582,7 +5636,7 @@ semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^ dependencies: lru-cache "^6.0.0" -semver@^6.1.0, semver@^6.3.0, semver@^6.3.1: +semver@^6.3.0, semver@^6.3.1: version "6.3.1" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== @@ -6198,9 +6252,16 @@ underscore@^1.9.1: integrity sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A== undici@^5.14.0: - version "5.27.2" - resolved "https://registry.yarnpkg.com/undici/-/undici-5.27.2.tgz#a270c563aea5b46cc0df2550523638c95c5d4411" - integrity "sha1-onDFY66ltGzA3yVQUjY4yVxdRBE= sha512-iS857PdOEy/y3wlM3yRp+6SNQQ6xU0mmZcwRSriqk+et/cwWAtwmIGf6WkoDN2EK/AMdCO/dfXzIwi+rFMrjjQ==" + version "5.28.3" + resolved "https://registry.yarnpkg.com/undici/-/undici-5.28.3.tgz#a731e0eff2c3fcfd41c1169a869062be222d1e5b" + integrity "sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA==" + dependencies: + "@fastify/busboy" "^2.0.0" + +undici@^5.25.4: + version "5.28.3" + resolved "https://registry.yarnpkg.com/undici/-/undici-5.28.3.tgz#a731e0eff2c3fcfd41c1169a869062be222d1e5b" + integrity sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA== dependencies: "@fastify/busboy" "^2.0.0"