Skip to content

PHPLIB-563: Finalise PHP runtime axis #788

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Sep 22, 2020
Merged

Conversation

alcaeus
Copy link
Member

@alcaeus alcaeus commented Sep 18, 2020

PHPLIB-563

This PR makes a few last changes to the pipeline:

  • Exclude rhel74-zseries and rhel71-power8 because they don't pass or don't even start. Since this also affects PHPC, I'd take care of this in the PHPC follow-up epic.
  • Add tests against lowest supported versions. We test the base driver release and oldest composer dependencies against all server versions.
  • PHP 7.0 now also works on Debian 9.2 an RHEL 7.0. I was able to work around the pecl errors that prevented running on those platforms

Pull requests currently test the "test-php-versions" pipeline, which tests the driver on all PHP versions and several operating systems against the latest server. I'm open to adding additional variants/tasks to the mix, but thought that those were a good starting point.

@alcaeus alcaeus requested a review from jmikola September 18, 2020 13:55
@alcaeus alcaeus self-assigned this Sep 18, 2020
- { "os-php7": "rhel71-power8", "php-versions": "*", edge-versions: "*", "driver-versions": "*" }
# rhel74-zseries doesn't start in a timely fashion - most likely missing executors
- { "os-php7": "rhel74-zseries", "php-versions": "*", edge-versions: "*", "driver-versions": "*" }
display_name: "* ${os-php7}, PHP ${php-versions}, MongoDB ${edge-versions}, ext-mongodb ${driver-versions}"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why does the display name start with an asterisk?

Should we use a consistent order with other display names? I noticed the "test-dependencies" matrix below has some of the components here in a different order.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The asterisk is there to make sure these variants are sorted to the top of the list, as they are the ones we require for a PR to pass.

As for ordering in display names, I moved the main variant (e.g. PHP version in this case, MongoDB server version in other cases) to the front of the list. I have no objections against changing this if you prefer to have them alphabetically sorted in general.

Copy link
Member

@jmikola jmikola Sep 21, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, I see now that you're prioritizing the variable axes over the fixed ones, and in the "test-dependencies" matrix only the MongoDB version varies. That all makes sense to leave as-is.

@@ -4,6 +4,10 @@ set -o errexit # Exit the script with error if any of the commands fail

install_extension ()
{
# Workaround to get PECL running on PHP 7.0
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it make sense to guard this in a conditional for PHP_VERSION starting with "7.0."?

https://stackoverflow.com/a/2172367/162228 suggests you could use if [[ $PHP_VERSION == 7.0.* ]]

Copy link
Member Author

@alcaeus alcaeus Sep 22, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Despite me trying to use bash as a shell, I couldn't get evergreen to play nice:

[2020/09/22 08:21:34.150] + [[ 7.0.32 == 7.0.* ]]
[2020/09/22 08:21:34.150] [...]/.evergreen/install-dependencies.sh: 8: [...]/.evergreen/install-dependencies.sh: [[: not found

Since this has no negative impact on other PHP versions, I'd use this unconditionally, especially since 7.0 is the next PHP version we'll drop support for (although no timeline for this exists).

@alcaeus alcaeus merged commit 96b7017 into mongodb:master Sep 22, 2020
@alcaeus alcaeus deleted the phplib-563 branch September 22, 2020 09:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants