Skip to content

Commit e146632

Browse files
author
Vítězslav Dvořák
committed
fail with correct exitcode
1 parent 251602c commit e146632

File tree

4 files changed

+61
-9
lines changed

4 files changed

+61
-9
lines changed

debian/changelog

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,15 @@
1-
pohoda-raiffeisenbank (1.1.1) UNRELEASED; urgency=medium
1+
pohoda-raiffeisenbank (1.1.2) UNRELEASED; urgency=medium
22

3+
* Fail with correct exitpode
4+
5+
-- <vitezslav.dvorak@spojenet.cz> Mon, 09 Dec 2024 11:37:42 +0100
6+
7+
pohoda-raiffeisenbank (1.1.1) jammy; urgency=medium
8+
9+
[ vitex ]
310
* code cleanup. PohodaSQL attachnent fix
411

5-
-- vitex <info@vitexsoftware.cz> Tue, 03 Dec 2024 00:45:54 +0100
12+
-- <vitezslav.dvorak@spojenet.cz> Mon, 09 Dec 2024 11:37:22 +0100
613

714
pohoda-raiffeisenbank (1.1.0) jammy; urgency=medium
815

src/pohoda-raiffeisenbank-statements.php

Lines changed: 34 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,43 @@
2222
/**
2323
* Get today's Statements list.
2424
*/
25-
\Ease\Shared::init(['POHODA_URL', 'POHODA_USERNAME', 'POHODA_PASSWORD', 'POHODA_ICO', 'CERT_FILE', 'CERT_PASS', 'XIBMCLIENTID', 'ACCOUNT_NUMBER'], $argv[1] ?? '../.env');
25+
$options = getopt('o::e::', ['output::environment::']);
26+
Shared::init(
27+
[
28+
'POHODA_URL', 'POHODA_USERNAME', 'POHODA_PASSWORD', 'POHODA_ICO',
29+
'CERT_FILE', 'CERT_PASS', 'XIBMCLIENTID', 'ACCOUNT_NUMBER',
30+
],
31+
\array_key_exists('environment', $options) ? $options['environment'] : '../.env',
32+
);
33+
$destination = \array_key_exists('output', $options) ? $options['output'] : \Ease\Shared::cfg('RESULT_FILE', 'php://stdout');
34+
2635
PohodaBankClient::checkCertificatePresence(\Ease\Shared::cfg('CERT_FILE'));
2736
$engine = new Statementor(\Ease\Shared::cfg('ACCOUNT_NUMBER'));
2837
$engine->setScope(\Ease\Shared::cfg('IMPORT_SCOPE', 'last_month'));
2938
$engine->logBanner('', 'Scope: '.$engine->scope);
39+
$report = [
40+
'sharepoint' => [],
41+
'pohoda' => [],
42+
'pohodaSQL' => [],
43+
];
44+
45+
try {
46+
$engine->downloadXML();
47+
} catch (\VitexSoftware\Raiffeisenbank\ApiException $exc) {
48+
$report['mesage'] = $exc->getMessage();
49+
50+
$exitcode = $exc->getCode();
51+
52+
if (!$exitcode) {
53+
if (preg_match('/cURL error ([0-9]*):/', $report['mesage'], $codeRaw)) {
54+
$exitcode = (int) $codeRaw[1];
55+
}
56+
}
57+
}
3058

31-
$engine->downloadXML();
3259
$inserted = $engine->import();
60+
61+
$written = file_put_contents($destination, json_encode($report, Shared::cfg('DEBUG') ? \JSON_PRETTY_PRINT : 0));
62+
$engine->addStatusMessage(sprintf(_('Saving result to %s'), $destination), $written ? 'success' : 'error');
63+
64+
exit($exitcode);

src/pohodaSQL-raiffeisenbank-statements-sharepoint.php

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,19 @@
5050
'pohodaSQL' => [],
5151
];
5252

53-
$pdfStatements = $engine->downloadPDF();
53+
try {
54+
$pdfStatements = $engine->downloadPDF();
55+
} catch (\VitexSoftware\Raiffeisenbank\ApiException $exc) {
56+
$report['mesage'] = $exc->getMessage();
57+
58+
$exitcode = $exc->getCode();
59+
60+
if (!$exitcode) {
61+
if (preg_match('/cURL error ([0-9]*):/', $report['mesage'], $codeRaw)) {
62+
$exitcode = (int) $codeRaw[1];
63+
}
64+
}
65+
}
5466

5567
if ($pdfStatements) {
5668
sleep(5);

src/raiffeisenbank-statements-sharepoint-checker.php

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,11 +88,12 @@
8888
}
8989
} catch (\VitexSoftware\Raiffeisenbank\ApiException $exc) {
9090
$report['mesage'] = $exc->getMessage();
91-
$engine->addStatusMessage($report['mesage'],'error');
91+
$engine->addStatusMessage($report['mesage'], 'error');
9292
$exitcode = $exc->getCode();
93-
if(!$exitcode){
94-
if(preg_match('/cURL error ([0-9]*):/', $report['mesage'], $codeRaw)){
95-
$exitcode = (int)$codeRaw[1];
93+
94+
if (!$exitcode) {
95+
if (preg_match('/cURL error ([0-9]*):/', $report['mesage'], $codeRaw)) {
96+
$exitcode = (int) $codeRaw[1];
9697
}
9798
}
9899
}

0 commit comments

Comments
 (0)