Commit graph

85 commits

Author SHA1 Message Date
Adirelle 7de9023810 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 8fc4c51d54 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
Adirelle 33e8a1a0f6 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 7c622bd712 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 3427252cfe When starting a manual build, replace the "Manual" commit id with the HEAD hash.
Close #928
2015-04-23 13:13:29 +02:00
Adirelle 425735c2a5 Let CommandExecutor::findBinary throw an exception when the binary is missing.
Close #910
2015-04-22 12:19:05 +02:00
Jérémy DECOOL e723289836 Command to create a new build
Close #889
2015-04-22 12:00:38 +02:00
Adirelle bc65445c05 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 fb978c6c51 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
Adirelle bc634a570f 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
Adirelle df5e378b8a 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
Jon Gotlin 6401ee7770 Create admin command cleanup 2015-02-19 07:31:00 +01:00
Marco Vito Moscaritolo 9cc7a0477a Fixed test that use genreated mail to see information. 2015-02-16 14:55:40 +01:00
Marco Vito Moscaritolo 687c4edc8d Remove unused code. 2015-02-16 14:54:41 +01:00
Marco Vito Moscaritolo 2f4da4aa88 Fixed CS. 2015-02-16 14:54:41 +01:00
Marco Vito Moscaritolo 57a2e92ef5 Added more test case to validate subject, body, status code and mails on messages. 2015-02-16 14:54:38 +01:00
Marco Vito Moscaritolo 0e8ea5fe18 Added project mocking to allow using mail template on successfull build. 2015-02-16 14:52:45 +01:00
Marco Vito Moscaritolo 76086627e9 Remove unrequire parameters on constructur and fixed error on phpdoc. 2015-02-16 14:51:18 +01:00
Dan Cryer c2244c7835 Fixing install command tests. 2015-02-16 11:54:52 +00:00
Adirelle f1314a382d Remove duplicates from the list of recipients in the email plugin.
Closes #731
2015-02-03 11:58:18 +00:00
Adirelle 3dd95c14b9 Localisation support for dates throughout the front-end using moment.js.
Closes #734
Closes #732
2015-02-03 11:53:12 +00:00
Dan Cryer 5ea9a67724 Fixing failing test 2015-02-03 11:20:46 +00:00
Dan Cryer ba09b7c773 Fixing tests 2014-12-08 15:04:44 +00:00
Marco Vito Moscaritolo 52fcf8273c Adding non-interactive installation mode.
Closes #641
2014-12-03 10:52:14 +00:00
Wanderson 37d43e0e86 Adding Phar archive plugin.
Closes #659
Closes #106
2014-12-01 21:09:13 +00:00
Wanderson 297a04c82a Add support for skipped tests in TAP Parser.
Closes #624
See #611
2014-11-13 17:33:27 +00:00
Dan Cryer 2875badb0a Switching project access information to use JSON instead of serialization, fixes #493 2014-07-30 15:13:50 +01:00
Dan Cryer a89f686372 Adding some tests for MailerFactory to ensure it works as expected with a provided configuration. Hopefully will help in debugging #523 2014-07-30 11:58:10 +01:00
Dan Cryer 6b8f008cfe Adding some tests for the UserService class. 2014-07-23 16:11:47 +01:00
Dan Cryer 4d2583e536 More service layer functionality, builds now. Also some extra tests for projects and build models. 2014-07-14 16:02:36 +01:00
Dan Cryer cb53ec9c6d Fixing some issues with project default branches, adding tests for that too 2014-07-14 14:59:04 +01:00
Dan Cryer 2bff0270cf More work on ProjectService and its tests 2014-07-14 14:37:51 +01:00
Dan Cryer 9a7743e8d3 Initial work on adding a Services layer to PHPCI, for better testability. Starting with Projects 2014-07-14 14:01:29 +01:00
Dmitry Khomutov 6a1732c5b7 Fixed annotation 2014-05-12 00:44:13 +07:00
Dmitry Khomutov 3fe7c18e09 Repaired tests for CommandExecutor 2014-05-12 00:43:41 +07:00
Dmitry Khomutov 49de515089 Fixed duplicate methods of CommandExecutor helper: executeCommand and buildAndExecuteCommand 2014-05-09 14:25:24 +07:00
Dan Cryer e174d1aefe Temporarily removing the PHPUnit tests, as they can't be made to work with the current state of the plugin 2014-05-02 14:57:44 +00:00
Dan Cryer 4197c9e34d Fixing the horrors of overly long lines, misalignment, and incorrect use of new lines. 2014-05-01 16:53:29 +01:00
steve.brazier 060a786303 Merge remote-tracking branch 'origin/master' into feature/pluginfactoryconfig
Conflicts:
	PHPCI/Builder.php
	PHPCI/Plugin/Util/Factory.php
2014-03-25 14:13:45 +00:00
meadsteve 3c1cb07e97 Update test ExamplePluginConfg.php to match test. 2014-03-02 20:10:48 +00:00
meadsteve 6d4e49d07b Add code to allow configuration for the plugin factory to be stored on a per install basis. 2014-03-02 19:59:52 +00:00
steve.brazier b60e278cf9 psr2 tidy up of logging code. 2014-02-27 14:23:51 +00:00
Steve B 3370240242 Merge pull request #267 from meadsteve/plugin-discovery
RFC: Plugin discovery
2014-02-25 22:43:38 +00:00
meadsteve 06625513d2 update email tests now that cc can be specified. 2014-02-25 22:39:37 +00:00
meadsteve 28fc30682b add FilesPluginInformation class to retrieve plugins contained with a directory. 2014-02-25 20:52:19 +00:00
meadsteve 6b2d0aebf1 rename LoadedPluginInformation to ComposerPluginInformation. 2014-02-25 19:33:00 +00:00
meadsteve 1f42741623 Merge branch 'master' of https://github.com/Block8/PHPCI into plugin-discovery 2014-02-25 19:26:25 +00:00
meadsteve 71588cd8e1 add LoadedPluginInformation class to process composer's installed.json file and pull out information about phpci plugins. 2013-12-29 17:34:41 +00:00
meadsteve e32635c474 add very basic tests for BuildInterpolator 2013-12-17 15:35:18 +00:00
meadsteve 0c12f0b98d fix monolog name spacing in tests. 2013-12-17 15:05:08 +00:00