Commit graph

961 commits

Author SHA1 Message Date
Adirelle 3734d3bc9a Don't use an if and two return statements when one return is sufficient.
Don't use two if when one else does the same job.
Don't use convoluted calculations when one return statement is sufficient.
Don't call a method that doesn't exist.
Don't write a try-catch block that does nothing.
Do send exceptions when a abnormal situation occurs.

Closed #962
2015-05-28 12:00:43 +02:00
corpsee 5c6dd81a9a Extended shields.io status badge support
Closed #958
2015-05-28 11:50:57 +02:00
Petr Cervenka 7ff080971e Adding Flowdock integration
Closed #954
2015-05-28 11:47:57 +02:00
Adirelle ad29ba4cfd Track and display the build progression, for each stages and plugins.
Translations for the build summary.

Closed #944
2015-05-28 11:39:35 +02:00
Adirelle 4edefee761 Reworked the DaemonCommand.
* Accepts options for PID and log file.
* Uses posix_kill whenever available.
* Checks that the daemon actually started or stopped.
* Try to terminate then kill the daemon.
* Uses the logger or output instead of "echo".

Added a ProcessControl interface and implementations.

Closed #908
2015-05-28 10:55:59 +02:00
Vaidas Zilionis 15b6917f68 Allow see project build status in cctray xml format
Refactoring is done for BuildStatus information.
- Fixed all phpcs, phpmd errors
- Added test for my code (hurray 100 tests already :D)

Closed #705
2015-05-28 10:50:29 +02:00
Victor 0887bd4bc4 Fix for strict standards issue in RebuildCommand.php
[ErrorException]
Runtime Notice: Only variables should be passed by reference in /var/www/phpci/PHPCI/Command/RebuildCommand.php line 78
2015-05-15 16:37:45 +02:00
Adirelle 5cd29ca7fc Allow to specify a mail template ('short' or 'long') in phpci.yml.
Email plugin: checks if the custom template exists before trying to use it.

Closed #933
2015-04-28 14:09:23 +02:00
Adirelle 590ab5fae5 Build::removeBuildDirectory: do not try to remove build directory of not-yet-persisted builds. 2015-04-25 21:25:50 +02:00
Adirelle f46a8be648 LoggerConfig::getFor always returns the same instance of Logger for the same $name.
This avoid issues when push handlers/processors to that logger.
Use the Monolog\ErrorHandler to log errors and exceptions.
PHPCI/Logging/Handler becomes PHPCI/ErrorHandler.
And it only throws ErrorException for reported errors.
No need to initialize a second $loggerConfig in daemonise.

Close #892
2015-04-23 13:25:53 +02:00
Adirelle 5688d9c4c8 The manual build button creates build for the currently watched branch.
Close #927
2015-04-23 13:23:13 +02:00
Adam Cooper 408eb5b974 An attempt at making the codeception plugin a little more complete.
Codeception JS plugin and theme changes.
Improvements to the display. Extra total information plus some test file locations.

