Skip to content

Commit e128d2e

Browse files
authored
PHPC-2298: Test with PHP 8.3 on Evergreen (#1515)
* Build with PHP 8.3 * Generate test variants automatically based on PHP versions
1 parent 746c65d commit e128d2e

11 files changed

+219
-76
lines changed

.evergreen/config.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,14 @@ include:
4242
- filename: .evergreen/config/build-variants.yml
4343

4444
- filename: .evergreen/config/test-tasks.yml
45-
- filename: .evergreen/config/test-variants.yml
4645

4746
# Automatically generated files
47+
- filename: .evergreen/config/generated/build/build-php-8.3.yml
4848
- filename: .evergreen/config/generated/build/build-php-8.2.yml
4949
- filename: .evergreen/config/generated/build/build-php-8.1.yml
5050
- filename: .evergreen/config/generated/build/build-php-8.0.yml
5151
- filename: .evergreen/config/generated/build/build-php-7.4.yml
52-
- filename: .evergreen/config/generated/build/build-libmongoc-8.2.yml
52+
- filename: .evergreen/config/generated/build/build-libmongoc-8.3.yml
5353
- filename: .evergreen/config/generated/test/local-latest.yml
5454
- filename: .evergreen/config/generated/test/local-rapid.yml
5555
- filename: .evergreen/config/generated/test/local-7.0.yml
@@ -79,3 +79,8 @@ include:
7979
- filename: .evergreen/config/generated/test/skip-crypt-shared-rapid.yml
8080
- filename: .evergreen/config/generated/test/skip-crypt-shared-7.0.yml
8181
- filename: .evergreen/config/generated/test/skip-crypt-shared-6.0.yml
82+
- filename: .evergreen/config/generated/test-variant/latest-php-8.3.yml
83+
- filename: .evergreen/config/generated/test-variant/replicaset-php-8.2.yml
84+
- filename: .evergreen/config/generated/test-variant/replicaset-php-8.1.yml
85+
- filename: .evergreen/config/generated/test-variant/replicaset-php-8.0.yml
86+
- filename: .evergreen/config/generated/test-variant/replicaset-php-7.4.yml

.evergreen/config/generate-config.php

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
// Supported PHP versions. Add new versions to the beginning of the list
55
$supportedPhpVersions = [
6+
'8.3',
67
'8.2',
78
'8.1',
89
'8.0',
@@ -22,8 +23,10 @@
2223
'3.6',
2324
];
2425

26+
$latestPhpVersion = max($supportedPhpVersions);
27+
2528
// Only test the latest PHP version for libmongoc
26-
$libmongocBuildPhpVersions = [ max($supportedPhpVersions) ];
29+
$libmongocBuildPhpVersions = [ $latestPhpVersion ];
2730

2831
// Server versions
2932
$localServerVersions = $supportedMongoDBVersions;
@@ -61,6 +64,10 @@
6164
$allFiles[] = generateConfigs('test', 'mongodbVersion', 'require-api-version.yml', 'require-api-version-%s', $requireApiServerVersions);
6265
$allFiles[] = generateConfigs('test', 'mongodbVersion', 'skip-crypt-shared.yml', 'skip-crypt-shared-%s', $skipCryptSharedServerVersions);
6366

67+
// Test variants
68+
$allFiles[] = generateConfigs('test-variant', 'phpVersion', 'latest.yml', 'latest-php-%s', [$latestPhpVersion]);
69+
$allFiles[] = generateConfigs('test-variant', 'phpVersion', 'replicaset-only.yml', 'replicaset-php-%s', array_diff($supportedPhpVersions, [$latestPhpVersion]));
70+
6471
echo "Generated config. Use the following list to import files:\n";
6572
echo implode("\n", array_map('getImportConfig', array_merge(...$allFiles))) . "\n";
6673

.evergreen/config/generated/build/build-libmongoc-8.2.yml renamed to .evergreen/config/generated/build/build-libmongoc-8.3.yml

Lines changed: 9 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.evergreen/config/generated/build/build-php-8.3.yml

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.evergreen/config/test-variants.yml renamed to .evergreen/config/generated/test-variant/latest-php-8.3.yml

Lines changed: 21 additions & 64 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.evergreen/config/generated/test-variant/replicaset-php-7.4.yml

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.evergreen/config/generated/test-variant/replicaset-php-8.0.yml

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.evergreen/config/generated/test-variant/replicaset-php-8.1.yml

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.evergreen/config/generated/test-variant/replicaset-php-8.2.yml

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)