diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index dd61a67a..aed34d8e 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -9,44 +9,44 @@ jobs: name: Code formatting runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: 18 - - uses: c-hive/gha-yarn-cache@v2 + cache: 'yarn' - run: yarn - run: yarn verify:formatting codeStyles: name: Code styles runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: 18 - - uses: c-hive/gha-yarn-cache@v2 + cache: 'yarn' - run: yarn - run: yarn verify:code-styles types: name: Types check runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: 18 - - uses: c-hive/gha-yarn-cache@v2 + cache: 'yarn' - run: yarn - run: yarn typecheck tests: name: Tests runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: 18 - - uses: c-hive/gha-yarn-cache@v2 + cache: 'yarn' - run: yarn - run: yarn test --coverage - run: bash <(curl -s https://codecov.io/bash) diff --git a/.github/workflows/firebase-hosting-merge.yml b/.github/workflows/firebase-hosting-merge.yml index b8b5f0bc..1d638de5 100644 --- a/.github/workflows/firebase-hosting-merge.yml +++ b/.github/workflows/firebase-hosting-merge.yml @@ -11,10 +11,10 @@ jobs: runs-on: ubuntu-latest steps: # Checkout - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 # Build - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: 18 cache: yarn diff --git a/.github/workflows/firebase-hosting-pull-request.yml b/.github/workflows/firebase-hosting-pull-request.yml index 9b9a6d75..9aee3c78 100644 --- a/.github/workflows/firebase-hosting-pull-request.yml +++ b/.github/workflows/firebase-hosting-pull-request.yml @@ -9,10 +9,10 @@ jobs: runs-on: ubuntu-latest steps: # Checkout - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 # Build - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: 18 cache: yarn diff --git a/.github/workflows/search-trigger.yml b/.github/workflows/search-trigger.yml index a2828301..615cd1ba 100644 --- a/.github/workflows/search-trigger.yml +++ b/.github/workflows/search-trigger.yml @@ -6,7 +6,7 @@ jobs: name: Update search index runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: darrenjennings/algolia-docsearch-action@da2ed379c147b356d60dbfec68bdcfacb2791a98 with: algolia_application_id: 'E57FOT37U9' diff --git a/docs/03-github-cloud-runner/03-examples/02-github-examples/02-aws.mdx b/docs/03-github-cloud-runner/03-examples/02-github-examples/02-aws.mdx index 2317f92f..8bafa486 100644 --- a/docs/03-github-cloud-runner/03-examples/02-github-examples/02-aws.mdx +++ b/docs/03-github-cloud-runner/03-examples/02-github-examples/02-aws.mdx @@ -17,7 +17,7 @@ If you're using GitHub you can use a GitHub Action: ```yaml - name: Configure AWS Credentials - uses: aws-actions/configure-aws-credentials@v1 + uses: aws-actions/configure-aws-credentials@v4 with: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} diff --git a/docs/03-github/01-getting-started.mdx b/docs/03-github/01-getting-started.mdx index f0cf99e6..db490d58 100644 --- a/docs/03-github/01-getting-started.mdx +++ b/docs/03-github/01-getting-started.mdx @@ -77,7 +77,7 @@ jobs: steps: # Checkout - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: lfs: true @@ -91,7 +91,7 @@ jobs: # Test - name: Run tests - uses: game-ci/unity-test-runner@v3 + uses: game-ci/unity-test-runner@v4 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} with: @@ -99,7 +99,7 @@ jobs: # Build - name: Build project - uses: game-ci/unity-builder@v3 + uses: game-ci/unity-builder@v4 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} @@ -132,7 +132,7 @@ jobs: steps: # Checkout (without LFS) - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 # Git LFS - name: Create LFS file list @@ -161,7 +161,7 @@ jobs: # Test - name: Run tests - uses: game-ci/unity-test-runner@v3 + uses: game-ci/unity-test-runner@v4 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} with: @@ -169,7 +169,7 @@ jobs: # Build - name: Build project - uses: game-ci/unity-builder@v3 + uses: game-ci/unity-builder@v4 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} @@ -202,7 +202,7 @@ jobs: steps: # Checkout - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: lfs: true @@ -216,7 +216,7 @@ jobs: # Test - name: Run tests - uses: game-ci/unity-test-runner@v3 + uses: game-ci/unity-test-runner@v4 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} with: @@ -228,7 +228,7 @@ jobs: steps: # Checkout - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: lfs: true @@ -242,7 +242,7 @@ jobs: # Build - name: Build project - uses: game-ci/unity-builder@v3 + uses: game-ci/unity-builder@v4 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} @@ -294,7 +294,7 @@ jobs: - Android # Build an Android player. - WebGL # WebGL. steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 lfs: true @@ -308,7 +308,7 @@ jobs: Library-${{ matrix.projectPath }}-${{ matrix.targetPlatform }}- Library-${{ matrix.projectPath }}- Library- - - uses: game-ci/unity-test-runner@v3 + - uses: game-ci/unity-test-runner@v4 id: testRunner env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} @@ -323,7 +323,7 @@ jobs: path: ${{ steps.testRunner.outputs.artifactsPath }} - if: matrix.targetPlatform == 'Android' uses: jlumbroso/free-disk-space@v1.2.0 - - uses: game-ci/unity-builder@v3 + - uses: game-ci/unity-builder@v4 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} @@ -340,7 +340,7 @@ jobs: buildForWindowsBasedPlatforms: name: Build for ${{ matrix.targetPlatform }} - runs-on: windows-2019 + runs-on: windows-2022 strategy: fail-fast: false matrix: @@ -356,7 +356,7 @@ jobs: - WSAPlayer # Build a UWP App. steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 lfs: true @@ -370,7 +370,7 @@ jobs: Library-${{ matrix.projectPath }}-${{ matrix.targetPlatform }}- Library-${{ matrix.projectPath }}- Library- - - uses: game-ci/unity-builder@v3 + - uses: game-ci/unity-builder@v4 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} @@ -400,7 +400,7 @@ jobs: - StandaloneOSX # Build a macOS standalone. steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 lfs: true @@ -416,7 +416,7 @@ jobs: Library-${{ matrix.projectPath }}- Library- - - uses: game-ci/unity-builder@v3 + - uses: game-ci/unity-builder@v4 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} diff --git a/docs/03-github/02-activation.mdx b/docs/03-github/02-activation.mdx index f75816d1..ba358904 100644 --- a/docs/03-github/02-activation.mdx +++ b/docs/03-github/02-activation.mdx @@ -17,96 +17,43 @@ Follow these steps if you are using a free version of Unity. #### Mental model -1. Request an activation file for usage on GitHub -2. Use that file to acquire a license -3. Set the license as a secret +1. Activate a license for use on Github via a local machine +2. Set the license as a secret -#### About the activation file +#### Activating a license file -You may use the -[Unity - Request Activation File](https://github.com/marketplace/actions/unity-request-activation-file) -action with the below instructions. +1. Install [Unity Hub](https://unity.com/download) on your local machine. +2. Log into Unity Hub with the Unity account that you are using for CI. Make sure you log into the + correct account or you may not activate the correct license. +3. When prompted, activate your personal license. If you are not prompted, go to `Unity Hub` > + `Preferences` > `Licenses` > `Add` and choose `Get a free personal license`. You do not need to + install an editor on your local machine. +4. Depending on the host you are using, find the `.ulf` file which is your Unity license in the + following paths: -The activation file uses machine identifiers so you cannot perform this step locally. + - Windows: `C:\ProgramData\Unity\Unity_lic.ulf` + - Mac: `/Library/Application Support/Unity/Unity_lic.ulf` + - Linux: `~/.local/share/unity3d/Unity/Unity_lic.ulf` -Let's go! + If you have issues locating the file, ensure you've logged into Unity Hub AND activated your + license. Otherwise the file will not be present. Keep in mind these folders might be hidden by + default, you may need to reveal hidden files to see them. -#### Acquiring an activation file + > **Note:** The host platform you use to activate the license does not matter. You only need to + > get the ulf from the platform that is most convenient to you. For example, using Windows to + > activate your license and building on Ubuntu on Github is perfectly fine. -Create a file called `.github/workflows/activation.yml` and add the below workflow definition to it: - -```yaml -name: Acquire activation file -on: - workflow_dispatch: {} -jobs: - activation: - name: Request manual activation file 🔑 - runs-on: ubuntu-latest - steps: - # Request manual activation file - - name: Request manual activation file - id: getManualLicenseFile - uses: game-ci/unity-request-activation-file@v2 - # Upload artifact (Unity_v20XX.X.XXXX.alf) - - name: Expose as artifact - uses: actions/upload-artifact@v2 - with: - name: ${{ steps.getManualLicenseFile.outputs.filePath }} - path: ${{ steps.getManualLicenseFile.outputs.filePath }} -``` - -Commit and push your workflow definition. - -#### Converting into a license - -:::caution - -**Unity no longer supports manual activation of Personal licenses** - -When activating your Personal Unity license, you may encounter an issue where only the "Unity Pro or -Plus" option is available, preventing the activation of a Personal license. Here is a workaround to -resolve this: - -1. Visit [license.unity3d.com](https://license.unity3d.com/manual) and upload the - `Unity_v20XX.X.XXXX.alf` file. -2. On the "Activate your license" page, if the "Personal" option is not available, right-click on - the page and choose "Inspect" to open the browser's developer tools. -3. Find the line of HTML that looks like this: - `