ratzpo wanted it to be assigned to him, so I'm re-assigning.
For the time being I have set up the tests in buildbot (temporarily, until the solution from ratzpo is in place). Indeed, it did not require any duplication, because tarbake did not do anything meaningful for connectors branches (I thought it did, and we would have to have two tarbakes). In fact, tarbake was just starting for connectors trees, fetching sources and failing as soon as it tried to build the source package. Now I've made it to do what's required in the scope of this task for 3.0 branch, and bail out on other connector-c branches without attempting a build.
The basic logic is this:
if [[ "$REMOTE" == "MariaDB-mariadb-connector-c" ]] && [[ "%(branch)s" == "3.0" ]]; then
|
echo "MDEV-17688 - buildbot to test latest C/C 3.0 branch with the latest server 10.2 branch"
|
git remote add MariaDB-server https://github.com/MariaDB/server || true
|
git fetch --prune MariaDB-server
|
git checkout --force MariaDB-server/%(server_branch_for_connector_c)s
|
rm -rf libmariadb
|
git clone $URL --branch "%(branch)s" libmariadb
|
else
|
<as it was>
|
There are also some changes which make 3.x a logical equivalent of 10.2+, as we rely on the branch name to define the test behavior in several places.
I haven't made the connector branch a variable like DEVELOPMENT_BRANCH, because I thought we might want to run these tests for more than one branch at once, e.g. 3.0 and 3.1. We can, however, make it a list-like if needed.
Note: Maybe even better solution would be not to trigger tarbake for connector-c branches unless they fall in the area of our interest, but it requires a little more than doStepIf, because if we do so, the tarbake compilation is _skipped, the whole tarbake test passes, and it triggers a bogus test run with whatever previous tarbake the slave had._
Anyway, since it's supposed to be a temporary solution, I didn't try to bring it to a long-term perfection.
Here is a test run on 3.0 (forced):
http://buildbot.askmonty.org/buildbot/grid?category=main&branch=3.0
It actually uses bb-10.2-release rather than 10.2, because at the moment 10.2 is broken, but I changed the config back to 10.2 after this run.
I also checked that the tarbake is properly triggered by a regular push. It also triggers (as it does for any connector pushes) some unwanted builds, e.g. Windows debug, which fails in the matter of seconds, but this is an old nuisance out of the scope of this task.
From Serg on slack: