[MDEV-9185] Integrate with Travis-CI for easier and more automatic QA Created: 2015-11-25  Updated: 2016-10-04  Resolved: 2016-09-06

Status: Closed
Project: MariaDB Server
Component/s: Tests
Fix Version/s: 10.2.2

Type: Task Priority: Major
Reporter: Sergey Vojtovich Assignee: Sergey Vojtovich
Resolution: Fixed Votes: 1
Labels: contribution, foundation, patch

Sprint: 10.2.1-2, 10.1.17-1

 Description   

I simplified and refactored the original suggestion from Daniel Black regarding a .travis.yml file that enables the usage of the continous integration service by Travis, which is free for open source projects and easily available to anybody who wants to developd and work with the MariaDB server sources.

This Travis-CI file is not intended to replace the buildbots currently used by MariaDB core developers, but rather to provide an extra facility for occasional contributors who don't have their own buildbot trees.

Currently Travis-CI has a 50 minute limit on the build duration, so the tests are limited to the 'main' suite. Parallel Travis-CI jobs would be a way around that restriction, but it wastes resources, so I am working with Travis-CI dev to figure out another more effective solution.

The Travis build also includes building the Debian packages, which will help spot packaging breakages early on.

The code in this PR branch passes the test. Log visible at https://travis-ci.org/MariaDB/server/builds/92879843



 Comments   
Comment by Otto Kekäläinen [ 2016-02-29 ]

@serg Are you going to merge this PR and then maybe mangle a debug version of it, and apply to all branches?

Comment by Otto Kekäläinen [ 2016-04-09 ]

As we have so much failing tests, I think this issue should be priority and help all developers and contibutors to have running and checking test results more deeply embedded in their workflows. Ping serg ratzpo monty

Also, since I made this Travis integration 6 months Travis-ci.org has lifted their timeout limit from 50 minutes to 90 minutes, so there would be room for the tests to do more. Feel free to adapt this as much as you like.

Comment by Daniel Black [ 2016-08-23 ]

Step 1 & 2 from https://docs.travis-ci.com/user/getting-started/ are required to get travis actually building on commit/PR.

Comment by Otto Kekäläinen [ 2016-08-23 ]

svoj elenst danblack You can see at https://github.com/MariaDB/server/commits/10.2 the Travis-CI at work. Pressing on the red X you can view the Travis-CI log why it fails.

Comment by Sergey Vojtovich [ 2016-08-23 ]

So, is there still anything we should do?

Comment by Otto Kekäläinen [ 2016-08-23 ]

Yes, please look into the build log if you can fix the failure?

The point of Travis-CI is to spot regerssions and point out the exact commit (in any branch, anywhere) where the regression occured. That function is not fulfilled if the test is already broken. The page https://travis-ci.org/MariaDB/server should be all green when contributors start branching off the 10.2 branch to do their new feature/fix.

Checkout https://travis-ci.org/MariaDB/mariadb-connector-j how it is all green. (Good work diego dupin!)

Comment by Diego Dupin [ 2016-08-23 ]

Since dec. 15, there is no IPv6 support on Travis (one of the remaining error is because of that)

Comment by Daniel Black [ 2016-08-23 ]

my bad. was expecting to see it in 10.0 / 10.1 however it was only merged in 10.2. no problem.

Comment by Daniel Black [ 2016-09-05 ]

https://github.com/MariaDB/server/pull/223 contains the IPv6 fix.

https://github.com/MariaDB/server/commit/3889b19f5414f689c8db98b81a19425629c98faa#diff-17368d0ec7d33cf4abea84c04d5be7b8 caused the IPv6 to return true if the sockaddr_in6 function existed.

The reworked implementation does a full bind to the port as it is used in the tests.

Test results of pull request, https://travis-ci.org/MariaDB/server/builds/157746279, shows IPv6 as being disabled on Travis.

Comment by Sergey Vojtovich [ 2016-09-06 ]

IPV6 issue to be fixed by MDEV-10751

Generated at Thu Feb 08 07:32:47 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.