librenms-librenms/doc/Developing/Validating-Code.md
Jellyfrog c76e95d343 Markdown linting of docs (#10595)
* Remove trailing spaces

* Markdown linting of docs
2019-10-21 00:47:40 +00:00

49 lines
1.6 KiB
Markdown

source: Developing/Validating-Code.md
path: blob/master/doc/
#### Validating Code
As part of the pull request process with GitHub we run some automated
build tests to ensure that the code is error free, standards [compliant](http://docs.librenms.org/Developing/Code-Guidelines/)
and our test suite builds successfully.
Rather than submit a pull request and wait for the results, you can
run these checks yourself to ensure a more seamless merge.
> All of these commands should be run from within the librenms
> directory and can be run as the librenms user unless otherwise noted.
Install composer (you can skip this if composer is already installed).
`curl -sS https://getcomposer.org/installer | php`
Composer will now be installed into /opt/librenms/composer.phar.
Now install the dependencies we require:
`./composer.phar install`
Once composer is installed you can now run the code validation script:
`./scripts/pre-commit.php`
If you see `Tests ok, submit away :)` then all is well. If you see
other output then it should contain what you need to resolve the issues and re-test.
#### Git Hooks
Git has a hook system which you can use to trigger checks at various
stages. Utilising the `pre-commit.php` you can make this part of your
commit process. You can do this in two ways:
1. If you already make use of `.git/hooks/pre-commit` then you can add:
./scripts/pre-commit.php
to be excecuted when you run `git commit`.
1. You can symlink the `pre-commit.php` file so it's executed directly
on a `git commit`:
`ln -s /opt/librenms/scripts/pre-commit.php /opt/librenms/.git/hooks/pre-commit`