-
Notifications
You must be signed in to change notification settings - Fork 7.8k
Add MariaDB to the Github actions #10062
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
base: master
Are you sure you want to change the base?
Conversation
Failures outstanding in MariaDB:
I did mean to put mariadb tests after the main test in the workflow for pulls. |
What value does this really provide for us though? |
@kamil-tekiela WDYT? Is there any benefit to testing MariaDB specifically? Testing 3 versions seems like overkill to me. |
Like the COMMUNITY builds in nightly, adding CI against MariaDB stable branches ensure that by the time the php and MariaDB releases happen, regardless of timing, that compatibility is there for our mutual user-bases. This gives us the opportunity to fix accidental incompatibilities in product or test cases before users even notice.
Maybe, but its what the users are using or a soon going to and only covers the mysqli/pdo_mysql components. The MariaDB is also pre-built. I did try to keep it minimal, though more could be minimized for nightly only and not push hence proposing a draft, and seeing what everyone here thinks. Compared with how WordPress is tested against many PHP versions 3 is quite low. I do have a MariaDB ci against PHP but I lost attention and now I'm struggling to get mainly test case fixes back in. The lack of working test cases resulting in MariaDB developers ignoring which I'm trying to change. Every now and then warning might be slightly differently worded or result in a different from between MariaDB branches or MySQL versions so looking at a few branches is prudent. |
I think running tests against the latest MariaDB version makes a lot of sense. I don't think we need three versions though. |
If I had to choose 1 I'd go for the latest stable. Any preferences around the push vs nightly?
I've been meaning to keep more on top of this for all the external connectors however, as expected, we've aimed for nothing incompatible. Capability headers defines to match to ext/mysqlnd/mysqlnd_enum_n_def.h. What there is that might be useful is:
|
8bc8562
to
a8c5eb9
Compare
Run the mysqli and pdo_mysqli tests on MariaDB. The :latest tag is the latest stable version of MariaDB and used in the push workflow. The :verylatest tag is the last in development version of MariaDB tested in the nightly flow. The container quay.io/mariadb-foundation/mariadb-devel are the completed works on development on the major branches. We are testing both to ensure that neither PHP or MariaDB are breaking the protocol contract, and if we do, either MariaDB or PHP can fix this before this change ends up in a release.
@SakiTakamachi Can you have a look at this PR sometime? You have mentioned previously that adding a build for MariaDB may be useful. I don't think we need one on-push, but nightly is certainly sensible. @grooverdan Sorry for the slight delay. ^^ |
of course. I have already used this PR as a reference and tested it in my repository. As a result, there were some tests that were failing, so I'm working on addressing them. |
Hi @SakiTakamachi , found SakiTakamachi@9648d18 which is great, since I was having trouble getting to a minimal github actions configuration (trying too hard to not repeat a compile for MySQL and MariaDB). Since github actions as best I could find out still don't support a command for their image containers, the following is what I used to get addition tests to run successfully.
For pam tests: Install pam MariaDB server module:
Create pam service:
These could be done as a step before running the tests. |
Thanks, indeed, that test was skipped. However, if that is the case, MySQL may also be skipped... |
Yep, I added the skip criteria (which seems a long time ago now). MySQL Pam is an enterprise product for them. A way to enable SSL is: |
Last year I made https://mariadb.org/new-service-quay-io-mariadb-foundation-mariadb-devel/ for consumption by CI/test systems.
Recently this was updated with the tags
Each instance test is ~2.5 minutes extra to the test runs.
Hopefully (or very soon) I'll have all test fixes submitted.
ext/mysqli tests "using password" optional in error messages #10035 (backport to 8.1)fixbug coming soon. max_allowed_packet=16777216 causes test failure on ext/mysqli/tests/mysqli_real_connect_compression_error.phpt #10063