Skip to content
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

Add support for Travis CI #68

Merged
merged 6 commits into from Jun 3, 2012
Merged

Add support for Travis CI #68

merged 6 commits into from Jun 3, 2012

Conversation

dshafik
Copy link
Contributor

@dshafik dshafik commented Apr 26, 2012

This is more of a proof of concept; it configures, builds and tests PHP with each commit.

What doesn't work:

  • NOT A BUG It isn't mailing the results of the run to the php.qa.reports ML (the ML is no longer used, need to confirm they do show up at http://qa.php.net/reports/ however)
  • FIXED It isn't exiting with 1 when there are failed tests despite setting REPORT_EXIT_STATUS=1
  • FIXED It isn't connecting to MySQL to test the mysql extensions

I'd like to:

  • Get as many DB extensions testing as possible
    • Travis supports: MySQL, PostgreSQL, SQLite3, MongoDB, CouchDB, Redis, Riak, Memcached
  • Get as many other extensions testing as possible
    • Travis can install dependencies using apt-get
  • Also get it working for PECL extensions

I'm just throwing this out here right now to gauge interest, and to see if anyone else wants to contribute :)

You can see this in action here, or just look at: Build Status

@Palleas
Copy link

Palleas commented Apr 26, 2012

This is awesome, thanks!

@svenfuchs
Copy link

If this gets merged in and you guys are interested in pull-request testing then shoot us a note at contact@travis-ci.org. This feature is currently being rolled out manually but we'd love to turn it on for php.

@dshafik
Copy link
Contributor Author

dshafik commented Apr 28, 2012

With 355cf75 the tests are now running against MySQL, PgSQL, and SQLite, and covers 53 extensions, running 99.2% of the full test suite.

I'm thinking seeing as this is a PHP 5.4 box, that we can use php -s in the ext/curl/tests/responder directory to allow setting of PHP_CURL_HTTP_REMOTE_SERVER for ext/curl.

@reeze
Copy link
Contributor

reeze commented Apr 28, 2012

Cool, Travis is awesome.

@dsp
Copy link
Member

dsp commented Apr 30, 2012

FYI looking into it. General idea is great, have to read about travis, etc first.

@ghost ghost assigned dsp Apr 30, 2012
@@ -332,6 +332,7 @@ function write_information($show_html)
define('PHP_QA_EMAIL', 'qa-reports@lists.php.net');
define('QA_SUBMISSION_PAGE', 'http://qa.php.net/buildtest-process.php');
define('QA_REPORTS_PAGE', 'http://qa.php.net/reports');
define('TRAVIS_CI' , !!getenv('TRAVIS_PHP_VERSION'));
Copy link
Member

Choose a reason for hiding this comment

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

Looks like idomatic JavaScript code. If you want to convert it to a boolean use

define('TRAVIS_CI', (boolean) getenv('TRAVIS_PHP_VERSION'));

@dsp
Copy link
Member

dsp commented May 25, 2012

I like the idea. If there are no objections from internals I will go ahead and merge that once you squelched the little issues.

@Tyrael
Copy link
Member

Tyrael commented May 25, 2012

for the REPORT_EXIT_STATUS problem see https://bugs.php.net/bug.php?id=60285

@michaelcullum
Copy link

I know someone who is working on firebird support for travis but I have no idea how long that will take him.

@dshafik
Copy link
Contributor Author

dshafik commented May 28, 2012

@dsp 5ef46fe should solve both the issues you raised.

@dsp
Copy link
Member

dsp commented Jun 3, 2012

@Tyrael would be great to have that fixed :)

dsp added a commit that referenced this pull request Jun 3, 2012
By Davey Shafik
via Davey Shafik
* pull-request/68:
  Fix boolean casting and whitespace (@dsp / #68)
  Add curl extension config, uses cli-server to test
  Source all extension scripts for ENV vars
  Add extension configs, compile more extensions
  Reformat, setup MySQL DB, call run-tests directly
  Add support for Travis CI
@php-pulls php-pulls merged commit 5ef46fe into php:master Jun 3, 2012
@dsp
Copy link
Member

dsp commented Jun 3, 2012

Merged. Let's see how it works out

@dsp
Copy link
Member

dsp commented Jun 3, 2012

looks like tests on masters are currently failing, ci.qa.php.net shows 13 failing while travis has 52 failing.

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.

None yet

8 participants