]>
Commit | Line | Data |
---|---|---|
53ed6d7d | 1 | ## Local development |
2 | A [`Makefile`](https://github.com/shaarli/Shaarli/blob/master/Makefile) is available to perform project-related operations: | |
43ad7c8e | 3 | |
53ed6d7d | 4 | - Documentation - generate a local HTML copy of the GitHub wiki |
0433c688 | 5 | - [Static analysis](Static analysis) - check that the code is compliant to PHP conventions |
6 | - [Unit tests](Unit tests) - ensure there are no regressions introduced by new commits | |
53ed6d7d | 7 | |
8 | ## Automatic builds | |
9 | [Travis CI](http://docs.travis-ci.com/) is a Continuous Integration build server, that runs a build: | |
43ad7c8e | 10 | |
53ed6d7d | 11 | - each time a commit is merged to the mainline (`master` branch) |
12 | - each time a Pull Request is submitted or updated | |
13 | ||
0433c688 | 14 | A build is composed of several jobs: one for each supported PHP version (see [Server requirements](Server requirements)). |
53ed6d7d | 15 | |
16 | Each build job: | |
43ad7c8e | 17 | |
53ed6d7d | 18 | - updates Composer |
19 | - installs 3rd-party test dependencies with Composer | |
0433c688 | 20 | - runs [Unit tests](Unit tests) |
53ed6d7d | 21 | |
22 | After all jobs have finished, Travis returns the results to GitHub: | |
43ad7c8e | 23 | |
53ed6d7d | 24 | - a status icon represents the result for the `master` branch: [![](https://api.travis-ci.org/shaarli/Shaarli.svg)](https://travis-ci.org/shaarli/Shaarli) |
25 | - Pull Requests are updated with the Travis result | |
26 | - Green: all tests have passed | |
27 | - Red: some tests failed | |
28 | - Orange: tests are pending |