Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
961 commits
Select commit Hold shift + click to select a range
90651b5
job launch time comparsion fix
Vitexus Nov 22, 2024
85509f8
job to run condition fix
Vitexus Nov 23, 2024
f038a27
job to run condition fix another try
Vitexus Nov 23, 2024
8d2bdce
Better Logging of Job phases to Zabbix
Vitexus Nov 24, 2024
11d4bb8
Refresh JobListing on main page every minute
Vitexus Nov 25, 2024
8c48a6f
better job2zabbix reporting
Vitexus Nov 26, 2024
55f264b
job2zabbix reporting - missing values add
Vitexus Nov 26, 2024
bfec561
clone runtemplate with all configuration fields & its values
Vitexus Nov 26, 2024
9e51b78
Initial Devcontainer
Vitexus Nov 26, 2024
811066a
Credentials introduced
Vitexus Nov 27, 2024
0f548d5
Credentials apply somehow
Vitexus Nov 27, 2024
67eee1c
AbraFlexi dependencies removal
Vitexus Nov 27, 2024
7574202
json fix
Vitexus Nov 27, 2024
a940d86
AbraFlexi environment injector removal
Vitexus Nov 28, 2024
b5f50d8
Nicest Company Apps bar
Vitexus Nov 28, 2024
cb4ec85
Requirements Overview for Admin
Vitexus Nov 28, 2024
8d220ca
mServer form added
Vitexus Nov 28, 2024
6135c5f
typo fix
Vitexus Nov 28, 2024
9a64c06
better appJson import
Vitexus Nov 29, 2024
d2bdfbc
keep the executed subprocess pid in job table
Vitexus Nov 29, 2024
37e1c51
try to report PID
Vitexus Nov 30, 2024
2db7afb
empty array fix
Vitexus Nov 30, 2024
68dc8b3
Show last job status on App Runtemplates overview
Vitexus Dec 1, 2024
3e5f5ab
non existing default value fix
Vitexus Dec 1, 2024
98462f3
debug exit removal
Vitexus Dec 1, 2024
be56101
send zabbix debug info only in debug mode
Vitexus Dec 1, 2024
96fbccc
Credentials UI Done
Vitexus Dec 1, 2024
736506e
v1.21.0 release
Vitexus Dec 1, 2024
6e0fd18
we use unsigned keys only
Vitexus Dec 1, 2024
0f5966a
code reformat
Vitexus Dec 1, 2024
73f1815
another key fix
Vitexus Dec 1, 2024
b4b057f
native executor pid fix
Vitexus Dec 2, 2024
8234631
common executor pid initialized as null
Vitexus Dec 2, 2024
840e899
Credential Clonner added
Vitexus Dec 3, 2024
3f93fff
update
Dec 3, 2024
edad179
Office365 and SQLServer requirement forms added
Dec 3, 2024
8950cf3
FioBank requirement form added
Dec 3, 2024
c023460
Topics & RunTemplate to topics tables
Dec 3, 2024
348c9de
Credential Selector now use selectize
Dec 3, 2024
114ff32
Copmpany Runtemplate Status Links fix
Dec 3, 2024
f8cdd81
try to show runtemplates using credential
Dec 3, 2024
e27db52
App Remover Update
Vitexus Dec 4, 2024
d303160
maximum app icon in CompanyAppsBar is 150px
Vitexus Dec 4, 2024
6be88b9
Requirement icons moved to separate files
Vitexus Dec 4, 2024
a78adc3
better Credentials Assigment
Vitexus Dec 5, 2024
a296651
Nonexistent Requirement form fix
Vitexus Dec 5, 2024
8ed626a
Office365 Form update
Dec 5, 2024
eefbafc
mServer logo update
Dec 5, 2024
200e69e
requirements input added to Application editor
Vitexus Dec 6, 2024
5663cc7
Requirements forms captions update
Vitexus Dec 6, 2024
d043e97
better work with zabbix data
Dec 6, 2024
0fae34e
Catch the JobExecutionTimeout exception
Dec 6, 2024
b928a35
RequirementsForms update
Dec 6, 2024
629f4d9
New Credential type Table
Dec 6, 2024
7088c8c
Server Api Moved to separate package vitexsoftware/multiflexi-api-server
Vitexus Dec 7, 2024
12c1ef0
API Engine update
Vitexus Dec 7, 2024
22d1359
copanies rename fix
Vitexus Dec 9, 2024
6f4030a
The Artifacts introduced
Vitexus Dec 9, 2024
a9aaf10
packaging update
Vitexus Dec 9, 2024
ee61367
api packaging fix
Vitexus Dec 9, 2024
5c641a1
companysetup fix
Dec 10, 2024
07bfe5d
do not fail when no lastModifiedColumn is set
Dec 10, 2024
3eec8bb
fixed nonempty array when no requirements requested
Dec 10, 2024
c65c231
credentials provider fix
Dec 10, 2024
03e2023
artifact now hold note
Vitexus Dec 12, 2024
5acf8db
show emoticons on interval chooser
Vitexus Dec 12, 2024
f022058
companies bar added at top of main page
Vitexus Dec 12, 2024
4182fea
Keep Full Job Environment
Dec 12, 2024
bcf1c3c
better cli
Vitexus Dec 13, 2024
d8fea5a
CompanyApp Job Chart added
Vitexus Dec 14, 2024
0288e23
Show credentials on Job page
Vitexus Dec 15, 2024
6f0c518
EASE_LOGGER=syslog|console for jobs
Vitexus Dec 15, 2024
efc2060
JobChart added
Vitexus Dec 15, 2024
85d747e
#18 Docker files moved to separate directory
Vitexus Dec 16, 2024
9df8e85
Configuration fields described in documentation
Dec 17, 2024
a513284
Fix all mysql tables to utf8mb4
Dec 17, 2024
85b8b1c
ACCOUNT_CURRENCY is new configuration field for RaiffesneBank
Dec 17, 2024
712d894
raiffeisen bank form update
Dec 17, 2024
3e1c31f
do not use default value as prefilled value
Dec 17, 2024
66878f2
documentation update
Dec 17, 2024
af35176
documentation update - image path fix
Dec 17, 2024
754bb64
Merge origin/main into main
Vitexus Dec 17, 2024
f246a91
Status endpoint added to api
Vitexus Dec 20, 2024
b80e62c
diagnostic endpoints /status & /jobs/status added to API
Vitexus Dec 21, 2024
8e71a8a
manpage install fix
Vitexus Dec 21, 2024
6760af4
try to setup php loader for api server
Vitexus Dec 21, 2024
b8723f0
add Symfony/DI dependency to multiflexiAPI
Vitexus Dec 21, 2024
e421fbd
try to fix api php autoloader for debian
Vitexus Dec 22, 2024
44e5102
wiew & download runtemplate environment
Vitexus Dec 24, 2024
312f42f
api dependencies moved to package multiflexi-server
Vitexus Dec 24, 2024
a03c066
dependency updated for multiflexi-api
Vitexus Dec 24, 2024
ccae7c8
php dependency fix for multiflexi-api deb
Vitexus Dec 24, 2024
8d55dc5
scheduled job now can obtain its uploaded file
Vitexus Dec 25, 2024
caf3925
finally use of uploaded files
Vitexus Dec 25, 2024
dc2536b
Store also Runtemplate updads
Vitexus Dec 27, 2024
34102bb
better runtemplate files uploader
Vitexus Dec 27, 2024
142026a
all mysql migrations pass
Vitexus Dec 31, 2024
babf1bf
installation documentation update
Vitexus Dec 31, 2024
4404ce4
fix api autoloader
Vitexus Jan 1, 2025
58a40bf
try to update installation documentation
Vitexus Jan 1, 2025
0db6759
composer config update
Vitexus Jan 1, 2025
3277e1f
reformat of installation
Vitexus Jan 1, 2025
97f4887
do not build for ubuntu 20 Focal
Vitexus Jan 1, 2025
73d52a6
Installation docs update
Vitexus Jan 1, 2025
c48903a
try for beautyfull documentation
Vitexus Jan 1, 2025
415c46c
install doc reformat
Vitexus Jan 1, 2025
d9ec647
even bettter install.rst
Vitexus Jan 1, 2025
5f2c979
install doc cleanup
Vitexus Jan 1, 2025
e4a1bf6
multiflexi-all tip
Vitexus Jan 1, 2025
9c9a95e
even bettter install.rst
Vitexus Jan 1, 2025
e27b28c
successfull installation screenshot added
Vitexus Jan 1, 2025
93e10e2
Info about packages availble
Vitexus Jan 1, 2025
aa98762
installation page maybee done
Vitexus Jan 1, 2025
9781324
install attention
Vitexus Jan 1, 2025
0f7b086
use docker for booworm in case of trixie
Vitexus Jan 1, 2025
ee3211f
New Develoment page added
Vitexus Jan 2, 2025
28b324c
api docs updated
Vitexus Jan 2, 2025
d1aabb3
api page update
Vitexus Jan 2, 2025
1a270c0
Migrations updated
Vitexus Jan 3, 2025
9040a88
default action for multiflexi-phinx is migrate
Vitexus Jan 3, 2025
a8e1faf
create runtemplate table only when does not exists yet
Vitexus Jan 3, 2025
91c99e0
new user notification mail fixed
Vitexus Jan 3, 2025
077f277
try to fix testing container
Vitexus Jan 6, 2025
d565acb
fix: no executor is also string
Jan 6, 2025
426a900
added job flag 🏁
Vitexus Jan 9, 2025
77d57db
Merge branch 'main' of github.com:VitexSoftware/MultiFlexi
Jan 9, 2025
76a7b17
nice companyapp listing
Jan 9, 2025
bad80ed
Note about Java & Python App examples
Jan 14, 2025
ad1eee2
app first install issue fix
Jan 14, 2025
14c71af
default value for image column is null now
Jan 14, 2025
95f31b2
job output iporved
Vitexus Jan 15, 2025
5ace6ea
better background color for job result
Vitexus Jan 16, 2025
fbaa52e
installed /api/ fix
Vitexus Jan 16, 2025
4574c11
Installed Api works somehow
Vitexus Jan 17, 2025
6255e5d
Api Is Working somehow
Vitexus Jan 17, 2025
c458bf2
API Token Auth path fix
Vitexus Jan 17, 2025
f1a6aa6
variable name fix
Vitexus Jan 17, 2025
2048aca
do not modify api handler too much
Vitexus Jan 17, 2025
939cbfd
Base for credential editor added
Vitexus Jan 17, 2025
c3a8975
try to make api usable on any path
Vitexus Jan 17, 2025
b243bb8
the status functions added to multiflexi-cli
Vitexus Jan 17, 2025
37dfb61
better error output
Vitexus Jan 18, 2025
9aa5d05
prepare for zabbix status
Vitexus Jan 18, 2025
01825c0
new symphony basede cli interface
Vitexus Jan 19, 2025
c721acc
use new cli tool
Vitexus Jan 19, 2025
4cc927b
skeletons of new commandline operations added
Vitexus Jan 19, 2025
3e207f6
RunTemplate can be triggered using multiflexi-cli runtemplate trigger…
Vitexus Jan 19, 2025
1173be0
v1.25.0
Vitexus Jan 19, 2025
0c4011c
multiflexi-cli tool renamed to simply multiflexi
Vitexus Jan 20, 2025
e59f6f2
multiflexi-cli renamed to multiflexi
Vitexus Jan 20, 2025
785f0e2
try to get working devcontainer
Vitexus Jan 20, 2025
eab38bf
appstatus
Vitexus Jan 20, 2025
7e26b24
note about multiflexi-zabbix package
Vitexus Jan 20, 2025
72cfb2a
Rename Status fields
Vitexus Jan 20, 2025
d7c97bc
Initial listing of apps
Vitexus Jan 21, 2025
8df32f6
do not fall when result file is null
Jan 21, 2025
df3ed9c
Merge branch 'main' of github.com:VitexSoftware/MultiFlexi
Jan 21, 2025
81c364f
do not faill when serializig zabbix metrics
Jan 21, 2025
a00fc16
Do not fall when zabbix metric is not jsonized
Jan 21, 2025
00e3452
do not fall when zabbix send fail
Jan 21, 2025
bb074c5
caption fix
Vitexus Jan 24, 2025
0e46232
exitcode of yet scheduled job is NULL
Vitexus Jan 24, 2025
4ec9f7a
Successfull jobs green again
Vitexus Jan 29, 2025
6a4fb18
color by exitcode fix
Vitexus Jan 30, 2025
c7fcbb5
final exitcode widget fix
Vitexus Jan 30, 2025
e001f99
artifacts download & highlight added
Vitexus Jan 31, 2025
3b975e0
use badges for better job restult page
Vitexus Jan 31, 2025
3f4f7cb
show number of row produces as normal black number
Vitexus Jan 31, 2025
039f897
ReadTheDocs badge added to ReadMe
Vitexus Jan 31, 2025
9995aa5
easy way how to launch runtemplate
Feb 1, 2025
e349123
manpage for multiflexi-run-template added
Feb 1, 2025
ccca233
Strip slashes in job output
Feb 1, 2025
8d2fd8d
output the runtemplate's output
Feb 1, 2025
d2d0e35
Upload .env file to populate RunTemplate configuration
Feb 3, 2025
185177b
code reformat
Feb 3, 2025
1514bb7
sort environment items by key
Feb 4, 2025
3696f22
Composer dependencies update
Feb 4, 2025
7458f1b
On CompanyApp page show only runtemplates for rurrent copmany
Feb 4, 2025
e0a926a
Credential editor development
Vitexus Feb 4, 2025
6188339
runtemplate names on runtemplate links
Vitexus Feb 4, 2025
a636973
(un)active runtemplates
Vitexus Feb 10, 2025
a0e4a89
the runtemplates page
Vitexus Feb 10, 2025
8b155e8
Create RST - DOCtor-RST
Vitexus Feb 11, 2025
e7f7374
rename DOCtor-RST
Feb 11, 2025
2756990
Update DOCtor-RST.yml
Vitexus Feb 11, 2025
ecdf1af
doctor-rst rules added
Feb 11, 2025
75c3bf0
Merge branch 'main' of github.com:VitexSoftware/MultiFlexi
Feb 11, 2025
9ccb649
doctor rst used
Feb 11, 2025
7b68fdb
install rst update
Feb 11, 2025
1b7ae1a
docs link added to page bottom
Feb 11, 2025
ee801e2
Initial CredentialTypes overview
Vitexus Feb 11, 2025
5b0e967
Do not schedule inactive RunTemplates
Vitexus Feb 14, 2025
49baf8a
schedule only active runtemplates
Vitexus Feb 14, 2025
53abbdd
better links for schedule queue listing
Vitexus Feb 14, 2025
007e47a
Job Success Graph added
Vitexus Feb 18, 2025
1037e1e
Jobs Chart added
Vitexus Feb 18, 2025
0534ca6
remove reference to obsoleted "server" concept
Vitexus Feb 24, 2025
7c7d278
Alpha version of Credential editor
Vitexus Feb 25, 2025
3f9e64b
Do not fail when credential type icon is null
Vitexus Feb 26, 2025
5b0ca5d
Show job .env export on dedicated tab
Feb 26, 2025
9f29be4
try to stream job output to browser
Feb 27, 2025
86a2d7c
Alpha version of WebSocket Support
Vitexus Feb 28, 2025
560705b
Better Search
Vitexus Mar 2, 2025
d127225
rector used
Vitexus Mar 3, 2025
c3252b1
First working credential type editor
Vitexus Mar 4, 2025
17dde0e
CredentialType now can use its helper php class in "\MultiFlexi\Crede…
Vitexus Mar 4, 2025
ec22c49
CredentialType editor update
Vitexus Mar 4, 2025
df57be1
add credential type class to package
Mar 4, 2025
9c8a744
Initial Credential Types Added
Mar 5, 2025
749bb93
jobGraph moved to it's separated file
Vitexus Mar 7, 2025
dbba431
Redirect to result URL immediately if only one search result is found
Mar 10, 2025
06a7cdd
RunTemplate search is first option
Mar 10, 2025
8d05af6
prefill the # character in search box when runtemplate or job is sele…
Vitexus Mar 12, 2025
ab748d4
Link from credential to its Runtemplates fix
Vitexus Mar 12, 2025
3a71e7a
CredentialType now keep its settings
Vitexus Mar 24, 2025
acc6db1
nicer chart
Vitexus Mar 25, 2025
e348762
CredentialType editor is finally working somehow
Vitexus Mar 25, 2025
e3e0514
CredentialType helper logos and overview
Vitexus Mar 26, 2025
f28fbb7
Show logo on credential types listing page
Vitexus Mar 26, 2025
ddd445f
Initial conversion of CredentialType helper classes
Vitexus Mar 26, 2025
4b6bbf4
Testing ability added to CredentialType form
Vitexus Mar 27, 2025
74d0aa2
class obtaining error fix
Vitexus Mar 27, 2025
cec1981
CSAS CredentialType working now
Vitexus Mar 27, 2025
5c001e2
PHP Fatal error: Cannot use ::class with dynamic class name fix
Mar 27, 2025
6c15a53
CredentialType & Credential editor update
Vitexus Mar 31, 2025
fd64342
added link to MultiFlexi-Rust-App-Example
Vitexus Apr 3, 2025
d1f4350
Almost Finished Credential Chooser
Vitexus Apr 6, 2025
f0e51f8
Use twb4 style for selectize
Vitexus Apr 7, 2025
deb07f7
do not fail when ZabbixSender class is not present
Vitexus Apr 9, 2025
368479d
GetClass used
Vitexus Apr 9, 2025
f3bc6bf
do not buildd for bullseye
Vitexus Apr 9, 2025
7f74783
Remove PHP Zabbix dependencies in multiflexi-zabbix.prerm
Vitexus Apr 9, 2025
fed6f76
Evolution of CredentialTypes use
Vitexus Apr 13, 2025
df3c99c
CredentialType Chooser updated
Vitexus Apr 13, 2025
8532837
Assinging Credential to RunTemplate done
Vitexus Apr 14, 2025
5a31885
Native Executor now use CredentialFields
Vitexus Apr 14, 2025
ec449f8
AbraFlexi + Pohoda removal
Vitexus Apr 15, 2025
f2d6997
Migration Hotfix
Vitexus Apr 24, 2025
9532e99
zabbix prerm added
Vitexus Apr 26, 2025
a6b734d
Add echo statement for purging multiflexi zabbix in prerm script
Vitexus May 3, 2025
4647df1
install cboden/ratchet in any version
Vitexus May 18, 2025
7dd940b
Enhance credential management: update migration types, add multiLine …
Vitexus May 19, 2025
4cb0400
Modernized macro processing
Vitexus May 20, 2025
f51355a
Update composer dependencies, enhance ConfigField type handling, fix …
May 20, 2025
44d3216
Use the new smart Credential types everywhere
Vitexus May 21, 2025
6dc0cba
Merge branch 'main' into CredentialTypesUsed
Vitexus May 22, 2025
1eed1a0
cboden/ratchet version fix
May 22, 2025
94a0ca6
Merge pull request #19 from VitexSoftware/CredentialTypesUsed
Vitexus May 22, 2025
8114e81
Old syle Pohoda support removal
May 22, 2025
9465b5c
First try to switch on TWB5
May 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
14 changes: 14 additions & 0 deletions .devcontainer/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
APP_DEBUG=True
API_DEBUG=True
DB_HOST=localhost
DB_PORT=0
ENV DB_CONNECTION=sqlite
ENV DB_DATABASE=/opt/multiflexi/db/multiflexi.sqlite
DB_USERNAME=multiflexi
DB_PASSWORD=multiflexi
MULTIFLEXI_DAEMONIZE=0

