Merge branch 'feature-phpcensor'

This commit is contained in:
Dmitry Khomutov 2016-07-22 12:25:13 +06:00
commit cb7d0bd48a
280 changed files with 2234 additions and 2135 deletions

1
.gitignore vendored
View file

@ -5,4 +5,3 @@
/app/loggerconfig.php
/app/pluginconfig.php
/app/config.yml
/tests/PHPCI/config.yml

View file

@ -1,4 +1,7 @@
Copyright (c) 2013-2014, Block 8 Limited
PHP Censor Copyright (c) 2016, Corpsee
All rights reserved.
PHPCI Copyright (c) 2013, Block 8 Limited
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

View file

@ -1,35 +1,34 @@
PHPCI
=====
PHP Censor
----------
PHPCI is a free and open source (BSD License) continuous integration tool specifically designed for PHP. We've built it with simplicity in mind, so whilst it doesn't do *everything* Jenkins can do, it is a breeze to set up and use.
PHP Censor is a fork of PHPCI (And B8Framework). PHP Censor is a free and open source (BSD-2-Clause license) continuous
integration tool specifically designed for PHP. We've built it with simplicity in mind, so whilst it doesn't
do *everything* Jenkins can do, it is a breeze to set up and use.
**Current Build Status**
What it does
============
[![Build Status](http://phpci.block8.net/build-status/image/2?branch=master)](http://phpci.block8.net/build-status/view/2?branch=master)
**Chat Room**
We have a chat room for discussing PHPCI, you can access it here: [![Gitter](https://badges.gitter.im/Join Chat.svg)](https://gitter.im/Block8/PHPCI?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=body_badge)
##What it does:
* Clones your project from Github, Bitbucket or a local path
* Allows you to set up and tear down test databases.
* Installs your project's Composer dependencies.
* Runs through any combination of the [supported plugins](https://www.phptesting.org/wiki#plugins).
* Runs through any combination of the [supported plugins](docs/README.md)).
* You can mark directories for the plugins to ignore.
* You can mark certain plugins as being allowed to fail (but still run.)
### What it doesn't do (yet):
What it doesn't do (yet)
========================
* Virtualised testing.
* Multiple PHP-version tests.
* Install PEAR or PECL extensions.
* Deployments - We strongly recommend using [Deployer](http://phpdeployment.org)
## Getting Started:
We've got documentation on our website on [installing PHPCI](https://www.phptesting.org/install-phpci) and [adding support for PHPCI to your projects](https://www.phptesting.org/wiki/Adding-PHPCI-Support-to-Your-Projects).
Documentation
=============
## Contributing
Contributions from others would be very much appreciated! Please read our [guide to contributing](https://github.com/Block8/PHPCI/blob/master/.github/CONTRIBUTING.md) for more information on how to get involved.
[PHP Censor documentation](docs/README.md)
## Questions?
Your best place to go is the [mailing list](https://groups.google.com/forum/#!forum/php-ci). If you're already a member of the mailing list, you can simply email php-ci@googlegroups.com.
License
=======
The PHP Censor is open source software licensed under the BSD-2-Clause license.

View file

@ -3,11 +3,11 @@ b8:
servers:
read: localhost
write: localhost
name: phpci
username: root
password: root
phpci:
url: 'http://phpci.local'
name: php-censor-db
username: php-censor-user
password: php-censor-password
php-censor:
url: 'http://php-censor.local'
worker:
host: localhost
queue: phpci
queue: php-censor-queue

View file

@ -18,12 +18,12 @@ if (!is_array($writeServers)) {
$conf = [
'paths' => [
'migrations' => 'src/PHPCI/Migrations',
'migrations' => 'src/PHPCensor/Migrations',
],
'environments' => [
'default_migration_table' => 'migration',
'default_database' => 'phpci',
'phpci' => [
'default_database' => 'php-censor',
'php-censor' => [
'adapter' => 'mysql',
'host' => end($writeServers),
'name' => $config->get('b8.database.name'),

View file

@ -1,6 +1,6 @@
<?php
return function (PHPCI\Plugin\Util\Factory $factory) {
return function (PHPCensor\Plugin\Util\Factory $factory) {
$factory->registerResource(
// This function will be called when the resource is needed.
function() {
@ -18,6 +18,6 @@ return function (PHPCI\Plugin\Util\Factory $factory) {
"ResourceArray",
// The resource will only be given when the type hint is:
PHPCI\Plugin\Util\Factory::TYPE_ARRAY
PHPCensor\Plugin\Util\Factory::TYPE_ARRAY
);
};

View file

@ -9,21 +9,21 @@
* @link http://www.phptesting.org/
*/
use PHPCI\Command\RunCommand;
use PHPCI\Command\RebuildCommand;
use PHPCI\Command\UpdateCommand;
use PHPCI\Command\InstallCommand;
use PHPCI\Command\DaemonCommand;
use PHPCI\Command\PollCommand;
use PHPCI\Command\CreateAdminCommand;
use PHPCI\Command\CreateBuildCommand;
use PHPCI\Command\WorkerCommand;
use PHPCI\Command\RebuildQueueCommand;
use PHPCI\Service\BuildService;
use PHPCensor\Command\RunCommand;
use PHPCensor\Command\RebuildCommand;
use PHPCensor\Command\UpdateCommand;
use PHPCensor\Command\InstallCommand;
use PHPCensor\Command\DaemonCommand;
use PHPCensor\Command\PollCommand;
use PHPCensor\Command\CreateAdminCommand;
use PHPCensor\Command\CreateBuildCommand;
use PHPCensor\Command\WorkerCommand;
use PHPCensor\Command\RebuildQueueCommand;
use PHPCensor\Service\BuildService;
use Symfony\Component\Console\Application;
use b8\Store\Factory;
define('PHPCI_IS_CONSOLE', true);
define('IS_CONSOLE', true);
require_once(dirname(__DIR__) . '/bootstrap.php');

View file

@ -9,10 +9,10 @@
* @link http://www.phptesting.org/
*/
use PHPCI\Command\DaemoniseCommand;
use PHPCensor\Command\DaemoniseCommand;
use Symfony\Component\Console\Application;
define('PHPCI_IS_CONSOLE', true);
define('IS_CONSOLE', true);
require_once(dirname(__DIR__) . '/bootstrap.php');

View file

@ -7,34 +7,30 @@
* @link http://www.phptesting.org/
*/
use PHPCI\Logging\LoggerConfig;
use PHPCensor\Logging\LoggerConfig;
if (!defined('ROOT_DIR')) {
define('ROOT_DIR', __DIR__ . DIRECTORY_SEPARATOR);
}
if (!defined('PHPCI_DIR')) {
define('PHPCI_DIR', ROOT_DIR . 'src' . DIRECTORY_SEPARATOR . 'PHPCI' . DIRECTORY_SEPARATOR);
if (!defined('SRC_DIR')) {
define('SRC_DIR', ROOT_DIR . 'src' . DIRECTORY_SEPARATOR . 'PHPCensor' . DIRECTORY_SEPARATOR);
}
if (!defined('PHPCI_PUBLIC_DIR')) {
define('PHPCI_PUBLIC_DIR', ROOT_DIR . 'public' . DIRECTORY_SEPARATOR);
if (!defined('PUBLIC_DIR')) {
define('PUBLIC_DIR', ROOT_DIR . 'public' . DIRECTORY_SEPARATOR);
}
if (!defined('PHPCI_APP_DIR')) {
define('PHPCI_APP_DIR', ROOT_DIR . 'app' . DIRECTORY_SEPARATOR);
if (!defined('APP_DIR')) {
define('APP_DIR', ROOT_DIR . 'app' . DIRECTORY_SEPARATOR);
}
if (!defined('PHPCI_BIN_DIR')) {
define('PHPCI_BIN_DIR', ROOT_DIR . 'bin' . DIRECTORY_SEPARATOR);
if (!defined('BIN_DIR')) {
define('BIN_DIR', ROOT_DIR . 'bin' . DIRECTORY_SEPARATOR);
}
if (!defined('PHPCI_RUNTIME_DIR')) {
define('PHPCI_RUNTIME_DIR', ROOT_DIR . 'runtime' . DIRECTORY_SEPARATOR);
}
if (!defined('PHPCI_BUILDS_DIR')) {
define('PHPCI_BUILDS_DIR', ROOT_DIR . 'runtime' . DIRECTORY_SEPARATOR . 'builds' . DIRECTORY_SEPARATOR);
if (!defined('RUNTIME_DIR')) {
define('RUNTIME_DIR', ROOT_DIR . 'runtime' . DIRECTORY_SEPARATOR);
}
if (!defined('IS_WIN')) {
@ -43,31 +39,31 @@ if (!defined('IS_WIN')) {
require_once(ROOT_DIR . 'vendor/autoload.php');
\PHPCI\ErrorHandler::register();
\PHPCensor\ErrorHandler::register();
if (defined('PHPCI_IS_CONSOLE') && PHPCI_IS_CONSOLE) {
$loggerConfig = LoggerConfig::newFromFile(PHPCI_APP_DIR . "loggerconfig.php");
if (defined('IS_CONSOLE') && IS_CONSOLE) {
$loggerConfig = LoggerConfig::newFromFile(APP_DIR . "loggerconfig.php");
}
// Load configuration if present:
$conf = [];
$conf['b8']['app']['namespace'] = 'PHPCI';
$conf['b8']['app']['namespace'] = 'PHPCensor';
$conf['b8']['app']['default_controller'] = 'Home';
$conf['b8']['view']['path'] = PHPCI_DIR . 'View' . DIRECTORY_SEPARATOR;
$conf['b8']['view']['path'] = SRC_DIR . 'View' . DIRECTORY_SEPARATOR;
$config = new b8\Config($conf);
$configFile = PHPCI_APP_DIR . 'config.yml';
$configFile = APP_DIR . 'config.yml';
if (file_exists($configFile)) {
$config->loadYaml($configFile);
}
if (!defined('PHPCI_URL') && !empty($config)) {
define('PHPCI_URL', $config->get('phpci.url', '') . '/');
if (!defined('APP_URL') && !empty($config)) {
define('APP_URL', $config->get('php-censor.url', '') . '/');
}
if (!defined('PHPCI_IS_CONSOLE')) {
define('PHPCI_IS_CONSOLE', false);
if (!defined('IS_CONSOLE')) {
define('IS_CONSOLE', false);
}
\PHPCI\Helper\Lang::init($config);
\PHPCensor\Helper\Lang::init($config);

View file

@ -1,74 +1,80 @@
{
"name": "block8/phpci",
"description": "Simple continuous integration for PHP projects.",
"minimum-stability": "stable",
"type": "library",
"keywords": ["php", "phpci", "ci", "continuous", "integration", "testing", "phpunit", "continuous integration", "jenkins", "travis"],
"homepage": "http://www.phptesting.org/",
"license": "BSD-2-Clause",
"authors": [
{
"name": "Dan Cryer",
"email": "dan.cryer@block8.co.uk",
"homepage": "http://www.block8.co.uk",
"role": "Developer"
}
],
"support": {
"email": "hello+phpci@block8.co.uk",
"issues": "https://github.com/Block8/PHPCI/issues",
"source": "https://github.com/Block8/PHPCI"
"name": "corpsee/php-censor",
"description": "Simple continuous integration for PHP projects. PHPCI fork.",
"minimum-stability": "stable",
"type": "library",
"keywords": ["php", "php-censor", "ci", "continuous integration"],
"homepage": "https://github.com/corpsee/php-censor",
"license": "BSD-2-Clause",
"authors": [
{
"name": "Corpsee",
"email": "poisoncorpsee@gmail.com",
"homepage": "http://corpsee.com",
"role": "PHP Censor developer"
},
"autoload": {
"psr-4": {
"PHPCI\\": "src/PHPCI/",
"b8\\": "src/B8Framework/"
}
},
"autoload-dev": {
"psr-4": {
"Tests\\PHPCI\\": "tests/PHPCI/",
"Tests\\b8\\": "tests/B8Framework/"
}
},
"require": {
"php": ">=5.4.0",
"ext-pdo": "*",
"ext-pdo_mysql": "*",
"ircmaxell/password-compat": "1.0.*",
"swiftmailer/swiftmailer": "5.4.*",
"symfony/yaml": "2.8.*",
"symfony/console": "2.8.*",
"psr/log": "1.0.*",
"monolog/monolog": "1.17.*",
"pimple/pimple": "3.0.*",
"robmorgan/phinx": "0.5.*",
"sensiolabs/ansi-to-html": "1.1.*",
"pda/pheanstalk": "3.1.*"
},
"require-dev": {
"phpunit/phpunit": "4.8.*",
"phpmd/phpmd": "2.4.*",
"sebastian/phpcpd": "2.0.*",
"squizlabs/php_codesniffer": "2.6.*",
"block8/php-docblock-checker": "1.0.*",
"phploc/phploc": "3.0.*",
"jakub-onderka/php-parallel-lint": "0.9.*"
},
"suggest": {
"block8/php-docblock-checker": "PHP Docblock Checker",
"phpmd/phpmd": "PHP Mess Detector",
"sebastian/phpcpd": "PHP Copy/Paste Detector",
"squizlabs/php_codesniffer": "PHP Code Sniffer",
"phpspec/phpspec": "PHP Spec",
"fabpot/php-cs-fixer": "PHP Coding Standards Fixer",
"phploc/phploc": "PHP Lines of Code",
"atoum/atoum": "Atoum",
"jakub-onderka/php-parallel-lint": "Parallel Linting Tool",
"behat/behat": "Behat BDD Testing",
"phptal/phptal": "PHPTAL templating engine",
"maknz/slack": "Slack",
"hipchat/hipchat-php": "Hipchat",
"mremi/flowdock": "Flowdock"
{
"name": "Dan Cryer",
"email": "dan.cryer@block8.co.uk",
"homepage": "http://www.block8.co.uk",
"role": "PHPCI developer"
}
],
"support": {
"issues": "https://github.com/corpsee/php-censor/issues",
"source": "https://github.com/corpsee/php-censor"
},
"autoload": {
"psr-4": {
"PHPCensor\\": "src/PHPCensor/",
"b8\\": "src/B8Framework/"
}
},
"autoload-dev": {
"psr-4": {
"Tests\\PHPCensor\\": "tests/PHPCensor/",
"Tests\\b8\\": "tests/B8Framework/"
}
},
"require": {
"php": ">=5.4.0",
"ext-pdo": "*",
"ext-pdo_mysql": "*",
"ircmaxell/password-compat": "1.0.*",
"swiftmailer/swiftmailer": "5.4.*",
"symfony/yaml": "2.8.*",
"symfony/console": "2.8.*",
"psr/log": "1.0.*",
"monolog/monolog": "1.17.*",
"pimple/pimple": "3.0.*",
"robmorgan/phinx": "0.5.*",
"sensiolabs/ansi-to-html": "1.1.*",
"pda/pheanstalk": "3.1.*"
},
"require-dev": {
"phpunit/phpunit": "4.8.*",
"phpmd/phpmd": "2.4.*",
"sebastian/phpcpd": "2.0.*",
"squizlabs/php_codesniffer": "2.6.*",
"block8/php-docblock-checker": "1.0.*",
"phploc/phploc": "3.0.*",
"jakub-onderka/php-parallel-lint": "0.9.*"
},
"suggest": {
"block8/php-docblock-checker": "PHP Docblock Checker",
"phpmd/phpmd": "PHP Mess Detector",
"sebastian/phpcpd": "PHP Copy/Paste Detector",
"squizlabs/php_codesniffer": "PHP Code Sniffer",
"phpspec/phpspec": "PHP Spec",
"fabpot/php-cs-fixer": "PHP Coding Standards Fixer",
"phploc/phploc": "PHP Lines of Code",
"atoum/atoum": "Atoum",
"jakub-onderka/php-parallel-lint": "Parallel Linting Tool",
"behat/behat": "Behat BDD Testing",
"phptal/phptal": "PHPTAL templating engine",
"maknz/slack": "Slack",
"hipchat/hipchat-php": "Hipchat",
"mremi/flowdock": "Flowdock"
}
}

429
composer.lock generated
View file

@ -4,8 +4,8 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically"
],
"hash": "1a7e6ffa53784a02d845d40fc34455f1",
"content-hash": "aea45980fd51944fe67aeb4a0677ec88",
"hash": "051fd6b7588f4f8e7d0a838f6a98b892",
"content-hash": "aadffadc413d506fc161c5486c8bd885",
"packages": [
{
"name": "ircmaxell/password-compat",
@ -262,16 +262,16 @@
},
{
"name": "robmorgan/phinx",
"version": "v0.5.3",
"version": "v0.5.5",
"source": {
"type": "git",
"url": "https://github.com/robmorgan/phinx.git",
"reference": "4e7fee7792f4bf3dbf55ee29001850ba26c86a88"
"reference": "da9950a5e5b9314ebf72ddc6317ed587ce9ba8dc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/robmorgan/phinx/zipball/4e7fee7792f4bf3dbf55ee29001850ba26c86a88",
"reference": "4e7fee7792f4bf3dbf55ee29001850ba26c86a88",
"url": "https://api.github.com/repos/robmorgan/phinx/zipball/da9950a5e5b9314ebf72ddc6317ed587ce9ba8dc",
"reference": "da9950a5e5b9314ebf72ddc6317ed587ce9ba8dc",
"shasum": ""
},
"require": {
@ -297,17 +297,17 @@
"MIT"
],
"authors": [
{
"name": "Rob Morgan",
"email": "robbym@gmail.com",
"homepage": "http://robmorgan.id.au",
"role": "Lead Developer"
},
{
"name": "Woody Gilk",
"email": "woody.gilk@gmail.com",
"homepage": "http://shadowhand.me",
"role": "Developer"
},
{
"name": "Rob Morgan",
"email": "robbym@gmail.com",
"homepage": "https://robmorgan.id.au",
"role": "Lead Developer"
}
],
"description": "Phinx makes it ridiculously easy to manage the database migrations for your PHP app.",
@ -319,7 +319,7 @@
"migrations",
"phinx"
],
"time": "2016-03-07 14:09:22"
"time": "2016-06-17 15:29:02"
},
{
"name": "sensiolabs/ansi-to-html",
@ -367,23 +367,23 @@
},
{
"name": "swiftmailer/swiftmailer",
"version": "v5.4.1",
"version": "v5.4.3",
"source": {
"type": "git",
"url": "https://github.com/swiftmailer/swiftmailer.git",
"reference": "0697e6aa65c83edf97bb0f23d8763f94e3f11421"
"reference": "4cc92842069c2bbc1f28daaaf1d2576ec4dfe153"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/0697e6aa65c83edf97bb0f23d8763f94e3f11421",
"reference": "0697e6aa65c83edf97bb0f23d8763f94e3f11421",
"url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/4cc92842069c2bbc1f28daaaf1d2576ec4dfe153",
"reference": "4cc92842069c2bbc1f28daaaf1d2576ec4dfe153",
"shasum": ""
},
"require": {
"php": ">=5.3.3"
},
"require-dev": {
"mockery/mockery": "~0.9.1,<0.9.4"
"mockery/mockery": "~0.9.1"
},
"type": "library",
"extra": {
@ -416,20 +416,20 @@
"mail",
"mailer"
],
"time": "2015-06-06 14:19:39"
"time": "2016-07-08 11:51:25"
},
{
"name": "symfony/config",
"version": "v3.0.4",
"version": "v3.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/config.git",
"reference": "980ee40c28f00acff8906c11b778aab5f0db74c2"
"reference": "bcf5aebabc95b56e370e13d78565f74c7d8726dc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/config/zipball/980ee40c28f00acff8906c11b778aab5f0db74c2",
"reference": "980ee40c28f00acff8906c11b778aab5f0db74c2",
"url": "https://api.github.com/repos/symfony/config/zipball/bcf5aebabc95b56e370e13d78565f74c7d8726dc",
"reference": "bcf5aebabc95b56e370e13d78565f74c7d8726dc",
"shasum": ""
},
"require": {
@ -442,7 +442,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "3.0-dev"
"dev-master": "3.1-dev"
}
},
"autoload": {
@ -469,20 +469,20 @@
],
"description": "Symfony Config Component",
"homepage": "https://symfony.com",
"time": "2016-03-04 07:55:57"
"time": "2016-06-29 05:41:56"
},
{
"name": "symfony/console",
"version": "v2.8.4",
"version": "v2.8.8",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "9a5aef5fc0d4eff86853d44202b02be8d5a20154"
"reference": "c392a6ec72f2122748032c2ad6870420561ffcfa"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/9a5aef5fc0d4eff86853d44202b02be8d5a20154",
"reference": "9a5aef5fc0d4eff86853d44202b02be8d5a20154",
"url": "https://api.github.com/repos/symfony/console/zipball/c392a6ec72f2122748032c2ad6870420561ffcfa",
"reference": "c392a6ec72f2122748032c2ad6870420561ffcfa",
"shasum": ""
},
"require": {
@ -529,20 +529,20 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
"time": "2016-03-17 09:19:04"
"time": "2016-06-29 07:02:14"
},
{
"name": "symfony/filesystem",
"version": "v3.0.4",
"version": "v3.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
"reference": "f82499a459dcade2ea56df94cc58b19c8bde3d20"
"reference": "322da5f0910d8aa0b25fa65ffccaba68dbddb890"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/filesystem/zipball/f82499a459dcade2ea56df94cc58b19c8bde3d20",
"reference": "f82499a459dcade2ea56df94cc58b19c8bde3d20",
"url": "https://api.github.com/repos/symfony/filesystem/zipball/322da5f0910d8aa0b25fa65ffccaba68dbddb890",
"reference": "322da5f0910d8aa0b25fa65ffccaba68dbddb890",
"shasum": ""
},
"require": {
@ -551,7 +551,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "3.0-dev"
"dev-master": "3.1-dev"
}
},
"autoload": {
@ -578,20 +578,20 @@
],
"description": "Symfony Filesystem Component",
"homepage": "https://symfony.com",
"time": "2016-03-27 10:24:39"
"time": "2016-06-29 05:41:56"
},
{
"name": "symfony/polyfill-mbstring",
"version": "v1.1.1",
"version": "v1.2.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
"reference": "1289d16209491b584839022f29257ad859b8532d"
"reference": "dff51f72b0706335131b00a7f49606168c582594"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/1289d16209491b584839022f29257ad859b8532d",
"reference": "1289d16209491b584839022f29257ad859b8532d",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/dff51f72b0706335131b00a7f49606168c582594",
"reference": "dff51f72b0706335131b00a7f49606168c582594",
"shasum": ""
},
"require": {
@ -603,7 +603,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.1-dev"
"dev-master": "1.2-dev"
}
},
"autoload": {
@ -637,20 +637,20 @@
"portable",
"shim"
],
"time": "2016-01-20 09:13:37"
"time": "2016-05-18 14:26:46"
},
{
"name": "symfony/yaml",
"version": "v2.8.4",
"version": "v2.8.8",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
"reference": "584e52cb8f788a887553ba82db6caacb1d6260bb"
"reference": "dba4bb5846798cd12f32e2d8f3f35d77045773c8"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/yaml/zipball/584e52cb8f788a887553ba82db6caacb1d6260bb",
"reference": "584e52cb8f788a887553ba82db6caacb1d6260bb",
"url": "https://api.github.com/repos/symfony/yaml/zipball/dba4bb5846798cd12f32e2d8f3f35d77045773c8",
"reference": "dba4bb5846798cd12f32e2d8f3f35d77045773c8",
"shasum": ""
},
"require": {
@ -686,7 +686,7 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
"time": "2016-03-04 07:54:35"
"time": "2016-06-29 05:29:29"
}
],
"packages-dev": [
@ -885,38 +885,87 @@
"time": "2016-03-10 15:15:04"
},
{
"name": "phpdocumentor/reflection-docblock",
"version": "2.0.4",
"name": "phpdocumentor/reflection-common",
"version": "1.0",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
"reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8"
"url": "https://github.com/phpDocumentor/ReflectionCommon.git",
"reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/d68dbdc53dc358a816f00b300704702b2eaff7b8",
"reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8",
"url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
"reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
"shasum": ""
},
"require": {
"php": ">=5.3.3"
"php": ">=5.5"
},
"require-dev": {
"phpunit/phpunit": "~4.0"
},
"suggest": {
"dflydev/markdown": "~1.0",
"erusev/parsedown": "~1.0"
"phpunit/phpunit": "^4.6"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "2.0.x-dev"
"dev-master": "1.0.x-dev"
}
},
"autoload": {
"psr-0": {
"phpDocumentor": [
"psr-4": {
"phpDocumentor\\Reflection\\": [
"src"
]
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Jaap van Otterdijk",
"email": "opensource@ijaap.nl"
}
],
"description": "Common reflection classes used by phpdocumentor to reflect the code structure",
"homepage": "http://www.phpdoc.org",
"keywords": [
"FQSEN",
"phpDocumentor",
"phpdoc",
"reflection",
"static analysis"
],
"time": "2015-12-27 11:43:31"
},
{
"name": "phpdocumentor/reflection-docblock",
"version": "3.1.0",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
"reference": "9270140b940ff02e58ec577c237274e92cd40cdd"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/9270140b940ff02e58ec577c237274e92cd40cdd",
"reference": "9270140b940ff02e58ec577c237274e92cd40cdd",
"shasum": ""
},
"require": {
"php": ">=5.5",
"phpdocumentor/reflection-common": "^1.0@dev",
"phpdocumentor/type-resolver": "^0.2.0",
"webmozart/assert": "^1.0"
},
"require-dev": {
"mockery/mockery": "^0.9.4",
"phpunit/phpunit": "^4.4"
},
"type": "library",
"autoload": {
"psr-4": {
"phpDocumentor\\Reflection\\": [
"src/"
]
}
@ -928,30 +977,78 @@
"authors": [
{
"name": "Mike van Riel",
"email": "mike.vanriel@naenius.com"
"email": "me@mikevanriel.com"
}
],
"time": "2015-02-03 12:10:50"
"description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
"time": "2016-06-10 09:48:41"
},
{
"name": "phploc/phploc",
"version": "3.0.0",
"name": "phpdocumentor/type-resolver",
"version": "0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phploc.git",
"reference": "2917d010fbfd503d9e836cefff249cb3c1b3f17a"
"url": "https://github.com/phpDocumentor/TypeResolver.git",
"reference": "b39c7a5b194f9ed7bd0dd345c751007a41862443"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phploc/zipball/2917d010fbfd503d9e836cefff249cb3c1b3f17a",
"reference": "2917d010fbfd503d9e836cefff249cb3c1b3f17a",
"url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/b39c7a5b194f9ed7bd0dd345c751007a41862443",
"reference": "b39c7a5b194f9ed7bd0dd345c751007a41862443",
"shasum": ""
},
"require": {
"php": ">=5.5",
"phpdocumentor/reflection-common": "^1.0"
},
"require-dev": {
"mockery/mockery": "^0.9.4",
"phpunit/phpunit": "^5.2||^4.8.24"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.0.x-dev"
}
},
"autoload": {
"psr-4": {
"phpDocumentor\\Reflection\\": [
"src/"
]
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Mike van Riel",
"email": "me@mikevanriel.com"
}
],
"time": "2016-06-10 07:14:17"
},
{
"name": "phploc/phploc",
"version": "3.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phploc.git",
"reference": "74f917e6f80f291856989960d31afa44a4196859"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phploc/zipball/74f917e6f80f291856989960d31afa44a4196859",
"reference": "74f917e6f80f291856989960d31afa44a4196859",
"shasum": ""
},
"require": {
"php": ">=5.6",
"sebastian/finder-facade": "~1.1",
"sebastian/git": "~2.0",
"sebastian/version": "~1.0.3",
"sebastian/git": "~2.1",
"sebastian/version": "~1.0.3|~2.0",
"symfony/console": "~2.5|~3.0"
},
"require-dev": {
@ -984,24 +1081,24 @@
],
"description": "A tool for quickly measuring the size of a PHP project.",
"homepage": "https://github.com/sebastianbergmann/phploc",
"time": "2016-01-13 10:20:53"
"time": "2016-04-25 08:11:21"
},
{
"name": "phpmd/phpmd",
"version": "2.4.2",
"version": "2.4.3",
"source": {
"type": "git",
"url": "https://github.com/phpmd/phpmd.git",
"reference": "fccbdb6b222f6d7a6d35af1c396ba5435cec76a9"
"reference": "2b9c2417a18696dfb578b38c116cd0ddc19b256e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpmd/phpmd/zipball/fccbdb6b222f6d7a6d35af1c396ba5435cec76a9",
"reference": "fccbdb6b222f6d7a6d35af1c396ba5435cec76a9",
"url": "https://api.github.com/repos/phpmd/phpmd/zipball/2b9c2417a18696dfb578b38c116cd0ddc19b256e",
"reference": "2b9c2417a18696dfb578b38c116cd0ddc19b256e",
"shasum": ""
},
"require": {
"pdepend/pdepend": "~2.0",
"pdepend/pdepend": "^2.0.4",
"php": ">=5.3.0"
},
"require-dev": {
@ -1049,36 +1146,36 @@
"phpmd",
"pmd"
],
"time": "2016-03-10 17:17:44"
"time": "2016-04-04 11:52:04"
},
{
"name": "phpspec/prophecy",
"version": "v1.6.0",
"version": "v1.6.1",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
"reference": "3c91bdf81797d725b14cb62906f9a4ce44235972"
"reference": "58a8137754bc24b25740d4281399a4a3596058e0"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpspec/prophecy/zipball/3c91bdf81797d725b14cb62906f9a4ce44235972",
"reference": "3c91bdf81797d725b14cb62906f9a4ce44235972",
"url": "https://api.github.com/repos/phpspec/prophecy/zipball/58a8137754bc24b25740d4281399a4a3596058e0",
"reference": "58a8137754bc24b25740d4281399a4a3596058e0",
"shasum": ""
},
"require": {
"doctrine/instantiator": "^1.0.2",
"php": "^5.3|^7.0",
"phpdocumentor/reflection-docblock": "~2.0",
"sebastian/comparator": "~1.1",
"sebastian/recursion-context": "~1.0"
"phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
"sebastian/comparator": "^1.1",
"sebastian/recursion-context": "^1.0"
},
"require-dev": {
"phpspec/phpspec": "~2.0"
"phpspec/phpspec": "^2.0"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.5.x-dev"
"dev-master": "1.6.x-dev"
}
},
"autoload": {
@ -1111,7 +1208,7 @@
"spy",
"stub"
],
"time": "2016-02-15 07:46:21"
"time": "2016-06-07 08:13:47"
},
{
"name": "phpunit/php-code-coverage",
@ -1265,21 +1362,24 @@
},
{
"name": "phpunit/php-timer",
"version": "1.0.7",
"version": "1.0.8",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
"reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
"reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
"reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
"url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
"reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
"shasum": ""
},
"require": {
"php": ">=5.3.3"
},
"require-dev": {
"phpunit/phpunit": "~4|~5"
},
"type": "library",
"autoload": {
"classmap": [
@ -1302,7 +1402,7 @@
"keywords": [
"timer"
],
"time": "2015-06-21 08:01:12"
"time": "2016-05-12 18:03:57"
},
{
"name": "phpunit/php-token-stream",
@ -1355,16 +1455,16 @@
},
{
"name": "phpunit/phpunit",
"version": "4.8.24",
"version": "4.8.27",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
"reference": "a1066c562c52900a142a0e2bbf0582994671385e"
"reference": "c062dddcb68e44b563f66ee319ddae2b5a322a90"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a1066c562c52900a142a0e2bbf0582994671385e",
"reference": "a1066c562c52900a142a0e2bbf0582994671385e",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c062dddcb68e44b563f66ee319ddae2b5a322a90",
"reference": "c062dddcb68e44b563f66ee319ddae2b5a322a90",
"shasum": ""
},
"require": {
@ -1378,7 +1478,7 @@
"phpunit/php-code-coverage": "~2.1",
"phpunit/php-file-iterator": "~1.4",
"phpunit/php-text-template": "~1.2",
"phpunit/php-timer": ">=1.0.6",
"phpunit/php-timer": "^1.0.6",
"phpunit/phpunit-mock-objects": "~2.3",
"sebastian/comparator": "~1.1",
"sebastian/diff": "~1.2",
@ -1423,7 +1523,7 @@
"testing",
"xunit"
],
"time": "2016-03-14 06:16:08"
"time": "2016-07-21 06:48:14"
},
{
"name": "phpunit/phpunit-mock-objects",
@ -1599,16 +1699,16 @@
},
{
"name": "sebastian/environment",
"version": "1.3.5",
"version": "1.3.7",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
"reference": "dc7a29032cf72b54f36dac15a1ca5b3a1b6029bf"
"reference": "4e8f0da10ac5802913afc151413bc8c53b6c2716"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/dc7a29032cf72b54f36dac15a1ca5b3a1b6029bf",
"reference": "dc7a29032cf72b54f36dac15a1ca5b3a1b6029bf",
"url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/4e8f0da10ac5802913afc151413bc8c53b6c2716",
"reference": "4e8f0da10ac5802913afc151413bc8c53b6c2716",
"shasum": ""
},
"require": {
@ -1645,20 +1745,20 @@
"environment",
"hhvm"
],
"time": "2016-02-26 18:40:46"
"time": "2016-05-17 03:18:57"
},
{
"name": "sebastian/exporter",
"version": "1.2.1",
"version": "1.2.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
"reference": "7ae5513327cb536431847bcc0c10edba2701064e"
"reference": "42c4c2eec485ee3e159ec9884f95b431287edde4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e",
"reference": "7ae5513327cb536431847bcc0c10edba2701064e",
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4",
"reference": "42c4c2eec485ee3e159ec9884f95b431287edde4",
"shasum": ""
},
"require": {
@ -1666,12 +1766,13 @@
"sebastian/recursion-context": "~1.0"
},
"require-dev": {
"ext-mbstring": "*",
"phpunit/phpunit": "~4.4"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.2.x-dev"
"dev-master": "1.3.x-dev"
}
},
"autoload": {
@ -1711,7 +1812,7 @@
"export",
"exporter"
],
"time": "2015-06-21 07:55:53"
"time": "2016-06-17 09:04:28"
},
{
"name": "sebastian/finder-facade",
@ -1754,16 +1855,16 @@
},
{
"name": "sebastian/git",
"version": "2.1.1",
"version": "2.1.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/git.git",
"reference": "38638de3e94830a5cd7a5956135589b967609cd5"
"reference": "5100bc50cd9e70f424c643618e142214225024f3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/git/zipball/38638de3e94830a5cd7a5956135589b967609cd5",
"reference": "38638de3e94830a5cd7a5956135589b967609cd5",
"url": "https://api.github.com/repos/sebastianbergmann/git/zipball/5100bc50cd9e70f424c643618e142214225024f3",
"reference": "5100bc50cd9e70f424c643618e142214225024f3",
"shasum": ""
},
"require": {
@ -1795,7 +1896,7 @@
"keywords": [
"git"
],
"time": "2016-02-21 15:02:23"
"time": "2016-06-15 09:30:19"
},
{
"name": "sebastian/global-state",
@ -1850,23 +1951,23 @@
},
{
"name": "sebastian/phpcpd",
"version": "2.0.3",
"version": "2.0.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpcpd.git",
"reference": "6f868833a18de143d5733eafb5078b9801f8052b"
"reference": "24d9a880deadb0b8c9680e9cfe78e30b704225db"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phpcpd/zipball/6f868833a18de143d5733eafb5078b9801f8052b",
"reference": "6f868833a18de143d5733eafb5078b9801f8052b",
"url": "https://api.github.com/repos/sebastianbergmann/phpcpd/zipball/24d9a880deadb0b8c9680e9cfe78e30b704225db",
"reference": "24d9a880deadb0b8c9680e9cfe78e30b704225db",
"shasum": ""
},
"require": {
"php": ">=5.3.3",
"phpunit/php-timer": ">=1.0.6",
"sebastian/finder-facade": "~1.1",
"sebastian/version": "~1.0",
"sebastian/version": "~1.0|~2.0",
"symfony/console": "~2.7|^3.0",
"theseer/fdomdocument": "~1.4"
},
@ -1897,7 +1998,7 @@
],
"description": "Copy/Paste Detector (CPD) for PHP code.",
"homepage": "https://github.com/sebastianbergmann/phpcpd",
"time": "2016-04-17 13:55:09"
"time": "2016-04-17 19:32:49"
},
{
"name": "sebastian/recursion-context",
@ -1989,16 +2090,16 @@
},
{
"name": "squizlabs/php_codesniffer",
"version": "2.6.0",
"version": "2.6.2",
"source": {
"type": "git",
"url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
"reference": "1bcdf03b068a530ac1962ce671dead356eeba43b"
"reference": "4edb770cb853def6e60c93abb088ad5ac2010c83"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/1bcdf03b068a530ac1962ce671dead356eeba43b",
"reference": "1bcdf03b068a530ac1962ce671dead356eeba43b",
"url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/4edb770cb853def6e60c93abb088ad5ac2010c83",
"reference": "4edb770cb853def6e60c93abb088ad5ac2010c83",
"shasum": ""
},
"require": {
@ -2063,20 +2164,20 @@
"phpcs",
"standards"
],
"time": "2016-04-03 22:58:34"
"time": "2016-07-13 23:29:13"
},
{
"name": "symfony/dependency-injection",
"version": "v3.0.4",
"version": "v3.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/dependency-injection.git",
"reference": "6a9058101b591edced21ca3c83c80a3978f5c6b0"
"reference": "b7272b65f2f46cbe77def7d33916f2613669c508"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/dependency-injection/zipball/6a9058101b591edced21ca3c83c80a3978f5c6b0",
"reference": "6a9058101b591edced21ca3c83c80a3978f5c6b0",
"url": "https://api.github.com/repos/symfony/dependency-injection/zipball/b7272b65f2f46cbe77def7d33916f2613669c508",
"reference": "b7272b65f2f46cbe77def7d33916f2613669c508",
"shasum": ""
},
"require": {
@ -2089,13 +2190,14 @@
},
"suggest": {
"symfony/config": "",
"symfony/expression-language": "For using expressions in service container configuration",
"symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
"symfony/yaml": ""
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "3.0-dev"
"dev-master": "3.1-dev"
}
},
"autoload": {
@ -2122,20 +2224,20 @@
],
"description": "Symfony DependencyInjection Component",
"homepage": "https://symfony.com",
"time": "2016-03-30 10:41:14"
"time": "2016-06-29 05:42:25"
},
{
"name": "symfony/finder",
"version": "v3.0.4",
"version": "v3.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
"reference": "c54e407b35bc098916704e9fd090da21da4c4f52"
"reference": "8201978de88a9fa0923e18601bb17f1df9c721e7"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/finder/zipball/c54e407b35bc098916704e9fd090da21da4c4f52",
"reference": "c54e407b35bc098916704e9fd090da21da4c4f52",
"url": "https://api.github.com/repos/symfony/finder/zipball/8201978de88a9fa0923e18601bb17f1df9c721e7",
"reference": "8201978de88a9fa0923e18601bb17f1df9c721e7",
"shasum": ""
},
"require": {
@ -2144,7 +2246,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "3.0-dev"
"dev-master": "3.1-dev"
}
},
"autoload": {
@ -2171,7 +2273,7 @@
],
"description": "Symfony Finder Component",
"homepage": "https://symfony.com",
"time": "2016-03-10 11:13:05"
"time": "2016-06-29 05:41:56"
},
{
"name": "theseer/fdomdocument",
@ -2212,6 +2314,55 @@
"description": "The classes contained within this repository extend the standard DOM to use exceptions at all occasions of errors instead of PHP warnings or notices. They also add various custom methods and shortcuts for convenience and to simplify the usage of DOM.",
"homepage": "https://github.com/theseer/fDOMDocument",
"time": "2015-05-27 22:58:02"
},
{
"name": "webmozart/assert",
"version": "1.0.2",
"source": {
"type": "git",
"url": "https://github.com/webmozart/assert.git",
"reference": "30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/webmozart/assert/zipball/30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde",
"reference": "30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde",
"shasum": ""
},
"require": {
"php": ">=5.3.3"
},
"require-dev": {
"phpunit/phpunit": "^4.6"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.0-dev"
}
},
"autoload": {
"psr-4": {
"Webmozart\\Assert\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Bernhard Schussek",
"email": "bschussek@gmail.com"
}
],
"description": "Assertions to validate method input/output with nice error messages.",
"keywords": [
"assert",
"check",
"validate"
],
"time": "2015-08-24 13:29:44"
}
],
"aliases": [],

View file

@ -1,21 +1,21 @@
PHPCI documentation
-------------------
PHP Censor documentation
------------------------
Getting Started
===============
* [Installing PHPCI](installing.md)
* [Installing PHP Censor](installing.md)
* [Adding a Virtual Host](virtual_host.md)
* [Run Builds Using a Worker](workers/worker.md)
* [Run Builds Using a Daemon](workers/daemon.md)
* [Run Builds Using Cron](workers/cron.md)
* [Adding PHPCI Support to Your Projects](config.md)
* [Adding PHP Censor Support to Your Projects](config.md)
* [Setting up Logging](logging.md)
* [Updating PHPCI](updating.md)
* [Configuring PHPCI](configuring.md)
* [Updating PHP Censor](updating.md)
* [Configuring PHP Censor](configuring.md)
Using PHPCI
===========
Using PHP Censor
================
* Automatically building commits pushed to
* [Github](sources/github.md)

View file

@ -1,7 +1,8 @@
Adding PHPCI Support to Your Projects
-------------------------------------
Adding PHP Censor Support to Your Projects
------------------------------------------
Similar to Travis CI, to support PHPCI in your project, you simply need to add a `phpci.yml` file to the root of your repository. The file should look something like this:
Similar to Travis CI, to support PHP Censor in your project, you simply need to add a `.php-censor.yml` (`phpci.yml`/`.phpci.yml` for backward compatibility with PHPCI) file to the root of
your repository. The file should look something like this:
```yml
build_settings:
@ -48,7 +49,7 @@ complete:
- "DROP DATABASE IF EXISTS test;"
```
As mentioned earlier, PHPCI is powered by plugins, there are several phases in which plugins can be run:
As mentioned earlier, PHP Censor is powered by plugins, there are several phases in which plugins can be run:
* `setup` - This phase is designed to initialise the build procedure.
* `test` - The tests that should be run during the build. Plugins run during this phase will contribute to the success or failure of the build.

View file

@ -1,13 +1,13 @@
Configuring PHPCI
-----------------
Configuring PHP Censor
----------------------
The PHPCI configuration on the server is automatically generated into the `phpci/PHPCI/config.yml` file during installation. One might need to also edit the file manually.
The PHP Censor configuration on the server is automatically generated into the `config.yml` file during installation. One might need to also edit the file manually.
For example, to [disable authentication](https://www.phptesting.org/news/phpci-1-5-released), one could log into phpci and go into the settings to disable it. But if you have already set up a username/password pair and have forgotten the password, and if the server is on a local network, and it's not sending the `forgot password` email, then editing the config file manually would be handy. To do so, just edit the `phpci` section in the config file (which is in [yaml format](https://en.wikipedia.org/wiki/YAML)), and add
For example, one could log into PHP Censor and go into the settings to disable it. But if you have already set up a username/password pair and have forgotten the password, and if the server is on a local network, and it's not sending the `forgot password` email, then editing the config file manually would be handy. To do so, just edit the `php-censor` section in the config file (which is in [yaml format](https://en.wikipedia.org/wiki/YAML)), and add
phpci:
php-censor:
authentication_settings:
state: 1
user_id: 1
where you can get the user_id by logging into the mysql database and selecting your user ID from the `users` table in the `phpci` database.
where you can get the user_id by logging into the mysql database and selecting your user ID from the `users` table in the PHP Censor database.

View file

@ -1,5 +1,5 @@
Installing PHPCI
----------------
Installing PHP Censor
---------------------
What you'll need
================
@ -12,24 +12,24 @@ What you'll need
* The following functions need to be enabled: `exec()`, `shell_exec()` and `proc_open()` in php.ini.
* PHP must have OpenSSL support enabled.
Installing PHPCI from Composer
Installing PHP Censor from Composer
===================================
* Go to the directory in which you want to install PHP Censor, for example: `/var/www`
* Download Composer if you haven't already: `curl -sS https://getcomposer.org/installer | php`
* Download PHP Censor: `./composer.phar create-project corpsee/php-censor php-censor --keep-vcs --no-dev`
* Go to the newly created PHP Censor directory, and install Composer dependencies: `cd php-censor && ../composer.phar install`
* Run the PHP Censor installer: `./console php-censor:install`
* [Add a virtual host to your web server](virtual_host.md), pointing to the `public` directory within your new PHP Censor directory. You'll need to set up rewrite rules to point all non-existent requests to PHP Censor.
* [Set up the PHP Censor Worker](workers/worker.md), or you can run builds using the [daemon](workers/daemon.md) or [a cron-job](workers/cron.md) to run PHP Censor builds.
Installing PHP Censor Manually
==============================
* Go to the directory in which you want to install PHPCI, for example: `/var/www`
* Download Composer if you haven't already: `curl -sS https://getcomposer.org/installer | php`
* Download PHPCI: `./composer.phar create-project block8/phpci phpci --keep-vcs --no-dev`
* Go to the newly created PHPCI directory, and install Composer dependencies: `cd phpci && ../composer.phar install`
* Run the PHPCI installer: `./console phpci:install`
* [Add a virtual host to your web server](virtual_host.md), pointing to the `public` directory within your new PHPCI directory. You'll need to set up rewrite rules to point all non-existent requests to PHPCI.
* [Set up the PHPCI Worker](workers/worker.md), or you can run builds using the [PHPCI daemon](workers/daemon.md) or [a cron-job](workers/cron.md) to run PHPCI builds.
Installing PHPCI Manually
=========================
* Go to the directory in which you want to install PHPCI, for example: `/var/www`
* [Download PHPCI](https://github.com/Block8/PHPCI/releases/latest) and unzip it.
* Go to the PHPCI directory: `cd /var/www/phpci`
* Go to the directory in which you want to install PHP Censor, for example: `/var/www`
* [Download PHP Censor](https://github.com/corpsee/php-censor/releases/latest) and unzip it.
* Go to the PHP Censor directory: `cd /var/www/php-censor`
* Install dependencies using Composer: `composer install`
* Install PHPCI itself: `php ./console phpci:install`
* [Add a virtual host to your web server](virtual_host.md), pointing to the `public` directory within your new PHPCI directory. You'll need to set up rewrite rules to point all non-existent requests to PHPCI.
* [Set up the PHPCI Worker](workers/worker.md), or you can run builds using the [PHPCI daemon](workers/daemon.md) or [a cron-job](workers/cron.md) to run PHPCI builds.
* Install PHP Censor itself: `./console php-censor:install`
* [Add a virtual host to your web server](virtual_host.md), pointing to the `public` directory within your new PHP Censor directory. You'll need to set up rewrite rules to point all non-existent requests to PHP Censor.
* [Set up the PHP Censor Worker](workers/worker.md), or you can run builds using the [daemon](workers/daemon.md) or [a cron-job](workers/cron.md) to run PHP Censor builds.

View file

@ -18,4 +18,4 @@ Where something can be one of the following:
* **BUILD** - The build number
* **PROJECT_TITLE** - The name of the project
* **BUILD_PATH** - The path to the build
* **BUILD_URI** - The URL to the build in PHPCI
* **BUILD_URI** - The URL to the build in PHP Censor

View file

@ -4,10 +4,10 @@ Setting up Logging
Basics
======
The phpci codebase makes use of the [psr3](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md) logging standard. By default we use [Monolog](https://github.com/Seldaek/monolog) to handle the actual work implementing this standard.
The PHP Censor codebase makes use of the [PSR3](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md) logging standard. By default we use [Monolog](https://github.com/Seldaek/monolog) to handle the actual work implementing this standard.
How to Setup Logging (For people running a PHPCI instance)
==========================================================
How to Setup Logging (For people running a PHP Censor instance)
===============================================================
The only step required to activate logging is to create a file in the root directory called loggerconfig.php with content like the following:
@ -22,9 +22,9 @@ return array(
}
);
```
This file should return an array of key value pairs. Each key tells phpci which command to attach the logger to (the underscore is a special value which matches all commands). For each command an array of [Monolog](https://github.com/Seldaek/monolog) handlers should be returned. In the example above we've used one that simply writes to the file system but in practise this could be any handler written for monolog.
This file should return an array of key value pairs. Each key tells PHP Censor which command to attach the logger to (the underscore is a special value which matches all commands). For each command an array of [Monolog](https://github.com/Seldaek/monolog) handlers should be returned. In the example above we've used one that simply writes to the file system but in practise this could be any handler written for monolog.
Once this file is created all plugins and core phpci functionality should start writing to the configured handlers.
Once this file is created all plugins and core PHP Censor functionality should start writing to the configured handlers.
How to write to the Log (For people creating a new plugin)
==========================================================
@ -33,7 +33,7 @@ How to write to the Log (For people creating a new plugin)
For plugin creators the simplest way to get hold of an error logger is to add a parameter to the constructor and typehint on 'Psr\Log\LoggerInterface'. The code that loads your plugin will automatically inject the logger when it sees this. For example:
```php
class ExampleLoggingPlugin implements \PHPCI\Plugin
class ExampleLoggingPlugin implements \PHPCensor\Plugin
{
protected $log;

View file

@ -11,7 +11,7 @@ Configuration
- **args** [string, optional] - Allows you to pass command line arguments to Atoum.
- **config** [string, optional] - Path to an Atoum configuration file.
- **directory** [string, optional] - Path in which to run Atom (defaults to the build root).
- **executable** [string, optional] - Allows you to provide a path to the Atom binary (defaults to PHPCI root, vendor/bin, or a system-provided Atom binary).
- **executable** [string, optional] - Allows you to provide a path to the Atom binary (defaults to PHP Censor root, vendor/bin, or a system-provided Atom binary).
### Examples
```yml

View file

@ -8,7 +8,7 @@ Configuration
### Options
- **executable** [string, optional] - Allows you to provide a path to the Behat binary (defaults to PHPCI root, vendor/bin, or a system-provided Behat binary).
- **executable** [string, optional] - Allows you to provide a path to the Behat binary (defaults to PHP Censor root, vendor/bin, or a system-provided Behat binary).
- **features** [string, optional] - Provide a list of Behat features to run.
### Examples

View file

@ -10,7 +10,7 @@ Configuration
* **config** - Required - Can be either a single string pointing to a Codeception configuration file, or an array of configuration file paths. By default this is called `codeception.yml` and will be in the root of your project.
* **args** - Optional - The string of arguments to be passed to the run command. **Important**, due to the assumption made on line [132](https://github.com/Block8/PHPCI/blob/master/PHPCI/Plugin/Codeception.php#L132) regarding the value of `--xml` being the next argument which will not be correct if the user provides arguments using this config param, you must specify `report.xml` before any user input arguments to satisfy the report processing on line [146](https://github.com/Block8/PHPCI/blob/master/PHPCI/Plugin/Codeception.php#L146)
* **args** - Optional - The string of arguments to be passed to the run command.**Important**, due to the assumption made on line [132](https://github.com/Block8/PHPCI/blob/master/PHPCI/Plugin/Codeception.php#L132) regarding the value of `--xml` being the next argument which will not be correct if the user provides arguments using this config param, you must specify `report.xml` before any user input arguments to satisfy the report processing on line [146](https://github.com/Block8/PHPCI/blob/master/PHPCI/Plugin/Codeception.php#L146)
* **path** - Optional - The path from the root of your project to the root of the codeception _output directory

View file

@ -28,7 +28,7 @@ setup:
Warning
=======
If you are using a Composer private repository like Satis, with HTTP authentication, you must check your username and password inside the ```auth.json``` file. PHPCI uses the ```--no-interaction``` flag, so it will not warn if you must provide that info.
If you are using a Composer private repository like Satis, with HTTP authentication, you must check your username and password inside the ```auth.json``` file. PHP Censor uses the ```--no-interaction``` flag, so it will not warn if you must provide that info.
For more info, please check the Composer documentation.

View file

@ -9,7 +9,7 @@ Configuration
### Options
* **webhook_url** [required, string] - The URL to your Deployer WebHook
* **reason** [optional, string] - Your deployment message. Default - PHPCI Build #%BUILD% - %COMMIT_MESSAGE%
* **reason** [optional, string] - Your deployment message. Default - PHP Censor Build #%BUILD% - %COMMIT_MESSAGE%
* **update_only** [optional, bool, true|false] - Whether the deployment should only be run if the currently deployed branches matches the one being built. Default - true
### Examples
@ -18,6 +18,6 @@ Configuration
success:
deployer:
webhook_url: "https://deployer.example.com/deploy/QZaF1bMIUqbMFTmKDmgytUuykRN0cjCgW9SooTnwkIGETAYhDTTYoR8C431t"
reason: "PHPCI Build #%BUILD% - %COMMIT_MESSAGE%"
reason: "PHP Censor Build #%BUILD% - %COMMIT_MESSAGE%"
update_only: true
```

View file

@ -19,7 +19,7 @@ Configuration
### Examples
See [Adding PHPCI Support to Your Projects](https://www.phptesting.org/wiki/Adding-PHPCI-Support-to-Your-Projects) for more information about how to configure plugins.
See [Adding PHP Censor Support to Your Projects](../config.md) for more information about how to configure plugins.
Send an email to the committer as well as one@exameple.com if a build fails:
```yml

View file

@ -1,7 +1,7 @@
Plugin Env
----------
Sets environment variables on the PHPCI server for the build.
Sets environment variables on the PHP Censor server for the build.
Configuration
=============

View file

@ -9,7 +9,7 @@ Configuration
### Options
- **directory** [string, optional] - The directory in which to run Grunt (defaults to build root.)
- **grunt** [string, optional] - Allows you to provide a path to Grunt (defaults to PHPCI root, vendor/bin, or a system-provided Grunt).
- **grunt** [string, optional] - Allows you to provide a path to Grunt (defaults to PHP Censor root, vendor/bin, or a system-provided Grunt).
- **gruntfile** [string, optional] - Gruntfile to run (defaults to `Gruntfile.js`).
- **task** [string, optional] - The Grunt task to run.

View file

@ -22,5 +22,5 @@ phing:
targets:
- "build:test"
properties:
config_file: "PHPCI"
config_file: "php-censor"
```

View file

@ -34,7 +34,7 @@ For use with an existing project:
test:
php_code_sniffer:
standard: "/phpcs.xml" # The leading slash is needed to trigger an external ruleset.
# Without it, PHPCI looks for a rule named "phpcs.xml"
# Without it, PHP Censor looks for a rule named "phpcs.xml"
allowed_errors: -1 # Even a single error will cause the build to fail. -1 = unlimited
allowed_warnings: -1
```

View file

@ -1,7 +1,7 @@
Plugin PHP Parallel Lint
------------------------
Similar to the [standard PHP Lint plugin](https://github.com/Block8/PHPCI/wiki/Lint-plugin), except that it uses the [PHP Parallel Lint](https://github.com/JakubOnderka/PHP-Parallel-Lint) project to run.
Similar to the [standard PHP Lint plugin](lint.md), except that it uses the [PHP Parallel Lint](https://github.com/JakubOnderka/PHP-Parallel-Lint) project to run.
Configuration
=============

View file

@ -39,8 +39,8 @@ test:
Troubleshooting
===============
If standard logging of PHPCI is not enough, to get standard output from any command, including PHPUnit, edit `BaseCommandExecutor::executeCommand()` to see what exactly is wrong
* Run `composer update` in phpunit plugin directory of PHPCI to get all of its dependencies
* If phpunit is inside of the project's composer.json, it might interfere with PHPCI's phpunit installation
If standard logging of PHP Censor is not enough, to get standard output from any command, including PHPUnit, edit `BaseCommandExecutor::executeCommand()` to see what exactly is wrong
* Run `composer update` in phpunit plugin directory of PHP Censor to get all of its dependencies
* If phpunit is inside of the project's composer.json, it might interfere with PHP Censor's phpunit installation
* Make sure you have XDebug installed.`The Xdebug extension is not loaded. No code coverage will be generated.`
Otherwise test report parsing in `TapParser` will fail, wanting coverage report as well `Invalid TAP string, number of tests does not match specified test count.`

View file

@ -3,19 +3,6 @@ Plugin Shell
Runs a given Shell command.
**Note: ** Because this plugin could potentially be abused, it requires extra steps to enable it:
1. In the root of your PHPCI system, in the same directory where you'll find composer.json and vars.php, look for a file local_vars.php. If it does not exist, create it.
2. In local_vars.php add this code:
```php
<?php
define('ENABLE_SHELL_PLUGIN', true);
```
If `ENABLE_SHELL_PLUGIN` is either false or undefined, the shell plugin won't work.
Configuration
=============

View file

@ -11,8 +11,8 @@ Configuration
| Field | Required? | Description |
|-------|-----------|-------------|
| `webhook_url` | Yes | The URL to your Slack WebHook |
| `room` | No | Your Slack room name. Default - #phpci |
| `username` | No | The name to send the message as. Default - PHPCI |
| `room` | No | Your Slack room name. Default - #php-censor |
| `username` | No | The name to send the message as. Default - PHP Censor |
| `icon` | No | The URL to the user icon or an emoji such as :ghost:. Default - The value configured on Slack's WebHook setup |
| `message` | No | The message to send to the room. Default - `<%PROJECT_URI%|%PROJECT_TITLE%> - <%BUILD_URI%|Build #%BUILD%> has finished for commit <%COMMIT_URI%|%SHORT_COMMIT% (%COMMIT_EMAIL%)> on branch <%BRANCH_URI%|%BRANCH%>` |
| `show_status` | No | Whether or not to append the build status as an attachment in slack. Default - true
@ -24,8 +24,8 @@ Send a message if the build fails:
failure:
slack_notify:
webhook_url: "https://hooks.slack.com/services/R212T827A/G983UY31U/aIp0yuW9u0iTqwAMOEwTg"
room: "#phpci"
username: "PHPCI"
room: "#php-censor"
username: "PHP Censor"
icon: ":ghost:"
message: "%PROJECT_TITLE% - build %BUILD% failed! :angry:"
show_status: false
@ -37,8 +37,8 @@ Send a message if the build is successful:
success:
slack_notify:
webhook_url: "https://hooks.slack.com/services/R212T827A/G983UY31U/aIp0yuW9u0iTqwAMOEwTg"
room: "#phpci"
username: "PHPCI"
room: "#php-censor"
username: "PHP Censor"
icon: ":ghost:"
message: "%PROJECT_TITLE% - build %BUILD% succeeded! :smiley:"
show_status: false
@ -50,8 +50,8 @@ Send a message every time the build runs:
complete:
slack_notify:
webhook_url: "https://hooks.slack.com/services/R212T827A/G983UY31U/aIp0yuW9u0iTqwAMOEwTg"
room: "#phpci"
username: "PHPCI"
room: "#php-censor"
username: "PHP Censor"
icon: ":ghost:"
message: "%PROJECT_TITLE% - build %BUILD% completed"
show_status: true

View file

@ -10,7 +10,7 @@ Installation
============
1. On debian system (for example) use aptitude command to install sendxmpp
2. Add XMPP plugin in "complete" section of your phpci.yml
2. Add XMPP plugin in "complete" section of your `php-censor.yml`
Configuration
=============
@ -37,6 +37,6 @@ complete:
- "recipient2@jabber.org"
server: "gtalk.google.com"
tls: 1
alias: "PHPCi Notification"
alias: "PHP Censor Notification"
date_format: "%d/%m/%Y"
```

View file

@ -3,7 +3,7 @@ Automatically building commits pushed to Bitbucket
If you would like your builds to run automatically whenever there is a commit or other similar activity in your Bitbucket repository, perform the following steps:
1. Log into PHPCI.
1. Log into PHP Censor.
2. Click on your Bitbucket project.
3. Copy the web hook link specified on the left.
4. Log into Bitbucket and go to your repo.

View file

@ -16,7 +16,7 @@ Installation
#!/bin/sh
PROJECT_ID=1
PHPCI_URL="http://my.server.com/PHPCI/"
APP_URL="http://my.server.com/php-censor/"
trigger_hook() {
NEWREV="$2"
@ -44,7 +44,7 @@ trigger_hook() {
--data-urlencode commit="$NEWREV" \
--data-urlencode committer="$COMMITTER" \
--data-urlencode message="$MESSAGE" \
"$PHPCI_URL/webhook/git/$PROJECT_ID"
"$APP_URL/webhook/git/$PROJECT_ID"
}
if [ -n "$1" -a -n "$2" -a -n "$3" ]; then

View file

@ -3,12 +3,12 @@ Automatically building commits pushed to GitHub
If you would like your builds to run automatically whenever there is a commit or other similar activity in your GitHub repository, perform the following steps:
1. Log into PHPCI.
1. Log into PHP Censor.
2. Click on your GitHub project.
3. Copy the web hook link specified on the right of the page.
4. Log into GitHub and go to your repository.
5. Click the settings icon on the lower right sidebar.
6. Click on "Webhooks & Services".
7. Add your web hook link you copied above, and specify when you would like it to run.
8. Add the public key for the project in PHPCI to the deploy keys for the repository on GitHub.
9. Verify that the initial test delivery was successful. If not, make sure that your PHPCI machine is reachable from the internet.
8. Add the public key for the project in PHP Censor to the deploy keys for the repository on GitHub.
9. Verify that the initial test delivery was successful. If not, make sure that your PHP Censor machine is reachable from the internet.

View file

@ -3,12 +3,12 @@ Automatically building commits pushed to GitLab
If you would like your builds to run automatically whenever there is a commit or other similar activity in your GitLab repository, perform the following steps:
1. Log into PHPCI.
1. Log into PHP Censor.
2. Click on your Gitlab project.
3. Copy the web hook link specified on the left.
4. Log into Gitlab and go to your repo.
5. Click the "settings" tab in the top right corner of the page.
6. Click on "Web Hooks".
7. Paste the link you copied from PHPCI into the "URL" textbox.
8. Select the events which you want to trigger a PHPCI build. The default and recommended setup is to only enable "push events."
7. Paste the link you copied from PHP Censor into the "URL" textbox.
8. Select the events which you want to trigger a PHP Censor build. The default and recommended setup is to only enable "push events."
9. Click "Add Web Hook," and verify that the test was successful.

View file

@ -4,31 +4,31 @@ Project Status Images and Status Page
Status Image
============
Most Continuous Integration systems provide a simple image URL that you can use to display your project status on other web sites (like Github) - PHPCI is no different.
Most Continuous Integration systems provide a simple image URL that you can use to display your project status on other web sites (like Github) - PHP Censor is no different.
You can find the status image at the following location: `http://{PHPCI URL}/build-status/image/{PROJECT ID}`
You can find the status image at the following location: `http://{PHP_CENSOR_URL}/build-status/image/{PROJECT ID}`
So for example, our instance of PHPCI is at `phpci.block8.net`, and our PHPCI project ID is `2`, so the image URL is: `http://phpci.block8.net/build-status/image/2`.
So for example, our instance of PHP Censor is at `php-censor.local`, and our PHP Censor project ID is `2`, so the image URL is: `http://php-censor.local/build-status/image/2`.
Example:
![](http://phpci.block8.net/build-status/image/2)
![](http://php-censor.local/build-status/image/2)
Status Page
===========
PHPCI also provides a public project status page, that is accessible for everyone.
PHP Censor also provides a public project status page, that is accessible for everyone.
You can find the status page at the following location: `http://{PHPCI URL}/build-status/view/{PROJECT ID}`
You can find the status page at the following location: `http://{PHP_CENSOR_URL}/build-status/view/{PROJECT ID}`
Example:
http://phpci.block8.net/build-status/view/2
http://php-censor.local/build-status/view/2
### Where do I find my project ID?
Go to your instance of PHPCI, and open the project you are interested in. The project ID is the number in the last part of the URL in your browser.
Go to your instance of PHP Censor, and open the project you are interested in. The project ID is the number in the last part of the URL in your browser.
Example:
http://phpci.block8.net/project/view/2 ~> PROJECT ID: `2`
http://php-censor.local/project/view/2 ~> PROJECT ID: `2`
### Enable/disable status image and page
You can enable or disable access to the public status image and page in your project's settings.

View file

@ -1,11 +1,11 @@
Updating PHPCI
--------------
Updating PHP Censor
-------------------
Updating PHPCI to the latest release, or even dev-master updates is something that will need to be done from time to time. Most of this may be self-explanatory, but for clarity and completeness, it should be added to the documentation.
Updating PHP Censor to the latest release, or even dev-master updates is something that will need to be done from time to time. Most of this may be self-explanatory, but for clarity and completeness, it should be added to the documentation.
1. Go to your PHPCI root folder in a Terminal.
1. Go to your PHP Censor root folder in a Terminal.
2. Pull the latest code. This would look like this: `git pull`
3. Update the PHPCI database: `./console phpci:update`
3. Update the PHP Censor database: `./console php-censor:update`
4. Update the composer and its packages: `composer self-update && composer update`
5. Return to the PHPCI admin screens and check your desired plugins are still installed correctly.
5. Return to the PHP Censor admin screens and check your desired plugins are still installed correctly.
7. Run a build to make sure everything is working as expected.

View file

@ -1,7 +1,7 @@
Adding a Virtual Host
---------------------
In order to access the PHPCI web interface, you need to set up a virtual host in your web server.
In order to access the PHP Censor web interface, you need to set up a virtual host in your web server.
Below are a few examples of how to do this for various different web servers.
@ -13,10 +13,10 @@ server {
... standard virtual host ...
location / {
try_files $uri @phpci;
try_files $uri @php-censor;
}
location @phpci {
location @php-censor {
# Pass to FastCGI:
fastcgi_pass unix:/path/to/phpfpm.sock;
fastcgi_index index.php;
@ -31,7 +31,7 @@ server {
Apache Example
==============
For Apache, you can use a standard virtual host, as long as your server supports PHP. All you need to do is add the following to a `.htaccess` file in your PHPCI `/public` directory.
For Apache, you can use a standard virtual host, as long as your server supports PHP. All you need to do is add the following to a `.htaccess` file in your PHP Censor `/public` directory.
```
<IfModule mod_rewrite.c>
@ -47,23 +47,22 @@ For Apache, you can use a standard virtual host, as long as your server supports
```
<VirtualHost *:80>
ServerAdmin user@domain.com
DocumentRoot /var/www/phpci/public
ServerName phpci.vagrant
ServerAlias phpci.vagrant
DocumentRoot /var/www/php-censor.local/public
ServerName php-censor.local
<Directory /var/www/phpci/public/>
<Directory /var/www/php-censor.local/public/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/phpci-error_log
CustomLog ${APACHE_LOG_DIR}/phpci-access_log combined
ErrorLog ${APACHE_LOG_DIR}/php-censor-error_log
CustomLog ${APACHE_LOG_DIR}/php-censor-access_log combined
</VirtualHost>
```
- Add in /etc/hosts
```
127.0.0.1 phpci.vagrant
127.0.0.1 php-censor.local
```
Built-in PHP Server Example

View file

@ -1,17 +1,17 @@
Run Builds Using Cron
---------------------
Running builds using cron is a quick and simple method of getting up and running with PHPCI. It also removes the need for PHPCI to be running all the time.
Running builds using cron is a quick and simple method of getting up and running with PHP Censor. It also removes the need for PHP Censor to be running all the time.
If you want a little more control over how PHPCI runs, you may want to [set up the PHPCI daemon](workers/daemon.md) instead.
If you want a little more control over how PHP Censor runs, you may want to [set up the PHP Censor daemon](workers/daemon.md) instead.
Setting up the Cron Job
=======================
You'll want to set up PHPCI to run as a regular cronjob, so run `crontab -e` and enter the following:
You'll want to set up PHP Censor to run as a regular cronjob, so run `crontab -e` and enter the following:
```sh
* * * * * /usr/bin/php /path/to/phpci/console phpci:run-builds
* * * * * /usr/bin/php /path/to/php-censor/console php-censor:run-builds
```
**Note:** Make sure you change the `/path/to/phpci` to the directory in which you installed PHPCI, and update the PHP path if necessary.
**Note:** Make sure you change the `/path/to/php-censor` to the directory in which you installed PHP Censor, and update the PHP path if necessary.

View file

@ -1,11 +1,11 @@
Run Builds Using a Daemon
-------------------------
The PHPCI daemon runs in the background on your server and continuously checks for new builds. Unless already running a build, the daemon should pick up and start running new builds within seconds of being created.
The PHP Censor daemon runs in the background on your server and continuously checks for new builds. Unless already running a build, the daemon should pick up and start running new builds within seconds of being created.
The daemon is also useful if you want to run multiple PHPCI workers in a virtualised environment (i.e. Docker)
The daemon is also useful if you want to run multiple PHP Censor workers in a virtualised environment (i.e. Docker)
If you want to run PHPCI builds on a regular schedule instead, you should [set up a cron-job](workers/cron.md).
If you want to run PHP Censor builds on a regular schedule instead, you should [set up a cron-job](workers/cron.md).
Starting the Daemon
===================
@ -13,11 +13,11 @@ Starting the Daemon
On a Linux/Unix server, the following command will start the daemon and keep it running even when you log out of the server:
```sh
nohup php ./daemonise phpci:daemonise >/dev/null 2>&1 &
nohup php ./daemonise php-censor:daemonise >/dev/null 2>&1 &
```
If you need to debug what's going on with your builds, you can also run the daemon directly using the following command, which will output the daemon's log directly to your terminal:
```sh
php daemonise phpci:daemonise
php daemonise php-censor:daemonise
```

View file

@ -1,9 +1,9 @@
Run Builds Using a Worker
-------------------------
The PHPCI Worker (added in v1.7) runs in the background on your server and waits for new builds to be added to a Beanstalkd queue. Unless already running a build, the worker will pick up and start running new builds almost immediately after their creation.
The PHP Censor Worker runs in the background on your server and waits for new builds to be added to a Beanstalkd queue. Unless already running a build, the worker will pick up and start running new builds almost immediately after their creation.
The worker is the recommended way to run PHPCI builds. You can run several workers all watching one queue, allowing jobs to be run simultaneously without the overhead of polling your MySQL database.
The worker is the recommended way to run PHP Censor builds. You can run several workers all watching one queue, allowing jobs to be run simultaneously without the overhead of polling your MySQL database.
If you can't run Beanstalkd on your server, or would prefer to run builds on a regular schedule, you should consider using the [build daemon](workers/daemon.md) or [running builds via Cron](workers/cron.md).
@ -13,49 +13,49 @@ Pre-Requisites
* You need to install [Beanstalkd](http://kr.github.io/beanstalkd/) - On Ubuntu, this is as simple as running `apt-get install beanstalkd`.
* [Supervisord](http://supervisord.org/) needs to be installed and running on your server.
Setting up the PHPCI Worker
===========================
Setting up the PHP Censor worker
================================
### On a new installation
Setting up the worker on a new installation of PHPCI is as simple as entering the appropriate values for your Beanstalkd server hostname and queue name when running the PHPCI installer. By default, the installer assumes that you'll be using beanstalkd on `localhost` and will use the queue name `phpci`.
Setting up the worker on a new installation of PHP Censor is as simple as entering the appropriate values for your Beanstalkd server hostname and queue name when running the PHP Censor installer. By default, the installer assumes that you'll be using beanstalkd on `localhost` and will use the queue name `php-censor-queue`.
![PHPCI Worker Installer](https://www.phptesting.org/media/render/f48f63699a04444630352643af18b643)
![PHP Censor Worker Installer](https://www.phptesting.org/media/render/f48f63699a04444630352643af18b643)
### On an existing installation
On an existing installation, to set up the worker, you simply need to add the beanstalkd host and queue names directly into your `/PHPCI/config.yml` file. You should add a `worker` key beneath the `phpci` section, with the properties `host` and `queue` as outlined in the screenshot below:
On an existing installation, to set up the worker, you simply need to add the beanstalkd host and queue names directly into your `config.yml` file. You should add a `worker` key beneath the `php-censor` section, with the properties `host` and `queue` as outlined in the screenshot below:
![PHPCI Worker Config](https://www.phptesting.org/media/render/9a88e9298670f2913f5798e68b94c9ed)
![PHP Censor Worker Config](https://www.phptesting.org/media/render/9a88e9298670f2913f5798e68b94c9ed)
Running the PHPCI Worker
========================
Running the PHP Censor worker
=============================
Once you've set up PHPCI to add your jobs to a beanstalkd queue, you need to start the worker so that it can pick up and run your builds. On most servers, it is best to manage this using supervisord. The following instructions work on Ubuntu, but will need slight amendments for other distributions.
Once you've set up PHP Censor to add your jobs to a beanstalkd queue, you need to start the worker so that it can pick up and run your builds. On most servers, it is best to manage this using supervisord. The following instructions work on Ubuntu, but will need slight amendments for other distributions.
Using your preferred text editor, create a file named `phpci.conf` under `/etc/supervisor/conf.d`. In it, enter the following config:
Using your preferred text editor, create a file named `php-censor.conf` under `/etc/supervisor/conf.d`. In it, enter the following config:
```
[program:phpci]
command=/path/to/phpci/latest/console phpci:worker
[program:php-censor]
command=/path/to/php-censor/latest/console php-censor:worker
process_name=%(program_name)s_%(process_num)02d
stdout_logfile=/var/log/phpci.log
stderr_logfile=/var/log/phpci-err.log
user=phpci
stdout_logfile=/var/log/php-censor.log
stderr_logfile=/var/log/php-censor-err.log
user=php-censor
autostart=true
autorestart=true
environment=HOME="/home/phpci",USER="phpci"
environment=HOME="/home/php-censor",USER="php-censor"
numprocs=2
```
You'll need to edit the '/path/to/phpci', the `user` value and the `environment` value to suit your server. The user needs to be an actual system user with suitable permissions to execute PHP and PHPCI.
You'll need to edit the '/path/to/php-censor', the `user` value and the `environment` value to suit your server. The user needs to be an actual system user with suitable permissions to execute PHP and PHP Censor.
Once you've created this file, simply restart supervisord using the command `service supervisor restart` and 2 instances of PHPCI's worker should start immediately. You can verify this by running the command `ps aux | grep phpci`, which should give you output as follows:
Once you've created this file, simply restart supervisord using the command `service supervisor restart` and 2 instances of PHP Censor's worker should start immediately. You can verify this by running the command `ps aux | grep php-censor`, which should give you output as follows:
```
➜ ~ ps aux | grep phpci
phpci 19057 0.0 0.9 200244 18720 ? S 03:00 0:01 php /phpci/console phpci:worker
phpci 19058 0.0 0.9 200244 18860 ? S 03:00 0:01 php /phpci/console phpci:worker
➜ ~ ps aux | grep php-censor
php-censor 19057 0.0 0.9 200244 18720 ? S 03:00 0:01 php /php-censor/console php-censor:worker
php-censor 19058 0.0 0.9 200244 18860 ? S 03:00 0:01 php /php-censor/console php-censor:worker
```
That's it! Now, whenever you create a new build in PHPCI, it should start building immediately.
That's it! Now, whenever you create a new build in PHP Censor, it should start building immediately.

View file

@ -1,19 +1,19 @@
<?xml version="1.0"?>
<ruleset name="PHPCI">
<ruleset name="PHP Censor">
<description>Codestyle ruleset for PHPCI</description>
<description>Codestyle ruleset for PHP Censor</description>
<rule ref="PSR2"/>
<file>PHPCI</file>
<file>PHP Censor</file>
<arg name="encoding" value="UTF-8"/>
<arg name="extensions" value="php"/>
<exclude-pattern>PHPCI/Migrations/*</exclude-pattern>
<exclude-pattern>PHPCI/Model/Base/*</exclude-pattern>
<exclude-pattern>PHPCI/Languages/*</exclude-pattern>
<exclude-pattern>Tests/*</exclude-pattern>
<exclude-pattern>src/PHPCensor/Migrations/*</exclude-pattern>
<exclude-pattern>src/PHPCensor/Model/Base/*</exclude-pattern>
<exclude-pattern>src/PHPCensor/Languages/*</exclude-pattern>
<exclude-pattern>tests/*</exclude-pattern>
<exclude-pattern>vendor/*</exclude-pattern>
</ruleset>

View file

@ -1,5 +1,5 @@
<?xml version="1.0"?>
<ruleset name="PHPCI"
<ruleset name="PHP Censor"
xmlns="http://pmd.sf.net/ruleset/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0
@ -7,7 +7,7 @@
xsi:noNamespaceSchemaLocation="
http://pmd.sf.net/ruleset_xml_schema.xsd">
<description>
PHPCI rule set
PHP Censor rule set
</description>
<rule ref="rulesets/codesize.xml" />

View file

@ -12,29 +12,29 @@
bootstrap="./tests/bootstrap.php"
>
<testsuites>
<!--<testsuite name="PHPCI Command Test Suite">
<directory suffix="Test.php">./tests/PHPCI/Command</directory>
<!--<testsuite name="PHP Censor Command Test Suite">
<directory suffix="Test.php">./tests/PHPCensor/Command</directory>
</testsuite>-->
<testsuite name="PHPCI Controller Test Suite">
<directory suffix="Test.php">./tests/PHPCI/Controller</directory>
<testsuite name="PHP Censor Controller Test Suite">
<directory suffix="Test.php">./tests/PHPCensor/Controller</directory>
</testsuite>
<testsuite name="PHPCI Helper Test Suite">
<directory suffix="Test.php">./tests/PHPCI/Helper</directory>
<testsuite name="PHP Censor Helper Test Suite">
<directory suffix="Test.php">./tests/PHPCensor/Helper</directory>
</testsuite>
<testsuite name="PHPCI Logging Test Suite">
<directory suffix="Test.php">./tests/PHPCI/Logging</directory>
<testsuite name="PHP Censor Logging Test Suite">
<directory suffix="Test.php">./tests/PHPCensor/Logging</directory>
</testsuite>
<testsuite name="PHPCI Model Test Suite">
<directory suffix="Test.php">./tests/PHPCI/Model</directory>
<testsuite name="PHP Censor Model Test Suite">
<directory suffix="Test.php">./tests/PHPCensor/Model</directory>
</testsuite>
<testsuite name="PHPCI Plugin Test Suite">
<directory suffix="Test.php">./tests/PHPCI/Plugin</directory>
<testsuite name="PHP Censor Plugin Test Suite">
<directory suffix="Test.php">./tests/PHPCensor/Plugin</directory>
</testsuite>
<!--<testsuite name="PHPCI ProcessControl Test Suite">
<directory suffix="Test.php">./tests/PHPCI/ProcessControl</directory>
<!--<testsuite name="PHP Censor ProcessControl Test Suite">
<directory suffix="Test.php">./tests/PHPCensor/ProcessControl</directory>
</testsuite>-->
<testsuite name="PHPCI Service Test Suite">
<directory suffix="Test.php">./tests/PHPCI/Service</directory>
<testsuite name="PHP Censor Service Test Suite">
<directory suffix="Test.php">./tests/PHPCensor/Service</directory>
</testsuite>
<!--<testsuite name="B8Framework Test Suite">
<directory suffix="Test.php">./tests/B8Framework</directory>

View file

@ -1,5 +1,5 @@
.phpci .main-header .logo, .phpci .main-header .logo:hover {
background-image: url('/assets/img/logo-large.png');
.app-layout .main-header .logo, .app-layout .main-header .logo:hover {
background-image: url('/assets/img/php-censor-logo.png');
background-repeat: no-repeat;
background-size: 40%;
background-position: 65px;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

View file

@ -1 +0,0 @@
<svg viewBox="0 0 256 256" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M107.7 141.3V58.3C100.4 52.2 95.8 43.1 95.8 32.95 95.8 14.75 110.6 0 128.8 0 143.6 0 156.2 9.86 160.3 23.4 166.2 19.1 177.4 12.45 192.5 12.45 213.3 12.45 251.5 19.1 251.5 92.2 251.5 165.3 216.1 176.3 191.9 176.3 170.2 176.3 156.3 164.4 148.7 159V196.9C156.6 202.9 161.7 212.4 161.7 223.1 161.7 241.2 147 256 128.8 256 110.6 256 95.8 241.2 95.8 223.1 95.8 212.9 100.4 203.8 107.7 197.7V178.9C104.6 175.5 99.6 171.2 92 168.3 81.5 164.4 72.7 167.2 56.4 160.8 41 154.8 25.2 141.4 23.53 114.9 12 109.8 4 98.2 4 84.8 4 66.6 18.75 51.85 36.95 51.85 55.1 51.85 69.89 66.6 69.89 84.8 69.89 96.6 63.7 107 54.3 112.8 55.5 126.6 66.5 136 85 136 95.2 136 102.7 138.7 107.7 141.3M148.7 61.67V131.8C154.1 136.5 163.6 143.2 178.9 143.2 195.7 143.2 211.7 129.6 211.7 94.2 211.7 58.71 192.8 44.62 177 44.62 163.4 44.62 155.9 53.6 148.7 61.67M36.95 100.5C45.6 100.5 52.61 93.4 52.61 84.8 52.61 76.1 45.6 69.1 36.95 69.1 28.3 69.1 21.28 76.1 21.28 84.8 21.28 93.4 28.3 100.5 36.95 100.5M128.8 238.7C137.4 238.7 144.4 231.7 144.4 223.1 144.4 214.4 137.4 207.4 128.8 207.4 120.1 207.4 113.1 214.4 113.1 223.1 113.1 231.7 120.1 238.7 128.8 238.7M128.8 48.61C137.4 48.61 144.4 41.6 144.4 32.95 144.4 24.3 137.4 17.28 128.8 17.28 120.1 17.28 113.1 24.3 113.1 32.95 113.1 41.6 120.1 48.61 128.8 48.61" fill="#2f749f"/></g></svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -1,10 +1,10 @@
var PHPCI = {
var PHPCensor = {
intervals: {},
init: function () {
// Setup the date locale
moment.locale(PHPCI_LANGUAGE);
moment.locale(LANGUAGE);
$(document).ready(function () {
// Format datetimes
@ -15,69 +15,69 @@ var PHPCI = {
});
// Update latest builds every 5 seconds:
PHPCI.getBuilds();
PHPCI.intervals.getBuilds = setInterval(PHPCI.getBuilds, 5000);
PHPCensor.getBuilds();
PHPCensor.intervals.getBuilds = setInterval(PHPCensor.getBuilds, 5000);
// Update latest project builds every 10 seconds:
if (typeof PHPCI_PROJECT_ID != 'undefined') {
PHPCI.intervals.getProjectBuilds = setInterval(PHPCI.getProjectBuilds, 10000);
if (typeof PROJECT_ID != 'undefined') {
PHPCensor.intervals.getProjectBuilds = setInterval(PHPCensor.getProjectBuilds, 10000);
}
PHPCI.uiUpdated();
PHPCensor.uiUpdated();
});
$(window).on('builds-updated', function (e, data) {
PHPCI.updateHeaderBuilds(data);
PHPCensor.updateHeaderBuilds(data);
});
},
getBuilds: function () {
$.ajax({
url: PHPCI_URL + 'build/latest',
url: APP_URL + 'build/latest',
success: function (data) {
$(window).trigger('builds-updated', [data]);
},
error: PHPCI.handleFailedAjax
error: PHPCensor.handleFailedAjax
});
},
getProjectBuilds: function () {
$.ajax({
url: PHPCI_URL + 'project/builds/' + PHPCI_PROJECT_ID + '?branch=' + PHPCI_PROJECT_BRANCH,
url: APP_URL + 'project/builds/' + PROJECT_ID + '?branch=' + PROJECT_BRANCH,
success: function (data) {
$('#latest-builds').html(data);
},
error: PHPCI.handleFailedAjax
error: PHPCensor.handleFailedAjax
});
},
updateHeaderBuilds: function (data) {
$('.phpci-pending-list').empty();
$('.phpci-running-list').empty();
$('.app-pending-list').empty();
$('.app-running-list').empty();
if (!data.pending.count) {
$('.phpci-pending').hide();
$('.app-pending').hide();
} else {
$('.phpci-pending').show();
$('.phpci-pending .header').text(Lang.get('n_builds_pending', data.pending.count));
$('.app-pending').show();
$('.app-pending .header').text(Lang.get('n_builds_pending', data.pending.count));
$.each(data.pending.items, function (idx, build) {
$('.phpci-pending-list').append(build.header_row);
$('.app-pending-list').append(build.header_row);
});
}
if (!data.running.count) {
$('.phpci-running').hide();
$('.app-running').hide();
} else {
$('.phpci-running').show();
$('.phpci-running .header').text(Lang.get('n_builds_running', data.running.count));
$('.app-running').show();
$('.app-running .header').text(Lang.get('n_builds_running', data.running.count));
$.each(data.running.items, function (idx, build) {
$('.phpci-running-list').append(build.header_row);
$('.app-running-list').append(build.header_row);
});
}
@ -86,20 +86,20 @@ var PHPCI = {
get: function (uri, success) {
$.ajax({
url: window.PHPCI_URL + uri,
url: window.APP_URL + uri,
success: function (data) {
success();
PHPCI.uiUpdated();
PHPCensor.uiUpdated();
},
error: PHPCI.handleFailedAjax
error: PHPCensor.handleFailedAjax
});
},
handleFailedAjax: function (xhr) {
if (xhr.status == 401) {
window.location.href = window.PHPCI_URL + 'session/login';
window.location.href = window.APP_URL + 'session/login';
}
},
@ -126,10 +126,10 @@ var PHPCI = {
}
};
PHPCI.init();
PHPCensor.init();
function handleFailedAjax(xhr) {
PHPCI.handleFailedAjax(xhr);
PHPCensor.handleFailedAjax(xhr);
}
/**
@ -166,7 +166,7 @@ if (!Function.prototype.bind) {
*/
function confirmDelete(url, subject, reloadAfter) {
var dialog = new PHPCIConfirmDialog({
var dialog = new PHPCensorConfirmDialog({
message: subject + ' will be permanently deleted. Are you sure?',
confirmBtnCaption: 'Delete',
/*
@ -206,10 +206,10 @@ function confirmDelete(url, subject, reloadAfter) {
}
/**
* PHPCIConfirmDialog constructor options object
* PHPCensorConfirmDialog constructor options object
* @type {{message: string, title: string, confirmBtnCaption: string, cancelBtnCaption: string, confirmed: Function}}
*/
var PHPCIConfirmDialogOptions = {
var PHPCensorConfirmDialogOptions = {
message: 'The action will be performed and cannot be undone. Are you sure?',
title: 'Confirmation Dialog',
confirmBtnCaption: 'Ok',
@ -219,7 +219,7 @@ var PHPCIConfirmDialogOptions = {
}
};
var PHPCIConfirmDialog = Class.extend({
var PHPCensorConfirmDialog = Class.extend({
/**
* @private
* @var {bool} Determines whether the dialog has been confirmed
@ -227,11 +227,11 @@ var PHPCIConfirmDialog = Class.extend({
confirmed: false,
/**
* @param {PHPCIConfirmDialogOptions} options
* @param {PHPCensorConfirmDialogOptions} options
*/
init: function (options) {
options = options ? $.extend(PHPCIConfirmDialogOptions, options) : PHPCIConfirmDialogOptions;
options = options ? $.extend(PHPCensorConfirmDialogOptions, options) : PHPCensorConfirmDialogOptions;
if (!$('#confirm-dialog').length) {
/*
@ -270,14 +270,14 @@ var PHPCIConfirmDialog = Class.extend({
/*
Initialize its values
*/
this.$title.html(options.title ? options.title : PHPCIConfirmDialogOptions.title);
this.$body.html(options.message ? options.message : PHPCIConfirmDialogOptions.message);
this.$title.html(options.title ? options.title : PHPCensorConfirmDialogOptions.title);
this.$body.html(options.message ? options.message : PHPCensorConfirmDialogOptions.message);
this.$confirmBtn.html(
options.confirmBtnCaption ? options.confirmBtnCaption : PHPCIConfirmDialogOptions.confirmBtnCaption
options.confirmBtnCaption ? options.confirmBtnCaption : PHPCensorConfirmDialogOptions.confirmBtnCaption
);
this.$cancelBtn.html(
options.cancelBtnCaption ? options.cancelBtnCaption : PHPCIConfirmDialogOptions.cancelBtnCaption
options.cancelBtnCaption ? options.cancelBtnCaption : PHPCensorConfirmDialogOptions.cancelBtnCaption
);
/*
@ -409,7 +409,7 @@ function setupProjectForm()
$.ajax({
dataType: "json",
url: window.PHPCI_URL + 'project/github-repositories',
url: window.APP_URL + 'project/github-repositories',
success: function (data) {
$('#loading').hide();
@ -463,8 +463,8 @@ var Lang = {
var args = Array.prototype.slice.call(arguments);;
var string = args.shift();
if (PHPCI_STRINGS[string]) {
args.unshift(PHPCI_STRINGS[string]);
if (STRINGS[string]) {
args.unshift(STRINGS[string]);
return sprintf.apply(sprintf[0], args);
}
@ -472,4 +472,4 @@ var Lang = {
}
};
moment.locale(PHPCI_LANGUAGE);
moment.locale(LANGUAGE);

View file

@ -66,7 +66,7 @@ var Build = Class.extend({
}
}
PHPCI.uiUpdated();
PHPCensor.uiUpdated();
});
},
@ -76,10 +76,10 @@ var Build = Class.extend({
var query = query || {};
var cb = function() {
var fullUri = window.PHPCI_URL + uri;
var fullUri = window.APP_URL + uri;
if (name == 'build-updated') {
fullUri = window.PHPCI_URL + 'build/data/' + self.buildId;
fullUri = window.APP_URL + 'build/data/' + self.buildId;
}
$.ajax({
@ -116,13 +116,13 @@ var Build = Class.extend({
renderOrder.push($(this).attr('id'));
});
localStorage.setItem('phpci-plugin-order', JSON.stringify(renderOrder));
localStorage.setItem('app-plugin-order', JSON.stringify(renderOrder));
},
renderPlugins: function() {
var self = this;
var rendered = [];
var renderOrder = localStorage.getItem('phpci-plugin-order');
var renderOrder = localStorage.getItem('app-plugin-order');
if (renderOrder) {
renderOrder = JSON.parse(renderOrder);
@ -135,7 +135,7 @@ var Build = Class.extend({
// Plugins have changed, clear the order.
if (typeof self.plugins[key] == 'undefined') {
localStorage.setItem('phpci-plugin-order', []);
localStorage.setItem('app-plugin-order', []);
}
self.renderPlugin(self.plugins[key]);

View file

@ -7,7 +7,7 @@
* @time 3:44 AM
* @license LICENSE.md
*
* @package PHPCI
* @package PHPCensor
*/
$(function () {
@ -16,7 +16,7 @@ $(function () {
});
function bindAppDeleteEvents () {
$('.phpci-app-delete-build').on('click', function (e) {
$('.app-delete-build').on('click', function (e) {
e.preventDefault();
confirmDelete(e.target.href, 'Build').onClose = function () {
@ -26,7 +26,7 @@ function bindAppDeleteEvents () {
return false;
});
$('.phpci-app-delete-user').on('click', function (e) {
$('.app-delete-user').on('click', function (e) {
e.preventDefault();
confirmDelete(e.target.href, 'User', true);

View file

@ -13,5 +13,5 @@ session_start();
require_once(dirname(__DIR__) . '/bootstrap.php');
$fc = new PHPCI\Application($config, new b8\Http\Request());
$fc = new PHPCensor\Application($config, new b8\Http\Request());
print $fc->handleRequest();

View file

@ -1,103 +0,0 @@
<?php use PHPCI\Helper\Lang; ?>
<!DOCTYPE html>
<html lang="en">
<head>
<title><?php Lang::out('log_in_to_phpci'); ?></title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.1/jquery.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.1/js/bootstrap.min.js" type="text/javascript"></script>
<style type="text/css">
html {
min-height: 100%;
}
body
{
background: #224466; /* Old browsers */
background: -moz-radial-gradient(center, ellipse cover, #224466 0%, #112233 100%); /* FF3.6+ */
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,#224466), color-stop(100%,#112233)); /* Chrome,Safari4+ */
background: -webkit-radial-gradient(center, ellipse cover, #224466 0%,#112233 100%); /* Chrome10+,Safari5.1+ */
background: -o-radial-gradient(center, ellipse cover, #224466 0%,#112233 100%); /* Opera 12+ */
background: -ms-radial-gradient(center, ellipse cover, #224466 0%,#112233 100%); /* IE10+ */
background: radial-gradient(ellipse at center, #224466 0%,#112233 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#224466', endColorstr='#112233',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
min-height: 100%;
font-family: Roboto, Arial, Sans-Serif;
font-style: normal;
font-weight: 300;
padding-top: 0px;
}
#login-box
{
background: #fcfcfc; /* Old browsers */
background: -moz-linear-gradient(top, #fcfcfc 50%, #e0e0e0 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(50%,#fcfcfc), color-stop(100%,#e0e0e0)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #fcfcfc 50%,#e0e0e0 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #fcfcfc 50%,#e0e0e0 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #fcfcfc 50%,#e0e0e0 100%); /* IE10+ */
background: linear-gradient(to bottom, #fcfcfc 50%,#e0e0e0 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcfcfc', endColorstr='#e0e0e0',GradientType=0 ); /* IE6-9 */
border-radius: 5px;
box-shadow: 0 0 30px rgba(0,0,0, 0.3);
margin: 0 auto;
padding: 15px 30px;
text-align: left;
width: 350px;
}
#logo {
background: transparent url('https://block8.digital/assets/images/b8-phpci-logo-muted.png') no-repeat top left;
background-size: 130px 46px;
display: inline-block;
height: 46px;
width: 130px;
text-indent: -5000px;
position: absolute;
bottom: 50px;
right: 50px;
}
@media(max-width:767px) {
#logo {
position: inherit;
margin: 0 auto;
margin-top: 50px;
}
}
#logo:hover {
background-image: url('https://block8.digital/assets/images/b8-phpci-logo.png');
}
#phpci-logo img {
margin-bottom: 30px;
}
</style>
</head>
<body>
<div class="container">
<div class="row" style="margin-top: 10%; text-align: center">
<a id="phpci-logo" href="https://www.phptesting.org">
<img src="<?php print PHPCI_URL; ?>assets/img/logo-large.png">
</a>
<div class="" id="login-box">
<?php print $content; ?>
</div>
<a target="_blank" id="logo" href="https://block8.digital">Block 8 - Digital Development Experts</a>
</div>
</div>
</body>
</html>

View file

@ -7,7 +7,7 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI;
namespace PHPCensor;
use b8;
use b8\Exception\HttpException;
@ -22,7 +22,7 @@ use b8\View;
class Application extends b8\Application
{
/**
* @var \PHPCI\Controller
* @var \PHPCensor\Controller
*/
protected $controller;
@ -37,15 +37,15 @@ class Application extends b8\Application
// Inlined as a closure to fix "using $this when not in object context" on 5.3
$validateSession = function () {
if (!empty($_SESSION['phpci_user_id'])) {
$user = b8\Store\Factory::getStore('User')->getByPrimaryKey($_SESSION['phpci_user_id']);
if (!empty($_SESSION['php-censor-user-id'])) {
$user = b8\Store\Factory::getStore('User')->getByPrimaryKey($_SESSION['php-censor-user-id']);
if ($user) {
$_SESSION['phpci_user'] = $user;
$_SESSION['php-censor-user'] = $user;
return true;
}
unset($_SESSION['phpci_user_id']);
unset($_SESSION['php-censor-user-id']);
}
return false;
@ -62,9 +62,9 @@ class Application extends b8\Application
$response->setResponseCode(401);
$response->setContent('');
} else {
$_SESSION['phpci_login_redirect'] = substr($request->getPath(), 1);
$_SESSION['php-censor-login-redirect'] = substr($request->getPath(), 1);
$response = new RedirectResponse($response);
$response->setHeader('Location', PHPCI_URL . 'session/login');
$response->setHeader('Location', APP_URL . 'session/login');
}
return false;
@ -123,7 +123,7 @@ class Application extends b8\Application
{
$controller = parent::loadController($class);
$controller->layout = new View('layout');
$controller->layout->title = 'PHPCI';
$controller->layout->title = 'PHP Censor';
$controller->layout->breadcrumb = [];
return $controller;
@ -156,15 +156,15 @@ class Application extends b8\Application
protected function shouldSkipAuth()
{
$config = b8\Config::getInstance();
$state = (bool)$config->get('phpci.authentication_settings.state', false);
$userId = $config->get('phpci.authentication_settings.user_id', 0);
$state = (bool)$config->get('php-censor.authentication_settings.state', false);
$userId = $config->get('php-censor.authentication_settings.user_id', 0);
if (false !== $state && 0 != (int)$userId) {
$user = b8\Store\Factory::getStore('User')
->getByPrimaryKey($userId);
if ($user) {
$_SESSION['phpci_user'] = $user;
$_SESSION['php-censor-user'] = $user;
return true;
}
}

View file

@ -7,10 +7,10 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI;
namespace PHPCensor;
use b8\Store\Factory;
use PHPCI\Model\Build;
use PHPCensor\Model\Build;
/**
* PHPCI Build Factory - Takes in a generic "Build" and returns a type-specific build model.
@ -70,7 +70,7 @@ class BuildFactory
return $build;
}
$class = '\\PHPCI\\Model\\Build\\' . $type;
$class = '\\PHPCensor\\Model\\Build\\' . $type;
$build = new $class($build->getDataArray());
}

View file

@ -7,19 +7,19 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI;
namespace PHPCensor;
use PHPCI\Helper\BuildInterpolator;
use PHPCI\Helper\Lang;
use PHPCI\Helper\MailerFactory;
use PHPCI\Logging\BuildLogger;
use PHPCI\Model\Build;
use PHPCensor\Helper\BuildInterpolator;
use PHPCensor\Helper\Lang;
use PHPCensor\Helper\MailerFactory;
use PHPCensor\Logging\BuildLogger;
use PHPCensor\Model\Build;
use b8\Config;
use b8\Store\Factory;
use Psr\Log\LoggerAwareInterface;
use Psr\Log\LoggerInterface;
use Psr\Log\LogLevel;
use PHPCI\Plugin\Util\Factory as PluginFactory;
use PHPCensor\Plugin\Util\Factory as PluginFactory;
/**
* PHPCI Build Runner
@ -48,7 +48,7 @@ class Builder implements LoggerAwareInterface
protected $verbose = true;
/**
* @var \PHPCI\Model\Build
* @var \PHPCensor\Model\Build
*/
protected $build;
@ -73,7 +73,7 @@ class Builder implements LoggerAwareInterface
protected $interpolator;
/**
* @var \PHPCI\Store\BuildStore
* @var \PHPCensor\Store\BuildStore
*/
protected $store;
@ -83,7 +83,7 @@ class Builder implements LoggerAwareInterface
public $quiet = false;
/**
* @var \PHPCI\Plugin\Util\Executor
* @var \PHPCensor\Plugin\Util\Executor
*/
protected $pluginExecutor;
@ -99,8 +99,9 @@ class Builder implements LoggerAwareInterface
/**
* Set up the builder.
* @param \PHPCI\Model\Build $build
* @param LoggerInterface $logger
*
* @param \PHPCensor\Model\Build $build
* @param LoggerInterface $logger
*/
public function __construct(Build $build, LoggerInterface $logger = null)
{
@ -110,12 +111,12 @@ class Builder implements LoggerAwareInterface
$this->buildLogger = new BuildLogger($logger, $build);
$pluginFactory = $this->buildPluginFactory($build);
$pluginFactory->addConfigFromFile(PHPCI_APP_DIR . "pluginconfig.php");
$pluginFactory->addConfigFromFile(APP_DIR . "pluginconfig.php");
$this->pluginExecutor = new Plugin\Util\Executor($pluginFactory, $this->buildLogger);
$executorClass = 'PHPCI\Helper\UnixCommandExecutor';
$executorClass = 'PHPCensor\Helper\UnixCommandExecutor';
if (IS_WIN) {
$executorClass = 'PHPCI\Helper\WindowsCommandExecutor';
$executorClass = 'PHPCensor\Helper\WindowsCommandExecutor';
}
$this->commandExecutor = new $executorClass(
@ -129,21 +130,21 @@ class Builder implements LoggerAwareInterface
}
/**
* Set the config array, as read from phpci.yml
* Set the config array, as read from .php-censor.yml
* @param array|null $config
* @throws \Exception
*/
public function setConfigArray($config)
{
if (is_null($config) || !is_array($config)) {
throw new \Exception(Lang::get('missing_phpci_yml'));
throw new \Exception(Lang::get('missing_app_yml'));
}
$this->config = $config;
}
/**
* Access a variable from the phpci.yml file.
* Access a variable from the .php-censor.yml file.
* @param string
* @return mixed
*/
@ -314,7 +315,7 @@ class Builder implements LoggerAwareInterface
$this->interpolator->setupInterpolationVars(
$this->build,
$this->buildPath,
PHPCI_URL
APP_URL
);
$this->commandExecutor->setBuildPath($this->buildPath);
@ -324,7 +325,7 @@ class Builder implements LoggerAwareInterface
throw new \Exception(Lang::get('could_not_create_working'));
}
// Does the project's phpci.yml request verbose mode?
// Does the project's .php-censor.yml request verbose mode?
if (!isset($this->config['build_settings']['verbose']) || !$this->config['build_settings']['verbose']) {
$this->verbose = false;
}
@ -407,7 +408,7 @@ class Builder implements LoggerAwareInterface
return $self;
},
null,
'PHPCI\Builder'
'PHPCensor\Builder'
);
$pluginFactory->registerResource(
@ -415,7 +416,7 @@ class Builder implements LoggerAwareInterface
return $build;
},
null,
'PHPCI\Model\Build'
'PHPCensor\Model\Build'
);
$logger = $this->logger;
@ -429,7 +430,7 @@ class Builder implements LoggerAwareInterface
$pluginFactory->registerResource(
function () use ($self) {
$factory = new MailerFactory($self->getSystemConfig('phpci'));
$factory = new MailerFactory($self->getSystemConfig('php-censor'));
return $factory->getSwiftMailerFromConfig();
},
null,

View file

@ -7,11 +7,11 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use PHPCI\Service\UserService;
use PHPCI\Helper\Lang;
use PHPCI\Store\UserStore;
use PHPCensor\Service\UserService;
use PHPCensor\Helper\Lang;
use PHPCensor\Store\UserStore;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
@ -44,7 +44,7 @@ class CreateAdminCommand extends Command
protected function configure()
{
$this
->setName('phpci:create-admin')
->setName('php-censor:create-admin')
->setDescription(Lang::get('create_admin_user'));
}

View file

@ -7,11 +7,11 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use PHPCI\Helper\Lang;
use PHPCI\Service\BuildService;
use PHPCI\Store\ProjectStore;
use PHPCensor\Helper\Lang;
use PHPCensor\Service\BuildService;
use PHPCensor\Store\ProjectStore;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
@ -53,7 +53,7 @@ class CreateBuildCommand extends Command
protected function configure()
{
$this
->setName('phpci:create-build')
->setName('php-censor:create-build')
->setDescription(Lang::get('create_build_project'))
->addArgument('projectId', InputArgument::REQUIRED, Lang::get('project_id_argument'))
->addOption('commit', null, InputOption::VALUE_OPTIONAL, Lang::get('commit_id_option'))

View file

@ -8,11 +8,11 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use Monolog\Logger;
use PHPCI\ProcessControl\Factory;
use PHPCI\ProcessControl\ProcessControlInterface;
use PHPCensor\ProcessControl\Factory;
use PHPCensor\ProcessControl\ProcessControlInterface;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
@ -58,7 +58,7 @@ class DaemonCommand extends Command
protected function configure()
{
$this
->setName('phpci:daemon')
->setName('php-censor:daemon')
->setDescription('Initiates the daemon to run commands.')
->addArgument(
'state', InputArgument::REQUIRED, 'start|stop|status'
@ -113,8 +113,8 @@ class DaemonCommand extends Command
$this->logger->info("Trying to start the daemon");
$cmd = "nohup %sdaemonise phpci:daemonise > %s 2>&1 &";
$command = sprintf($cmd, PHPCI_BIN_DIR, $this->logFilePath);
$cmd = "nohup %sdaemonise php-censor:daemonise > %s 2>&1 &";
$command = sprintf($cmd, BIN_DIR, $this->logFilePath);
$output = $exitCode = null;
exec($command, $output, $exitCode);

View file

@ -7,7 +7,7 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use Monolog\Logger;
use Symfony\Component\Console\Command\Command;
@ -56,7 +56,7 @@ class DaemoniseCommand extends Command
protected function configure()
{
$this
->setName('phpci:daemonise')
->setName('php-censor:daemonise')
->setDescription('Starts the daemon to run commands.');
}
@ -66,7 +66,7 @@ class DaemoniseCommand extends Command
protected function execute(InputInterface $input, OutputInterface $output)
{
$cmd = "echo %s > '%sdaemon/daemon.pid'";
$command = sprintf($cmd, getmypid(), PHPCI_RUNTIME_DIR);
$command = sprintf($cmd, getmypid(), RUNTIME_DIR);
exec($command);
$this->output = $output;
@ -100,9 +100,10 @@ class DaemoniseCommand extends Command
}
/**
* Called when log entries are made in Builder / the plugins.
* @see \PHPCI\Builder::log()
*/
* Called when log entries are made in Builder / the plugins.
*
* @see \PHPCensor\Builder::log()
*/
public function logCallback($log)
{
$this->output->writeln($log);

View file

@ -7,20 +7,20 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use Exception;
use PDO;
use b8\Config;
use b8\Store\Factory;
use PHPCI\Helper\Lang;
use PHPCensor\Helper\Lang;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Helper\QuestionHelper;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface;
use PHPCI\Service\UserService;
use PHPCensor\Service\UserService;
use Symfony\Component\Console\Question\Question;
use Symfony\Component\Console\Question\ConfirmationQuestion;
use Symfony\Component\Yaml\Dumper;
@ -37,10 +37,10 @@ class InstallCommand extends Command
protected function configure()
{
$defaultPath = PHPCI_APP_DIR . 'config.yml';
$defaultPath = APP_DIR . 'config.yml';
$this
->setName('phpci:install')
->setName('php-censor:install')
->addOption('url', null, InputOption::VALUE_OPTIONAL, Lang::get('installation_url'))
->addOption('db-host', null, InputOption::VALUE_OPTIONAL, Lang::get('db_host'))
->addOption('db-port', null, InputOption::VALUE_OPTIONAL, Lang::get('db_port'))
@ -54,7 +54,7 @@ class InstallCommand extends Command
->addOption('queue-disabled', null, InputOption::VALUE_NONE, 'Don\'t ask for queue details')
->addOption('queue-server', null, InputOption::VALUE_OPTIONAL, 'Beanstalkd queue server hostname')
->addOption('queue-name', null, InputOption::VALUE_OPTIONAL, 'Beanstalkd queue name')
->setDescription(Lang::get('install_phpci'));
->setDescription(Lang::get('install_app'));
}
/**
@ -70,7 +70,7 @@ class InstallCommand extends Command
$output->writeln('');
$output->writeln('<info>******************</info>');
$output->writeln('<info> '.Lang::get('welcome_to_phpci').'</info>');
$output->writeln('<info> '.Lang::get('welcome_to_app').'</info>');
$output->writeln('<info>******************</info>');
$output->writeln('');
@ -99,7 +99,7 @@ class InstallCommand extends Command
// ----
// Get basic installation details (URL, etc)
// ----
$conf['phpci'] = $this->getPhpciConfigInformation($input, $output);
$conf['php-censor'] = $this->getConfigInformation($input, $output);
$this->writeConfigFile($conf);
$this->setupDatabase($output);
@ -119,9 +119,9 @@ class InstallCommand extends Command
$errors = false;
// Check PHP version:
if (!(version_compare(PHP_VERSION, '5.3.8') >= 0)) {
if (!(version_compare(PHP_VERSION, '5.4.0') >= 0)) {
$output->writeln('');
$output->writeln('<error>'.Lang::get('phpci_php_req').'</error>');
$output->writeln('<error>'.Lang::get('app_php_req').'</error>');
$errors = true;
}
@ -217,9 +217,9 @@ class InstallCommand extends Command
* @param OutputInterface $output
* @return array
*/
protected function getPhpciConfigInformation(InputInterface $input, OutputInterface $output)
protected function getConfigInformation(InputInterface $input, OutputInterface $output)
{
$phpci = [];
$config = [];
/** @var $helper QuestionHelper */
$helper = $this->getHelperSet()->get('question');
@ -235,15 +235,15 @@ class InstallCommand extends Command
if ($url = $input->getOption('url')) {
$url = $urlValidator($url);
} else {
$question = new Question(Lang::get('enter_phpci_url'));
$question = new Question(Lang::get('enter_app_url'));
$question->setValidator($urlValidator);
$url = $helper->ask($input, $output, $question);
}
$phpci['url'] = $url;
$phpci['worker'] = $this->getQueueInformation($input, $output, $helper);
$config['url'] = $url;
$config['worker'] = $this->getQueueInformation($input, $output, $helper);
return $phpci;
return $config;
}
/**
@ -275,7 +275,7 @@ class InstallCommand extends Command
}
if (!$rtn['queue'] = $input->getOption('queue-name')) {
$questionName = new Question('Enter the queue (tube) name to use [phpci]: ', 'phpci');
$questionName = new Question('Enter the queue (tube) name to use [php-censor-queue]: ', 'php-censor-queue');
$rtn['queue'] = $helper->ask($input, $output, $questionName);
}
@ -307,12 +307,12 @@ class InstallCommand extends Command
}
if (!$dbName = $input->getOption('db-name')) {
$questionDb = new Question(Lang::get('enter_db_name'), 'phpci');
$questionDb = new Question(Lang::get('enter_db_name'), 'php-censor-db');
$dbName = $helper->ask($input, $output, $questionDb);
}
if (!$dbUser = $input->getOption('db-user')) {
$questionUser = new Question(Lang::get('enter_db_user'), 'phpci');
$questionUser = new Question(Lang::get('enter_db_user'), 'php-censor-user');
$dbUser = $helper->ask($input, $output, $questionUser);
}
@ -383,7 +383,7 @@ class InstallCommand extends Command
$output->write(Lang::get('setting_up_db'));
$phinxBinary = escapeshellarg(ROOT_DIR . 'vendor' . DIRECTORY_SEPARATOR . 'bin' . DIRECTORY_SEPARATOR . 'phinx');
$phinxScript = escapeshellarg(PHPCI_APP_DIR . 'phinx.php');
$phinxScript = escapeshellarg(APP_DIR . 'phinx.php');
shell_exec($phinxBinary . ' migrate -c ' . $phinxScript);
$output->writeln('<info>'.Lang::get('ok').'</info>');

View file

@ -7,17 +7,17 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use b8\Store\Factory;
use b8\HttpClient;
use Monolog\Logger;
use PHPCI\Helper\Lang;
use PHPCensor\Helper\Lang;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Yaml\Parser;
use PHPCI\Model\Build;
use PHPCensor\Model\Build;
/**
* Run console command - Poll github for latest commit id
@ -41,7 +41,7 @@ class PollCommand extends Command
protected function configure()
{
$this
->setName('phpci:poll-github')
->setName('php-censor:poll-github')
->setDescription(Lang::get('poll_github'));
}
@ -51,10 +51,10 @@ class PollCommand extends Command
protected function execute(InputInterface $input, OutputInterface $output)
{
$parser = new Parser();
$yaml = file_get_contents(PHPCI_APP_DIR . 'config.yml');
$yaml = file_get_contents(APP_DIR . 'config.yml');
$this->settings = $parser->parse($yaml);
$token = $this->settings['phpci']['github']['token'];
$token = $this->settings['php-censor']['github']['token'];
if (!$token) {
$this->logger->error(Lang::get('no_token'));

View file

@ -7,11 +7,11 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use b8\Store\Factory;
use Monolog\Logger;
use PHPCI\Service\BuildService;
use PHPCensor\Service\BuildService;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\ArgvInput;
use Symfony\Component\Console\Input\InputInterface;
@ -58,7 +58,7 @@ class RebuildCommand extends Command
protected function configure()
{
$this
->setName('phpci:rebuild')
->setName('php-censor:rebuild')
->setDescription('Re-runs the last run build.');
}
@ -71,7 +71,7 @@ class RebuildCommand extends Command
$runner->setMaxBuilds(1);
$runner->setDaemon(false);
/** @var \PHPCI\Store\BuildStore $store */
/** @var \PHPCensor\Store\BuildStore $store */
$store = Factory::getStore('Build');
$service = new BuildService($store);
@ -83,9 +83,10 @@ class RebuildCommand extends Command
}
/**
* Called when log entries are made in Builder / the plugins.
* @see \PHPCI\Builder::log()
*/
* Called when log entries are made in Builder / the plugins.
*
* @see \PHPCensor\Builder::log()
*/
public function logCallback($log)
{
$this->output->writeln($log);

View file

@ -7,14 +7,14 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use b8\Store\Factory;
use Monolog\Logger;
use PHPCI\BuildFactory;
use PHPCI\Helper\Lang;
use PHPCI\Logging\OutputLogHandler;
use PHPCI\Service\BuildService;
use PHPCensor\BuildFactory;
use PHPCensor\Helper\Lang;
use PHPCensor\Logging\OutputLogHandler;
use PHPCensor\Service\BuildService;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
@ -50,8 +50,8 @@ class RebuildQueueCommand extends Command
protected function configure()
{
$this
->setName('phpci:rebuild-queue')
->setDescription('Rebuilds the PHPCI worker queue.');
->setName('php-censor:rebuild-queue')
->setDescription('Rebuilds the PHP Censor worker queue.');
}
protected function execute(InputInterface $input, OutputInterface $output)

View file

@ -7,21 +7,21 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use b8\Config;
use Monolog\Logger;
use PHPCI\Helper\Lang;
use PHPCI\Logging\BuildDBLogHandler;
use PHPCI\Logging\LoggedBuildContextTidier;
use PHPCI\Logging\OutputLogHandler;
use PHPCensor\Helper\Lang;
use PHPCensor\Logging\BuildDBLogHandler;
use PHPCensor\Logging\LoggedBuildContextTidier;
use PHPCensor\Logging\OutputLogHandler;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use b8\Store\Factory;
use PHPCI\Builder;
use PHPCI\BuildFactory;
use PHPCI\Model\Build;
use PHPCensor\Builder;
use PHPCensor\BuildFactory;
use PHPCensor\Model\Build;
/**
* Run console command - Runs any pending builds.
@ -64,9 +64,9 @@ class RunCommand extends Command
protected function configure()
{
$this
->setName('phpci:run-builds')
->setName('php-censor:run-builds')
->setDescription(Lang::get('run_all_pending'))
->addOption('debug', null, null, 'Run PHPCI in Debug Mode');
->addOption('debug', null, null, 'Run PHP Censor in Debug Mode');
}
/**
@ -87,7 +87,7 @@ class RunCommand extends Command
// Allow PHPCI to run in "debug mode"
if ($input->hasOption('debug') && $input->getOption('debug')) {
$output->writeln('<comment>Debug mode enabled.</comment>');
define('PHPCI_DEBUG_MODE', true);
define('DEBUG_MODE', true);
}
$running = $this->validateRunningBuilds();
@ -154,15 +154,15 @@ class RunCommand extends Command
protected function validateRunningBuilds()
{
/** @var \PHPCI\Store\BuildStore $store */
/** @var \PHPCensor\Store\BuildStore $store */
$store = Factory::getStore('Build');
$running = $store->getByStatus(1);
$rtn = [];
$timeout = Config::getInstance()->get('phpci.build.failed_after', 1800);
$timeout = Config::getInstance()->get('php-censor.build.failed_after', 1800);
foreach ($running['items'] as $build) {
/** @var \PHPCI\Model\Build $build */
/** @var \PHPCensor\Model\Build $build */
$build = BuildFactory::getBuild($build);
$now = time();

View file

@ -7,11 +7,11 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use b8\Config;
use Monolog\Logger;
use PHPCI\Helper\Lang;
use PHPCensor\Helper\Lang;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
@ -38,8 +38,8 @@ class UpdateCommand extends Command
protected function configure()
{
$this
->setName('phpci:update')
->setDescription(Lang::get('update_phpci'));
->setName('php-censor:update')
->setDescription(Lang::get('update_app'));
}
/**
@ -51,9 +51,9 @@ class UpdateCommand extends Command
return;
}
$output->write(Lang::get('updating_phpci'));
$output->write(Lang::get('updating_app'));
shell_exec(ROOT_DIR . 'vendor/bin/phinx migrate -c "' . PHPCI_APP_DIR . 'phinx.php"');
shell_exec(ROOT_DIR . 'vendor/bin/phinx migrate -c "' . APP_DIR . 'phinx.php"');
$output->writeln('<info>'.Lang::get('ok').'</info>');
}
@ -61,8 +61,8 @@ class UpdateCommand extends Command
protected function verifyInstalled()
{
$config = Config::getInstance();
$phpciUrl = $config->get('phpci.url');
$url = $config->get('php-censor.url');
return !empty($phpciUrl);
return !empty($url);
}
}

View file

@ -7,12 +7,12 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Command;
namespace PHPCensor\Command;
use b8\Config;
use Monolog\Logger;
use PHPCI\Logging\OutputLogHandler;
use PHPCI\Worker\BuildWorker;
use PHPCensor\Logging\OutputLogHandler;
use PHPCensor\Worker\BuildWorker;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
@ -49,9 +49,9 @@ class WorkerCommand extends Command
protected function configure()
{
$this
->setName('phpci:worker')
->setDescription('Runs the PHPCI build worker.')
->addOption('debug', null, null, 'Run PHPCI in Debug Mode');
->setName('php-censor:worker')
->setDescription('Runs the PHP Censor build worker.')
->addOption('debug', null, null, 'Run PHP Censor in Debug Mode');
}
protected function execute(InputInterface $input, OutputInterface $output)
@ -69,10 +69,10 @@ class WorkerCommand extends Command
// Allow PHPCI to run in "debug mode"
if ($input->hasOption('debug') && $input->getOption('debug')) {
$output->writeln('<comment>Debug mode enabled.</comment>');
define('PHPCI_DEBUG_MODE', true);
define('DEBUG_MODE', true);
}
$config = Config::getInstance()->get('phpci.worker', []);
$config = Config::getInstance()->get('php-censor.worker', []);
if (empty($config['host']) || empty($config['queue'])) {
$error = 'The worker is not configured. You must set a host and queue in your config.yml file.';
@ -81,7 +81,7 @@ class WorkerCommand extends Command
$worker = new BuildWorker($config['host'], $config['queue']);
$worker->setLogger($this->logger);
$worker->setMaxJobs(Config::getInstance()->get('phpci.worker.max_jobs', -1));
$worker->setMaxJobs(Config::getInstance()->get('php-censor.worker.max_jobs', -1));
$worker->startWorker();
}
}

View file

@ -7,7 +7,7 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI;
namespace PHPCensor;
use b8\Config;
use b8\Exception\HttpException\ForbiddenException;
@ -125,6 +125,6 @@ class Controller extends \b8\Controller
*/
protected function currentUserIsAdmin()
{
return $_SESSION['phpci_user']->getIsAdmin();
return $_SESSION['php-censor-user']->getIsAdmin();
}
}

View file

@ -7,18 +7,18 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Controller;
namespace PHPCensor\Controller;
use b8;
use b8\Exception\HttpException\NotFoundException;
use b8\Http\Response\JsonResponse;
use PHPCI\BuildFactory;
use PHPCI\Helper\AnsiConverter;
use PHPCI\Helper\Lang;
use PHPCI\Model\Build;
use PHPCI\Model\Project;
use PHPCI\Service\BuildService;
use PHPCI\Controller;
use PHPCensor\BuildFactory;
use PHPCensor\Helper\AnsiConverter;
use PHPCensor\Helper\Lang;
use PHPCensor\Model\Build;
use PHPCensor\Model\Project;
use PHPCensor\Service\BuildService;
use PHPCensor\Controller;
/**
* Build Controller - Allows users to run and view builds.
@ -29,12 +29,12 @@ use PHPCI\Controller;
class BuildController extends Controller
{
/**
* @var \PHPCI\Store\BuildStore
* @var \PHPCensor\Store\BuildStore
*/
protected $buildStore;
/**
* @var \PHPCI\Service\BuildService
* @var \PHPCensor\Service\BuildService
*/
protected $buildService;
@ -88,10 +88,10 @@ class BuildController extends Controller
}
$rebuild = Lang::get('rebuild_now');
$rebuildLink = PHPCI_URL . 'build/rebuild/' . $build->getId();
$rebuildLink = APP_URL . 'build/rebuild/' . $build->getId();
$delete = Lang::get('delete_build');
$deleteLink = PHPCI_URL . 'build/delete/' . $build->getId();
$deleteLink = APP_URL . 'build/delete/' . $build->getId();
$actions = "<a class=\"btn btn-default\" href=\"{$rebuildLink}\">{$rebuild}</a> ";
@ -109,7 +109,7 @@ class BuildController extends Controller
protected function getUiPlugins()
{
$rtn = [];
$path = PHPCI_PUBLIC_DIR . 'assets' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'build-plugins' . DIRECTORY_SEPARATOR;
$path = PUBLIC_DIR . 'assets' . DIRECTORY_SEPARATOR . 'js' . DIRECTORY_SEPARATOR . 'build-plugins' . DIRECTORY_SEPARATOR;
$dir = opendir($path);
while ($item = readdir($dir)) {
@ -173,7 +173,7 @@ class BuildController extends Controller
$data['finished'] = !is_null($build->getFinished()) ? $build->getFinished()->format('Y-m-d H:i:s') : null;
$data['duration'] = $build->getDuration();
/** @var \PHPCI\Store\BuildErrorStore $errorStore */
/** @var \PHPCensor\Store\BuildErrorStore $errorStore */
$errorStore = b8\Store\Factory::getStore('BuildError');
$errors = $errorStore->getErrorsForBuild($build->getId());
@ -206,7 +206,7 @@ class BuildController extends Controller
}
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL.'build/view/' . $build->getId());
$response->setHeader('Location', APP_URL.'build/view/' . $build->getId());
return $response;
}
@ -226,7 +226,7 @@ class BuildController extends Controller
$this->buildService->deleteBuild($build);
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL.'project/view/' . $build->getProjectId());
$response->setHeader('Location', APP_URL.'project/view/' . $build->getProjectId());
return $response;
}

View file

@ -7,16 +7,16 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Controller;
namespace PHPCensor\Controller;
use b8;
use b8\Exception\HttpException\NotFoundException;
use b8\Store;
use PHPCI\BuildFactory;
use PHPCI\Model\Project;
use PHPCI\Model\Build;
use PHPCI\Service\BuildStatusService;
use PHPCI\Controller;
use PHPCensor\BuildFactory;
use PHPCensor\Model\Project;
use PHPCensor\Model\Build;
use PHPCensor\Service\BuildStatusService;
use PHPCensor\Controller;
/**
* Build Status Controller - Allows external access to build status information / images.
@ -26,9 +26,9 @@ use PHPCI\Controller;
*/
class BuildStatusController extends Controller
{
/* @var \PHPCI\Store\ProjectStore */
/* @var \PHPCensor\Store\ProjectStore */
protected $projectStore;
/* @var \PHPCI\Store\BuildStore */
/* @var \PHPCensor\Store\BuildStore */
protected $buildStore;
/**

View file

@ -7,14 +7,14 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Controller;
namespace PHPCensor\Controller;
use b8;
use b8\Form;
use b8\Store;
use PHPCI\Controller;
use PHPCI\Model\ProjectGroup;
use PHPCI\Helper\Lang;
use PHPCensor\Controller;
use PHPCensor\Model\ProjectGroup;
use PHPCensor\Helper\Lang;
/**
* Project Controller - Allows users to create, edit and view projects.
@ -25,7 +25,7 @@ use PHPCI\Helper\Lang;
class GroupController extends Controller
{
/**
* @var \PHPCI\Store\ProjectGroupStore
* @var \PHPCensor\Store\ProjectGroupStore
*/
protected $groupStore;
@ -80,13 +80,13 @@ class GroupController extends Controller
$this->groupStore->save($group);
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL.'group');
$response->setHeader('Location', APP_URL.'group');
return $response;
}
$form = new Form();
$form->setMethod('POST');
$form->setAction(PHPCI_URL . 'group/edit' . (!is_null($groupId) ? '/' . $groupId : ''));
$form->setAction(APP_URL . 'group/edit' . (!is_null($groupId) ? '/' . $groupId : ''));
$title = new Form\Element\Text('title');
$title->setContainerClass('form-group');
@ -115,7 +115,7 @@ class GroupController extends Controller
$this->groupStore->delete($group);
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL.'group');
$response->setHeader('Location', APP_URL.'group');
return $response;
}
}

View file

@ -7,13 +7,13 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Controller;
namespace PHPCensor\Controller;
use b8;
use PHPCI\BuildFactory;
use PHPCI\Helper\Lang;
use PHPCI\Model\Build;
use PHPCI\Controller;
use PHPCensor\BuildFactory;
use PHPCensor\Helper\Lang;
use PHPCensor\Model\Build;
use PHPCensor\Controller;
/**
* Home Controller - Displays the PHPCI Dashboard.
@ -24,17 +24,17 @@ use PHPCI\Controller;
class HomeController extends Controller
{
/**
* @var \PHPCI\Store\BuildStore
* @var \PHPCensor\Store\BuildStore
*/
protected $buildStore;
/**
* @var \PHPCI\Store\ProjectStore
* @var \PHPCensor\Store\ProjectStore
*/
protected $projectStore;
/**
* @var \PHPCI\Store\ProjectGroupStore
* @var \PHPCensor\Store\ProjectGroupStore
*/
protected $groupStore;

View file

@ -7,14 +7,14 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Controller;
namespace PHPCensor\Controller;
use b8;
use PHPCI\Helper\Lang;
use PHPCI\Plugin\Util\ComposerPluginInformation;
use PHPCI\Plugin\Util\FilesPluginInformation;
use PHPCI\Plugin\Util\PluginInformationCollection;
use PHPCI\Controller;
use PHPCensor\Helper\Lang;
use PHPCensor\Plugin\Util\ComposerPluginInformation;
use PHPCensor\Plugin\Util\FilesPluginInformation;
use PHPCensor\Plugin\Util\PluginInformationCollection;
use PHPCensor\Controller;
/**
* Plugin Controller - Provides support for installing Composer packages.
@ -36,7 +36,7 @@ class PluginController extends Controller
$this->view->installedPackages = $json['require'];
$pluginInfo = new PluginInformationCollection();
$pluginInfo->add(FilesPluginInformation::newFromDir(PHPCI_DIR . "Plugin" . DIRECTORY_SEPARATOR));
$pluginInfo->add(FilesPluginInformation::newFromDir(SRC_DIR . "Plugin" . DIRECTORY_SEPARATOR));
$pluginInfo->add(ComposerPluginInformation::buildFromYaml(
ROOT_DIR . "vendor" . DIRECTORY_SEPARATOR . "composer" . DIRECTORY_SEPARATOR . "installed.json"
));

View file

@ -7,19 +7,19 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Controller;
namespace PHPCensor\Controller;
use b8;
use b8\Form;
use b8\Exception\HttpException\NotFoundException;
use b8\Store;
use PHPCI;
use PHPCI\BuildFactory;
use PHPCI\Helper\Github;
use PHPCI\Helper\Lang;
use PHPCI\Helper\SshKey;
use PHPCI\Service\BuildService;
use PHPCI\Service\ProjectService;
use PHPCensor;
use PHPCensor\BuildFactory;
use PHPCensor\Helper\Github;
use PHPCensor\Helper\Lang;
use PHPCensor\Helper\SshKey;
use PHPCensor\Service\BuildService;
use PHPCensor\Service\ProjectService;
/**
* Project Controller - Allows users to create, edit and view projects.
@ -27,25 +27,25 @@ use PHPCI\Service\ProjectService;
* @package PHPCI
* @subpackage Web
*/
class ProjectController extends PHPCI\Controller
class ProjectController extends PHPCensor\Controller
{
/**
* @var \PHPCI\Store\ProjectStore
* @var \PHPCensor\Store\ProjectStore
*/
protected $projectStore;
/**
* @var \PHPCI\Service\ProjectService
* @var \PHPCensor\Service\ProjectService
*/
protected $projectService;
/**
* @var \PHPCI\Store\BuildStore
* @var \PHPCensor\Store\BuildStore
*/
protected $buildStore;
/**
* @var \PHPCI\Service\BuildService
* @var \PHPCensor\Service\BuildService
*/
protected $buildService;
@ -79,7 +79,7 @@ class ProjectController extends PHPCI\Controller
if ($page > $pages) {
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL.'project/view/'.$projectId);
$response->setHeader('Location', APP_URL.'project/view/'.$projectId);
return $response;
}
@ -102,7 +102,7 @@ class ProjectController extends PHPCI\Controller
*/
public function build($projectId, $branch = '')
{
/* @var \PHPCI\Model\Project $project */
/* @var \PHPCensor\Model\Project $project */
$project = $this->projectStore->getById($projectId);
if (empty($branch)) {
@ -113,7 +113,7 @@ class ProjectController extends PHPCI\Controller
throw new NotFoundException(Lang::get('project_x_not_found', $projectId));
}
$email = $_SESSION['phpci_user']->getEmail();
$email = $_SESSION['php-censor-user']->getEmail();
$build = $this->buildService->createBuild($project, null, urldecode($branch), $email);
if ($this->buildService->queueError) {
@ -121,7 +121,7 @@ class ProjectController extends PHPCI\Controller
}
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL.'build/view/' . $build->getId());
$response->setHeader('Location', APP_URL.'build/view/' . $build->getId());
return $response;
}
@ -136,7 +136,7 @@ class ProjectController extends PHPCI\Controller
$this->projectService->deleteProject($project);
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL);
$response->setHeader('Location', APP_URL);
return $response;
}
@ -230,7 +230,7 @@ class ProjectController extends PHPCI\Controller
$project = $this->projectService->createProject($title, $type, $reference, $options);
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL.'project/view/' . $project->getId());
$response->setHeader('Location', APP_URL.'project/view/' . $project->getId());
return $response;
}
}
@ -295,7 +295,7 @@ class ProjectController extends PHPCI\Controller
$project = $this->projectService->updateProject($project, $title, $type, $reference, $options);
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL.'project/view/' . $project->getId());
$response->setHeader('Location', APP_URL.'project/view/' . $project->getId());
return $response;
}
@ -306,7 +306,7 @@ class ProjectController extends PHPCI\Controller
{
$form = new Form();
$form->setMethod('POST');
$form->setAction(PHPCI_URL.'project/' . $type);
$form->setAction(APP_URL.'project/' . $type);
$form->addField(new Form\Element\Csrf('csrf'));
$form->addField(new Form\Element\Hidden('pubkey'));

View file

@ -7,12 +7,12 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Controller;
namespace PHPCensor\Controller;
use b8;
use PHPCI\Helper\Email;
use PHPCI\Helper\Lang;
use PHPCI\Controller;
use PHPCensor\Helper\Email;
use PHPCensor\Helper\Lang;
use PHPCensor\Controller;
/**
* Session Controller - Handles user login / logout.
@ -23,7 +23,7 @@ use PHPCI\Controller;
class SessionController extends Controller
{
/**
* @var \PHPCI\Store\UserStore
* @var \PHPCensor\Store\UserStore
*/
protected $userStore;
@ -54,7 +54,7 @@ class SessionController extends Controller
if ($user && password_verify($this->getParam('password', ''), $user->getHash())) {
session_regenerate_id(true);
$_SESSION['phpci_user_id'] = $user->getId();
$_SESSION['php-censor-user-id'] = $user->getId();
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', $this->getLoginRedirect());
return $response;
@ -66,7 +66,7 @@ class SessionController extends Controller
$form = new b8\Form();
$form->setMethod('POST');
$form->setAction(PHPCI_URL.'session/login');
$form->setAction(APP_URL.'session/login');
$email = new b8\Form\Element\Email('email');
$email->setLabel(Lang::get('email_address'));
@ -104,13 +104,13 @@ class SessionController extends Controller
*/
public function logout()
{
unset($_SESSION['phpci_user']);
unset($_SESSION['phpci_user_id']);
unset($_SESSION['php-censor-user']);
unset($_SESSION['php-censor-user-id']);
session_destroy();
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL);
$response->setHeader('Location', APP_URL);
return $response;
}
@ -130,7 +130,7 @@ class SessionController extends Controller
}
$key = md5(date('Y-m-d') . $user->getHash());
$url = PHPCI_URL;
$url = APP_URL;
$message = Lang::get('reset_email_body', $user->getName(), $url, $user->getId(), $key);
@ -166,11 +166,11 @@ class SessionController extends Controller
$hash = password_hash($this->getParam('password'), PASSWORD_DEFAULT);
$user->setHash($hash);
$_SESSION['phpci_user'] = $this->userStore->save($user);
$_SESSION['phpci_user_id'] = $user->getId();
$_SESSION['php-censor-user'] = $this->userStore->save($user);
$_SESSION['php-censor-user-id'] = $user->getId();
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL);
$response->setHeader('Location', APP_URL);
return $response;
}
@ -186,11 +186,11 @@ class SessionController extends Controller
*/
protected function getLoginRedirect()
{
$rtn = PHPCI_URL;
$rtn = APP_URL;
if (!empty($_SESSION['phpci_login_redirect'])) {
$rtn .= $_SESSION['phpci_login_redirect'];
$_SESSION['phpci_login_redirect'] = null;
if (!empty($_SESSION['php-censor-login-redirect'])) {
$rtn .= $_SESSION['php-censor-login-redirect'];
$_SESSION['php-censor-login-redirect'] = null;
}
return $rtn;

View file

@ -7,13 +7,13 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Controller;
namespace PHPCensor\Controller;
use b8;
use b8\Form;
use b8\HttpClient;
use PHPCI\Controller;
use PHPCI\Helper\Lang;
use PHPCensor\Controller;
use PHPCensor\Helper\Lang;
use Symfony\Component\Yaml\Dumper;
use Symfony\Component\Yaml\Parser;
@ -40,7 +40,7 @@ class SettingsController extends Controller
parent::init();
$parser = new Parser();
$yaml = file_get_contents(PHPCI_APP_DIR . 'config.yml');
$yaml = file_get_contents(APP_DIR . 'config.yml');
$this->settings = $parser->parse($yaml);
}
@ -57,26 +57,26 @@ class SettingsController extends Controller
$this->view->settings = $this->settings;
$basicSettings = [];
if (isset($this->settings['phpci']['basic'])) {
$basicSettings = $this->settings['phpci']['basic'];
if (isset($this->settings['php-censor']['basic'])) {
$basicSettings = $this->settings['php-censor']['basic'];
}
$buildSettings = [];
if (isset($this->settings['phpci']['build'])) {
$buildSettings = $this->settings['phpci']['build'];
if (isset($this->settings['php-censor']['build'])) {
$buildSettings = $this->settings['php-censor']['build'];
}
$emailSettings = [];
if (isset($this->settings['phpci']['email_settings'])) {
$emailSettings = $this->settings['phpci']['email_settings'];
if (isset($this->settings['php-censor']['email_settings'])) {
$emailSettings = $this->settings['php-censor']['email_settings'];
}
$authSettings = [];
if (isset($this->settings['phpci']['authentication_settings'])) {
$authSettings = $this->settings['phpci']['authentication_settings'];
if (isset($this->settings['php-censor']['authentication_settings'])) {
$authSettings = $this->settings['php-censor']['authentication_settings'];
}
$this->view->configFile = PHPCI_APP_DIR . 'config.yml';
$this->view->configFile = APP_DIR . 'config.yml';
$this->view->basicSettings = $this->getBasicForm($basicSettings);
$this->view->buildSettings = $this->getBuildForm($buildSettings);
$this->view->github = $this->getGithubForm();
@ -84,8 +84,8 @@ class SettingsController extends Controller
$this->view->authenticationSettings = $this->getAuthenticationForm($authSettings);
$this->view->isWriteable = $this->canWriteConfig();
if (!empty($this->settings['phpci']['github']['token'])) {
$this->view->githubUser = $this->getGithubUser($this->settings['phpci']['github']['token']);
if (!empty($this->settings['php-censor']['github']['token'])) {
$this->view->githubUser = $this->getGithubUser($this->settings['php-censor']['github']['token']);
}
return $this->view->render();
@ -98,16 +98,16 @@ class SettingsController extends Controller
{
$this->requireAdmin();
$this->settings['phpci']['github']['id'] = $this->getParam('githubid', '');
$this->settings['phpci']['github']['secret'] = $this->getParam('githubsecret', '');
$error = $this->storeSettings();
$this->settings['php-censor']['github']['id'] = $this->getParam('githubid', '');
$this->settings['php-censor']['github']['secret'] = $this->getParam('githubsecret', '');
$error = $this->storeSettings();
$response = new b8\Http\Response\RedirectResponse();
if ($error) {
$response->setHeader('Location', PHPCI_URL . 'settings?saved=2');
$response->setHeader('Location', APP_URL . 'settings?saved=2');
} else {
$response->setHeader('Location', PHPCI_URL . 'settings?saved=1');
$response->setHeader('Location', APP_URL . 'settings?saved=1');
}
return $response;
@ -120,17 +120,17 @@ class SettingsController extends Controller
{
$this->requireAdmin();
$this->settings['phpci']['email_settings'] = $this->getParams();
$this->settings['phpci']['email_settings']['smtp_encryption'] = $this->getParam('smtp_encryption', 0);
$this->settings['php-censor']['email_settings'] = $this->getParams();
$this->settings['php-censor']['email_settings']['smtp_encryption'] = $this->getParam('smtp_encryption', 0);
$error = $this->storeSettings();
$response = new b8\Http\Response\RedirectResponse();
if ($error) {
$response->setHeader('Location', PHPCI_URL . 'settings?saved=2');
$response->setHeader('Location', APP_URL . 'settings?saved=2');
} else {
$response->setHeader('Location', PHPCI_URL . 'settings?saved=1');
$response->setHeader('Location', APP_URL . 'settings?saved=1');
}
return $response;
@ -143,16 +143,16 @@ class SettingsController extends Controller
{
$this->requireAdmin();
$this->settings['phpci']['build'] = $this->getParams();
$this->settings['php-censor']['build'] = $this->getParams();
$error = $this->storeSettings();
$response = new b8\Http\Response\RedirectResponse();
if ($error) {
$response->setHeader('Location', PHPCI_URL . 'settings?saved=2');
$response->setHeader('Location', APP_URL . 'settings?saved=2');
} else {
$response->setHeader('Location', PHPCI_URL . 'settings?saved=1');
$response->setHeader('Location', APP_URL . 'settings?saved=1');
}
return $response;
@ -165,15 +165,15 @@ class SettingsController extends Controller
{
$this->requireAdmin();
$this->settings['phpci']['basic'] = $this->getParams();
$this->settings['php-censor']['basic'] = $this->getParams();
$error = $this->storeSettings();
$response = new b8\Http\Response\RedirectResponse();
if ($error) {
$response->setHeader('Location', PHPCI_URL . 'settings?saved=2');
$response->setHeader('Location', APP_URL . 'settings?saved=2');
} else {
$response->setHeader('Location', PHPCI_URL . 'settings?saved=1');
$response->setHeader('Location', APP_URL . 'settings?saved=1');
}
return $response;
@ -186,17 +186,17 @@ class SettingsController extends Controller
{
$this->requireAdmin();
$this->settings['phpci']['authentication_settings']['state'] = $this->getParam('disable_authentication', 0);
$this->settings['phpci']['authentication_settings']['user_id'] = $_SESSION['phpci_user_id'];
$this->settings['php-censor']['authentication_settings']['state'] = $this->getParam('disable_authentication', 0);
$this->settings['php-censor']['authentication_settings']['user_id'] = $_SESSION['php-censor-user-id'];
$error = $this->storeSettings();
$response = new b8\Http\Response\RedirectResponse();
if ($error) {
$response->setHeader('Location', PHPCI_URL . 'settings?saved=2');
$response->setHeader('Location', APP_URL . 'settings?saved=2');
} else {
$response->setHeader('Location', PHPCI_URL . 'settings?saved=1');
$response->setHeader('Location', APP_URL . 'settings?saved=1');
}
return $response;
@ -208,7 +208,7 @@ class SettingsController extends Controller
public function githubCallback()
{
$code = $this->getParam('code', null);
$github = $this->settings['phpci']['github'];
$github = $this->settings['php-censor']['github'];
if (!is_null($code)) {
$http = new HttpClient();
@ -219,17 +219,17 @@ class SettingsController extends Controller
if ($resp['success']) {
parse_str($resp['body'], $resp);
$this->settings['phpci']['github']['token'] = $resp['access_token'];
$this->settings['php-censor']['github']['token'] = $resp['access_token'];
$this->storeSettings();
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL . 'settings?linked=1');
$response->setHeader('Location', APP_URL . 'settings?linked=1');
return $response;
}
}
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL . 'settings?linked=2');
$response->setHeader('Location', APP_URL . 'settings?linked=2');
return $response;
}
@ -242,7 +242,7 @@ class SettingsController extends Controller
{
$dumper = new Dumper();
$yaml = $dumper->dump($this->settings, 4);
file_put_contents(PHPCI_APP_DIR . 'config.yml', $yaml);
file_put_contents(APP_DIR . 'config.yml', $yaml);
if (error_get_last()) {
$error_get_last = error_get_last();
@ -258,7 +258,7 @@ class SettingsController extends Controller
{
$form = new Form();
$form->setMethod('POST');
$form->setAction(PHPCI_URL . 'settings/github');
$form->setAction(APP_URL . 'settings/github');
$form->addField(new Form\Element\Csrf('csrf'));
$field = new Form\Element\Text('githubid');
@ -269,8 +269,8 @@ class SettingsController extends Controller
$field->setContainerClass('form-group');
$form->addField($field);
if (isset($this->settings['phpci']['github']['id'])) {
$field->setValue($this->settings['phpci']['github']['id']);
if (isset($this->settings['php-censor']['github']['id'])) {
$field->setValue($this->settings['php-censor']['github']['id']);
}
$field = new Form\Element\Text('githubsecret');
@ -281,8 +281,8 @@ class SettingsController extends Controller
$field->setContainerClass('form-group');
$form->addField($field);
if (isset($this->settings['phpci']['github']['secret'])) {
$field->setValue($this->settings['phpci']['github']['secret']);
if (isset($this->settings['php-censor']['github']['secret'])) {
$field->setValue($this->settings['php-censor']['github']['secret']);
}
$field = new Form\Element\Submit();
@ -302,7 +302,7 @@ class SettingsController extends Controller
{
$form = new Form();
$form->setMethod('POST');
$form->setAction(PHPCI_URL . 'settings/email');
$form->setAction(APP_URL . 'settings/email');
$form->addField(new Form\Element\Csrf('csrf'));
$field = new Form\Element\Text('smtp_address');
@ -387,7 +387,7 @@ class SettingsController extends Controller
*/
protected function canWriteConfig()
{
return is_writeable(PHPCI_APP_DIR . 'config.yml');
return is_writeable(APP_DIR . 'config.yml');
}
/**
@ -399,7 +399,7 @@ class SettingsController extends Controller
{
$form = new Form();
$form->setMethod('POST');
$form->setAction(PHPCI_URL . 'settings/build');
$form->setAction(APP_URL . 'settings/build');
$field = new Form\Element\Select('failed_after');
$field->setRequired(false);
@ -436,7 +436,7 @@ class SettingsController extends Controller
{
$form = new Form();
$form->setMethod('POST');
$form->setAction(PHPCI_URL . 'settings/basic');
$form->setAction(APP_URL . 'settings/basic');
$field = new Form\Element\Select('language');
$field->setRequired(true);
@ -468,7 +468,7 @@ class SettingsController extends Controller
{
$form = new Form();
$form->setMethod('POST');
$form->setAction(PHPCI_URL . 'settings/authentication');
$form->setAction(APP_URL . 'settings/authentication');
$form->addField(new Form\Element\Csrf('csrf'));
$field = new Form\Element\Checkbox('disable_authentication');

View file

@ -7,14 +7,14 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Controller;
namespace PHPCensor\Controller;
use b8;
use b8\Exception\HttpException\NotFoundException;
use b8\Form;
use PHPCI\Controller;
use PHPCI\Helper\Lang;
use PHPCI\Service\UserService;
use PHPCensor\Controller;
use PHPCensor\Helper\Lang;
use PHPCensor\Service\UserService;
/**
* User Controller - Allows an administrator to view, add, edit and delete users.
@ -25,12 +25,12 @@ use PHPCI\Service\UserService;
class UserController extends Controller
{
/**
* @var \PHPCI\Store\UserStore
* @var \PHPCensor\Store\UserStore
*/
protected $userStore;
/**
* @var \PHPCI\Service\UserService
* @var \PHPCensor\Service\UserService
*/
protected $userService;
@ -61,7 +61,7 @@ class UserController extends Controller
*/
public function profile()
{
$user = $_SESSION['phpci_user'];
$user = $_SESSION['php-censor-user'];
if ($this->request->getMethod() == 'POST') {
$name = $this->getParam('name', null);
@ -72,12 +72,12 @@ class UserController extends Controller
$chosenLang = $this->getParam('language', $currentLang);
if ($chosenLang !== $currentLang) {
setcookie('phpcilang', $chosenLang, time() + (10 * 365 * 24 * 60 * 60), '/');
setcookie('php-censor-language', $chosenLang, time() + (10 * 365 * 24 * 60 * 60), '/');
Lang::setLanguage($chosenLang);
}
$_SESSION['phpci_user'] = $this->userService->updateUser($user, $name, $email, $password);
$user = $_SESSION['phpci_user'];
$_SESSION['php-censor-user'] = $this->userService->updateUser($user, $name, $email, $password);
$user = $_SESSION['php-censor-user'];
$this->view->updated = 1;
}
@ -87,12 +87,12 @@ class UserController extends Controller
$values = $user->getDataArray();
if (array_key_exists('phpcilang', $_COOKIE)) {
$values['language'] = $_COOKIE['phpcilang'];
if (array_key_exists('php-censor-language', $_COOKIE)) {
$values['language'] = $_COOKIE['php-censor-language'];
}
$form = new Form();
$form->setAction(PHPCI_URL.'user/profile');
$form->setAction(APP_URL.'user/profile');
$form->setMethod('POST');
$name = new Form\Element\Text('name');
@ -174,7 +174,7 @@ class UserController extends Controller
$this->userService->createUser($name, $email, $password, $isAdmin);
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL . 'user');
$response->setHeader('Location', APP_URL . 'user');
return $response;
}
@ -215,7 +215,7 @@ class UserController extends Controller
$this->userService->updateUser($user, $name, $email, $password, $isAdmin);
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL . 'user');
$response->setHeader('Location', APP_URL . 'user');
return $response;
}
@ -226,7 +226,7 @@ class UserController extends Controller
{
$form = new Form();
$form->setMethod('POST');
$form->setAction(PHPCI_URL.'user/' . $type);
$form->setAction(APP_URL.'user/' . $type);
$form->addField(new Form\Element\Csrf('csrf'));
$field = new Form\Element\Email('email');
@ -289,7 +289,7 @@ class UserController extends Controller
$this->userService->deleteUser($user);
$response = new b8\Http\Response\RedirectResponse();
$response->setHeader('Location', PHPCI_URL . 'user');
$response->setHeader('Location', APP_URL . 'user');
return $response;
}
}

View file

@ -7,15 +7,15 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Controller;
namespace PHPCensor\Controller;
use b8;
use b8\Store;
use Exception;
use PHPCI\Model\Project;
use PHPCI\Service\BuildService;
use PHPCI\Store\BuildStore;
use PHPCI\Store\ProjectStore;
use PHPCensor\Model\Project;
use PHPCensor\Service\BuildService;
use PHPCensor\Store\BuildStore;
use PHPCensor\Store\ProjectStore;
use b8\Controller;
use b8\Config;
use b8\HttpClient;
@ -292,7 +292,7 @@ class WebhookController extends Controller
}
$headers = [];
$token = Config::getInstance()->get('phpci.github.token');
$token = Config::getInstance()->get('php-censor.github.token');
if (!empty($token)) {
$headers[] = 'Authorization: token ' . $token;
@ -303,7 +303,7 @@ class WebhookController extends Controller
$http->setHeaders($headers);
//for large pull requests, allow grabbing more then the default number of commits
$custom_per_page = Config::getInstance()->get('phpci.github.per_page');
$custom_per_page = Config::getInstance()->get('php-censor.github.per_page');
$params = [];
if ($custom_per_page) {
$params["per_page"] = $custom_per_page;

View file

@ -7,12 +7,12 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI;
namespace PHPCensor;
/**
* Error Handler
*
* @package PHPCI\Logging
* @package PHPCensor\Logging
*/
class ErrorHandler
{

View file

@ -7,14 +7,14 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
use SensioLabs\AnsiConverter\AnsiToHtmlConverter;
/**
* Converts ANSI output to HTML.
*
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
final class AnsiConverter
{

View file

@ -7,15 +7,15 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
use Exception;
use PHPCI\Logging\BuildLogger;
use PHPCensor\Logging\BuildLogger;
use Psr\Log\LogLevel;
/**
* Handles running system commands with variables.
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
abstract class BaseCommandExecutor implements CommandExecutor
{

View file

@ -7,7 +7,7 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
/**
* User Helper - Provides access to logged in user information in views.

View file

@ -7,13 +7,13 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
use PHPCI\Model\Build;
use PHPCensor\Model\Build;
/**
* The BuildInterpolator class replaces variables in a string with build-specific information.
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
class BuildInterpolator
{
@ -27,11 +27,12 @@ class BuildInterpolator
/**
* Sets the variables that will be used for interpolation.
* @param Build $build
*
* @param Build $build
* @param string $buildPath
* @param string $phpCiUrl
* @param string $url
*/
public function setupInterpolationVars(Build $build, $buildPath, $phpCiUrl)
public function setupInterpolationVars(Build $build, $buildPath, $url)
{
$this->interpolation_vars = [];
$this->interpolation_vars['%PHPCI%'] = 1;
@ -45,9 +46,9 @@ class BuildInterpolator
$this->interpolation_vars['%PROJECT%'] = $build->getProjectId();
$this->interpolation_vars['%BUILD%'] = $build->getId();
$this->interpolation_vars['%PROJECT_TITLE%'] = $build->getProjectTitle();
$this->interpolation_vars['%PROJECT_URI%'] = $phpCiUrl . "project/view/" . $build->getProjectId();
$this->interpolation_vars['%PROJECT_URI%'] = $url . "project/view/" . $build->getProjectId();
$this->interpolation_vars['%BUILD_PATH%'] = $buildPath;
$this->interpolation_vars['%BUILD_URI%'] = $phpCiUrl . "build/view/" . $build->getId();
$this->interpolation_vars['%BUILD_URI%'] = $url . "build/view/" . $build->getId();
$this->interpolation_vars['%PHPCI_COMMIT%'] = $this->interpolation_vars['%COMMIT%'];
$this->interpolation_vars['%PHPCI_SHORT_COMMIT%'] = $this->interpolation_vars['%SHORT_COMMIT%'];
$this->interpolation_vars['%PHPCI_COMMIT_MESSAGE%'] = $this->interpolation_vars['%COMMIT_MESSAGE%'];

View file

@ -7,7 +7,7 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
interface CommandExecutor
{

View file

@ -7,11 +7,11 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
/**
* Provides some basic diff processing functionality.
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
class Diff
{

View file

@ -7,22 +7,22 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
use b8\Config;
use PHPCI\Builder;
use PHPCensor\Builder;
/**
* Helper class for sending emails using PHPCI's email configuration.
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
class Email
{
const DEFAULT_FROM = 'PHPCI <no-reply@phptesting.org>';
const DEFAULT_FROM = 'PHP Censor <no-reply@php-censor.local>';
protected $emailTo = [];
protected $emailCc = [];
protected $subject = 'Email from PHPCI';
protected $subject = 'Email from PHP Censor';
protected $body = '';
protected $isHtml = false;
protected $config;
@ -100,14 +100,14 @@ class Email
/**
* Send the email.
*
* @param Builder $phpci
* @param Builder $builder
*
* @return bool|int
*/
public function send(Builder $phpci)
public function send(Builder $builder)
{
$smtpServer = $this->config->get('phpci.email_settings.smtp_address');
$phpci->logDebug(sprintf("SMTP: '%s'", !empty($smtpServer) ? 'true' : 'false'));
$smtpServer = $this->config->get('php-censor.email_settings.smtp_address');
$builder->logDebug(sprintf("SMTP: '%s'", !empty($smtpServer) ? 'true' : 'false'));
if (empty($smtpServer)) {
return $this->sendViaMail();
@ -152,7 +152,7 @@ class Email
*/
protected function sendViaSwiftMailer()
{
$factory = new MailerFactory($this->config->get('phpci'));
$factory = new MailerFactory($this->config->get('php-censor'));
$mailer = $factory->getSwiftMailerFromConfig();
$message = \Swift_Message::newInstance($this->subject)
@ -177,7 +177,7 @@ class Email
*/
protected function getFrom()
{
$email = $this->config->get('phpci.email_settings.from_address', self::DEFAULT_FROM);
$email = $this->config->get('php-censor.email_settings.from_address', self::DEFAULT_FROM);
if (empty($email)) {
$email = self::DEFAULT_FROM;

View file

@ -7,7 +7,7 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
use b8\Cache;
use b8\Config;
@ -15,7 +15,7 @@ use b8\HttpClient;
/**
* The Github Helper class provides some Github API call functionality.
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
class Github
{
@ -70,14 +70,14 @@ class Github
*/
public function getRepositories()
{
$token = Config::getInstance()->get('phpci.github.token');
$token = Config::getInstance()->get('php-censor.github.token');
if (!$token) {
return null;
}
$cache = Cache::getCache(Cache::TYPE_APC);
$rtn = $cache->get('phpci_github_repos');
$rtn = $cache->get('php-censor-github-repos');
if (!$rtn) {
$orgs = $this->makeRequest('/user/orgs', ['access_token' => $token]);
@ -97,7 +97,7 @@ class Github
}
}
$cache->set('phpci_github_repos', $rtn);
$cache->set('php-censor-github-repos', $rtn);
}
return $rtn;
@ -115,7 +115,7 @@ class Github
*/
public function createPullRequestComment($repo, $pullId, $commitId, $file, $line, $comment)
{
$token = Config::getInstance()->get('phpci.github.token');
$token = Config::getInstance()->get('php-censor.github.token');
if (!$token) {
return null;
@ -150,7 +150,7 @@ class Github
*/
public function createCommitComment($repo, $commitId, $file, $line, $comment)
{
$token = Config::getInstance()->get('phpci.github.token');
$token = Config::getInstance()->get('php-censor.github.token');
if (!$token) {
return null;

View file

@ -7,14 +7,14 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
use b8\Config;
/**
* Languages Helper Class - Handles loading strings files and the strings within them.
*
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
class Lang
{
@ -64,7 +64,7 @@ class Lang
*/
public static function out()
{
print call_user_func_array(['PHPCI\Helper\Lang', 'get'], func_get_args());
print call_user_func_array(['PHPCensor\Helper\Lang', 'get'], func_get_args());
}
/**
@ -104,7 +104,7 @@ class Lang
{
$languages = [];
foreach (self::$languages as $language) {
$strings = include_once(PHPCI_DIR . 'Languages' . DIRECTORY_SEPARATOR . 'lang.' . $language . '.php');
$strings = include_once(SRC_DIR . 'Languages' . DIRECTORY_SEPARATOR . 'lang.' . $language . '.php');
$languages[$language] = !empty($strings['language_name']) ? $strings['language_name'] : $language;
}
@ -132,7 +132,7 @@ class Lang
self::loadAvailableLanguages();
// Try cookies first:
if (isset($_COOKIE) && array_key_exists('phpcilang', $_COOKIE) && self::setLanguage($_COOKIE['phpcilang'])) {
if (isset($_COOKIE) && array_key_exists('php-censor-language', $_COOKIE) && self::setLanguage($_COOKIE['php-censor-language'])) {
return;
}
@ -151,7 +151,7 @@ class Lang
}
// Try the installation default language:
$language = $config->get('phpci.basic.language', null);
$language = $config->get('php-censor.basic.language', null);
if (self::setLanguage($language)) {
return;
}
@ -171,7 +171,7 @@ class Lang
protected static function loadLanguage($language = null)
{
$language = $language ? $language : self::$language;
$langFile = PHPCI_DIR . 'Languages' . DIRECTORY_SEPARATOR . 'lang.' . $language . '.php';
$langFile = SRC_DIR . 'Languages' . DIRECTORY_SEPARATOR . 'lang.' . $language . '.php';
if (!file_exists($langFile)) {
return null;
@ -191,7 +191,7 @@ class Lang
protected static function loadAvailableLanguages()
{
$matches = [];
foreach (glob(PHPCI_DIR . 'Languages' . DIRECTORY_SEPARATOR . 'lang.*.php') as $file) {
foreach (glob(SRC_DIR . 'Languages' . DIRECTORY_SEPARATOR . 'lang.*.php') as $file) {
if (preg_match('/lang\.([a-z]{2}\-?[a-z]*)\.php/', $file, $matches)) {
self::$languages[] = $matches[1];
}

View file

@ -7,7 +7,7 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
use b8\Config;
@ -30,7 +30,7 @@ class LoginIsDisabled
unset($method, $params);
$config = Config::getInstance();
$state = (bool) $config->get('phpci.authentication_settings.state', false);
$state = (bool) $config->get('php-censor.authentication_settings.state', false);
return (false !== $state);
}

View file

@ -7,11 +7,11 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
/**
* Class MailerFactory helps to set up and configure a SwiftMailer object.
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
class MailerFactory
{

View file

@ -7,11 +7,11 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
/**
* Helper class for dealing with SSH keys.
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
class SshKey
{
@ -39,7 +39,7 @@ class SshKey
$return = ['private_key' => '', 'public_key' => ''];
$output = @shell_exec('ssh-keygen -t rsa -b 2048 -f '.$keyFile.' -N "" -C "deploy@phpci"');
$output = @shell_exec('ssh-keygen -t rsa -b 2048 -f '.$keyFile.' -N "" -C "deploy@php-censor"');
if (!empty($output)) {
$pub = file_get_contents($keyFile . '.pub');

View file

@ -7,11 +7,11 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
/**
* Unix/Linux specific extension of the CommandExecutor class.
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
class UnixCommandExecutor extends BaseCommandExecutor
{

View file

@ -7,7 +7,7 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
/**
* User Helper - Provides access to logged in user information in views.
@ -25,7 +25,7 @@ class User
*/
public function __call($method, $params = [])
{
$user = $_SESSION['phpci_user'];
$user = $_SESSION['php-censor-user'];
if (!is_object($user)) {
return null;

View file

@ -7,11 +7,11 @@
* @link https://www.phptesting.org/
*/
namespace PHPCI\Helper;
namespace PHPCensor\Helper;
/**
* Windows-specific extension of the CommandExecutor class.
* @package PHPCI\Helper
* @package PHPCensor\Helper
*/
class WindowsCommandExecutor extends BaseCommandExecutor
{

View file

@ -12,7 +12,7 @@ return [
'language' => 'Sprog',
// Log in:
'log_in_to_phpci' => 'Log ind i PHPCI',
'log_in_to_app' => 'Log ind i PHP Censor',
'login_error' => 'Forkert email-adresse eller adgangskode',
'forgotten_password_link' => 'Har du glemt din adgangskode?',
'reset_emailed' => 'Vi har sendt dig en email med et link til at nulstille din adgangskode.',
@ -26,7 +26,7 @@ vi dig et link til at nulstille din adgangskode.',
'reset_no_user_exists' => 'Der findes ingen bruger med den email-adresse, prøv igen.',
'reset_email_body' => 'Hej %s,
Du modtager denne email fordi du eller en anden person har anmodet om at nulstille din adgangskode til PHPCI.
Du modtager denne email fordi du eller en anden person har anmodet om at nulstille din adgangskode til PHP Censor.
Hvis det var dig kan du klikke følgende link for at nulstille din adgangskode: %ssession/reset-password/%d/%s
@ -34,9 +34,9 @@ Hvis det ikke var dig kan du ignorere denne email og intet vil ske.
Tak,
PHPCI',
PHP Censor',
'reset_email_title' => 'PHPCI Adgangskode-nulstilling for %s',
'reset_email_title' => 'PHP Censor Adgangskode-nulstilling for %s',
'reset_invalid' => 'Ugyldig anmodning om adgangskode-nulstilling.',
'email_address' => 'Email-addresse',
'login' => 'Login / Email Address',
@ -109,8 +109,8 @@ i din foretrukne hosting-platform.',
'project_title' => 'Projekt-titel',
'project_private_key' => 'Privat nøgle med adgang til dette repository
(tom for lokal nøgle og/eller anonym adgang)',
'build_config' => 'PHPCI build-konfiguration for dette projekt
(hvis du ikke har mulighed for at tilføje en phpci.yml fil i projektets repository)',
'build_config' => 'PHP Censor build-konfiguration for dette projekt
(hvis du ikke har mulighed for at tilføje en .php-censor.yml (.phpci.yml|phpci.yml) fil i projektets repository)',
'default_branch' => 'Default branch navn',
'allow_public_status' => 'Tillad offentlig status-side og -billede for dette projekt?',
'archived' => 'Archived',
@ -231,20 +231,20 @@ Services</a> sektionen under dit Bitbucket-repository.',
// Settings:
'settings_saved' => 'Dine indstillinger blev gemt.',
'settings_check_perms' => 'Dine indstillinger kunne ikke gemmes, kontrollér rettighederne på din config.yml fil.',
'settings_cannot_write' => 'PHPCI kan ikke skrive til din config.yml fil, indstillinger bliver muligvis ikke gemt korrekt før dette problem løses.',
'settings_cannot_write' => 'PHP Censor kan ikke skrive til din config.yml fil, indstillinger bliver muligvis ikke gemt korrekt før dette problem løses.',
'settings_github_linked' => 'Din GitHub-konto er nu tilsluttet.',
'settings_github_not_linked' => 'Din GitHub-konto kunne ikke tilsluttes.',
'build_settings' => 'Build-indstillinger',
'github_application' => 'GitHub-applikation',
'github_sign_in' => 'Før du kan bruge GitHub skal du <a href="%s">logge ind</a> og give PHPCI
'github_sign_in' => 'Før du kan bruge GitHub skal du <a href="%s">logge ind</a> og give PHP Censor
adgang til din konto.',
'github_phpci_linked' => 'PHPCI blev tilsluttet din GitHub-konto.',
'github_app_linked' => 'PHP Censor blev tilsluttet din GitHub-konto.',
'github_where_to_find' => 'Hvor disse findes...',
'github_where_help' => 'Hvis du ejer applikationen du ønsker at bruge kan du finde denne information i
<a href="https://github.com/settings/applications">applications</a> under indstillinger.',
'email_settings' => 'Email-indstillinger',
'email_settings_help' => 'Før PHPCI kan sende build-notifikationer via email
'email_settings_help' => 'Før PHP Censor kan sende build-notifikationer via email
skal du konfigurere nedenstående SMTP-indstillinger.',
'application_id' => 'Application ID',
@ -269,7 +269,7 @@ skal du konfigurere nedenstående SMTP-indstillinger.',
'3_hours' => '3 timer',
// Plugins
'cannot_update_composer' => 'PHPCI kan ikke opdatere composer.json da filen ikke kan skrives.',
'cannot_update_composer' => 'PHP Censor kan ikke opdatere composer.json da filen ikke kan skrives.',
'x_has_been_removed' => '%s er blevet slettet.',
'x_has_been_added' => '%s blev tilføjet til composer.json for dig og vil blive installeret næste gang
du kører composer update.',
@ -286,7 +286,7 @@ du kører composer update.',
'search' => 'Søg &raquo;',
// Installer
'installation_url' => 'PHPCI Installations-URL',
'installation_url' => 'PHP Censor Installations-URL',
'db_host' => 'Database-hostnavn',
'db_name' => 'Database-navn',
'db_user' => 'Database-brugernavn',
@ -295,37 +295,37 @@ du kører composer update.',
'admin_pass' => 'Administrator-adgangskode',
'admin_email' => 'Administrators email-adresse',
'config_path' => 'Konfigurations-fil',
'install_phpci' => 'Installér PHPCI',
'welcome_to_phpci' => 'Velkommen til PHPCI',
'install_app' => 'Installér PHP Censor',
'welcome_to_app' => 'Velkommen til PHP Censor',
'please_answer' => 'Besvar venligst følgende spørgsmål:',
'phpci_php_req' => 'PHPCI kræver minimum PHP version 5.3.8 for at fungere.',
'app_php_req' => 'PHP Censor kræver minimum PHP version 5.4.0 for at fungere.',
'extension_required' => 'Extension påkrævet: %s',
'function_required' => 'PHPCI behøver adgang til funktion %s() i PHP. Er den deaktiveret i php.ini?',
'requirements_not_met' => 'PHPCI kan ikke installeres da nogle krav ikke opfyldtes.
'function_required' => 'PHP Censor behøver adgang til funktion %s() i PHP. Er den deaktiveret i php.ini?',
'requirements_not_met' => 'PHP Censor kan ikke installeres da nogle krav ikke opfyldtes.
Kontrollér venligst nedenstående fejl før du fortsætter.',
'must_be_valid_email' => 'Skal være en gyldig email-adresse.',
'must_be_valid_url' => 'Skal være en gyldig URL.',
'enter_name' => 'Administrator-navn: ',
'enter_email' => 'Administrators email-adresse: ',
'enter_password' => 'Administrator-adgangskode: ',
'enter_phpci_url' => 'Din PHPCI URL (eksempelvis "http://phpci.local"): ',
'enter_app_url' => 'Din PHP Censor URL (eksempelvis "http://php-censor.local"): ',
'enter_db_host' => 'Indtast dit MySQL-hostnavn [localhost]: ',
'enter_db_name' => 'Indtast dit MySQL database-navn [phpci]: ',
'enter_db_user' => 'Indtast dit MySQL-brugernavn [phpci]: ',
'enter_db_name' => 'Indtast dit MySQL database-navn [php-censor-db]: ',
'enter_db_user' => 'Indtast dit MySQL-brugernavn [php-censor-user]: ',
'enter_db_pass' => 'Indtast dit MySQL-password: ',
'could_not_connect' => 'PHPCI kunne ikke forbinde til MySQL med de angivning oplysninger. Forsøg igen.',
'could_not_connect' => 'PHP Censor kunne ikke forbinde til MySQL med de angivning oplysninger. Forsøg igen.',
'setting_up_db' => 'Indlæser database...',
'user_created' => 'Brugerkonto oprettet!',
'failed_to_create' => 'PHPCI kunne ikke oprette din administrator-konto.',
'config_exists' => 'PHPCI konfigurationsfilen findes og er ikke tom.',
'update_instead' => 'Hvis du forsøgte at opdatere PHPCI, forsøg da venligst med phpci:update istedet.',
'failed_to_create' => 'PHP Censor kunne ikke oprette din administrator-konto.',
'config_exists' => 'PHP Censor konfigurationsfilen findes og er ikke tom.',
'update_instead' => 'Hvis du forsøgte at opdatere PHP Censor, forsøg da venligst med php-censor:update istedet.',
// Update
'update_phpci' => 'Opdatér databasen med ændrede modeller',
'updating_phpci' => 'Opdaterer PHPCI-database:',
'not_installed' => 'PHPCI lader til ikke at være installeret.',
'install_instead' => 'Installér venligst PHPCI via phpci:install istedet.',
'update_app' => 'Opdatér databasen med ændrede modeller',
'updating_app' => 'Opdaterer PHP Censor-database:',
'not_installed' => 'PHP Censor lader til ikke at være installeret.',
'install_instead' => 'Installér venligst PHP Censor via php-censor:install istedet.',
// Poll Command
'poll_github' => 'Check via GitHub om et build skal startes.',
@ -347,14 +347,14 @@ Kontrollér venligst nedenstående fejl før du fortsætter.',
'branch_name_option' => 'Branch to build',
// Run Command
'run_all_pending' => 'Kør alle PHPCI builds i køen.',
'run_all_pending' => 'Kør alle PHP Censor builds i køen.',
'finding_builds' => 'Finder builds der skal køres',
'found_n_builds' => '%d builds fundet',
'skipping_build' => 'Springer over Build %d - projektet kører et build lige nu.',
'marked_as_failed' => 'Build %d blev markeret som fejlet pga. timeout.',
// Builder
'missing_phpci_yml' => 'Dette projekt har ingen phpci.yml fil, eller filen er tom.',
'missing_app_yml' => 'Dette projekt har ingen .php-censor.yml (.phpci.yml|phpci.yml) fil, eller filen er tom.',
'build_success' => 'BUILD SUCCES',
'build_failed' => 'BUILD FEJLET',
'removing_build' => 'Fjerner Build',
@ -381,7 +381,7 @@ Kontrollér venligst nedenstående fejl før du fortsætter.',
'n_emails_sent' => '%d emails afsendt.',
'n_emails_failed' => '%d emails kunne ikke afsendes.',
'unable_to_set_env' => 'Kunne ikke sætte environment-variabel',
'tag_created' => 'Tag oprettet af PHPCI: %s',
'tag_created' => 'Tag oprettet af PHP Censor: %s',
'x_built_at_x' => '%PROJECT_TITLE% bygget på %BUILD_URI%',
'hipchat_settings' => 'Angiv venligst rum og autoToken i hipchat_notify plugin',
'irc_settings' => 'Du skal som minimum indstille en server, et rum og et nicknavn.',

View file

@ -12,7 +12,7 @@ return [
'language' => 'Sprache',
// Log in:
'log_in_to_phpci' => 'In PHPCI einloggen',
'log_in_to_app' => 'In PHP Censor einloggen',
'login_error' => 'Fehlerhafte Emailadresse oder fehlerhaftes Passwort',
'forgotten_password_link' => 'Passwort vergessen?',
'reset_emailed' => 'Wir haben Ihnen einen Link geschickt, um Ihr Passwort zurückzusetzen',
@ -26,7 +26,7 @@ return [
'reset_no_user_exists' => 'Es existiert kein User mit dieser Emailadresse, versuchen Sie es bitte noch einmal.',
'reset_email_body' => 'Hallo %s,
Sie haben diese Email erhalten, weil Sie, oder jemand anders, einen Link zum Zurücksetzen Ihres Passwortes für PHPCI verlangt hat.
Sie haben diese Email erhalten, weil Sie, oder jemand anders, einen Link zum Zurücksetzen Ihres Passwortes für PHP Censor verlangt hat.
Wenn Sie diesen Link verlangt haben, klicken Sie bitte hier, um Ihr Passwort zurückzusetzen: %ssession/reset-password/%d/%s
@ -34,9 +34,9 @@ Falls nicht, ignorieren Sie diese Email bitte, und es wird nichts geändert.
Danke,
PHPCI',
PHP Censor',
'reset_email_title' => 'PHPCI Passwort zurücksetzen für %s',
'reset_email_title' => 'PHP Censor Passwort zurücksetzen für %s',
'reset_invalid' => 'Fehlerhafte Anfrage für das Zurücksetzen eines Passwortes',
'email_address' => 'Emailadresse',
'login' => 'Login / Emailadresse',
@ -111,8 +111,8 @@ generiert. Um es zu verwenden, fügen Sie einfach den folgenden Public Key im Ab
'project_title' => 'Projekttitel',
'project_private_key' => 'Private Key für den Zugang zum Repository
(leer lassen für lokale und oder anonyme externe Zugriffe)',
'build_config' => 'PHPCI Buildkonfiguration für dieses Projekt
(falls Sie Ihrem Projektrepository kein phpci.yml hinzufügen können)',
'build_config' => 'PHP Censor Buildkonfiguration für dieses Projekt
(falls Sie Ihrem Projektrepository kein .php-censor.yml (.phpci.yml|phpci.yml) hinzufügen können)',
'default_branch' => 'Name des Standardbranches',
'allow_public_status' => 'Öffentliche Statusseite und -bild für dieses Projekt einschalten?',
'archived' => 'Archiviert',
@ -242,20 +242,20 @@ generiert. Um es zu verwenden, fügen Sie einfach den folgenden Public Key im Ab
'settings_saved' => 'Ihre Einstellungen wurden gespeichert.',
'settings_check_perms' => 'Ihre Einstellungen konnten nicht gespeichert werden, bitte überprüfen Sie die
Berechtigungen Ihrer config.yml-Datei',
'settings_cannot_write' => 'PHPCI konnte config.yml nicht schreiben. Einstellungen könnten nicht richtig gespeichert werden, bis das Problem behoben ist.',
'settings_cannot_write' => 'PHP Censor konnte config.yml nicht schreiben. Einstellungen könnten nicht richtig gespeichert werden, bis das Problem behoben ist.',
'settings_github_linked' => 'Ihr GitHub-Konto wurde verknüpft.',
'settings_github_not_linked' => 'Ihr GitHub-Konto konnte nicht verknüpft werden.',
'build_settings' => 'Buildeinstellungen',
'github_application' => 'GitHub-Applikation',
'github_sign_in' => 'Bevor Sie anfangen GitHub zu verwenden, müssen Sie sich erst <a href="%s">einloggen</a> und PHPCI Zugriff auf Ihr Nutzerkonto gewähren',
'github_phpci_linked' => 'PHPCI wurde erfolgreich mit Ihrem GitHub-Konto verknüpft.',
'github_sign_in' => 'Bevor Sie anfangen GitHub zu verwenden, müssen Sie sich erst <a href="%s">einloggen</a> und PHP Censor Zugriff auf Ihr Nutzerkonto gewähren',
'github_app_linked' => 'PHP Censor wurde erfolgreich mit Ihrem GitHub-Konto verknüpft.',
'github_where_to_find' => 'Wo Sie diese finden...',
'github_where_help' => 'Wenn Sie der Besitzer der Applikation sind, die Sie gerne verwenden möchten, können Sie
diese Einstellungen in Ihrem "<a href="https://github.com/settings/applications">applications</a>
settings"-Bereich finden.',
'email_settings' => 'Emaileinstellungen',
'email_settings_help' => 'Bevor PHPCI E-Mails zum Buildstatus verschicken kann,
'email_settings_help' => 'Bevor PHP Censor E-Mails zum Buildstatus verschicken kann,
müssen Sie Ihre SMTP-Einstellungen unten konfigurieren',
'application_id' => 'Applikations-ID',
@ -280,7 +280,7 @@ generiert. Um es zu verwenden, fügen Sie einfach den folgenden Public Key im Ab
'3_hours' => '3 Stunden',
// Plugins
'cannot_update_composer' => 'PHPCI kann composer.json nicht für Sie aktualisieren, da Schreibrechte benötigt werden.',
'cannot_update_composer' => 'PHP Censor kann composer.json nicht für Sie aktualisieren, da Schreibrechte benötigt werden.',
'x_has_been_removed' => '%s wurde entfernt.',
'x_has_been_added' => '%s wurde für Sie dem composer.json hinzugefügt und wird installiert, sobald Sie das nächste mal composer update ausführen.',
'enabled_plugins' => 'Eingeschaltene Plugins',
@ -309,7 +309,7 @@ generiert. Um es zu verwenden, fügen Sie einfach den folgenden Public Key im Ab
'stage_fixed' => 'Behoben',
// Installer
'installation_url' => 'PHPCI Installations-URL',
'installation_url' => 'PHP Censor Installations-URL',
'db_host' => 'Datenbankserver',
'db_name' => 'Datenbankname',
'db_user' => 'Datenbankbenutzer',
@ -318,37 +318,37 @@ generiert. Um es zu verwenden, fügen Sie einfach den folgenden Public Key im Ab
'admin_pass' => 'Administratorpasswort',
'admin_email' => 'Emailadresse des Administrators',
'config_path' => 'Dateipfad für Konfiguration',
'install_phpci' => 'PHPCI installieren',
'welcome_to_phpci' => 'Willkommen bei PHPCI',
'install_app' => 'PHP Censor installieren',
'welcome_to_app' => 'Willkommen bei PHP Censor',
'please_answer' => 'Bitte beantworten Sie die folgenden Fragen:',
'phpci_php_req' => 'PHPCI benötigt mindestens PHP 5.3.8 um zu funktionieren.',
'app_php_req' => 'PHP Censor benötigt mindestens PHP 5.4.0 um zu funktionieren.',
'extension_required' => 'Benötigte Extensions: %s',
'function_required' => 'PHPCI muss die Funktion %s() aufrufen können. Ist sie in php.ini deaktiviert?',
'requirements_not_met' => 'PHPCI konnte nicht installiert werden, weil nicht alle Bedingungen erfüllt sind.
'function_required' => 'PHP Censor muss die Funktion %s() aufrufen können. Ist sie in php.ini deaktiviert?',
'requirements_not_met' => 'PHP Censor konnte nicht installiert werden, weil nicht alle Bedingungen erfüllt sind.
Bitte überprüfen Sie die Fehler, bevor Sie fortfahren,',
'must_be_valid_email' => 'Muss eine gültige Emailadresse sein.',
'must_be_valid_url' => 'Muss eine valide URL sein.',
'enter_name' => 'Name des Administrators: ',
'enter_email' => 'Emailadresse des Administrators: ',
'enter_password' => 'Passwort des Administrators: ',
'enter_phpci_url' => 'Ihre PHPCI-URL (z.B. "http://phpci.local"): ',
'enter_app_url' => 'Ihre PHP Censor-URL (z.B. "http://php-censor.local"): ',
'enter_db_host' => 'Bitte geben Sie Ihren MySQL-Host ein [localhost]: ',
'enter_db_name' => 'Bitte geben Sie Ihren MySQL-Namen ein [phpci]: ',
'enter_db_user' => 'Bitte geben Sie Ihren MySQL-Benutzernamen ein [phpci]: ',
'enter_db_name' => 'Bitte geben Sie Ihren MySQL-Namen ein [php-censor-db]: ',
'enter_db_user' => 'Bitte geben Sie Ihren MySQL-Benutzernamen ein [php-censor-user]: ',
'enter_db_pass' => 'Bitte geben Sie Ihr MySQL-Passwort ein: ',
'could_not_connect' => 'PHPCI konnte wegen folgender Details nicht mit MySQL verbinden. Bitte versuchen Sie es erneut.',
'could_not_connect' => 'PHP Censor konnte wegen folgender Details nicht mit MySQL verbinden. Bitte versuchen Sie es erneut.',
'setting_up_db' => 'Ihre Datenbank wird aufgesetzt... ',
'user_created' => 'Benutzerkonto wurde erstellt!',
'failed_to_create' => 'PHPCI konnte Ihr Administratorenkonto nicht erstellen.',
'config_exists' => 'Die PHPCI-Konfigurationsdatei existiert und ist nicht leer..',
'update_instead' => 'Falls Sie versucht haben PHPCI zu aktualisieren, benutzen Sie bitte stattdessen phpci:update.',
'failed_to_create' => 'PHP Censor konnte Ihr Administratorenkonto nicht erstellen.',
'config_exists' => 'Die PHP Censor-Konfigurationsdatei existiert und ist nicht leer..',
'update_instead' => 'Falls Sie versucht haben PHP Censor zu aktualisieren, benutzen Sie bitte stattdessen php-censor:update.',
// Update
'update_phpci' => 'Datenbank wird aktualisiert, um den Änderungen der Models zu entsprechen.',
'updating_phpci' => 'Aktualisiere PHPCI-Datenbank:',
'not_installed' => 'PHPCI scheint nicht installiert zu sein.',
'install_instead' => 'Bitte installieren Sie PHPCI stattdessen via phpci:install.',
'update_app' => 'Datenbank wird aktualisiert, um den Änderungen der Models zu entsprechen.',
'updating_app' => 'Aktualisiere PHP Censor-Datenbank:',
'not_installed' => 'PHP Censor scheint nicht installiert zu sein.',
'install_instead' => 'Bitte installieren Sie PHP Censor stattdessen via php-censor:install.',
// Poll Command
'poll_github' => 'GitHub abfragen, um herauszufinden, ob ein Build gestartet werden muss.',
@ -370,14 +370,14 @@ generiert. Um es zu verwenden, fügen Sie einfach den folgenden Public Key im Ab
'branch_name_option' => 'Branch to build',
// Run Command
'run_all_pending' => 'Führe alle ausstehenden PHPCI Builds aus.',
'run_all_pending' => 'Führe alle ausstehenden PHP Censor Builds aus.',
'finding_builds' => 'Suche verarbeitbare Builds',
'found_n_builds' => '%d Builds gefunden',
'skipping_build' => 'Überspringe Build %d - Es wird bereits ein Build auf diesem Projekt ausgeführt.',
'marked_as_failed' => 'Build %d wegen Zeitüberschreitung als fehlgeschlagen markiert.',
// Builder
'missing_phpci_yml' => 'Dieses Projekt beinhaltet keine phpci.yml-Datei, oder sie ist leer.',
'missing_app_yml' => 'Dieses Projekt beinhaltet keine .php-censor.yml (.phpci.yml|phpci.yml)-Datei, oder sie ist leer.',
'build_success' => 'BUILD ERFOLGREICH',
'build_failed' => 'BUILD FEHLGESCHLAGEN',
'removing_build' => 'Entferne Build.',
@ -404,7 +404,7 @@ generiert. Um es zu verwenden, fügen Sie einfach den folgenden Public Key im Ab
'n_emails_sent' => '%d Emails verschickt.',
'n_emails_failed' => 'Konnte %d Emails nicht verschicken.',
'unable_to_set_env' => 'Konnte Umgebungsvariable nicht setzen',
'tag_created' => 'Tag erstellt durch PHPCI: %s',
'tag_created' => 'Tag erstellt durch PHP Censor: %s',
'x_built_at_x' => '%PROJECT_TITLE% gebuildet auf %BUILD_URI%',
'hipchat_settings' => 'Bitte definieren Sie Room und AuthToken für das hipchat_notify-Plugin',
'irc_settings' => 'Sie müssen einen Server, Room und Nick definieren.',

View file

@ -12,7 +12,7 @@ return [
'language' => 'Γλώσσα',
// Log in:
'log_in_to_phpci' => 'Είσοδος στο PHPCI',
'log_in_to_app' => 'Είσοδος στο PHP Censor',
'login_error' => 'Λάθος διεύθυνση e-mail ή κωδικός πρόσβασης',
'forgotten_password_link' => 'Ξεχάσατε τον κωδικό σας;',
'reset_emailed' => 'Σας έχουμε αποσταλεί ένα σύνδεσμο για να επαναφέρετε τον κωδικό πρόσβασής σας.',
@ -26,7 +26,7 @@ return [
'reset_no_user_exists' => 'Δεν υπάρχει χρήστης με αυτή την διεύθυνση ηλεκτρονικού ταχυδρομείου, παρακαλώ προσπαθήστε ξανά.',
'reset_email_body' => 'Γεια %s,
Έχετε λάβει αυτό το μήνυμα επειδή εσείς, ή κάποιος άλλος, ζήτησε επαναφορά κωδικού πρόσβασης για το PHPCI.
Έχετε λάβει αυτό το μήνυμα επειδή εσείς, ή κάποιος άλλος, ζήτησε επαναφορά κωδικού πρόσβασης για το PHP Censor.
Αν ήσασταν εσείς, παρακαλώ κάντε κλικ στον παρακάτω σύνδεσμο για να επαναφέρετε τον κωδικό πρόσβασής σας: %ssession/reset-password/%d/%s
@ -34,9 +34,9 @@ return [
Σας ευχαριστούμε,
PHPCI',
PHP Censor',
'reset_email_title' => 'PHPCI Επαναφορά Κωδικού για %s',
'reset_email_title' => 'PHP Censor Επαναφορά Κωδικού για %s',
'reset_invalid' => 'Μη έγκυρο αίτημα επαναφοράς κωδικού πρόσβασης.',
'email_address' => 'Διεύθυνση email',
'login' => 'Login / Email Address',
@ -110,8 +110,8 @@ PHPCI',
'project_title' => 'Τίτλος Έργου',
'project_private_key' => 'Ιδιωτικό κλειδί για πρόσβαση σε αποθετήριο
(αφήστε κενό για την τοπική ή / και ανώνυμα απομακρυσμένα)',
'build_config' => 'Kατασκευή διαμόρφωσης PHPCI για αυτό το έργο
(αν δεν μπορείτε να προσθέσετε ένα αρχείο phpci.yml στο αποθετήριο έργων)',
'build_config' => 'Kατασκευή διαμόρφωσης PHP Censor για αυτό το έργο
(αν δεν μπορείτε να προσθέσετε ένα αρχείο .php-censor.yml (.phpci.yml|phpci.yml) στο αποθετήριο έργων)',
'default_branch' => 'Προκαθορισμένο όνομα διακλάδωσης',
'allow_public_status' => 'Ενεργοποίηση της σελίδας δημόσιας κατάστασης και την εικόνα για το έργο αυτό;',
'archived' => 'Archived',
@ -232,21 +232,21 @@ Services</a> του Bitbucket αποθετηρίου σας.',
// Settings:
'settings_saved' => 'Οι ρυθμίσεις σας έχουν αποθηκευτεί.',
'settings_check_perms' => 'Οι ρυθμίσεις σας δεν αποθηκεύτηκαν, ελέγξτε τα δικαιώματα του αρχείου σας config.yml.',
'settings_cannot_write' => 'Το PHPCI δεν μπορεί να γράψει στο αρχείο config.yml, οι ρυθμίσεις ενδέχεται να μην αποθηκευτούν σωστά
'settings_cannot_write' => 'Το PHP Censor δεν μπορεί να γράψει στο αρχείο config.yml, οι ρυθμίσεις ενδέχεται να μην αποθηκευτούν σωστά
μέχρι να διορθωθεί.',
'settings_github_linked' => 'Ο λογαριασμός σας GitHub έχει συνδεθεί.',
'settings_github_not_linked' => 'Ο λογαριασμός σας Github δεν μπόρεσε να συνδεθεί.',
'build_settings' => 'Ρυθμίσεις κατασκευής',
'github_application' => 'GitHub Εφαρμογή',
'github_sign_in' => 'Πριν αρχίσετε να χρησιμοποιείτε το GitHub, θα πρέπει να <a href="%s"> συνδεθείται </a> και να δώσει
το PHPCI πρόσβαση στο λογαριασμό σας.',
'github_phpci_linked' => 'Το PHPCI συνδέθηκε με επιτυχία με το λογαριασμό Github.',
το PHP Censor πρόσβαση στο λογαριασμό σας.',
'github_app_linked' => 'Το PHP Censor συνδέθηκε με επιτυχία με το λογαριασμό Github.',
'github_where_to_find' => 'Πού να βρείτε αυτά ...',
'github_where_help' => 'Εάν έχετε στην κατοχή σας την εφαρμογή που θέλετε να χρησιμοποιήσετε, μπορείτε να βρείτε αυτές τις πληροφορίες στην περιοχή
<a href="https://github.com/settings/applications">Ρυθμίσεις εφαρμογών </a> ',
'email_settings' => 'Ρυθμίσεις email',
'email_settings_help' => 'Πριν το PHPCI μπορεί να στείλει μηνύματα ηλεκτρονικού ταχυδρομείου για την κατάσταση κατασκευής,
'email_settings_help' => 'Πριν το PHP Censor μπορεί να στείλει μηνύματα ηλεκτρονικού ταχυδρομείου για την κατάσταση κατασκευής,
θα πρέπει να διαμορφώσετε τις ρυθμίσεις SMTP παρακάτω.',
'application_id' => 'Αναγνωριστικό εφαρμογής',
@ -271,7 +271,7 @@ Services</a> του Bitbucket αποθετηρίου σας.',
'3_hours' => '3 ώρες',
// Plugins
'cannot_update_composer' => 'To PHPCI δεν μπορεί να ενημερώσει to composer.json για σας, γιατί δεν είναι εγγράψιμο.',
'cannot_update_composer' => 'To PHP Censor δεν μπορεί να ενημερώσει to composer.json για σας, γιατί δεν είναι εγγράψιμο.',
'x_has_been_removed' => '%s έχει αφαιρεθεί.',
'x_has_been_added' => '%s προσθέιηκε στο αρχείο composer.json για εσάς και θα εγκατασταθεί την επόμενη φορά
που θα τρέξετε την ενημέρωση για το composer.',
@ -288,7 +288,7 @@ Services</a> του Bitbucket αποθετηρίου σας.',
'search' => 'Αναζήτηση &raquo;',
// Installer
'installation_url' => 'Σύνδεσμος URL εγκατάστασης του PHPCI',
'installation_url' => 'Σύνδεσμος URL εγκατάστασης του PHP Censor',
'db_host' => 'Φιλοξενία βάσης δεδομένων',
'db_name' => 'Όνομα βάσης δεδομένων',
'db_user' => 'Όνομα χρήστη βάσης δεδομένων',
@ -297,37 +297,37 @@ Services</a> του Bitbucket αποθετηρίου σας.',
'admin_pass' => 'Κωδικός πρόσβασης διαχειριστή',
'admin_email' => 'Διεύθυνση email διαχειριστή',
'config_path' => 'Διαδρομή αρχείου ρυθμίσεων',
'install_phpci' => 'Εγκατάσταση PHPCI',
'welcome_to_phpci' => 'Καλώς ήρθατε στο PHPCI',
'install_app' => 'Εγκατάσταση PHP Censor',
'welcome_to_app' => 'Καλώς ήρθατε στο PHP Censor',
'please_answer' => 'Παρακαλώ απαντήστε στις ακόλουθες ερωτήσεις:',
'phpci_php_req' => 'Το PHPCI απαιτεί τουλάχιστον την έκδοση PHP 5.3.8 για να λειτουργήσει',
'app_php_req' => 'Το PHP Censor απαιτεί τουλάχιστον την έκδοση PHP 5.4.0 για να λειτουργήσει',
'extension_required' => 'Απαιτούμενη επέκταση: %s ',
'function_required' => 'Το PHPCI πρέπει να είναι σε θέση να καλέσει την %s() συνάρτηση. Είναι απενεργοποιημένη στο php.ini;',
'requirements_not_met' => 'Το PHPCI δεν μπορεί να εγκατασταθεί, καθώς όλες οι απαιτήσεις δεν ικανοποιούνται.
'function_required' => 'Το PHP Censor πρέπει να είναι σε θέση να καλέσει την %s() συνάρτηση. Είναι απενεργοποιημένη στο php.ini;',
'requirements_not_met' => 'Το PHP Censor δεν μπορεί να εγκατασταθεί, καθώς όλες οι απαιτήσεις δεν ικανοποιούνται.
Παρακαλούμε διαβάστε τα παραπάνω λάθη πριν συνεχίσετε.',
'must_be_valid_email' => 'Πρέπει να είναι μια έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου.',
'must_be_valid_url' => 'Πρέπει να είναι μια έγκυρη διεύθυνση URL.',
'enter_name' => 'Όνομα διαχειριστή: ',
'enter_email' => 'Ηλ. Διεύθυνση διαχειριστή: ',
'enter_password' => 'Κωδικός πρόσβασης διαχειριστή: ',
'enter_phpci_url' => 'Ο URL σύνδεσμος σας για το PHPCI ("http://phpci.local" για παράδειγμα): ',
'enter_app_url' => 'Ο URL σύνδεσμος σας για το PHP Censor ("http://php-censor.local" για παράδειγμα): ',
'enter_db_host' => 'Παρακαλώ εισάγετε τον MySQL οικοδεσπότη σας [localhost]: ',
'enter_db_name' => 'Παρακαλώ εισάγετε το όνομα της MySQL βάσης δεδομένων σας [phpci]: ',
'enter_db_user' => 'Παρακαλώ εισάγετε το όνομα χρήστη της MySQL σας [phpci]: ',
'enter_db_name' => 'Παρακαλώ εισάγετε το όνομα της MySQL βάσης δεδομένων σας [php-censor-db]: ',
'enter_db_user' => 'Παρακαλώ εισάγετε το όνομα χρήστη της MySQL σας [php-censor-user]: ',
'enter_db_pass' => 'Παρακαλώ εισάγετε τον κωδικό χρήστη της MySQL σας: ',
'could_not_connect' => 'Το PHPCI δεν μπόρεσε να συνδεθεί με την MySQL με τα στοχεία που δώσατε. Παρακαλώ δοκιμάστε ξανά.',
'could_not_connect' => 'Το PHP Censor δεν μπόρεσε να συνδεθεί με την MySQL με τα στοχεία που δώσατε. Παρακαλώ δοκιμάστε ξανά.',
'setting_up_db' => 'Γίνεται ρύθμιση της βάσης δεδομένων σας ...',
'user_created' => 'Λογαριασμός χρήστη δημιουργήθηκε!',
'failed_to_create' => 'Το PHPCI απέτυχε να δημιουργήσει το λογαριασμό διαχειριστή σας.',
'config_exists' => 'Το αρχείο ρυθμίσεων PHPCI υπάρχει και δεν είναι άδειο.',
'update_instead' => 'Εάν προσπαθούσατε να ενημερώσετε PHPCI, παρακαλούμε χρησιμοποιήστε καλύτερα το phpci:update αντ \'αυτού.',
'failed_to_create' => 'Το PHP Censor απέτυχε να δημιουργήσει το λογαριασμό διαχειριστή σας.',
'config_exists' => 'Το αρχείο ρυθμίσεων PHP Censor υπάρχει και δεν είναι άδειο.',
'update_instead' => 'Εάν προσπαθούσατε να ενημερώσετε PHP Censor, παρακαλούμε χρησιμοποιήστε καλύτερα το php-censor:update αντ \'αυτού.',
// Update
'update_phpci' => 'Ενημέρωστε την βάση δεδομένων ώστε να αντικατοπτρίζει τροποποιημένα μοντέλα.',
'updating_phpci' => 'Γίνεται ενημέρωση της βάσης δεδομένων PHPCI:',
'not_installed' => 'Το PHPCI δεν φένεται να είναι εγκατεστημένο',
'install_instead' => 'Παρακαλούμε εγκαταστήστε το PHPCI καλύτερα με το phpci:install αντ \'αυτού.',
'update_app' => 'Ενημέρωστε την βάση δεδομένων ώστε να αντικατοπτρίζει τροποποιημένα μοντέλα.',
'updating_app' => 'Γίνεται ενημέρωση της βάσης δεδομένων PHP Censor:',
'not_installed' => 'Το PHP Censor δεν φένεται να είναι εγκατεστημένο',
'install_instead' => 'Παρακαλούμε εγκαταστήστε το PHP Censor καλύτερα με το php-censor:install αντ \'αυτού.',
// Poll Command
'poll_github' => 'Δημοσκόπηση στο GitHub για να ελέγξετε αν θα πρέπει να ξεκινήσει μια κατασκευή.',
@ -349,14 +349,14 @@ Services</a> του Bitbucket αποθετηρίου σας.',
'branch_name_option' => 'Branch to build',
// Run Command
'run_all_pending' => 'Εκτελέστε όλες τις εκκρεμείς PHPCI κατασκευές.',
'run_all_pending' => 'Εκτελέστε όλες τις εκκρεμείς PHP Censor κατασκευές.',
'finding_builds' => 'Αναζήτηση κατασκευών για επεξεργασία',
'found_n_builds' => 'Βρέθηκαν %d κατασκευές',
'skipping_build' => 'Παράκαμψη κατασκευής %d - Η διαδικασία κατασκευής του έργου βρίσκεται ήδη σε εξέλιξη.',
'marked_as_failed' => 'Η κατασκεύη %d επισημάνθηκε ως αποτυχημένη λόγω χρονικού ορίου',
// Builder
'missing_phpci_yml' => 'Το έργο δεν περιέχει το αρχείο phpci.yml ή είναι άδειο.',
'missing_app_yml' => 'Το έργο δεν περιέχει το αρχείο .php-censor.yml (.phpci.yml|phpci.yml) ή είναι άδειο.',
'build_success' => 'ΚΑΤΑΣΚΕΥΗ ΕΠΙΤΥΧΗΣ',
'build_failed' => 'ΚΑΤΑΣΚΕΥΗ ΑΠΕΤΥΧΕ',
'removing_build' => 'Γίνεται αφαίρεση κατασκευής',
@ -383,7 +383,7 @@ Services</a> του Bitbucket αποθετηρίου σας.',
'n_emails_sent' => 'Στάλθηκαν %d emails ',
'n_emails_failed' => 'Δεν στάλθηκαν %d emails ',
'unable_to_set_env' => 'Δεν είναι δυνατός ο ορισμος μεταβλητής περιβάλλοντος',
'tag_created' => 'Ετικέτα δημιουργήθηκε από PHPCI: %s',
'tag_created' => 'Ετικέτα δημιουργήθηκε από PHP Censor: %s',
'x_built_at_x' => '%PROJECT_TITLE% χτισμένο σε %BUILD_URI%',
'hipchat_settings' => 'Παρακαλώ ορίστε δωμάτιο και authToken για το πρόσθετο hipchat_notify',
'irc_settings' => 'Θα πρέπει να ρυθμίσετε ένα διακομιστή, το δωμάτιο και το ψευδώνυμο.',

Some files were not shown because too many files have changed in this diff Show more