Commands
Informationen über die verfügbaren Befehle.
Datenbank installieren
Befehlsname: ch23:app:install
Beschreibung: Installiert die Datenbank für Clubhouse23
Verwendung:
php bin/console ch23:app:install
Funktionalität:
- Prüft Anforderungen mit dem Befehl
ch23:app:checkrequirements - Löscht die bestehende Datenbank
- Erstellt eine neue Datenbank
- Führt SQL-DDL-Skripte aus dem Verzeichnis
db/ddlaus - Führt SQL-DML-Skripte aus dem Verzeichnis
db/dump/initialloadaus
Rückgabewerte:
- Gibt
Command::SUCCESS(0) zurück, wenn die Installation erfolgreich ist - Gibt
Command::FAILURE(1) zurück, wenn die Installation fehlschlägt
Cronjobs installieren
Befehlsname: ch23:app:cronjobs
Beschreibung: Installiert die notwendigen Cronjobs-Einträge
Verwendung:
php bin/console ch23:app:cronjobs
Funktionalität:
- Dieser Befehl erstellt alle notwendigen Cronjob-Einträge. Muss nach ch23:app:install gestartet werden.
Rückgabewerte:
- Gibt
Command::SUCCESS(0) zurück, wenn die Installation erfolgreich ist - Gibt
Command::FAILURE(1) zurück, wenn die Installation fehlschlägt
Projektanforderungen prüfen
Befehlsname: ch23:app:checkrequirements
Beschreibung: Prüft die Clubhouse23 Projektanforderungen
Verwendung:
php bin/console ch23:app:checkrequirements [--subcmd]
Optionen:
--subcmd: Zeigt an, dass der Befehl von einem anderen Befehl aufgerufen wird
Funktionalität:
- Prüft die Projektanforderungen für Clubhouse23
- Wird von
ch23:app:installals Voraussetzungsprüfung verwendet
Rückgabewerte:
- Gibt
Command::SUCCESS(0) zurück, wenn keine Fehler gefunden werden - Gibt
Command::FAILURE(1) zurück, wenn Fehler gefunden werden
SQL-Befehl ausführen
Befehlsname: ch23:db:execute
Beschreibung: Führt einen SQL-Befehl aus ohne Rückgabewert
Verwendung:
php bin/console ch23:db:execute <sqlcommand> [--subcmd]
Argumente:
sqlcommand(erforderlich): Der auszuführende SQL-Befehl
Optionen:
--subcmd: Zeigt an, dass der Befehl von einem anderen Befehl aufgerufen wird
Funktionalität:
- Führt den angegebenen SQL-Befehl mit der Doctrine DBAL-Verbindung aus
- Wird von
ch23:app:installverwendet, um SQL-Skripte während der Installation auszuführen
Rückgabewerte:
- Gibt
Command::SUCCESS(0) zurück, wenn der SQL-Befehl erfolgreich ausgeführt wird - Gibt
Command::FAILURE(1) zurück, wenn der SQL-Befehl nicht ausgeführt werden kann
DB-Tabelle löschen (und archivieren)
Befehlsname: ch23:db:clean
Beschreibung: Löscht Einträge aus einer DB-Tabelle
Verwendung:
php bin/console ch23:db:clean <tablename> <retain> <fieldname> [<backuptablename>] [--backup]
Argumente:
tablename(erforderlich): Der Name der Datenbanktabelleretain(erforderlich): Anzahl der Einträge, die in der Tabelle behalten werden sollenfieldname(erforderlich): Das Tabellenfeld, nach dem sortiert werden soll, um das Ergebnisset auszuwählenbackuptablename(optional): Der Name der Backup-Tabelle (für die Option --backup)
Optionen:
--backup: Ob die gelöschten Einträge gespeichert werden sollen
Funktionalität:
- Löscht Einträge aus einer Datenbanktabelle, während eine bestimmte Anzahl der neuesten Einträge (sortiert nach einem bestimmten Feld) beibehalten wird
- Kann optional die gelöschten Einträge in einer anderen Tabelle sichern
Beispiele:
# Löscht Einträge aus 'tabelle1', behält die 100 neuesten Einträge (sortiert nach 'created_at')
php bin/console ch23:db:clean tabelle1 100 created_at
# Löscht Einträge aus 'tabelle1', behält die 100 neuesten Einträge und sichert gelöschte Einträge in 'tabelle1_backup_123'
php bin/console ch23:db:clean tabelle1 100 created_at tabelle1_backup_123 --backup
Rückgabewerte:
- Gibt die Anzahl der gelöschten Zeilen zurück
API-Passwort Hasher
Befehlsname: ch23:app:hashcontactpwd
Beschreibung: Hasht die API-Passwörter der Kontakte
Verwendung:
php bin/console ch23:app:hashcontactpwd
Funktionalität:
- Hasht ungehashte API-Passwörter für Kontakte mit dem ContactService
- Verwendet das UserPasswordHasherInterface zum Hashen der Passwörter
Rückgabewerte:
- Gibt
Command::SUCCESS(0) zurück, wenn das Hashen erfolgreich ist - Gibt
Command::FAILURE(1) zurück, wenn das Hashen fehlschlägt
Statistikdaten speichern
Befehlsname: ch23:app:logmobileuserupdate
Beschreibung: Daten aus der Tabelle log_api in komprimierter Form in die Tabelle log_mobile_user kopieren
Verwendung:
php bin/console ch23:app:logmobileuserupdate
Funktionalität:
- Einträge aus der Tabelle
log_apiin komprimierter Form (1 Eintrag pro Tag und MobileUser) in die Tabellelog_mobile_userschreiben, falls noch nicht vorhanden. - Bereits kopierte Daten werden nicht erneut kopiert. Der Konsolenbefehl berücksichtigt das automatisch.
- Idealerweise läuft dieser Command täglich nach Mitternacht
Beispiel Cron-Eintrag, läuft täglich um 00:30
30 0 * * * * php /Users/andy/www/clubhouse23/bin/console ch23:app:logmobileuserupdate > /Users/andy/www/clubhouse23/var/logmobileuserupdate.log 2> /Users/andy/www/clubhouse23/var/logmobileuserupdate.err
Rückgabewerte:
- Gibt
Command::SUCCESS(0) zurück, wenn das Hashen erfolgreich ist - Gibt
Command::FAILURE(1) zurück, wenn das Hashen fehlschlägt