#ZABBIX_SERVER=zabbix.spojenet.cz
#ZABBIX_SERVER=glencoe.vitexsoftware.brevnov.czf
#ZABBIX_HOST=gamer.vitexsoftware.brevnov.czf
#USE_ZABBIX_SENDER=1
31 changes: 31 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
FROM debian:latest

ARG BASE_IMAGE=mcr.microsoft.com/devcontainers/php:1-8.3
RUN groupadd -g 1000 vscode && useradd -u 1000 -g vscode -d /home/vscode -s /bin/bash vscode

RUN eval $(sed -n "s/vscode:[^:]*:\([^:]*\):\([^:]*\):[^:]*:\([^:]*\):[^:]*:\([^:]*\)/groupadd -g \2 vscode \&\& useradd -u \1 -g \2 -d \4 -s \5 vscode/p" /etc/passwd)


ENV APACHE_DOCUMENT_ROOT /opt/multiflexi/src
ENV COMPOSER_ALLOW_SUPERUSER 1
ENV DEBIAN_FRONTEND=noninteractive
ENV DB_CONNECTION=sqlite
ENV DB_DATABASE=/opt/multiflexi/db/multiflexi.sqlite

RUN apt update ; apt install -y wget lsb-release wget apt-transport-https libapache2-mod-php; echo "deb http://repo.vitexsoftware.com $(lsb_release -sc) main backports" | tee /etc/apt/sources.list.d/vitexsoftware.list ; wget -O /etc/apt/trusted.gpg.d/vitexsoftware.gpg http://repo.vitexsoftware.cz/keyring.gpg
RUN apt-get update && apt-get install -y locales php-pdo-sqlite apache2 aptitude composer php-cakephp-phinx php-curl php-yaml php-xml cron php-tools locales-all && rm -rf /var/lib/apt/lists/* \
&& localedef -i cs_CZ -c -f UTF-8 -A /usr/share/locale/locale.alias cs_CZ.UTF-8
ENV LANG cs_CZ.utf8

RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf
RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf

COPY . /opt/multiflexi
COPY .env /opt/multiflexi
COPY bin/multiflexi-probe /usr/bin

#RUN /usr/bin/php-devconf ; rm -f /opt/multiflexi/.env ; touch /opt/multiflexi/db/multiflexi.sqlite ; chown www-data:www-data /opt/multiflexi/db/multiflexi.sqlite ; cd /opt/multiflexi ; composer update ; cd src ; ../vendor/bin/phinx migrate -c ../phinx-adapter.php ; ../vendor/bin/phinx seed:run -c ../phinx-adapter.php; cd ../lib; php -f json2app.php ../tests/multiflexi_probe.multiflexi.app.json
#RUN a2ensite multiflexi

#CMD /usr/sbin/cron
CMD [ "/usr/sbin/apache2ctl", "-D", "FOREGROUND" ]
35 changes: 35 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"name": "MultiFlexi",
"build": {
"dockerfile": "Dockerfile",
"args": {},
"context": ".."
},
"runArgs": [
"-v",
"/var/run/docker.sock:/var/run/docker.sock:rw",
"--env-file",
".devcontainer/devcontainer.env"
],
"customizations": {
"vscode": {
"extensions": [
"DavidAnson.vscode-markdownlint",
"EditorConfig.EditorConfig"
],
"settings": {
"files.associations": {
},
"python.defaultInterpreterPath": "/usr/bin/python3"
}
}
},
"portsAttributes": {
"8000": {
"label": "Hello Remote World",
"onAutoForward": "notify"
}
},

"remoteUser": "vscode"
}
10 changes: 0 additions & 10 deletions .env

This file was deleted.

12 changes: 12 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# These are supported funding model platforms

github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: VitexSoftware
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
21 changes: 21 additions & 0 deletions .github/workflows/DOCtor-RST.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# .github/workflows/lint.yaml
name: DOCtor-RST

on:
push:
pull_request:

jobs:
doctor-rst:
name: DOCtor-RST
runs-on: ubuntu-latest
steps:
- name: "Checkout code"
uses: actions/checkout@v4

- name: DOCtor-RST
uses: OskarStark/doctor-rst@1.65.0
with:
args: --short --error-format=github
env:
DOCS_DIR: 'docs/source/'
39 changes: 39 additions & 0 deletions .github/workflows/php.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: PHP Composer

on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]

permissions:
contents: read

jobs:
build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Validate composer.json and composer.lock
run: composer validate --strict

- name: Cache Composer packages
id: composer-cache
uses: actions/cache@v3
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-

- name: Install dependencies
run: composer install --prefer-dist --no-progress

# Add a test script to composer.json, for instance: "test": "vendor/bin/phpunit"
# Docs: https://getcomposer.org/doc/articles/scripts.md

# - name: Run test suite
# run: composer run-script test
91 changes: 66 additions & 25 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,31 +1,72 @@
/vendor/
composer.lock
/debian/multi-abraflexi-setup/
/debian/multi-abraflexi-setup.substvars
/debian/multi-abraflexi-setup.debhelper.log
/debian/multiflexi/
/debian/multiflexi.substvars
/debian/multiflexi.debhelper.log
/debian/debhelper-build-stamp
/debian/files
/debian/multi-abraflexi-setup-pgsql/
/debian/multi-abraflexi-setup-mysql/
/debian/multi-abraflexi-setup-sqlite/
/debian/multi-abraflexi-setup-sqlite.debhelper.log
/debian/multi-abraflexi-setup-mysql.substvars
/debian/multi-abraflexi-setup-pgsql.substvars
/debian/multi-abraflexi-setup-pgsql.debhelper.log
/debian/multi-abraflexi-setup-mysql.debhelper.log
/debian/multi-abraflexi-setup-sqlite.substvars
/debian/multiflexi-pgsql/
/debian/multiflexi-mysql/
/debian/multiflexi-sqlite/
/debian/multiflexi-sqlite.debhelper.log
/debian/multiflexi-mysql.substvars
/debian/multiflexi-pgsql.substvars
/debian/multiflexi-pgsql.debhelper.log
/debian/multiflexi-mysql.debhelper.log
/debian/multiflexi-sqlite.substvars
/.vagrant/
/debian/.debhelper/
/debian/multi-abraflexi-setup/
/debian/multi-abraflexi-setup-mysql/
/debian/multi-abraflexi-setup-sqlite/
/debian/multi-abraflexi-setup-pgsql/
/debian/multi-abraflexi-setup-pgsql.debhelper.log
/debian/multi-abraflexi-setup.substvars
/debian/multi-abraflexi-setup-mysql.debhelper.log
/debian/multi-abraflexi-setup-pgsql.substvars
/debian/multi-abraflexi-setup-mysql.substvars
/debian/multi-abraflexi-setup-sqlite.substvars
/debian/multi-abraflexi-setup-sqlite.debhelper.log
/debian/multi-abraflexi-setup.debhelper.log
/debian/multi-abraflexi-setup.postrm.debhelper
/debian/multiflexi/
/debian/multiflexi-mysql/
/debian/multiflexi-sqlite/
/debian/multiflexi-pgsql/
/debian/multiflexi-pgsql.debhelper.log
/debian/multiflexi.substvars
/debian/multiflexi-mysql.debhelper.log
/debian/multiflexi-pgsql.substvars
/debian/multiflexi-mysql.substvars
/debian/multiflexi-sqlite.substvars
/debian/multiflexi-sqlite.debhelper.log
/debian/multiflexi.debhelper.log
/debian/multiflexi.postrm.debhelper
/debian/tmp/
/deb/
/nbproject/private/
/OpenAPI/node_modules/
/.php_cs.cache
/.env
.vscode/settings.json
db/multiflexi
/.php-cs-fixer.cache
/tests/.phpunit.result.cache
/log/
/nbproject/configs/
/db/multiflexi.sqlite
/src/translations.php
/debian/multiflexi-zabbix/
/debian/multiflexi-podman/
/debian/multiflexi-api/
/debian/multiflexi-zabbix.substvars
/debian/multiflexi-zabbix.debhelper.log
/debian/multiflexi-podman.substvars
/debian/multiflexi-podman.debhelper.log
/debian/multiflexi-api.debhelper.log
/debian/multiflexi-api.substvars
/.phpunit.cache/
/.build/
/docs/build/
/src/zabbix.php
src/css/dataTables.bootstrap5.css
src/js/dataTables.bootstrap5.js
src/js/jquery.dataTables.js
/debian/multiflexi-abraflexi.debhelper.log
/debian/multiflexi-abraflexi.substvars
/debian/multiflexi-raiffeisenbank.debhelper.log
/debian/multiflexi-raiffeisenbank.substvars
/debian/multiflexi-abraflexi/
/debian/multiflexi-raiffeisenbank/
/.phpunit.result.cache
/debian/multiflexi-docker/
/debian/multiflexi-docker.debhelper.log
/debian/multiflexi-docker.substvars
!/composer.lock
107 changes: 107 additions & 0 deletions .php-cs-fixer.dist.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
<?php

declare(strict_types=1);

/**
* This file is part of the MultiFlexi package
*
* https://multiflexi.eu/
*
* (c) Vítězslav Dvořák <http://vitexsoftware.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/

use Ergebnis\PhpCsFixer\Config\Factory;
use Ergebnis\PhpCsFixer\Config\Rules;
use Ergebnis\PhpCsFixer\Config\RuleSet\Php81;

$header = <<<'HEADER'
This file is part of the MultiFlexi package

https://multiflexi.eu/

(c) Vítězslav Dvořák <http://vitexsoftware.com>

For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.
HEADER;

$ruleSet = Php81::create()->withHeader($header)->withRules(Rules::fromArray([
'blank_line_before_statement' => [
'statements' => [
'break',
'continue',
'declare',
'default',
'do',
'exit',
'for',
'foreach',
'goto',
'if',
'include',
'include_once',
'require',
'require_once',
'return',
'switch',
'throw',
'try',
'while',
],
],
'concat_space' => [
'spacing' => 'none',
],
'date_time_immutable' => false,
'error_suppression' => false,
'final_class' => false,
'mb_str_functions' => false,
'native_function_invocation' => [
'exclude' => [
'sprintf',
],
'include' => [
'@compiler_optimized',
],
'scope' => 'all',
'strict' => false,
],
'php_unit_internal_class' => false,
'php_unit_test_annotation' => [
'style' => 'prefix',
],
'php_unit_test_class_requires_covers' => false,
'return_to_yield_from' => false,
'phpdoc_array_type' => false,
'phpdoc_list_type' => false,
'attribute_empty_parentheses' => false,
'final_public_method_for_abstract_class' => false,
'class_attributes_separation' => [
'elements' => [
'const' => 'only_if_meta',
'property' => 'only_if_meta',
'trait_import' => 'none',
'case' => 'none',
],
],
'yoda_style' => false,
'php_unit_test_case_static_method_calls' => false,
]));

$config = Factory::fromRuleSet($ruleSet);

$config->getFinder()
->append([
__DIR__.'/.php-cs-fixer.dist.php',
])
->in('db')
->in('lib')
->in('src')
->in('tests');

$config->setCacheFile(__DIR__.'/.build/php-cs-fixer/.php-cs-fixer.cache');

return $config;
18 changes: 18 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Read the Docs configuration file for Sphinx projects
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the OS, Python version and other tools you might need
build:
os: ubuntu-lts-latest
tools:
python: "3.12"

python:
install:
- requirements: docs/requirements.txt

sphinx:
configuration: docs/source/conf.py
Loading