Skip to content

Commit 07c6103

Browse files
authored
chore: Setup develop-3.x.x testing (#3984)
* chore: Setup develop-3.x.x testing * Add pr supervisor
1 parent 13da701 commit 07c6103

17 files changed

Lines changed: 47 additions & 2569 deletions

File tree

.github/renovate.json5

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"baseBranches": ["develop", "develop-2.0.0"],
2+
"baseBranches": ["develop", "develop-2.0.0", "develop-3.x.x"],
33
"dependencyDashboard": true,
44

55
"$schema": "https://docs.renovatebot.com/renovate-schema.json",

.github/workflows/autoupdate.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ on:
44
branches:
55
- develop
66
- develop-2.0.0
7+
- develop-3.x.x
78
jobs:
89
autoupdate:
910
name: auto-update

.github/workflows/conventional-pr.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ on:
66
branches:
77
- develop
88
- develop-2.0.0
9+
- develop-3.x.x
910
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
1011
jobs:
1112
# This workflow contains a single job called "build"

.github/workflows/pr-description-validation.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ on:
1414
branches:
1515
- develop
1616
- develop-2.0.0
17+
- develop-3.x.x
1718
- release/*
1819

1920
jobs:
@@ -29,14 +30,14 @@ jobs:
2930
script: |
3031
const pr = context.payload.pull_request;
3132
const body = pr.body || '';
32-
33+
3334
// List of users to skip description validation
3435
// This should be automations where we don't care that much about the description format
3536
const skipUsersPrefixes = [
3637
'unity-renovate',
3738
'svc-'
3839
];
39-
40+
4041
// If PR author is in the skip list, exit early
4142
const author = pr.user.login;
4243
console.log(`PR author: ${author}`);
@@ -49,7 +50,7 @@ jobs:
4950
const requiredSections = [
5051
{
5152
header: '## Backports',
52-
description: 'PR description must include a "## Backports" section. Please add this section and provide information about this PR backport to develop or develop-2.0.0 branch respectively or explain why backport is not needed.'
53+
description: 'PR description must include a "## Backports" section. Please add this section and provide information about this PR backport to develop, develop-2.0.0 or develop-3.x.x branch respectively or explain why backport is not needed.'
5354
},
5455
{
5556
header: '## Testing & QA',

.github/workflows/pr-supervisor.yaml

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# We are using https://cli.github.com/manual/gh_pr_checks
33
# The aim is to ensure that conditionally triggered Yamato jobs are completed successfully before allowing merges
44

5-
# This job will be required in branch protection rules for develop, develop-2.0.0, and release/* branches. It's only goal will be to ensure that Yamato jobs are completed successfully before allowing Pr to merge.
5+
# This job will be required in branch protection rules for develop, develop-2.0.0, develop-3.x.x, and release/* branches. It's only goal will be to ensure that Yamato jobs are completed successfully before allowing Pr to merge.
66
# Note that conditional jobs will have 30s to show which is always the cas since they are showing up as soon as in distribution stage.
77

88
name: Yamato PR Supervisor
@@ -13,8 +13,9 @@ on:
1313
branches:
1414
- develop
1515
- develop-2.0.0
16+
- develop-3.x.x
1617
- release/*
17-
18+
1819
concurrency:
1920
group: pr-${{ github.event.pull_request.number }}
2021
cancel-in-progress: true
@@ -26,32 +27,32 @@ jobs:
2627
steps:
2728
- name: Checkout repository
2829
uses: actions/checkout@v6
29-
30+
3031
- name: Wait and Verify Yamato Job Status
3132
env:
3233
GH_TOKEN: ${{ secrets.GH_TOKEN }}
3334
PR_NUMBER: ${{ github.event.pull_request.number }}
3435
run: |
3536
set -e
36-
37-
37+
38+
3839
MAX_ATTEMPTS=$((12*60))
3940
INTERVAL=60
40-
41+
4142
sleep $INTERVAL
4243
for ((i=1;i<=MAX_ATTEMPTS;i++)); do
4344
echo "Polling PR checks (attempt $i/$MAX_ATTEMPTS)..."
44-
45+
4546
# We want to watch for pending checks beside this check
4647
checks=$(gh pr checks $PR_NUMBER --json name,state --jq '[ .[] | select(.name != "yamato-supervisor") ]')
47-
48+
4849
pending=$(echo "$checks" | jq '[.[] | select(.state == "PENDING")] | length')
4950
skipping=$(echo "$checks" | jq '[.[] | select(.state == "SKIPPED")] | length')
5051
passed=$(echo "$checks" | jq '[.[] | select(.state == "SUCCESS")] | length')
5152
failed=$(echo "$checks" | jq '[.[] | select(.state == "FAILURE")] | length')
52-
53+
5354
echo "Pending checks: $pending, Skipping checks: $skipping", Passed checks: $passed, Failed checks: $failed
54-
55+
5556
if [[ "$failed" -gt 0 ]]; then
5657
echo "A check has failed! Failing fast."
5758
exit 1
@@ -61,6 +62,6 @@ jobs:
6162
echo "All non-supervisor checks are completed!"
6263
exit 0
6364
fi
64-
65+
6566
sleep $INTERVAL
66-
done
67+
done

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,5 @@ utr.bat
1212
Tools/CI/bin
1313
Tools/CI/obj
1414

15+
# Do not include the packages-lock file
16+
packages-lock.json

.yamato/_triggers.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
# 1) Minimal PR checks that run on all PRs (even if only docs are changed)
1818
# 2) More extensive pr_code_changes_checks that run if code is changed. This test validates Standards, Package tests, Project tests and Desktop standalone tests to ensure that main platforms are covered
1919
# By default pr_minimal_required_checks it's triggered if
20-
# 1) PR targets develop, develop-2.0.0 or release branches
20+
# 1) PR targets develop, develop-2.0.0, develop-3.x.x or release branches
2121
# 2) PR is not a draft
2222
# Then pr_code_changes_checks it's triggered if the same conditions apply plus:
2323
# 1) PR changes code in com.unity.netcode.gameobjects package (Editor, Runtime or Tests folders) or in testproject folder or package.json file
@@ -58,6 +58,7 @@ pr_minimal_required_checks:
5858
(pull_request.comment eq "ngo" OR
5959
(pull_request.target eq "develop" OR
6060
pull_request.target eq "develop-2.0.0" OR
61+
pull_request.target eq "develop-3.x.x" OR
6162
pull_request.target match "release/*")) AND
6263
NOT pull_request.draft
6364
cancel_old_ci: true
@@ -75,13 +76,13 @@ pr_code_changes_checks:
7576
# Run API validation to early-detect all new APIs that would force us to release new minor version of the package. Note that for this to work the package version in package.json must correspond to "actual package state" which means that it should be higher than last released version
7677
- .yamato/vetting-test.yml#vetting_test
7778

78-
# Run package EditMode and Playmode package tests on trunk and an older supported editor (6000.0)
79+
# Run package EditMode and Playmode package tests on trunk and an older supported editor (6000.3)
7980
- .yamato/package-tests.yml#package_test_-_ngo_{{ pinnedTrunk }}_mac
80-
- .yamato/package-tests.yml#package_test_-_ngo_6000.0_win
81+
- .yamato/package-tests.yml#package_test_-_ngo_6000.3_win
8182

82-
# Run testproject EditMode and Playmode project tests on trunk and an older supported editor (6000.0)
83+
# Run testproject EditMode and Playmode project tests on trunk and an older supported editor (6000.3)
8384
- .yamato/project-tests.yml#test_testproject_win_{{ pinnedTrunk }}
84-
- .yamato/project-tests.yml#test_testproject_mac_6000.0
85+
- .yamato/project-tests.yml#test_testproject_mac_6000.3
8586

8687
# Run standalone test. We run it only on Ubuntu since it's the fastest machine, and it was noted that for example distribution on macOS is taking 40m since we switched to Apple Silicon
8788
# Coverage on other standalone machines is present in Nightly job so it's enough to not run all of them for PRs
@@ -94,6 +95,7 @@ pr_code_changes_checks:
9495
(pull_request.comment eq "ngo" OR
9596
(pull_request.target eq "develop" OR
9697
pull_request.target eq "develop-2.0.0" OR
98+
pull_request.target eq "develop-3.x.x" OR
9799
pull_request.target match "release/*")) AND
98100
NOT pull_request.draft AND
99101
pull_request.changes.any match [

.yamato/project.metafile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,14 +176,13 @@ validation_editors:
176176
default:
177177
- 6000.3
178178
all:
179-
- 6000.0
180179
- 6000.3
181180
- 6000.4
182181
- 6000.5
183182
- trunk
184183
- a4ce83e807ca9aff8394d1cc07341168dc49df03
185184
minimal:
186-
- 6000.0
185+
- 6000.3
187186
pinnedTrunk: a4ce83e807ca9aff8394d1cc07341168dc49df03
188187

189188

Examples/CharacterControllerMovingBodies/Packages/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
"com.unity.ide.rider": "3.0.38",
1111
"com.unity.ide.visualstudio": "2.0.25",
1212
"com.unity.multiplayer.center": "1.0.0",
13-
"com.unity.netcode.gameobjects": "https://github.com/Unity-Technologies/com.unity.netcode.gameobjects.git?path=com.unity.netcode.gameobjects#develop-2.0.0",
13+
"com.unity.netcode.gameobjects": "https://github.com/Unity-Technologies/com.unity.netcode.gameobjects.git?path=com.unity.netcode.gameobjects#develop-3.x.x",
1414
"com.unity.purchasing": "4.12.2",
1515
"com.unity.services.multiplayer": "1.2.0",
1616
"com.unity.test-framework": "1.6.0",

0 commit comments

Comments
 (0)