Skip to content

Commit c672344

Browse files
authored
Merge pull request #73 from patxi1980/default_git_hooks
Add a default file in order to read from it
2 parents 2311ced + 7c82bc9 commit c672344

File tree

4 files changed

+120
-1
lines changed

4 files changed

+120
-1
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@ php-git-hooks.yml
66
# You may choose to ignore a library lock file http://getcomposer.org/doc/02-libraries.md#lock-file
77
# composer.lock
88
#Entry generated by php-git-hooks tool.
9-
.guard_coverage
9+
.guard_coverage
10+
.idea

php-git-hooks.yml.sample

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
pre-commit:
2+
enabled: true
3+
execute:
4+
php-cs-fixer:
5+
enabled: true
6+
levels:
7+
psr0: true
8+
psr1: true
9+
psr2: true
10+
symfony: true
11+
options: "--fixers=short_array_syntax --diff"
12+
phpunit:
13+
enabled: true
14+
random-mode: true
15+
options: '<some options>'
16+
strict-coverage:
17+
enabled: true
18+
minimum: !!float 0
19+
guard-coverage:
20+
enabled: true
21+
message: 'WARNING!!, your code coverage is lower.'
22+
phplint: true
23+
phpcs:
24+
enabled: true
25+
standard: PSR2
26+
phpmd:
27+
enabled: true
28+
options: '<some options>'
29+
composer: true
30+
message:
31+
right-message: 'HEY, GOOD JOB!!'
32+
error-message: 'FIX YOUR CODE!!'
33+
commit-msg:
34+
enabled: true
35+
regular-expression: '#[0-9]{2,7}'
36+
pre-push:
37+
enabled: true
38+
execute:
39+
phpunit:
40+
enabled: true
41+
random-mode: true
42+
options: '<some options>'
43+
strict-coverage:
44+
enabled: true
45+
minimum: 90
46+
guard-coverage:
47+
enabled: true
48+
message: 'WARNING!!, your code coverage is lower.'
49+
message:
50+
right-message: 'PUSH IT!!'
51+
error-message: 'YOU CAN NOT PUSH CODE!!'

src/PhpGitHooks/Module/Configuration/Infrastructure/Persistence/Disk/ConfigurationFileReader.php

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
class ConfigurationFileReader implements ConfigurationFileReaderInterface
1111
{
1212
const CONFIG_FILE = 'php-git-hooks.yml';
13+
const DEFAULT_CONFIG_FILE = 'php-git-hooks.yml.default';
1314

1415
/**
1516
* @return Config
@@ -18,6 +19,10 @@ public function getData()
1819
{
1920
$data = true === $this->configFileExists() ? $this->getConfigData() : [];
2021

22+
$defaultData = $this->getDefaultConfigData();
23+
24+
$data = array_replace_recursive($defaultData, $data);
25+
2126
return ConfigFactory::fromArray($data);
2227
}
2328

@@ -36,4 +41,14 @@ private function getConfigData()
3641
{
3742
return Yaml::parse(file_get_contents(self::CONFIG_FILE));
3843
}
44+
45+
/**
46+
* @return array
47+
*/
48+
private function getDefaultConfigData()
49+
{
50+
return Yaml::parse(
51+
file_get_contents(__DIR__ . '/' . self::DEFAULT_CONFIG_FILE)
52+
);
53+
}
3954
}
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
pre-commit:
2+
enabled: true
3+
execute:
4+
composer: true
5+
jsonlint: true
6+
phplint: true
7+
phpmd:
8+
enabled: true
9+
options: null
10+
phpcs:
11+
enabled: true
12+
standard: null
13+
php-cs-fixer:
14+
enabled: true
15+
levels:
16+
psr0: true
17+
psr1: true
18+
psr2: true
19+
symfony: false
20+
options: null
21+
phpunit:
22+
enabled: true
23+
random-mode: true
24+
options: null
25+
strict-coverage:
26+
enabled: true
27+
minimum: !!float 0
28+
guard-coverage:
29+
enabled: true
30+
message: 'WARNING!!, your code coverage is lower.'
31+
message:
32+
right-message: 'HEY, GOOD JOB!!'
33+
error-message: 'FIX YOUR FUCKING CODE!!'
34+
commit-msg:
35+
enabled: true
36+
regular-expression: '[#[0-9]{2,7}]'
37+
pre-push:
38+
enabled: true
39+
execute:
40+
phpunit:
41+
enabled: true
42+
random-mode: true
43+
options: null
44+
strict-coverage:
45+
enabled: true
46+
minimum: !!float 0
47+
guard-coverage:
48+
enabled: true
49+
message: 'WARNING!!, your code coverage is lower.'
50+
message:
51+
right-message: 'PUSH IT!!'
52+
error-message: 'YOU CAN NOT PUSH CODE!!'

0 commit comments

Comments
 (0)