Tausche ding gegen dialect aus ;)
Tausche ding gegen dialect aus ;)
Schneller Cursor ohne Handpositionswechsel
"Wenn man viele verschiedene Farben in einem Topf rührt, kommt meistens braun dabei heraus." - Thomas Eimers
Haltbarkeit von XTAR AAA Akkus
Integration Tests mit Codeception in Gitlab Pipeline beschleuningen durch optimieren der Datenbankzugriffe.
Beim automatischen Setup von Testdatenbanken im Rahmen eines GitLab-CI Pipeline Jobs müssen meist mehre SQL-Dumps importiert werden. Dazu wird üblicherweise mysql/mariadb als Service gestartet und dann die Datenbank via CLI importiert. Aber eigentlich importieren die mariadb Docker container automatisch Dateien im Verzeichnis /docker-entrypoint-initdb.d/ . Aber da es in CI keine direkten Volume-Mounts gibt benötigt man einen Workaround.
Alle Repository-Dateien des GitLab-Projekts sind bereits standardmäßig im MySQL-Service-Container im Verzeichnis /builds/[GROUP]/[REPO_NAME]/ verfügbar. Diese Tatsache lässt sich nutzen, indem beim Container-Start ein kleiner individueller Entrypoint-Befehl integriert wird.
Codeception: stage: analyze interruptible: true image: php-mit-pcov dependencies: [ "Install Composer dependencies" ] needs: [ "Install Composer dependencies" ] services: - name: mariadb alias: codeception-database entrypoint: [ "/bin/sh", "-c", "cp -R /builds/[GROUP]/[REPO_NAME]/tests/initPipelineDB/* /docker-entrypoint-initdb.d/ && exec docker-entrypoint.sh --sql-mode=" ] - name: redis:6.2 alias: redis script: - vendor/bin/codecept build - vendor/bin/codecept run
Article release date: / Last update: