I use this git hook to upload on a folder on our Dev VPS the status of the branch of a specific plugin, so we have an history.
It execute QualityAnalyzer, PHPMetrics and Codeception to generate the relative reports.
Last active
October 2, 2020 10:21
-
-
Save Mte90/f2786da09ed7a5dd5245376730e0a46a to your computer and use it in GitHub Desktop.
pre-push
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# If the branch is not master, execute phpmetrics and upoload everything on the VPS | |
current_branch=$(git symbolic-ref HEAD | sed -e 's,.*/\(.*\),\1,') | |
if [ $current_branch != "master" ]; then | |
sshpass -p your-password ssh [email protected] mkdir -p /var/www/your-path/status/master/ | |
sshpass -p your-password rsync --progress -avzP /home/your-user/.cache/QualityAnalyzer/assets -e ssh [email protected]:/var/www/your-metrics/status/$current_branch/ > /dev/null | |
sshpass -p your-password rsync --progress -avzP /home/your-user/.cache/QualityAnalyzer/index.html -e ssh [email protected]:/var/www/your-metrics/status/$current_branch/ > /dev/null | |
/usr/bin/phpmd /var/www/VVV/www/site/public_html/wp-content/plugins/your-plugin/ xml /CodeatCS/codeat-phpmd.xml --exclude vendor,tests --reportfile /tmp/phpmd-analysis.xml | |
/home/your-user/.cache/QualityAnalyzer/bin/analyze analyze /var/www/VVV/www/site/public_html/wp-content/plugins/your-plugin/ --exclude=vendor,tests --exclude_analyzers=cpd,pdepend,checkstyle --phpmd=/tmp/phpmd-analysis.xml | |
sshpass -p your-password rsync --exclude={.git*} --progress -avzP /home/your-user/.cache/QualityAnalyzer/data -e ssh [email protected]:/var/www/your-metrics//status/$current_branch/ > /dev/null | |
codecept run wpunit --coverage --coverage-html > /dev/null | |
sshpass -p your-password rsync --exclude={.git*} --progress -avzP /var/www/VVV/www/site/public_html/wp-content/plugins/your-plugin/tests/_output/coverage/ -e ssh [email protected]:/var/www/your-metrics/coverage > /dev/null | |
phpmetrics --report-html="/tmp/your-report" /var/www/VVV/www/your-project/public_html/wp-content/plugins/your-plugin/ --exclude=vendor,tests,languages > /dev/null | |
sshpass -p your-password rsync --exclude={.sass-cache*,*.map,node_modules,.php_cs,.git*,*.lock,*.yml,*lock.json} --progress -avz /tmp/your-report -e ssh [email protected]:/var/www/your-metrics/$current_branch/ > /dev/null | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment