mirror of
https://github.com/Karaka-Management/Build.git
synced 2026-01-10 19:28:41 +00:00
Merge branch 'develop'
This commit is contained in:
commit
75d8311af4
|
|
@ -7,6 +7,7 @@
|
|||
<exclude-pattern>*.tpl.php</exclude-pattern>
|
||||
<exclude-pattern>*.xls.php</exclude-pattern>
|
||||
<exclude-pattern>*/Build/*</exclude-pattern>
|
||||
<exclude-pattern>*/MainRepository/*</exclude-pattern>
|
||||
<exclude-pattern>*/Cache/*</exclude-pattern>
|
||||
<exclude-pattern>*/Demo/*</exclude-pattern>
|
||||
<exclude-pattern>*/Docs/*</exclude-pattern>
|
||||
|
|
|
|||
12
Config/phpmetrics.json
Normal file
12
Config/phpmetrics.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"composer": true,
|
||||
"excludes": [
|
||||
".git",
|
||||
"tests",
|
||||
"MainRepository",
|
||||
"vendor",
|
||||
"Admin/Install/Application",
|
||||
"Install/Application",
|
||||
"Resources"
|
||||
]
|
||||
}
|
||||
|
|
@ -12,6 +12,8 @@ function module_autoloader($class) {
|
|||
__DIR__ . '/../../MainRepository/Resources/',
|
||||
__DIR__ . '/../../MainRepository/Resources/tcpdf/',
|
||||
__DIR__ . '/../../MainRepository/Resources/Stripe/',
|
||||
__DIR__ . '/../../src/',
|
||||
__DIR__ . '/../../../',
|
||||
];
|
||||
|
||||
$class = \ltrim($class, '\\');
|
||||
|
|
@ -37,6 +39,7 @@ function module_autoloader($class) {
|
|||
}
|
||||
}
|
||||
|
||||
// github and normal
|
||||
foreach ($paths as $path) {
|
||||
if (($file = \realpath($path . $class2 . '.php'))) {
|
||||
include_once $file;
|
||||
|
|
@ -52,6 +55,38 @@ function module_autoloader($class) {
|
|||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// own server
|
||||
foreach ($paths as $path) {
|
||||
if (($file = \realpath($path . 'oms-' . $class2 . '.php'))) {
|
||||
include_once $file;
|
||||
|
||||
return;
|
||||
} elseif (($file = \realpath($file = $path . 'oms-' . $class3 . '.php')) && \stripos($file, $class2) !== false) {
|
||||
include_once $file;
|
||||
|
||||
return;
|
||||
} elseif (\is_file($file = $path . 'oms-' . $class . '.php')) {
|
||||
include_once $file;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
$paths[] = __DIR__ . '/../../src/Karaka/';
|
||||
|
||||
$class = \ltrim(\str_replace('Modules/', '/', $class), '/');
|
||||
foreach ($paths as $path) {
|
||||
if (\is_file($file = $path . $class . '.php')) {
|
||||
include_once $file;
|
||||
|
||||
return;
|
||||
} elseif (\is_file($file = $path . 'oms-' . $class . '.php')) {
|
||||
include_once $file;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
spl_autoload_register('module_autoloader');
|
||||
|
|
|
|||
12
Helper/Scripts/cloneall.sh
Normal file
12
Helper/Scripts/cloneall.sh
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
#!/bin/bash
|
||||
|
||||
CNTX="users"; NAME="Karaka-Management"; PAGE=1
|
||||
curl "https://api.github.com/$CNTX/$NAME/repos?page=$PAGE&per_page=100" |
|
||||
grep -e 'clone_url*' |
|
||||
cut -d \" -f 4 |
|
||||
xargs -L1 git clone
|
||||
|
||||
find . -maxdepth 1 -type d \( ! -name . \) -exec bash -c "cd '{}' && git checkout develop" \;
|
||||
find . -maxdepth 1 -type d \( ! -name . \) -exec bash -c "cd '{}' && git submodule foreach 'git checkout develop || true'" \;
|
||||
find ./src -maxdepth 1 -type d \( ! -name . \) -exec bash -c "git -C '{}' pull" \;
|
||||
find ./src -maxdepth 1 -type d \( ! -name . \) -exec bash -c "Build/php.sh '{}' '{}/build'" \;
|
||||
3
Helper/Scripts/copycontent.sh
Normal file
3
Helper/Scripts/copycontent.sh
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
find ./Modules -type f -name README.md -exec sh -c 'cat README.md > "{}"' \;
|
||||
|
|
@ -16,7 +16,13 @@ add-apt-repository ppa:ondrej/php
|
|||
|
||||
apt-get update
|
||||
|
||||
apt-get install php8.1 php8.1-dev php8.1-cli php8.1-common php8.1-mysql php8.1-pgsql php8.1-xdebug php8.1-opcache php8.1-pdo php8.1-sqlite php8.1-mbstring php8.1-curl php8.1-imap php8.1-bcmath php8.1-zip php8.1-dom php8.1-xml php8.1-phar php8.1-gd php-pear apache2 mysql-server wkhtmltopdf tesseract-ocr poppler-utils
|
||||
apt-get install php8.1 php8.1-dev php8.1-cli php8.1-common php8.1-mysql php8.1-pgsql php8.1-xdebug php8.1-opcache php8.1-pdo php8.1-sqlite php8.1-mbstring php8.1-curl php8.1-imap php8.1-bcmath php8.1-zip php8.1-dom php8.1-xml php8.1-phar php8.1-gd php-pear apache2 mariadb-server mariadb-client wkhtmltopdf tesseract-ocr poppler-utils
|
||||
|
||||
apt-get install curl libcurl4-openssl-dev libxml2 libxml2-dev
|
||||
|
||||
mysql_secure_installation
|
||||
systemctl start mariadb
|
||||
systemctl enable mariadb
|
||||
|
||||
a2enmod rewrite
|
||||
a2enmod headers
|
||||
|
|
@ -49,7 +55,7 @@ borg key export /var/www/html repokey
|
|||
## Developer
|
||||
###############################################################
|
||||
|
||||
apt-get install npm git composer cmake postgresql postgresql-contrib pcov
|
||||
apt-get install npm git composer nodejs cmake postgresql postgresql-contrib pcov
|
||||
composer install
|
||||
composer update
|
||||
npm install -D jasmine jasmine-node istanbul jasmine-console-reporter supertest jasmine-supertest selenium-webdriver chromedriver geckodriver eslint
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ export PROMPT_COMMAND='echo "$(date "+%Y-%m-%d.%H:%M:%S") $(pwd) $(history 1)" >
|
|||
|
||||
apt-get update
|
||||
apt-get upgrade
|
||||
apt-get install git git-lfs snapd ufw software-properties-common
|
||||
apt-get install git snapd ufw software-properties-common composer nodejs npm
|
||||
|
||||
# Security
|
||||
|
||||
|
|
@ -39,6 +39,9 @@ service fail2ban restart
|
|||
|
||||
apt-get install php8.1 php8.1-dev php8.1-cli php8.1-common php8.1-mysql php8.1-pgsql php8.1-xdebug php8.1-opcache php8.1-pdo php8.1-sqlite php8.1-mbstring php8.1-curl php8.1-imap php8.1-bcmath php8.1-zip php8.1-dom php8.1-xml php8.1-phar php8.1-gd php-pear apache2 libapache2-mpm-itk apache2-utils mariadb-server mariadb-client wkhtmltopdf tesseract-ocr poppler-utils
|
||||
|
||||
pecl install pcov
|
||||
#echo "extension=pcov.so" > /etc/php/cli/conf.d/20-xdebug.ini
|
||||
|
||||
mkdir -p /var/cache/apache2
|
||||
mkdir -p /var/cache/apache2/tmrank
|
||||
chown -R www-data:www-data /var/cache/apache2
|
||||
|
|
@ -63,12 +66,15 @@ mysql -u root -p
|
|||
|
||||
CREATE USER 'jingga'@'%' IDENTIFIED BY 'dYg8#@wLiWJ3vE';
|
||||
CREATE USER 'demo'@'%' IDENTIFIED BY 'orange';
|
||||
CREATE USER 'test'@'%' IDENTIFIED BY 'orange';
|
||||
|
||||
CREATE DATABASE jingga COMMENT 'Main application database';
|
||||
CREATE DATABASE demo COMMENT 'Demo application database';
|
||||
CREATE DATABASE omt COMMENT 'Tests';
|
||||
|
||||
GRANT ALL PRIVILEGES ON jingga.* TO 'jingga'@'%';
|
||||
GRANT ALL PRIVILEGES ON demo.* TO 'demo'@'%';
|
||||
GRANT ALL PRIVILEGES ON omt.* TO 'test'@'%';
|
||||
|
||||
FLUSH PRIVILEGES;
|
||||
|
||||
|
|
@ -150,6 +156,23 @@ cat << EOF > /etc/apache2/sites-available/000-demo.conf
|
|||
</VirtualHost>
|
||||
EOF
|
||||
|
||||
cat << EOF > /etc/apache2/sites-available/000-dev.conf
|
||||
<VirtualHost *:80>
|
||||
ServerAdmin info@jingga.app
|
||||
DocumentRoot /var/www/html/dev
|
||||
ServerName dev.jingga.app
|
||||
|
||||
<Directory /var/www/html/dev>
|
||||
Options Indexes FollowSymLinks
|
||||
AllowOverride All
|
||||
Require all granted
|
||||
</Directory>
|
||||
|
||||
ErrorLog \${APACHE_LOG_DIR}/error.log
|
||||
CustomLog \${APACHE_LOG_DIR}/access.log combined
|
||||
</VirtualHost>
|
||||
EOF
|
||||
|
||||
cat << EOF > /etc/apache2/sites-available/000-services.conf
|
||||
<VirtualHost *:80>
|
||||
ServerAdmin info@jingga.app
|
||||
|
|
@ -535,6 +558,7 @@ mkdir -p /var/www/html/backup/bash
|
|||
chmod -R 766 /var/www/html/backup
|
||||
|
||||
a2ensite 000-demo.conf
|
||||
a2ensite 000-dev.conf
|
||||
a2ensite 000-shop.conf
|
||||
a2ensite 000-services.conf
|
||||
a2ensite 000-software.conf
|
||||
|
|
|
|||
106
Helper/Scripts/testall.sh
Normal file
106
Helper/Scripts/testall.sh
Normal file
|
|
@ -0,0 +1,106 @@
|
|||
#!/bin/bash
|
||||
|
||||
GITHUB[0]="https://github.com/Karaka-Management/jsOMS.git"
|
||||
GITHUB[1]="https://github.com/Karaka-Management/Karaka.git"
|
||||
GITHUB[2]="https://github.com/Karaka-Management/oms-Accounting.git"
|
||||
GITHUB[3]="https://github.com/Karaka-Management/oms-AccountsPayable.git"
|
||||
GITHUB[4]="https://github.com/Karaka-Management/oms-AccountsReceivable.git"
|
||||
GITHUB[5]="https://github.com/Karaka-Management/oms-Admin.git"
|
||||
GITHUB[6]="https://github.com/Karaka-Management/oms-AreaManager.git"
|
||||
GITHUB[7]="https://github.com/Karaka-Management/oms-Arrival.git"
|
||||
GITHUB[8]="https://github.com/Karaka-Management/oms-AssemblyManagement.git"
|
||||
GITHUB[9]="https://github.com/Karaka-Management/oms-AssetManagement.git"
|
||||
GITHUB[10]="https://github.com/Karaka-Management/oms-Attribute.git"
|
||||
GITHUB[11]="https://github.com/Karaka-Management/oms-Auditor.git"
|
||||
GITHUB[12]="https://github.com/Karaka-Management/oms-Backup.git"
|
||||
GITHUB[13]="https://github.com/Karaka-Management/oms-Balance.git"
|
||||
GITHUB[14]="https://github.com/Karaka-Management/oms-BankAccounting.git"
|
||||
GITHUB[15]="https://github.com/Karaka-Management/oms-Billing.git"
|
||||
GITHUB[16]="https://github.com/Karaka-Management/oms-BudgetManagement.git"
|
||||
GITHUB[17]="https://github.com/Karaka-Management/oms-BusinessExpenses.git"
|
||||
GITHUB[18]="https://github.com/Karaka-Management/oms-Calendar.git"
|
||||
GITHUB[19]="https://github.com/Karaka-Management/oms-CapacityPlanning.git"
|
||||
GITHUB[20]="https://github.com/Karaka-Management/oms-CashManagement.git"
|
||||
GITHUB[21]="https://github.com/Karaka-Management/oms-Chart.git"
|
||||
GITHUB[22]="https://github.com/Karaka-Management/oms-Chat.git"
|
||||
GITHUB[23]="https://github.com/Karaka-Management/oms-Checklist.git"
|
||||
GITHUB[24]="https://github.com/Karaka-Management/oms-ClientEvaluation.git"
|
||||
GITHUB[25]="https://github.com/Karaka-Management/oms-ClientManagement.git"
|
||||
GITHUB[26]="https://github.com/Karaka-Management/oms-CMS.git"
|
||||
GITHUB[27]="https://github.com/Karaka-Management/oms-Comments.git"
|
||||
GITHUB[28]="https://github.com/Karaka-Management/oms-Contact.git"
|
||||
GITHUB[29]="https://github.com/Karaka-Management/oms-ContractManagement.git"
|
||||
GITHUB[30]="https://github.com/Karaka-Management/oms-Controlling.git"
|
||||
GITHUB[31]="https://github.com/Karaka-Management/oms-CreditManagement.git"
|
||||
GITHUB[32]="https://github.com/Karaka-Management/oms-Dashboard.git"
|
||||
GITHUB[33]="https://github.com/Karaka-Management/oms-Database.git"
|
||||
GITHUB[34]="https://github.com/Karaka-Management/oms-DatabaseEditor.git"
|
||||
GITHUB[35]="https://github.com/Karaka-Management/oms-Draw.git"
|
||||
GITHUB[36]="https://github.com/Karaka-Management/oms-Editor.git"
|
||||
GITHUB[37]="https://github.com/Karaka-Management/oms-EmployeeEvaluation.git"
|
||||
GITHUB[38]="https://github.com/Karaka-Management/oms-EquipmentManagement.git"
|
||||
GITHUB[39]="https://github.com/Karaka-Management/oms-EventManagement.git"
|
||||
GITHUB[40]="https://github.com/Karaka-Management/oms-Exchange.git"
|
||||
GITHUB[41]="https://github.com/Karaka-Management/oms-Finance.git"
|
||||
GITHUB[42]="https://github.com/Karaka-Management/oms-FleetManagement.git"
|
||||
GITHUB[43]="https://github.com/Karaka-Management/oms-Help.git"
|
||||
GITHUB[44]="https://github.com/Karaka-Management/oms-Helper.git"
|
||||
GITHUB[45]="https://github.com/Karaka-Management/oms-Home.git"
|
||||
GITHUB[46]="https://github.com/Karaka-Management/oms-HumanResourceManagement.git"
|
||||
GITHUB[47]="https://github.com/Karaka-Management/oms-HumanResourceTimeRecording.git"
|
||||
GITHUB[48]="https://github.com/Karaka-Management/oms-IncomeStatement.git"
|
||||
GITHUB[49]="https://github.com/Karaka-Management/oms-InvestmentManagement.git"
|
||||
GITHUB[50]="https://github.com/Karaka-Management/oms-ItemManagement.git"
|
||||
GITHUB[51]="https://github.com/Karaka-Management/oms-Kanban.git"
|
||||
GITHUB[52]="https://github.com/Karaka-Management/oms-Knowledgebase.git"
|
||||
GITHUB[53]="https://github.com/Karaka-Management/oms-KPI.git"
|
||||
GITHUB[54]="https://github.com/Karaka-Management/oms-Labeling.git"
|
||||
GITHUB[55]="https://github.com/Karaka-Management/oms-LoanManagement.git"
|
||||
GITHUB[56]="https://github.com/Karaka-Management/oms-Logistics.git"
|
||||
GITHUB[57]="https://github.com/Karaka-Management/oms-LotTracking.git"
|
||||
GITHUB[58]="https://github.com/Karaka-Management/oms-Marketing.git"
|
||||
GITHUB[59]="https://github.com/Karaka-Management/oms-Media.git"
|
||||
GITHUB[60]="https://github.com/Karaka-Management/oms-Messages.git"
|
||||
GITHUB[61]="https://github.com/Karaka-Management/oms-Monitoring.git"
|
||||
GITHUB[62]="https://github.com/Karaka-Management/oms-MyPrivate.git"
|
||||
GITHUB[63]="https://github.com/Karaka-Management/oms-Navigation.git"
|
||||
GITHUB[64]="https://github.com/Karaka-Management/oms-News.git"
|
||||
GITHUB[65]="https://github.com/Karaka-Management/oms-OnlineResourceWatcher.git"
|
||||
GITHUB[66]="https://github.com/Karaka-Management/oms-Organization.git"
|
||||
GITHUB[67]="https://github.com/Karaka-Management/oms-Payment.git"
|
||||
GITHUB[68]="https://github.com/Karaka-Management/oms-Payroll.git"
|
||||
GITHUB[69]="https://github.com/Karaka-Management/oms-Production.git"
|
||||
GITHUB[70]="https://github.com/Karaka-Management/oms-ProductionPlanning.git"
|
||||
GITHUB[71]="https://github.com/Karaka-Management/oms-Profile.git"
|
||||
GITHUB[72]="https://github.com/Karaka-Management/oms-ProjectManagement.git"
|
||||
GITHUB[73]="https://github.com/Karaka-Management/oms-Purchase.git"
|
||||
GITHUB[74]="https://github.com/Karaka-Management/oms-PurchaseAnalysis.git"
|
||||
GITHUB[75]="https://github.com/Karaka-Management/oms-QA.git"
|
||||
GITHUB[76]="https://github.com/Karaka-Management/oms-QualityAssurance.git"
|
||||
GITHUB[77]="https://github.com/Karaka-Management/oms-QualityControl.git"
|
||||
GITHUB[78]="https://github.com/Karaka-Management/oms-QualityManagement.git"
|
||||
GITHUB[79]="https://github.com/Karaka-Management/oms-ResearchDevelopment.git"
|
||||
GITHUB[80]="https://github.com/Karaka-Management/oms-RiskManagement.git"
|
||||
GITHUB[81]="https://github.com/Karaka-Management/oms-Sales.git"
|
||||
GITHUB[82]="https://github.com/Karaka-Management/oms-SalesAnalysis.git"
|
||||
GITHUB[83]="https://github.com/Karaka-Management/oms-Search.git"
|
||||
GITHUB[84]="https://github.com/Karaka-Management/oms-ShiftPlanning.git"
|
||||
GITHUB[85]="https://github.com/Karaka-Management/oms-Shipping.git"
|
||||
GITHUB[86]="https://github.com/Karaka-Management/oms-Shop.git"
|
||||
GITHUB[87]="https://github.com/Karaka-Management/oms-Spreadsheet.git"
|
||||
GITHUB[88]="https://github.com/Karaka-Management/oms-StockTaking.git"
|
||||
GITHUB[89]="https://github.com/Karaka-Management/oms-SupplierManagement.git"
|
||||
GITHUB[90]="https://github.com/Karaka-Management/oms-Support.git"
|
||||
GITHUB[91]="https://github.com/Karaka-Management/oms-Surveys.git"
|
||||
GITHUB[92]="https://github.com/Karaka-Management/oms-Tag.git"
|
||||
GITHUB[93]="https://github.com/Karaka-Management/oms-Tasks.git"
|
||||
GITHUB[94]="https://github.com/Karaka-Management/oms-TestModule.git"
|
||||
GITHUB[95]="https://github.com/Karaka-Management/oms-Tools.git"
|
||||
GITHUB[96]="https://github.com/Karaka-Management/oms-WarehouseManagement.git"
|
||||
GITHUB[97]="https://github.com/Karaka-Management/oms-Workflow.git"
|
||||
GITHUB[99]="https://github.com/Karaka-Management/phpOMS.git"
|
||||
|
||||
for i in "${GITHUB[@]}"
|
||||
do
|
||||
sh Build/php.sh "$i" ./src
|
||||
done
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start static text inspection"
|
||||
echo "#################################################"
|
||||
|
||||
grep -rlnP '(title|alt|aria\-label)(=\")((?!\<\?).)*(>)' --include \*.tpl.php Modules >> ${INSPECTION_PATH}/Modules/static_text.log
|
||||
grep -rlnP '(\<td\>|\<th\>|\<caption\>|\<label.*?(\"|l)\>)[0-9a-zA-Z\.\?]+' --include \*.tpl.php Modules >> ${INSPECTION_PATH}/Modules/static_text.log
|
||||
grep -rlnP '(title|alt|aria\-label)(=\")((?!\<\?).)*(>)' --include \*.tpl.php ${INSPECTION_PATH} >> ${OUTPUT_PATH}/static_text.log
|
||||
grep -rlnP '(\<td\>|\<th\>|\<caption\>|\<label.*?(\"|l)\>)[0-9a-zA-Z\.\?]+' --include \*.tpl.php ${INSPECTION_PATH} >> ${OUTPUT_PATH}/static_text.log
|
||||
|
|
|
|||
|
|
@ -1,33 +1,20 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start html syntax inspection"
|
||||
echo "#################################################"
|
||||
|
||||
#
|
||||
echo "Image alt missing:" > ${INSPECTION_PATH}/Modules/html_syntax.log
|
||||
grep -rlnP '(\<img)((?!.*?alt=).)*(>)' --include \*.tpl.php Modules >> ${INSPECTION_PATH}/Modules/html_syntax.log
|
||||
echo "Image alt missing:" > ${OUTPUT_PATH}/html_syntax.log
|
||||
grep -rlnP '(\<img)((?!.*?alt=).)*(>)' --include \*.tpl.php ${INSPECTION_PATH} >> ${OUTPUT_PATH}/html_syntax.log
|
||||
|
||||
echo "Input type missing:" >> ${INSPECTION_PATH}/Modules/html_syntax.log
|
||||
grep -rlnP '(<input)((?!.*?type=).)*(>)' --include \*.tpl.php Modules >> ${INSPECTION_PATH}/Modules/html_syntax.log
|
||||
echo "Input type missing:" >> ${OUTPUT_PATH}/html_syntax.log
|
||||
grep -rlnP '(<input)((?!.*?type=).)*(>)' --include \*.tpl.php ${INSPECTION_PATH} >> ${OUTPUT_PATH}/html_syntax.log
|
||||
|
||||
echo "Input name missing:" >> ${INSPECTION_PATH}/Modules/html_syntax.log
|
||||
grep -rlnP '(<input|<select|<textarea)((?!.*?name=).)*(>)' --include \*.tpl.php Modules >> ${INSPECTION_PATH}/Modules/html_syntax.log
|
||||
echo "Input name missing:" >> ${OUTPUT_PATH}/html_syntax.log
|
||||
grep -rlnP '(<input|<select|<textarea)((?!.*?name=).)*(>)' --include \*.tpl.php ${INSPECTION_PATH} >> ${OUTPUT_PATH}/html_syntax.log
|
||||
|
||||
echo "Form id missing:" >> ${INSPECTION_PATH}/Modules/html_syntax.log
|
||||
grep -rlnP '(\<form)((?!.*?(name|id)=).)*(>)' --include \*.tpl.php Modules >> ${INSPECTION_PATH}/Modules/html_syntax.log
|
||||
|
||||
#
|
||||
echo "Image alt missing:" > ${INSPECTION_PATH}/Web/html_syntax.log
|
||||
grep -rlnP '(\<img)((?!.*?alt=).)*(>)' --include \*.tpl.php Web >> ${INSPECTION_PATH}/Web/html_syntax.log
|
||||
|
||||
echo "Input type missing:" >> ${INSPECTION_PATH}/Web/html_syntax.log
|
||||
grep -rlnP '(<input)((?!.*?type=).)*(>)' --include \*.tpl.php Web >> ${INSPECTION_PATH}/Web/html_syntax.log
|
||||
|
||||
echo "Input name missing:" >> ${INSPECTION_PATH}/Web/html_syntax.log
|
||||
grep -rlnP '(<input|<select|<textarea)((?!.*?name=).)*(>)' --include \*.tpl.php Web >> ${INSPECTION_PATH}/Web/html_syntax.log
|
||||
|
||||
echo "Form id missing:" >> ${INSPECTION_PATH}/Web/html_syntax.log
|
||||
grep -rlnP '(\<form)((?!.*?(name|id)=).)*(>)' --include \*.tpl.php Web >> ${INSPECTION_PATH}/Web/html_syntax.log
|
||||
echo "Form id missing:" >> ${OUTPUT_PATH}/html_syntax.log
|
||||
grep -rlnP '(\<form)((?!.*?(name|id)=).)*(>)' --include \*.tpl.php ${INSPECTION_PATH} >> ${OUTPUT_PATH}/html_syntax.log
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start html tags inspection"
|
||||
|
|
@ -29,6 +29,5 @@ TAG[18]="<embed.*\/>"
|
|||
|
||||
for i in "${TAG[@]}"
|
||||
do
|
||||
grep -rln "$i" --include \*.tpl.php ${ROOT_PATH}/phpOMS >> ${INSPECTION_PATH}/Framework/html_tags.log
|
||||
grep -rln "$i" --include \*.tpl.php ${ROOT_PATH}/Modules >> ${INSPECTION_PATH}/Modules/html_tags.log
|
||||
grep -rln "$i" --include \*.tpl.php ${INSPECTION_PATH} >> ${OUTPUT_PATH}/html_tags.log
|
||||
done
|
||||
|
|
|
|||
|
|
@ -1,18 +1,13 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start js security inspection"
|
||||
echo "#################################################"
|
||||
|
||||
# JS code inspection
|
||||
grep -rlni "onafterprint=\|onbeforeprint=\|onbeforeunload=\|onerror=\|onhaschange=\|onload=\|onmessage=\|onoffline=\|ononline=\|onpagehide=\|onpageshow=\|onpopstate=\|onredo=\|onresize=\|onstorage=\|onund=o\|onunload=\|onblur=\|onchage=\|oncontextmenu=\|onfocus=\|onformchange=\|onforminput=\|oninput=\|oninvalid=\|onreset=\|onselect=\|onsubmit=\|onkeydown=\|onkeypress=\|onkeyup=\|onclick=\|ondblclic=k\|ondrag=\|ondragend=\|ondragenter=\|ondragleave=\|ondragover=\|ondragstart=\|ondrop=\|onmousedown=\|onmousemove=\|onmouseout=\|onmouseover=\|onmouseup=\|onmousewheel=\|onscroll=\|onabor=t\|oncanplay=\|oncanplaythrough=\|ondurationchange=\|onemptied=\|onended=\|onerror=\|onloadeddata=\|onloadedmetadata=\|onloadstart=\|onpause=\|onplay=\|onplaying=\|onprogress=\|onratechange=\|onreadystatechange=\|onseeked=\|onseeking=\|onstalled=\|onsuspend=\|ontimeupdate=\|onvolumechange=" --include=*.js ${ROOT_PATH}/jsOMS >> ${INSPECTION_PATH}/Framework/critical_js.log
|
||||
grep -rlni "onafterprint=\|onbeforeprint=\|onbeforeunload=\|onerror=\|onhaschange=\|onload=\|onmessage=\|onoffline=\|ononline=\|onpagehide=\|onpageshow=\|onpopstate=\|onredo=\|onresize=\|onstorage=\|onund=o\|onunload=\|onblur=\|onchage=\|oncontextmenu=\|onfocus=\|onformchange=\|onforminput=\|oninput=\|oninvalid=\|onreset=\|onselect=\|onsubmit=\|onkeydown=\|onkeypress=\|onkeyup=\|onclick=\|ondblclic=k\|ondrag=\|ondragend=\|ondragenter=\|ondragleave=\|ondragover=\|ondragstart=\|ondrop=\|onmousedown=\|onmousemove=\|onmouseout=\|onmouseover=\|onmouseup=\|onmousewheel=\|onscroll=\|onabor=t\|oncanplay=\|oncanplaythrough=\|ondurationchange=\|onemptied=\|onended=\|onerror=\|onloadeddata=\|onloadedmetadata=\|onloadstart=\|onpause=\|onplay=\|onplaying=\|onprogress=\|onratechange=\|onreadystatechange=\|onseeked=\|onseeking=\|onstalled=\|onsuspend=\|ontimeupdate=\|onvolumechange=" --include=*.js ${ROOT_PATH}/Modules >> ${INSPECTION_PATH}/Modules/critical_js.log
|
||||
grep -rlni "onafterprint=\|onbeforeprint=\|onbeforeunload=\|onerror=\|onhaschange=\|onload=\|onmessage=\|onoffline=\|ononline=\|onpagehide=\|onpageshow=\|onpopstate=\|onredo=\|onresize=\|onstorage=\|onund=o\|onunload=\|onblur=\|onchage=\|oncontextmenu=\|onfocus=\|onformchange=\|onforminput=\|oninput=\|oninvalid=\|onreset=\|onselect=\|onsubmit=\|onkeydown=\|onkeypress=\|onkeyup=\|onclick=\|ondblclic=k\|ondrag=\|ondragend=\|ondragenter=\|ondragleave=\|ondragover=\|ondragstart=\|ondrop=\|onmousedown=\|onmousemove=\|onmouseout=\|onmouseover=\|onmouseup=\|onmousewheel=\|onscroll=\|onabor=t\|oncanplay=\|oncanplaythrough=\|ondurationchange=\|onemptied=\|onended=\|onerror=\|onloadeddata=\|onloadedmetadata=\|onloadstart=\|onpause=\|onplay=\|onplaying=\|onprogress=\|onratechange=\|onreadystatechange=\|onseeked=\|onseeking=\|onstalled=\|onsuspend=\|ontimeupdate=\|onvolumechange=" --include=*.js ${ROOT_PATH}/Web >> ${INSPECTION_PATH}/Web/critical_js.log
|
||||
grep -rlni "onafterprint=\|onbeforeprint=\|onbeforeunload=\|onerror=\|onhaschange=\|onload=\|onmessage=\|onoffline=\|ononline=\|onpagehide=\|onpageshow=\|onpopstate=\|onredo=\|onresize=\|onstorage=\|onund=o\|onunload=\|onblur=\|onchage=\|oncontextmenu=\|onfocus=\|onformchange=\|onforminput=\|oninput=\|oninvalid=\|onreset=\|onselect=\|onsubmit=\|onkeydown=\|onkeypress=\|onkeyup=\|onclick=\|ondblclic=k\|ondrag=\|ondragend=\|ondragenter=\|ondragleave=\|ondragover=\|ondragstart=\|ondrop=\|onmousedown=\|onmousemove=\|onmouseout=\|onmouseover=\|onmouseup=\|onmousewheel=\|onscroll=\|onabor=t\|oncanplay=\|oncanplaythrough=\|ondurationchange=\|onemptied=\|onended=\|onerror=\|onloadeddata=\|onloadedmetadata=\|onloadstart=\|onpause=\|onplay=\|onplaying=\|onprogress=\|onratechange=\|onreadystatechange=\|onseeked=\|onseeking=\|onstalled=\|onsuspend=\|ontimeupdate=\|onvolumechange=" --include=*.js ${INSPECTION_PATH} >> ${OUTPUT_PATH}/critical_js.log
|
||||
|
||||
# JS strict type
|
||||
grep -r -L "\"use strict\";" --include=*.js ${ROOT_PATH}/jsOMS > ${INSPECTION_PATH}/Framework/strict_missing_js.log
|
||||
grep -r -L "\"use strict\";" --include=*.js ${ROOT_PATH}/Modules > ${INSPECTION_PATH}/Modules/strict_missing_js.log
|
||||
grep -r -L "\"use strict\";" --include=*.js ${ROOT_PATH}/Web > ${INSPECTION_PATH}/Web/strict_missing_js.log
|
||||
grep -r -L "\"use strict\";" --include=*.js ${ROOT_PATH}/Model > ${INSPECTION_PATH}/Model/strict_missing_js.log
|
||||
grep -r -L "\"use strict\";" --include=*.js ${INSPECTION_PATH} > ${OUTPUT_PATH}/strict_missing_js.log
|
||||
|
|
@ -1,10 +1,9 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start js style inspection"
|
||||
echo "#################################################"
|
||||
|
||||
npx eslint ${ROOT_PATH}/jsOMS -c ${BUILD_PATH}/Config/.eslintrc.json -o ${INSPECTION_PATH}/Framework/eslint.txt
|
||||
npx eslint ${ROOT_PATH}/jsOMS -c ${BUILD_PATH}/Config/.eslintrc.json -o ${INSPECTION_PATH}/Test/Js/junit_eslint.xml -f junit
|
||||
npx eslint ${INSPECTION_PATH} -c ${BUILD_PATH}/Config/.eslintrc.json -o ${OUTPUT_PATH}/eslint.txt
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start json linting inspection"
|
||||
|
|
|
|||
|
|
@ -1,21 +1,12 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start php linting inspection"
|
||||
echo "#################################################"
|
||||
|
||||
find ${ROOT_PATH}/phpOMS -name "*.php" | xargs -L1 php -l > ${INSPECTION_PATH}/logs/temp.log
|
||||
sed '/^No syntax.*/ d' < ${INSPECTION_PATH}/logs/temp.log > ${INSPECTION_PATH}/Framework/linting_php.log
|
||||
find ${INSPECTION_PATH} -name "*.php" | xargs -L1 php -l > ${OUTPUT_PATH}/temp.log
|
||||
sed '/^No syntax.*/ d' < ${OUTPUT_PATH}/temp.log > ${OUTPUT_PATH}/linting_php.log
|
||||
|
||||
find ${ROOT_PATH}/Web -name "*.php" | xargs -L1 php -l > ${INSPECTION_PATH}/logs/temp.log
|
||||
sed '/^No syntax.*/ d' < ${INSPECTION_PATH}/logs/temp.log > ${INSPECTION_PATH}/Framework/linting_php.log
|
||||
|
||||
find ${ROOT_PATH}/Modules -name "*.php" | xargs -L1 php -l > ${INSPECTION_PATH}/logs/temp.log
|
||||
sed '/^No syntax.*/ d' < ${INSPECTION_PATH}/logs/temp.log > ${INSPECTION_PATH}/Modules/linting_php.log
|
||||
|
||||
find ${ROOT_PATH}/Model -name "*.php" | xargs -L1 php -l > ${INSPECTION_PATH}/logs/temp.log
|
||||
sed '/^No syntax.*/ d' < ${INSPECTION_PATH}/logs/temp.log > ${INSPECTION_PATH}/Model/linting_php.log
|
||||
|
||||
rm ${INSPECTION_PATH}/logs/temp.log
|
||||
rm ${OUTPUT_PATH}/temp.log
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start php security inspection"
|
||||
|
|
@ -38,21 +38,12 @@ CODE[27]="action=\""
|
|||
CODE[28]="ReflectionClass"
|
||||
CODE[29]="TestUtils"
|
||||
|
||||
touch ${INSPECTION_PATH}/Framework/critical_php.log
|
||||
touch ${INSPECTION_PATH}/Modules/critical_php.log
|
||||
touch ${INSPECTION_PATH}/Model/critical_php.log
|
||||
touch ${INSPECTION_PATH}/Web/critical_php.log
|
||||
touch ${OUTPUT_PATH}/critical_php.log
|
||||
|
||||
for i in "${CODE[@]}"
|
||||
do
|
||||
grep -rlni "$i" --include \*.php ${ROOT_PATH}/phpOMS >> ${INSPECTION_PATH}/Framework/critical_php.log
|
||||
grep -rlni "$i" --include \*.php ${ROOT_PATH}/Modules >> ${INSPECTION_PATH}/Modules/critical_php.log
|
||||
grep -rlni "$i" --include \*.php ${ROOT_PATH}/Model >> ${INSPECTION_PATH}/Model/critical_php.log
|
||||
grep -rlni "$i" --include \*.php ${ROOT_PATH}/Web >> ${INSPECTION_PATH}/Web/critical_php.log
|
||||
grep -rlni "$i" --include \*.php ${INSPECTION_PATH} >> ${OUTPUT_PATH}/critical_php.log
|
||||
done
|
||||
|
||||
# PHP strict type
|
||||
grep -r -L "declare(strict_types=1);" --include=*.php --exclude={*.tpl.php,*Hooks.php,*Routes.php,*SearchCommands.php} ${ROOT_PATH}/phpOMS > ${INSPECTION_PATH}/Framework/strict_missing_php.log
|
||||
grep -r -L "declare(strict_types=1);" --include=*.php --exclude={*.tpl.php,*Hooks.php,*Routes.php,*SearchCommands.php} ${ROOT_PATH}/Modules > ${INSPECTION_PATH}/Modules/strict_missing_php.log
|
||||
grep -r -L "declare(strict_types=1);" --include=*.php --exclude={*.tpl.php,*Hooks.php,*Routes.php,*SearchCommands.php} ${ROOT_PATH}/Model > ${INSPECTION_PATH}/Model/strict_missing_php.log
|
||||
grep -r -L "declare(strict_types=1);" --include=*.php --exclude={*.tpl.php,*Hooks.php,*Routes.php,*SearchCommands.php} ${ROOT_PATH}/Web > ${INSPECTION_PATH}/Web/strict_missing_php.log
|
||||
grep -r -L "declare(strict_types=1);" --include=*.php --exclude={*.tpl.php,*Hooks.php,*Routes.php,*SearchCommands.php} ${INSPECTION_PATH} > ${OUTPUT_PATH}/strict_missing_php.log || true
|
||||
|
|
|
|||
|
|
@ -1,17 +1,11 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start php stats inspection"
|
||||
echo "#################################################"
|
||||
|
||||
#
|
||||
php ${ROOT_PATH}/vendor/bin/phploc ${ROOT_PATH}/phpOMS/ > ${INSPECTION_PATH}/Framework/phploc.log
|
||||
php ${ROOT_PATH}/vendor/bin/phploc ${ROOT_PATH}/Web/ > ${INSPECTION_PATH}/Web/phploc.log
|
||||
php ${ROOT_PATH}/vendor/bin/phploc ${ROOT_PATH}/Modules/ > ${INSPECTION_PATH}/Modules/phploc.log
|
||||
php ${ROOT_PATH}/vendor/bin/phploc ${ROOT_PATH}/Model/ > ${INSPECTION_PATH}/Model/phploc.log
|
||||
|
||||
#
|
||||
php ${ROOT_PATH}/vendor/bin/phpmetrics --report-html=${INSPECTION_PATH}/Framework/metrics/metrics.html ${ROOT_PATH}/phpOMS/ >> ${INSPECTION_PATH}/Framework/build.log
|
||||
php ${ROOT_PATH}/vendor/bin/phpmetrics --report-html=${INSPECTION_PATH}/Modules/metrics/metrics.html ${ROOT_PATH}/Modules/ >> ${INSPECTION_PATH}/Modules/build.log
|
||||
php ${TOOLS_PATH}/vendor/bin/phploc ${INSPECTION_PATH} > ${OUTPUT_PATH}/phploc.log || true
|
||||
php ${TOOLS_PATH}/vendor/bin/phpmetrics --config=${BUILD_PATH}/Config/phpmetrics.json --junit=${OUTPUT_PATH}/junit_php.xml --report-html=${OUTPUT_PATH}/metrics ${INSPECTION_PATH} || true
|
||||
|
|
@ -1,17 +1,11 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start php style inspection"
|
||||
echo "#################################################"
|
||||
|
||||
php ${ROOT_PATH}/vendor/bin/phpcs ${ROOT_PATH}/phpOMS --standard="${BUILD_PATH}/Config/phpcs.xml" -s --report-full=${INSPECTION_PATH}/Framework/phpcs.log --report-junit=${INSPECTION_PATH}/Framework/phpcs.xml
|
||||
php ${ROOT_PATH}/vendor/bin/phpcs ${ROOT_PATH}/Web --standard="${BUILD_PATH}/Config/phpcs.xml" -s --report-full=${INSPECTION_PATH}/Web/phpcs.log --report-junit=${INSPECTION_PATH}/Web/phpcs.xml
|
||||
php ${ROOT_PATH}/vendor/bin/phpcs ${ROOT_PATH}/Modules --standard="${BUILD_PATH}/Config/phpcs.xml" -s --report-full=${INSPECTION_PATH}/Modules/phpcs.log --report-junit=${INSPECTION_PATH}/Modules/phpcs.xml
|
||||
php ${ROOT_PATH}/vendor/bin/phpcs ${ROOT_PATH}/Model --standard="${BUILD_PATH}/Config/phpcs.xml" -s --report-full=${INSPECTION_PATH}/Model/phpcs.log --report-junit=${INSPECTION_PATH}/Model/phpcs.xml
|
||||
php ${TOOLS_PATH}/vendor/bin/phpcs --severity=1 ${INSPECTION_PATH} --standard="${BUILD_PATH}/Config/phpcs.xml" -s --report-full=${OUTPUT_PATH}/phpcs.log --report-junit=${OUTPUT_PATH}/phpcs.xml || true
|
||||
|
||||
php ${ROOT_PATH}/vendor/bin/rector --dry-run --config ${BUILD_PATH}/Config/rector.php process ${ROOT_PATH}/phpOMS > ${INSPECTION_PATH}/Framework/rector.log
|
||||
php ${ROOT_PATH}/vendor/bin/rector --dry-run --config ${BUILD_PATH}/Config/rector.php process ${ROOT_PATH}/Web > ${INSPECTION_PATH}/Modules/rector.log
|
||||
php ${ROOT_PATH}/vendor/bin/rector --dry-run --config ${BUILD_PATH}/Config/rector.php process ${ROOT_PATH}/Modules > ${INSPECTION_PATH}/Modules/rector.log
|
||||
php ${ROOT_PATH}/vendor/bin/rector --dry-run --config ${BUILD_PATH}/Config/rector.php process ${ROOT_PATH}/Web > ${INSPECTION_PATH}/Web/rector.log
|
||||
php ${TOOLS_PATH}/vendor/bin/rector process --dry-run --config ${BUILD_PATH}/Config/rector.php ${INSPECTION_PATH} > ${OUTPUT_PATH}/rector.log || true
|
||||
|
|
|
|||
|
|
@ -1,21 +1,18 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start php unit tests inspection"
|
||||
echo "#################################################"
|
||||
|
||||
php -d pcov.enabled=1 ${ROOT_PATH}/vendor/bin/phpunit -v --configuration ${ROOT_PATH}/tests/phpunit_default.xml --log-junit ${INSPECTION_PATH}/Test/Php/junit_php.xml --testdox-html ${INSPECTION_PATH}/Test/Php/index.html --coverage-html ${INSPECTION_PATH}/Test/Php/coverage --coverage-clover ${INSPECTION_PATH}/Test/Php/coverage.xml > ${INSPECTION_PATH}/Test/Php/phpunit.log
|
||||
php -dpcov.enabled=1 -dxdebug.mode=coverage ${TOOLS_PATH}/vendor/bin/phpunit -v --configuration ${INSPECTION_PATH}/tests/phpunit_default.xml --log-junit ${OUTPUT_PATH}/junit_php.xml --testdox-html ${OUTPUT_PATH}/phpunit.html --coverage-html ${OUTPUT_PATH}/coverage --coverage-clover ${OUTPUT_PATH}/coverage.xml > ${OUTPUT_PATH}/phpunit.log || true
|
||||
|
||||
echo "#################################################"
|
||||
echo "Start php static inspection"
|
||||
echo "#################################################"
|
||||
|
||||
php -d memory_limit=4G ${ROOT_PATH}/vendor/bin/phpstan analyse --autoload-file=${ROOT_PATH}/phpOMS/Autoloader.php -l 9 -c ${BUILD_PATH}/Config/phpstan.neon ${ROOT_PATH}/phpOMS > ${INSPECTION_PATH}/Framework/phpstan.log
|
||||
php -d memory_limit=4G ${ROOT_PATH}/vendor/bin/phpstan analyse --autoload-file=${ROOT_PATH}/phpOMS/Autoloader.php -l 9 -c ${BUILD_PATH}/Config/phpstan.neon ${ROOT_PATH}/Modules > ${INSPECTION_PATH}/Modules/phpstan.log
|
||||
php -d memory_limit=4G ${ROOT_PATH}/vendor/bin/phpstan analyse --autoload-file=${ROOT_PATH}/phpOMS/Autoloader.php -l 9 -c ${BUILD_PATH}/Config/phpstan.neon ${ROOT_PATH}/Model > ${INSPECTION_PATH}/Model/phpstan.log
|
||||
php -d memory_limit=4G ${ROOT_PATH}/vendor/bin/phpstan analyse --autoload-file=${ROOT_PATH}/phpOMS/Autoloader.php -l 9 -c ${BUILD_PATH}/Config/phpstan.neon ${ROOT_PATH}/Web > ${INSPECTION_PATH}/Web/phpstan.log
|
||||
php -dmemory_limit=4G ${TOOLS_PATH}/vendor/bin/phpstan analyse --error-format=prettyJson --no-progress -l 9 -c ${BUILD_PATH}/Config/phpstan.neon ${INSPECTION_PATH} > ${OUTPUT_PATH}/phpstan.json || true
|
||||
|
||||
# Cli debugging
|
||||
# php -dzend_extension=xdebug.so -dxdebug.mode=debug -dxdebug.profiler_enable=1
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
#!/bin/bash
|
||||
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
# Mysql required with query logging
|
||||
# sudo apt-get install percona-toolkit
|
||||
mysqldumpslow -t 10 /var/log/mysql/mysql-slow.log > ${INSPECTION_PATH}/Sql/slow_queries.log
|
||||
mysqldumpslow -t 10 -s l /var/log/mysql/mysql-slow.log > ${INSPECTION_PATH}/Sql/locked_queries.log
|
||||
pt-query-digest /var/log/mysql/mysql-slow.log > ${INSPECTION_PATH}/Sql/query_details.log
|
||||
mysqldumpslow -t 10 /var/log/mysql/mysql-slow.log > ${OUTPUT_PATH}/slow_queries.log
|
||||
mysqldumpslow -t 10 -s l /var/log/mysql/mysql-slow.log > ${OUTPUT_PATH}/locked_queries.log
|
||||
pt-query-digest /var/log/mysql/mysql-slow.log > ${OUTPUT_PATH}/query_details.log
|
||||
|
|
@ -1,14 +1,14 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Include config
|
||||
. config.sh
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
# Setup database
|
||||
echo "#################################################"
|
||||
echo "Setup database"
|
||||
echo "#################################################"
|
||||
mysql -e 'drop database if exists oms;' -u ${DB_USER} --password="${DB_PASSWORD}"
|
||||
mysql -e 'create database oms;' -u ${DB_USER} --password="${DB_PASSWORD}"
|
||||
mysql -e 'drop database if exists omt;' -u ${DB_USER} --password="${DB_PASSWORD}"
|
||||
mysql -e 'create database omt;' -u ${DB_USER} --password="${DB_PASSWORD}"
|
||||
|
||||
# Build js
|
||||
#. Js/build.sh
|
||||
|
|
@ -26,12 +26,6 @@ echo "MYSQL queries"
|
|||
echo "#################################################"
|
||||
. ${BUILD_PATH}/Inspection/Sql/performance.sh
|
||||
|
||||
# Stats & metrics
|
||||
echo "#################################################"
|
||||
echo "PHP stats"
|
||||
echo "#################################################"
|
||||
. ${BUILD_PATH}/Inspection/Php/stats.sh
|
||||
|
||||
# Linting
|
||||
echo "#################################################"
|
||||
echo "Json and PHP linting"
|
||||
|
|
@ -66,121 +60,23 @@ echo "Custom js inspection"
|
|||
echo "#################################################"
|
||||
. ${BUILD_PATH}/Inspection/Js/security.sh
|
||||
|
||||
# Build internal test report
|
||||
# Stats & metrics
|
||||
echo "#################################################"
|
||||
echo "Internal test report"
|
||||
echo "PHP stats"
|
||||
echo "#################################################"
|
||||
|
||||
echo -e "Internal test report" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "Unit test" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Test/Php/phpunit.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "Static test" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Framework/phpstan.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/phpstan.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Model/phpstan.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/phpstan.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "PHP style test" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Framework/phpcs.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/phpcs.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Model/phpcs.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/phpcs.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
cat ${INSPECTION_PATH}/Framework/rector.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/rector.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Model/rector.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/rector.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "JS style test" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Framework/eslint.txt > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "Stats" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Framework/phploc.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/phploc.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Model/phploc.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/phploc.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "PHP security tests" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Framework/critical_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/critical_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Model/critical_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/critical_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
cat ${INSPECTION_PATH}/Framework/strict_missing_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/strict_missing_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Model/strict_missing_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/strict_missing_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "JS security tests" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Framework/critical_js.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/critical_js.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/critical_js.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
cat ${INSPECTION_PATH}/Framework/strict_missing_js.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/strict_missing_js.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Model/strict_missing_js.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/strict_missing_js.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "Linting tests" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Framework/linting_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/linting_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Model/linting_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/linting_php.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "DB queries" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Sql/slow_queries.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Sql/locked_queries.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Sql/query_details.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "Html tags" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Framework/html_tags.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/html_tags.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "Html syntax" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/html_syntax.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/html_syntax.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
|
||||
echo -e "\n\n#################################################" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo "Static text" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
echo -e "#################################################\n\n" > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Modules/static_text.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
cat ${INSPECTION_PATH}/Web/static_text.log > ${INSPECTION_PATH}/internal_test_report.txt
|
||||
. ${BUILD_PATH}/Inspection/Php/stats.sh
|
||||
|
||||
# Build external test report
|
||||
echo "#################################################"
|
||||
echo "Test report"
|
||||
echo "#################################################"
|
||||
php {TOOLS_PATH}/TestReportGenerator/src/index.php \
|
||||
-b ${ROOT_PATH} \
|
||||
php ${TOOLS_PATH}/TestReportGenerator/src/index.php \
|
||||
-b ${INSPECTION_PATH} \
|
||||
-l ${BUILD_PATH}/Config/reportLang.php \
|
||||
-s ${INSPECTION_PATH}/Test/Php/junit_phpcs.xml \
|
||||
-sj ${INSPECTION_PATH}/Test/Js/junit_eslint.xml \
|
||||
-a ${INSPECTION_PATH}/Test/Php/phpstan.json \
|
||||
-c ${INSPECTION_PATH}/Test/Php/coverage.xml \
|
||||
-u ${INSPECTION_PATH}/Test/Php/junit_php.xml \
|
||||
-d ${INSPECTION_PATH}/Test/ReportExternal \
|
||||
-s ${OUTPUT_PATH}/phpcs.xml \
|
||||
-sj ${OUTPUT_PATH}/junit_eslint.xml \
|
||||
-a ${OUTPUT_PATH}/phpstan.json \
|
||||
-c ${OUTPUT_PATH}/coverage.xml \
|
||||
-u ${OUTPUT_PATH}/junit_php.xml \
|
||||
-d ${OUTPUT_PATH}/ReportExternal \
|
||||
--version 1.0.0
|
||||
|
|
|
|||
|
|
@ -1,80 +1,162 @@
|
|||
const {By,Key,Builder} = require("selenium-webdriver");
|
||||
require("chromedriver");
|
||||
const chrome = require('selenium-webdriver/chrome');
|
||||
|
||||
let fs = require('fs');
|
||||
let path = require('path');
|
||||
|
||||
const delay = ms => new Promise(resolve => setTimeout(resolve, ms));
|
||||
|
||||
async function Screenshot(url, xpath, output) {
|
||||
let driver = await new Builder().forBrowser("chrome").build();
|
||||
let driver = await new Builder().forBrowser("chrome").build();
|
||||
|
||||
await driver.get(url).then(function () {
|
||||
return driver.manage().setTimeouts({implicit: 3000});
|
||||
}).then(function () {
|
||||
return driver.manage().window().setRect({width: 1440, height: 1024});
|
||||
}).then(function () {
|
||||
return driver.findElement(By.id("iLoginButton")).click();
|
||||
}).then(function () {
|
||||
return driver.sleep(2000);
|
||||
}).then(function () {
|
||||
return driver.findElement(By.xpath(xpath));
|
||||
}).then(function (ele) {
|
||||
return ele.takeScreenshot(true);
|
||||
}).then(function (encodedString) {
|
||||
return fs.writeFileSync(output, encodedString, 'base64');
|
||||
});
|
||||
let dir = path.dirname(output);
|
||||
if (!fs.existsSync(dir)) {
|
||||
fs.mkdirSync(dir, { recursive: true });
|
||||
}
|
||||
|
||||
return driver.quit();
|
||||
await driver.get(url).then(function () {
|
||||
return driver.manage().setTimeouts({implicit: 3000});
|
||||
}).then(function () {
|
||||
return driver.manage().window().setRect({width: 1024, height: 800});
|
||||
}).then(function () {
|
||||
return driver.findElement(By.id("iLoginButton")).click();
|
||||
}).then(function () {
|
||||
return driver.sleep(2000);
|
||||
}).then(function () {
|
||||
return driver.findElement(By.xpath(xpath));
|
||||
}).then(function (ele) {
|
||||
return ele.takeScreenshot(true);
|
||||
}).then(function (encodedString) {
|
||||
return fs.writeFileSync(output, encodedString, 'base64');
|
||||
});
|
||||
|
||||
return driver.quit();
|
||||
}
|
||||
|
||||
Screenshot(
|
||||
'http://127.0.0.1/admin/settings/general#c-tab-2',
|
||||
'//form[@id="fLocalization"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/general/settings-localization.png'
|
||||
).then(function () {
|
||||
Screenshot(
|
||||
'http://127.0.0.1/admin/settings/general#c-tab-2',
|
||||
'//div[@id="settings-localization-time"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/general/settings-localization-time.png'
|
||||
);
|
||||
}).then(function () {
|
||||
Screenshot(
|
||||
'http://127.0.0.1/admin/settings/general#c-tab-2',
|
||||
'//div[@id="settings-localization-numeric"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/general/settings-localization-numeric.png'
|
||||
);
|
||||
}).then(function () {
|
||||
Screenshot(
|
||||
'http://127.0.0.1/admin/settings/general#c-tab-2',
|
||||
'//div[@id="settings-localization-precision"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/general/settings-localization-precision.png'
|
||||
);
|
||||
}).then(function () {
|
||||
Screenshot(
|
||||
'http://127.0.0.1/admin/settings/general#c-tab-2',
|
||||
'//div[@id="settings-localization-weight"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/general/settings-localization-weight.png'
|
||||
);
|
||||
}).then(function () {
|
||||
Screenshot(
|
||||
'http://127.0.0.1/admin/settings/general#c-tab-2',
|
||||
'//div[@id="settings-localization-speed"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/general/settings-localization-speed.png'
|
||||
);
|
||||
}).then(function () {
|
||||
Screenshot(
|
||||
'http://127.0.0.1/admin/settings/general#c-tab-2',
|
||||
'//div[@id="settings-localization-length"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/general/settings-localization-length.png'
|
||||
);
|
||||
}).then(function () {
|
||||
Screenshot(
|
||||
'http://127.0.0.1/admin/settings/general#c-tab-2',
|
||||
'//div[@id="settings-localization-area"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/general/settings-localization-area.png'
|
||||
);
|
||||
}).then(function () {
|
||||
Screenshot(
|
||||
'http://127.0.0.1/admin/settings/general#c-tab-2',
|
||||
'//div[@id="settings-localization-volume"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/general/settings-localization-volume.png'
|
||||
);
|
||||
});
|
||||
const src = [
|
||||
// Help
|
||||
[
|
||||
'http://192.168.178.38/en/help/general',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Help/Docs/Help/img/help-general-readme.png'
|
||||
],
|
||||
|
||||
[
|
||||
'http://192.168.178.38/en/help/module/list',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Help/Docs/Help/img/help-general-module-list.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/backend/help/module/single?id=Admin',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Help/Docs/Help/img/help-general-module-readme.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/backend/help/module/single?id=Admin&page=Dev%2Fstructure',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Help/Docs/Help/img/help-general-module-structure.png'
|
||||
],
|
||||
|
||||
[
|
||||
'http://192.168.178.38/en/help/developer?id=Admin&page=Dev%2Fstructure',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Help/Docs/Help/img/help-developer-readme.png'
|
||||
],
|
||||
|
||||
// Groups
|
||||
[
|
||||
'http://192.168.178.38/en/admin/group/settings?id=3#c-tab-3',
|
||||
'//*[@id="permissionForm"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-group-settings-permission-form.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/admin/group/settings?id=3#c-tab-3',
|
||||
'//*[@id="igroup-tabs"]/div[2]/div[3]/div/div[2]/div',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-group-settings-permission-list.png'
|
||||
],
|
||||
|
||||
// Accounts
|
||||
[
|
||||
'http://192.168.178.38/en/admin/account/settings?id=1#c-tab-3',
|
||||
'//*[@id="permissionForm"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-account-settings-permission-form.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/admin/account/settings?id=1#c-tab-3',
|
||||
'//*[@id="iaccount-tabs"]/div[2]/div[3]/div/div[2]/div',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-account-settings-permission-list.png'
|
||||
],
|
||||
|
||||
// Modules
|
||||
[
|
||||
'http://192.168.178.38/en/admin/module/info?id=Admin',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-module-info.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/admin/module/settings?id=Admin#c-tab-1',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-module-settings-general.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/admin/module/navigation/list?id=Admin',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-module-settings-navigation.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/admin/module/route/list?id=Admin',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-module-settings-routes.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/admin/module/hook/list?id=Admin',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-module-settings-hooks.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/admin/module/log?id=Admin',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-module-settings-logs.png'
|
||||
],
|
||||
|
||||
// Admin-settings
|
||||
[
|
||||
'http://192.168.178.38/en/admin/module/settings?id=Admin#c-tab-1',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-module-admin-settings-general.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/admin/module/settings?id=Admin#c-tab-2',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-module-admin-settings-localization.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/admin/module/settings?id=Admin#c-tab-3',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-module-admin-settings-design.png'
|
||||
],
|
||||
[
|
||||
'http://192.168.178.38/en/admin/module/settings?id=Admin#c-tab-5',
|
||||
'//*[@id="content"]',
|
||||
__dirname + '/../../Modules/Admin/Docs/Help/img/admin-module-admin-settings-list.png'
|
||||
],
|
||||
];
|
||||
const length = src.length;
|
||||
|
||||
(async function loop() {
|
||||
for (let i = 0; i < length; ++i) {
|
||||
try {
|
||||
Screenshot(
|
||||
src[i][0],
|
||||
src[i][1],
|
||||
src[i][2]
|
||||
);
|
||||
|
||||
await delay(1000);
|
||||
} catch(error) {
|
||||
console.error(error);
|
||||
}
|
||||
}
|
||||
})();
|
||||
|
||||
// "C:\Program Files\nodejs\node.exe" Build/Js/createImages.js
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
$postBody = $_POST['payload'] ?? '';
|
||||
$payload = \json_decode($postBody, true);
|
||||
|
||||
if (isset($payload['organization'], $payload['organization']['login'])
|
||||
&& $payload['organization']['login'] === 'Karaka'
|
||||
) {
|
||||
\shell_exec('./buildProject.sh > /dev/null 2>/dev/null &');
|
||||
|
||||
echo 'Installing';
|
||||
} else {
|
||||
echo 'Invalid payload';
|
||||
}
|
||||
|
|
@ -1,95 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Include config
|
||||
. config.sh
|
||||
|
||||
# Clean setup
|
||||
echo "#################################################"
|
||||
echo "Remove old setup"
|
||||
echo "#################################################"
|
||||
|
||||
# Previous cleanup
|
||||
rm -r -f ${ROOT_PATH}
|
||||
rm -r -f ${BASE_PATH}/phpOMS
|
||||
rm -r -f ${BASE_PATH}/jsOMS
|
||||
rm -r -f ${BASE_PATH}/cssOMS
|
||||
rm -r -f ${TOOLS_PATH}
|
||||
|
||||
rm -r -f ${INSPECTION_PATH}
|
||||
mkdir -p ${INSPECTION_PATH}
|
||||
|
||||
cd ${BASE_PATH}
|
||||
|
||||
echo "#################################################"
|
||||
echo "Setup repositories"
|
||||
echo "#################################################"
|
||||
|
||||
# Create git repositories
|
||||
for i in "${GITHUB_URL[@]}"
|
||||
do
|
||||
git clone -b ${GIT_BRANCH} $i >/dev/null
|
||||
done
|
||||
|
||||
cd ${ROOT_PATH}
|
||||
git submodule update --init --recursive >/dev/null
|
||||
git submodule foreach git checkout develop >/dev/null
|
||||
|
||||
echo "#################################################"
|
||||
echo "Setup build output"
|
||||
echo "#################################################"
|
||||
|
||||
# Creating directories for inspection
|
||||
mkdir -p ${INSPECTION_PATH}/logs
|
||||
mkdir -p ${INSPECTION_PATH}/Framework/logs
|
||||
mkdir -p ${INSPECTION_PATH}/Framework/metrics
|
||||
#mkdir -p ${INSPECTION_PATH}/Framework/pdepend
|
||||
mkdir -p ${INSPECTION_PATH}/Framework/phpcs
|
||||
mkdir -p ${INSPECTION_PATH}/Framework/phpcpd
|
||||
mkdir -p ${INSPECTION_PATH}/Framework/linting
|
||||
mkdir -p ${INSPECTION_PATH}/Framework/html
|
||||
|
||||
mkdir -p ${INSPECTION_PATH}/Modules/logs
|
||||
mkdir -p ${INSPECTION_PATH}/Modules/metrics
|
||||
#mkdir -p ${INSPECTION_PATH}/Modules/pdepend
|
||||
mkdir -p ${INSPECTION_PATH}/Modules/phpcs
|
||||
mkdir -p ${INSPECTION_PATH}/Modules/phpcpd
|
||||
mkdir -p ${INSPECTION_PATH}/Modules/linting
|
||||
mkdir -p ${INSPECTION_PATH}/Modules/html
|
||||
|
||||
mkdir -p ${INSPECTION_PATH}/Web/logs
|
||||
mkdir -p ${INSPECTION_PATH}/Web/metrics
|
||||
#mkdir -p ${INSPECTION_PATH}/Web/pdepend
|
||||
mkdir -p ${INSPECTION_PATH}/Web/phpcs
|
||||
mkdir -p ${INSPECTION_PATH}/Web/phpcpd
|
||||
mkdir -p ${INSPECTION_PATH}/Web/linting
|
||||
mkdir -p ${INSPECTION_PATH}/Web/html
|
||||
|
||||
mkdir -p ${INSPECTION_PATH}/Framework
|
||||
mkdir -p ${INSPECTION_PATH}/Web
|
||||
mkdir -p ${INSPECTION_PATH}/Model
|
||||
mkdir -p ${INSPECTION_PATH}/Modules
|
||||
|
||||
mkdir -p ${INSPECTION_PATH}/Test/Php
|
||||
mkdir -p ${INSPECTION_PATH}/Test/Js
|
||||
mkdir -p ${INSPECTION_PATH}/Test/sitespeed
|
||||
|
||||
mkdir -p ${INSPECTION_PATH}/Sql
|
||||
|
||||
# Permission handling
|
||||
chmod -R 777 ${ROOT_PATH}
|
||||
|
||||
# Setup tools for inspection
|
||||
mkdir -p ${TOOLS_PATH}
|
||||
|
||||
echo "#################################################"
|
||||
echo "Setup tools"
|
||||
echo "#################################################"
|
||||
|
||||
cd ${ROOT_PATH}
|
||||
composer install
|
||||
npm install
|
||||
|
||||
cd ${BUILD_PATH}
|
||||
|
||||
# Run inspection
|
||||
. ${BUILD_PATH}/Inspection/inspect.sh
|
||||
12
config.sh
12
config.sh
|
|
@ -1,21 +1,19 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Paths
|
||||
BASE_PATH="/var/www/html"
|
||||
ROOT_PATH="/var/www/html/Karaka"
|
||||
BUILD_PATH="/var/www/html/Build"
|
||||
BASE_PATH="${BUILD_PATH}/.."
|
||||
ROOT_PATH="${BUILD_PATH}/.."
|
||||
|
||||
TOOLS_PATH="/var/www/html/Tools"
|
||||
TOOLS_PATH="${BUILD_PATH}/.."
|
||||
RELEASE_PATH="/var/www/html/Release"
|
||||
INSPECTION_PATH="/var/www/html/Inspection"
|
||||
|
||||
# Web
|
||||
WEB_URL="http://jingga.app"
|
||||
MAIL_ADDR=""
|
||||
|
||||
# Authentications
|
||||
DB_USER="root"
|
||||
DB_PASSWORD="root"
|
||||
DB_USER="test"
|
||||
DB_PASSWORD="orange"
|
||||
|
||||
# Git variables
|
||||
GITHUB_URL[0]="https://github.com/Karaka-Management/Karaka.git"
|
||||
|
|
|
|||
47
php.sh
Normal file
47
php.sh
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Include config
|
||||
BUILD_PATH="$(dirname "$(readlink -f "$0")")"
|
||||
. "${BUILD_PATH}/config.sh"
|
||||
|
||||
if [ $# -eq 0 ]; then
|
||||
echo "No parameters provided."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
REPO_PATH="$1"
|
||||
BASE_NAME=$(basename "$REPO_PATH" .git)
|
||||
INSPECTION_PATH="$(realpath "$2")/${BASE_NAME}"
|
||||
OUTPUT_PATH="$(realpath "$2")/${BASE_NAME}/build"
|
||||
|
||||
if [ "$OUTPUT_PATH" == "/" ] || [ "$INSPECTION_PATH" == "/" ]; then
|
||||
echo "Bad path"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rm -rf "${INSPECTION_PATH}"
|
||||
|
||||
git clone --recurse-submodules ${REPO_PATH} ${INSPECTION_PATH}
|
||||
git -C ${INSPECTION_PATH} checkout develop
|
||||
git -C ${INSPECTION_PATH} pull
|
||||
git -C ${INSPECTION_PATH} submodule foreach 'git checkout develop || true'
|
||||
git -C ${INSPECTION_PATH} submodule foreach 'git pull || true'
|
||||
|
||||
mkdir -p "${OUTPUT_PATH}"
|
||||
mkdir -p "${OUTPUT_PATH}/ReportExternal"
|
||||
mkdir -p "${OUTPUT_PATH}/coverage"
|
||||
mkdir -p "${OUTPUT_PATH}/phpunit"
|
||||
mkdir -p "${OUTPUT_PATH}/metrics"
|
||||
|
||||
if [[ ${BASE_NAME} == *"oms-"* ]]; then
|
||||
mkdir -p ${INSPECTION_PATH}/MainRepository
|
||||
cp -R ${INSPECTION_PATH}/../../Karaka/* ${INSPECTION_PATH}/MainRepository
|
||||
# git clone --recurse-submodules https://github.com/Karaka-Management/Karaka.git ${INSPECTION_PATH}/MainRepository
|
||||
# git -C ${INSPECTION_PATH}/MainRepository checkout develop
|
||||
# git -C ${INSPECTION_PATH}/MainRepository pull
|
||||
# git -C ${INSPECTION_PATH}/MainRepository submodule foreach 'git checkout develop || true'
|
||||
# git -C ${INSPECTION_PATH}/MainRepository submodule foreach 'git pull || true'
|
||||
fi
|
||||
|
||||
# Run inspection
|
||||
. ${BUILD_PATH}/Inspection/inspect.sh
|
||||
Loading…
Reference in New Issue
Block a user