Close #588
2015-04-23 13:18:26 +02:00
Adirelle 209454c5f6 When starting a manual build, replace the "Manual" commit id with the HEAD hash.
Close #928
2015-04-23 13:13:29 +02:00
corpsee 634b246ed5 Fixed ru strings for create build command (https://github.com/Block8/PHPCI/pull/889)
Fixed ru strings for 'archived'

Close #932
2015-04-23 10:33:38 +02:00
corpsee 1b7f0bbb4b Improved login: now you can login using name or email
Close #873
2015-04-22 13:54:02 +02:00
Alexander Garzon c0568d3a4b Update lang.es.php
Missing translation for "archived"

Close #931
2015-04-22 12:26:51 +02:00
Adam Henley f7ca64bf6d SMTP Password not masked PR #921
Signed-off-by: Adam Henley <adamazing@gmail.com>

Close #923
2015-04-22 12:26:06 +02:00
rm3nchaca 81fbc6a5a0 fix file link in plugins
Running builds leave a file link with an error like "http://gitlab.example.com/root/project/blob/master/index.php#L6" but it is pointing to the actual file, not the file with a bug, example "97f0a6453d/index.php (L6)"

Close #915
2015-04-22 12:24:29 +02:00
Adirelle f25b1d25dc Let CommandExecutor::findBinary throw an exception when the binary is missing.
Close #910
2015-04-22 12:19:05 +02:00
Lewis Wright 7f46b650dc Added check for invalid key
Close #895
2015-04-22 12:06:26 +02:00
Jérémy DECOOL 9261f24d25 Command to create a new build
Close #889
2015-04-22 12:00:38 +02:00
Angel Koilov 77ba61c8bc add pingback for IRC plugin
Close #886
2015-04-22 11:58:43 +02:00
Adirelle 452a5ba97c Enforce "en" lang in tests.
Some tests compare the result to english strings.

Do not test UnixCommandExecutor on Windows.

PharTest: explain why PHAR writing test are skipped.

InstallCommandTest: mock checkRequirements to allow the tests to run.

Run php_parallel_lint before all other tests.

Close #846
2015-04-22 11:49:26 +02:00
Adirelle 9590336c49 Added a new configuration variable, PHPCI_BUILD_ROOT_DI.
This variable allows to change where the build happens.
It defaults to PHPCI_DIR.'PHPCI/build/'.

Moved build path calculate and build removal into the Build class.

Also remove the build directory when deleting the build.

Close #834
2015-04-22 11:44:54 +02:00
Martin Sadovy 60131ae7b6 Github: Support pull private repository from pull request
Closes #832
2015-04-22 11:41:33 +02:00
zviryatko 067a60983f Fix archive link. 2015-04-22 11:37:38 +02:00
Marco Vito Moscaritolo 3626eabc2e Merge pull request #871 from REBELinBLUE/fix_wipe_error
Preventing the wipe plugin failing due to an undefined variable
2015-04-16 18:39:30 +02:00
Marco Vito Moscaritolo 0b0589557f Merge pull request #845 from MarkMaldaba/fix_paths_with_spaces
Fixed the install script, which bails-out with an error if the PHPCI path contains spaces.
2015-04-12 21:17:12 +02:00
Adirelle f3c1a98cf1 Detailed webhook responses.
Fixed docblocks.

Reworked WebhookController to enforce Json responses in ::handleAction.

Check the project type match the webhook.

When creating several builds, do not stop on first error.

Try to create every builds and report 'ok' if at least one succeeds.

CS fix.

Fixed Uses.

Fixed the types accepted by the git webhook.

Added some really basic test.
2015-04-09 13:09:03 +02:00
zviryatko 731fd65453 Change xmpp config and message files directory 2015-04-09 12:08:27 +02:00
Angel Koilov 524341a50b remove unnecessary code 2015-04-09 12:06:32 +02:00
Tobias van Beek 01911f11aa Add the --recursive parameter to the git clone to get the submodules 2015-04-09 12:03:08 +02:00
Adirelle 9d4116e3c9 Reworked TapParser to be compliant and more robust.
Added another test case from #571.

Updated the output of TapParser::processTestLine.

Broke TapParser::parse down in simpler methods.

TapParser: ignore leading garbage and properly complain on missing TAP log.

TapParser: detect and report duplicated TAP log.

TapParser: got rid of the "test" and "suite" values.

They are only available with PHPUnit.

TapParser: append the message from yaml diagnostic to existing message.

Reworked the dispaly of test results.

PHPUnit plugin: pretty print test data.
2015-04-09 12:00:10 +02:00
Nicolplaás 2c43cd1cac Add spanish laguage support 2015-04-09 11:57:46 +02:00
Adirelle d804438a87 Use sensiolabs/ansi-to-html to parse the build logs.
Added an AnsiConverter helper.

Use the AnsiConverter in the email and page templates that display the build log.

Use a dedicated stylesheet for the ANSI converter.

It can be customized.
It can be inlined in the notifications.

Do not use ProphecyTestCase when not needed.
2015-04-09 11:54:57 +02:00
Marco Vito Moscaritolo 039324c056 Merge pull request #842 from corpsee/feature-ui-improvements
UI improvements
2015-03-25 12:51:10 +01:00
corpsee 3a867eb9d5 Fixed 'start' string for ru lang
Fixed 'from' and 'to' strings for ru lang
2015-03-18 13:10:21 +01:00
LAHAXE Arnaud d8df6cab4a Fix french typo mistake 2015-03-18 12:26:27 +01:00
Adirelle ea3b0c219a Code style fixed. 2015-03-18 12:21:06 +01:00
Adirelle f29ff197c6 Generate an new session identifier on successful login to prevent session fixation attacks. 2015-03-18 12:21:06 +01:00
Adirelle 3467e77e74 Use a CSRF token on the login form to prevent CSRF attacks. 2015-03-18 12:21:05 +01:00
Mark Clements 1dd1af2443 Switching tabs to spaces as per style guide.
No functional changes.
2015-03-18 09:47:47 +00:00
Marco Vito Moscaritolo 9d6a65b415 Merge pull request #844 from MarkMaldaba/fix_space_after_colon
Fixed an inconsistency in the way the prompts in the install scripts were being output.
2015-03-18 09:58:21 +01:00
Stephen Ball fdaaa1ede4 Parsing variables in the code coverage output directory for PHPUnit 2015-03-16 11:10:03 +00:00
Stephen Ball 52b2f87df2 Parsing variables in the Wipe plugin 2015-03-16 11:09:45 +00:00
Stephen Ball 9ad0e90fa1 Preventing the plugin failing due to an undefined variable 2015-03-16 11:05:33 +00:00
Stephen Ball 70f0d2516f Removed log output so that it matches the other plugins which don't pollute the build log, and to prevent issues with the log output not being escaped 2015-03-13 13:31:38 +00:00
Dan Cryer ecc92b5f3e Fixing pull request builds. 2015-03-11 07:48:22 +00:00
Dan Cryer 5f2de9a679 Update to only build the latest commit from a Github pull request webhook. 2015-03-10 20:20:54 +00:00
vsguts a188afb0da Fixing symlink removal.
Closes #854
2015-03-10 19:11:43 +00:00
Gustavo Novaro 33fc50a0b5 Remove blank style tag in header
Remove the tag <style> the header because it was not used

Closes #863
2015-03-10 19:04:05 +00:00
corpsee e75ffe0b76 Fixed 'date' nl lang string 2015-03-10 15:44:33 +06:00
Igor Timoshenko 4e8dc7c87b Fixed typos in Ukrainian language 2015-03-10 10:15:50 +01:00
Adirelle 00b88630fb Display a green border in passing build notifications. 2015-03-10 09:53:36 +01:00
corpsee 942127ffe6 Added default value in profile language select (current language) 2015-03-10 09:51:22 +01:00
Leszek a7b40ce176 archived 2015-03-10 09:29:37 +01:00
Thomas Frei 542d2a3545 Remove short array syntax to keep backwards compatibility with php5.3 2015-03-06 17:44:22 +01:00
Nathan Jovin 610d0991a8 Fix issue #840 Technical Debt not storing data nor displaying results in table 2015-03-05 00:12:42 -08:00
Mark Clements 8a96ec8551 Fixed the install script, which bails-out with an error if the PHPCI path contains spaces.
This occurs commonly on Windows, but from my reading of the code it would also be a problem on other platforms if spaces were present (though this is less likely, due to different naming conventions).

It has been fixed by using escapeshellarg() on both of the paths used in the command.

Fixes #698, which I've just noticed has a similar solution suggested in one of the comments, but was closed without anyone actually implementing it.
2015-03-02 22:49:22 +00:00
Mark Clements d2e6182a2f Fixed an inconsistency in the way the prompts in the install scripts were being output.
All the DB/host fields have a space after the colon, which is much better as it means the text you type is slightly separated from the prompt.  However, the admin user fields didn't include this space which was inconsistent and made the install script a little less professional.

I have therefore added the missing space for the prompts which didn't have it in the English language file, and have also updated all other language files to also use this format.  Most of them followed the same inconsistency as the English version, though some were consistent but without a space, and some which were differently inconsistent (both internally, and between languages).
2015-03-02 22:31:01 +00:00
corpsee f97089529c Fixed 'date' it lang string 2015-03-02 08:18:40 +06:00
corpsee 000aff9121 Code style fix 2015-02-28 23:51:04 +06:00
corpsee 9f53471186 Added Date column for builds table in project page. 2015-02-28 23:38:56 +06:00
corpsee da9be4930d Added total builds count to index and project page 2015-02-28 23:13:02 +06:00
Dan Cryer 86b9c05f98 Fixing PHPCS errors. 2015-02-26 08:45:42 +00:00
Dan Cryer ab4396e00d Hopefully fixing a bug where reporting errors back to Github causes an infinite loop. 2015-02-26 08:31:58 +00:00
Dan Cryer 8ab098821b Updating Settings Controller to use the configured config file, rather than assuming config.yml 2015-02-25 14:18:05 +00:00
Dan Cryer e423c73c4e Fixing comparison where commit ID is Manual.
Fixes #823
2015-02-25 14:13:31 +00:00
Dan Cryer db90f2ea11 Updating the UpdateCommand to check for a config key rather than a specific file. 2015-02-25 09:36:50 +00:00
zviryatko f4a0804100 Fix username style in user panel block. 2015-02-24 10:01:36 +02:00
Alex Davyskiba 1466ad06ef Allow projects to be archived.
Closes #771
2015-02-23 19:37:11 +00:00
Dan Cryer e98647bd97 Add support for Mercurial SSH-based clones. 2015-02-23 16:17:46 +00:00
nonlux 893deada33 Set the CommandExecutor buildPath property when a build is created.
Closes #556
2015-02-23 14:42:04 +00:00
Adirelle 4905679298 Email plugin: use "default_mailto_address" as a fallback only.
Closes #730
2015-02-23 14:16:35 +00:00
Matthew Leffler ea3109be67 Convert tapString to UTF-8, allowing UTF8 output from PHPUnit, etc.
Closes #738
2015-02-23 14:15:11 +00:00
Daniel Seif 610a0e57ef Fixed settings handling for symlink creation in local build
Closes #766
2015-02-23 14:07:42 +00:00
Àlex Corretgé 601318b97b Fix the problem when executing Phing out of the build dir.
Closes #778
Closes #748
2015-02-23 13:53:38 +00:00
Lee Willis 6420119f1a Make SSH key generation more robust.
Do not try and predict whether we will be able to create a key. Instead
try and create one and capture failure if it happens.

Closes #803
2015-02-23 13:49:29 +00:00
corpsee 4ffeec7767 Updated lang.ru file
Closes #807
2015-02-23 13:47:16 +00:00
Leszek 1a5ecb97b1 Update lang.pl.php
Closes #810
2015-02-23 13:46:41 +00:00
Dan Cryer dd58dd682f Adding support for commenting on Github diffs. 2015-02-23 13:40:34 +00:00
Dan Cryer 071e36a4e9 Slight cleanup to please PHPMD. 2015-02-20 14:24:37 +00:00
Dzhilkibaev Nadir 35a6d1f577 Add SVN support to PHPCI.
Closes #759
2015-02-20 14:14:36 +00:00
James Inman 9133c544d5 Adding output support to Behat plugin. 2015-02-20 13:38:42 +00:00
Dan Cryer aca8155a43 Merge branch 'master' of github.com:Block8/PHPCI 2015-02-20 12:46:50 +00:00
Dan Cryer 69d05d6da8 Setup plugin failure should cease execution. Fixes #797 2015-02-20 12:46:43 +00:00
James Inman 6c8df9a8ce Fix missing return statement in Technical Debt. 2015-02-19 13:37:35 +00:00
Jon Gotlin bf6ac530a6 Create admin command cleanup 2015-02-19 07:31:00 +01:00
James Inman 5bb68507d8 Fixing Technical Debt error message. 2015-02-18 14:56:04 +00:00
James Inman d6f72b0b7e PHPCS/PHPMD fixes for Technical Debt plugin. 2015-02-18 14:44:04 +00:00
James Inman 2a5ac8ccbc PHPCS/DocBlock fixes to Technical Debt plugin. 2015-02-18 14:15:59 +00:00
James Inman 8f5d855193 Adding Technical Debt plugin. 2015-02-18 14:07:26 +00:00
Daniel Wolkenhauer 33f2ec172d Fatal error: Call to undefined method PHPCI\Helper\Email::setIsHtml() in ../Email.php on line 107 2015-02-16 18:51:05 +01:00
Tobias van Beek 7c4a926166 Render the public key on the project edit page. CLose #722 done by @leewillis77 2015-02-16 15:00:37 +01:00
Marco Vito Moscaritolo cbd98b6b46 Fixed typo. 2015-02-16 14:55:20 +01:00
Marco Vito Moscaritolo 2d194de6d0 Fixed code in CC mails. 2015-02-16 14:54:41 +01:00
Marco Vito Moscaritolo f16395e45b Use more consistent project name loader to compose mail. 2015-02-16 14:52:48 +01:00
Marco Vito Moscaritolo f192185e26 Refactor on mail sending to use Email helper and specific tempalte for successfull build. 2015-02-16 14:51:14 +01:00
Dan Cryer 4d142b61b6 Fixing other tests 2015-02-16 11:58:15 +00:00
Dan Cryer 691f2423f7 Fixing base store docblocks. 2015-02-16 11:20:18 +00:00