Entwicklungsumgebung einrichten: Unterschied zwischen den Versionen
Ergänzung Mailpit
(Coding Style verlinkt) |
(Ergänzung Mailpit) |
||
| (12 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 4: | Zeile 4: | ||
=== Windows 10 === | === Windows 10 === | ||
==== Programme installieren ==== | ==== Programme installieren ==== | ||
Unter Windows ist es standardmäßig nicht möglich, “einfach“ die Linux Distribution Ubuntu zu installieren. Dazu muss vorab erst das WSL2 aktiviert / installiert werden werden (Punkt 1). Im Anschluss ist eine Installation von Ubuntu (18 | Unter Windows ist es standardmäßig nicht möglich, “einfach“ die Linux Distribution Ubuntu zu installieren. Dazu muss vorab erst das WSL2 aktiviert / installiert werden werden (Punkt 1). Im Anschluss ist eine Installation von Ubuntu (18.04 oder höher) möglich. Zudem muss DDEV installiert werden, in welchem dann die Entwicklungsumgebung laufen kann (Punkt 2). | ||
# WSL2 unter Windows10 aktivieren und Ubuntu | # WSL2 unter Windows10 aktivieren und Ubuntu installieren: | ||
## Aus dem Microsoft-Store: https://aka.ms/wslstorepage (verfügbar seit Nov. 2022) | ## Aus dem Microsoft-Store: https://aka.ms/wslstorepage (verfügbar seit Nov. 2022) | ||
## Manuell unter [https://learn.microsoft.com/de-de/windows/wsl/install#manual-installation-steps|Installieren von WSL] | ## Manuell unter [https://learn.microsoft.com/de-de/windows/wsl/install#manual-installation-steps|Installieren von WSL] | ||
# | # DDEV für Windows installieren: [https://docs.ddev.com/en/stable/#system-requirements-windows-wsl2|Install DDEV WSL2] | ||
Danach kann Ubuntu gestartet werden (z.B. im “Such“-Menü nach Ubuntu suchen und anklicken). Beim erstmaligen Starten von Ubuntu müssen ein Benutzername und ein Passwort festgelegt werden. | Danach kann Ubuntu gestartet werden (z.B. im “Such“-Menü nach Ubuntu suchen und anklicken). Beim erstmaligen Starten von Ubuntu müssen ein Benutzername und ein Passwort festgelegt werden. | ||
| Zeile 20: | Zeile 17: | ||
=== Linux === | === Linux === | ||
Der Linuxartikel wurde erstellt auf Lubuntu | Der Linuxartikel wurde erstellt auf Lubuntu 22.04 und erweitert mit Debian 12 | ||
==== Programme installieren ==== | ==== Programme installieren ==== | ||
Folgende Programme sind notwendig und müssen vorab installiert werden: | Folgende Programme sind notwendig und müssen vorab installiert werden: | ||
PHP (aktuell | PHP (aktuell mindestens PHP8.2), diverse PHP-Erweiterungen, ddev, mariadb-client. Für die PHP-Erweiterungen ist eventuell ein zusätzliches PPA-Repository notwendig. Dessen Installation erfordert je nach Betriebssystem ein unterschiedliches Vorgehen. | ||
<nowiki>Ubuntu: | <nowiki>Ubuntu: | ||
| Zeile 36: | Zeile 33: | ||
Die Pakete lassen sich mit folgenden Befehlen installieren (Versionsnummer kann abweichen). | Die Pakete lassen sich mit folgenden Befehlen installieren (Versionsnummer kann abweichen). | ||
<nowiki>sudo apt update | <nowiki>sudo apt update | ||
sudo apt install php8 php8. | sudo apt install php8.2 php8.2-mbstring php8.2-curl php8.2-xml php8.2-mysql | ||
sudo apt install | sudo apt install mariadb-client | ||
sudo apt install | sudo apt install ddev</nowiki> | ||
Sollten beim Installieren der Pakete Fehlermeldungen auftreten, ist es empfehlenswert, die Pakete einzeln zu installieren und auftretende Fehler/Abhängigkeiten einzeln zu lösen. | Sollten beim Installieren der Pakete Fehlermeldungen auftreten, ist es empfehlenswert, die Pakete einzeln zu installieren und auftretende Fehler/Abhängigkeiten einzeln zu lösen. | ||
| Zeile 85: | Zeile 60: | ||
=== Sourcecode lokal herunterladen === | === Sourcecode lokal herunterladen === | ||
Ein Terminal öffnen, folgende Kommandos ausführen und dabei Namen und Email-Adresse des Git-Accounts eintragen: | Ein Terminal öffnen, folgende Kommandos ausführen und dabei Namen und Email-Adresse des Git-Accounts eintragen: | ||
<nowiki>git config -- | <nowiki>git config --local user.name "Your Name Here" | ||
git config -- | git config --local user.email "your_email@youremail.com"</nowiki> | ||
Im Verzeichnis "home" einen Ordner "opencaching" (Name beliebig) anlegen. Dort folgenden Code ausführen. Dies legt einen Ordner mit dem Namen “oc-server3“ an, lädt den OC-Code aus deinem Github-Fork herunter und kopiert ihn in diesen Ordner. | Im Verzeichnis "home" einen Ordner "opencaching" (Name beliebig) anlegen. Dort folgenden Code ausführen. Dies legt einen Ordner mit dem Namen “oc-server3“ an, lädt den OC-Code aus deinem Github-Fork herunter und kopiert ihn in diesen Ordner. | ||
| Zeile 111: | Zeile 86: | ||
== 3. | == 3. DDEV Entwicklungsumgebung initalisieren == | ||
=== Entwicklungsumgebung zum ersten Mal starten === | === Entwicklungsumgebung zum ersten Mal starten === | ||
Zuerst in den Projektordner “oc-server3“ navigieren und dort die Installation der Testumgebung starten. | |||
Zuerst in den Projektordner “oc-server3“ navigieren und dort die Installation der Testumgebung starten. | |||
==== Scripte einzeln ausführen ==== | ==== Scripte einzeln ausführen ==== | ||
* | * ddev anstarten. Im Laufe dieses Prozesses wird die hosts-Datei automatisch angepasst. | ||
<nowiki> | <nowiki>ddev start</nowiki> | ||
* | * Starten der Initialisierung der Testumgebung und der Datenbank: | ||
<nowiki> | <nowiki>ddev init</nowiki> | ||
* Die Entwicklungsumgebung steht nun über den Browser bereit unter: | * Die Entwicklungsumgebung steht nun über den Browser bereit unter: | ||
https://opencaching.ddev.site | |||
bzw. | |||
https://try-opencaching.ddev.site | |||
Das Passwort für den Benutzer ''root'' lautet ''developer''. Das Passwort der anderen Benutzer (Benutzernamen siehe Datenbank) lautet ''password'' | |||
* Ein Mailpit steht nun über den Browser bereit (zumindest für den Legacy-Teil, für OC4 ist es noch nicht bestätigt) unter: | |||
https://opencaching.ddev.site:8026/ | |||
=== Entwicklungsumgebung ein weiteres Mal starten === | |||
Die Testumgebung kann neugestartet werden mit: | |||
<nowiki>ddev restart</nowiki> | |||
=== Entwicklungsumgebung stoppen === | |||
Die Testumgebung kann gestoppt werden mit: | |||
<nowiki>ddev stop</nowiki> | |||
=== Entwicklungsumgebung löschen === | |||
Die Testumgebung kann im Projektordner gelöscht werden mit: | |||
<nowiki>ddev delete --omit-snapshot</nowiki> | |||
Danach sind ein erneutes ''ddev start'' und ''ddev init'' notwendig. | |||
=== von DDEV angelegte Objekte löschen und Projekte aus der globalen DDEV-Liste löschen === | |||
<nowiki>ddev clean --all</nowiki> | |||
<nowiki>ddev stop --unlist opencaching</nowiki> | |||
=== Entwicklungsumgebung | === xdebug in der Entwicklungsumgebung starten === | ||
<nowiki>ddev xdebug</nowiki> | |||
<nowiki> | Ein ''ddev start'' oder ''ddev restart'' deaktiviert das xdebug wieder. | ||
=== | === Weitere ddev-Optionen.. === | ||
''ddev'' ohne Parameter aufrufen gibt eine Liste weiterer Optionen aus. | |||
<nowiki> | <nowiki>ddev</nowiki> | ||
== 4. Die Testdatenbank füllen == | == 4. Die Testdatenbank füllen == | ||
| Zeile 166: | Zeile 138: | ||
Für den Fall, dass trotzdem Daten exportiert / importiert werden sollen, können folgende Abschnitte berücksichtigt werden: | Für den Fall, dass trotzdem Daten exportiert / importiert werden sollen, können folgende Abschnitte berücksichtigt werden: | ||
=== Datenbank | === Login auf der Test-Datenbank im ddev-Container === | ||
<nowiki> | <nowiki>mysql -uroot -proot -hopencaching-db opencaching</nowiki> | ||
=== Datenbank innerhalb des | === Datenbank innerhalb des ddev-Containers exportieren === | ||
<nowiki>mysqldump -uroot -proot - | <nowiki>mysqldump -uroot -proot -hopencaching-db opencaching > file.sql</nowiki> | ||
=== Datenbank außerhalb des | === Datenbank außerhalb des ddev-Containers exportieren === | ||
<nowiki>mysqldump --complete-insert --user root -proot --host 0.0.0.0 opencaching > dump.sql</nowiki> | <nowiki>mysqldump --complete-insert --user root -proot --host 0.0.0.0 opencaching > dump.sql</nowiki> | ||
| Zeile 195: | Zeile 159: | ||
[[Image:Testumgebung DB 02.png]] | [[Image:Testumgebung DB 02.png]] | ||
=== Datenbank-Dump im phpStorm importieren === | === Datenbank-Dump im phpStorm importieren === | ||
| Zeile 214: | Zeile 172: | ||
== | == 5. Die Entwicklungs-IDE vorbereiten == | ||
Gegebenenfalls sind an der Programmierumgebung Änderungen vorzunehmen, um zum Beispiel [[OC Coding Style|einheitlich formatierten Code]] zu schreiben. | |||
[[ | === Einrichtung des PHP Coding Styles am Beispiel von phpStorm === | ||
Unter Settings / Code Style / PHP rechts auf “Set from…” klicken und “PSR-12” auswählen. Die Einstellung mit “Apply” bestätigen. | |||
(Weitere Informationen zum Coding Style sind [[OC Coding Style|hier im Wiki]] zu finden.) | |||
[[Image:Testumgebung IDE 01.png|500px]] | |||
=== Symfony Pfade am Beispiel phpStorm anpassen === | |||
[[Image:Testumgebung IDE 04.jpeg]] | |||
=== | === Terminalanpassung am Beispiel phpStorm (für Windows-Nutzer) === | ||
[[Image:Testumgebung IDE 05.png]] | |||
[[Image:Testumgebung IDE | |||
=== | === Datenbankanbindung in phpStorm aktivieren === | ||
- | Seit ddev als Umgebung genutzt wird, bietet sich das ddev-Plugin im phpStorm an. Es richtet z.B. den Zugang zur opencaching-Datenbank in der Testumgebung sowie weitere Einstellungen automatisch ein. | ||
Hierzu im phpStorm im Menü Datei/Einstellungen.. zum Abschnitt ''Plugins'' navigieren, im Suchfeld ''ddev'' eintippen und das Plugin installieren. | |||
[[Image:Testumgebung IDE 06.jpg]] | |||
=== Synchronisieren/Wiederherstellen der Benutzereinstellungen mittels JetBrains-Server === | === Synchronisieren/Wiederherstellen der Benutzereinstellungen mittels JetBrains-Server === | ||