Ligne de commande¶
Nouveau dans la version 1.1.4.
Galette propose désormais une interface en ligne de commande pour gérer certaines tâches. Elle est accessible via le script bin/console du dossier racine de Galette :
$ cd /var/www/html/galette
$ php bin/console
Galette v1.3.0
Usage:
command [options] [arguments]
Options:
-h, --help Display help for the given command. When no command is given display help for the list command
--silent Do not output any message
-q, --quiet Only errors are displayed. All other output is suppressed
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Available commands:
completion Dump the shell completion script
help Display help for a command
list List commands
galette
galette:check-routes Check Galette routes naming conventions
galette:checks Check Galette requirements
galette:compile-locales Compile translation files (PO) into MO files, for the core and plugins
galette:feature:status List all feature flags and their status
galette:headers:check Check Galette files headers
galette:install Install Galette
galette:mailing:process-queue Process the pending mass mailing queue, respecting configured limits
galette:plugins:disable Disable Galette plugins
galette:plugins:enable Enable Galette plugins
galette:plugins:install-db Install Galette plugins database
galette:plugins:list List existing Galette plugins
galette:seed-fixtures Seed database with E2E test fixtures (fictional members, contributions, groups, etc.)
galette:superadmin:password Change the super administrator password
galette:twofactor:reset Reset two-factor authentication of the super administrator or of a member
galette:twig-cache Compile Twig templates in cache
galette:twig-pot-references Point POT file references to Twig templates instead of compiled ones
Certains de ces commandes sont destinées uniquement aux développeurs ( galette:check-routes , galette:headers:check, galette:seed-fixtures, galette:twig-pot-references), et ne sont pas décrites ici.
Vous pouvez obtenir de l’aide pour une commande spécifique avec la commande help :
$ php bin/console help galette:checks
Vérification des pré-requis¶
Cela vérifie uniquement les pré-requis de Galette, il n’y a aucun argument spécifique.
Note
Sur certains systèmes, la configuration de PHP peut différer entre la console et le web ; il est donc recommandé de vérifier les pré-requis depuis le script web compat_test.php.
Installation¶
Cette commande installe Galette bien entendu :)
$ php bin/console help galette:install
Description:
Install Galette
Usage:
galette:install [options]
Options:
--dbtype=DBTYPE Database type (mysql, pgsql)
--dbhost=DBHOST Database hostname or IP address
--dbport=DBPORT Database port
--dbname=DBNAME Database schema name
--dbprefix[=DBPREFIX] Database table prefix
--dbuser=DBUSER Database user
--dbpass[=DBPASS] Database password
--admin=ADMIN Administrator username
--password=PASSWORD Administrator password
--ignore-config Ignore existing configuration file
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Par défaut, le script va vérifier la présence d’un fichier de configuration, vous pouvez l’ignorer avec l’option --ignore-config.
Les options requises qui n’ont pas été fournies à l’appel du script seront demandées interactivement.
$ php bin/console galette:install -vvv
Welcome to Galette installer!
=============================
Using existing configuration for database type
Using existing configuration for database name
Using existing configuration for database prefix
Using existing configuration for database host
Using existing configuration for database port
Using existing configuration for database user
Database password:
>
Superadmin name [admin]:
>
Superadmin password:
>
------------- --------------
Database information
Type mysql
Name galette
Prefix galette_
Host localhost
Port 3306
User galette
Password ********
------------- --------------
Superadmin information
Name admin
Password *****
------------- --------------
[WARNING] Configuration file already exists and matches the provided database information.
All existing data will be lost if you continue.
Do you want to continue? (yes/no) [no]:
>
Mot de passe Super administrateur¶
Nouveau dans la version 1.3.0.
Le mot de passe super administrateur est normalement modifié à partir de Mon compte, puis Mes informations, ou de la page configuration avancée. Les deux nécessitent d’être connectés, ce n’aide pas le jour où le mot de passe est perdu : le super administrateur n’est pas un membre, donc il ne peut pas utiliser le formulaire mot de passe oublié non plus.
Cette commande est le moyen d’entrer à nouveau. Elle fonctionne sur la machine hébergeant Galette, et cet accès vaut authentification.
$ php bin/console help galette:superadmin:password
Description:
Change the super administrator password
Usage:
galette:superadmin:password
Options:
-h, --help Display help for the given command. When no command is given display help for the list command
--silent Do not output any message
-q, --quiet Only errors are displayed. All other output is suppressed
-V, --version Display this application version
--ansi|--no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Il n’y a pas d’option pour passer le mot de passe : il uniquement lu à partir d’un rappel caché, de sorte qu’il ne termine pas dans votre historique ni dans la liste de processus de la machine. Il est demandé deux fois, et les deux réponses doivent correspondre.
$ php bin/console galette:superadmin:password
Change the super administrator password
=======================================
Super administrator login: admin
New password:
>
Confirm new password:
>
[OK] Super administrator password has been changed.
Le login est affiché de sorte que vous sachiez quel compte vous venez de changer, mais la commande ne le touche pas. Changez-le comme d’habitude depuis Mon compte, puis Mes informations.
Le nouveau mot de passe doit satisfaire aux règles de mot de passe de votre instance, exactement comme il le serait depuis l’interface web.
Réinitialisation de l’authentification à deux facteurs¶
Nouveau dans la version 1.3.1.
Le super administrateur n’a pas de codes de récupération, ni personne au-dessus de lui pour réinitialiser son second facteur depuis l’interface. Cette commande est le moyen d’entrer à nouveau lorsque son appareil est perdu ; comme galette:superadmin:password, elle s’exécute sur la machine hébergeant Galette, et cet accès vaut authentification.
$ php bin/console help galette:twofactor:reset
Description:
Reset two-factor authentication of the super administrator or of a member
Usage:
galette:twofactor:reset [options]
Options:
--login=LOGIN Login of the member to reset; the super administrator when omitted
--clock Keep the second factor, only forget the last used code (after the server clock went backwards)
--policy-off Disable two-factor authentication for the whole instance; second factors are kept
--force Do not ask for confirmation (required to run unattended)
[...]
Sans option, la commande supprime le second facteur du super administrateur, qui se connecte alors avec son seul mot de passe :
$ php bin/console galette:twofactor:reset
Reset two-factor authentication
===============================
Account: admin
Remove the second factor of this account? It will log in with its password alone. (yes/no) [no]:
> yes
[OK] Two-factor authentication has been reset.
--loginvise plutôt un adhérent, par son identifiant (pas son adresse courriel) ; ses codes de récupération sont supprimés eux aussi. Les administrateurs et les membres du bureau peuvent déjà le faire depuis la fiche de l’adhérent ; la commande sert lorsque personne ne peut se connecter pour le faire.--clockconserve le second facteur, et oublie seulement le dernier code accepté pour le compte. C’est ce qu’il faut après un retour en arrière de l’horloge du serveur.--policy-offdésactive l’authentification à deux facteurs pour l’ensemble de l’instance, l’issue de secours lorsque quelque chose ne fonctionne plus pour tout le monde à la fois. Les seconds facteurs sont conservés, et de nouveau demandés dès qu’une politique est définie. Cette option ne peut pas être combinée avec les autres.
Dans tous les cas, un blocage du compte après trop de mauvais codes est également levé, et la réinitialisation est enregistrée dans l’historique.
La commande demande une confirmation ; passez --force pour l’exécuter sans terminal.
File d’envoi¶
Nouveau dans la version 1.3.0.
Lorsque les limites d’envoi sont configurées, les envois de masse et les rappels sont mis en queue plutôt que envoyés en une seule fois. Cette commande draine ce qui est en attente :
$ php bin/console galette:mailing:process-queue
[WARNING] Spreading a sending over time is an alpha feature: it works, but it
has seen little use. Watch what actually reaches your members, and
report anything odd.
Process the pending queue now? (yes/no) [no]:
> yes
[OK] Mailing queue processed: 120 sent, 0 failed.
Rien n’est envoyé tant que la question reste sans réponse. Ajouter --force pour passer la question, ce dont a besoin un traitement sans surveillance : sans cela, un script non interactif n’aurait aucun moyen de confirmer et stopper sur une erreur plutôt que d’envoyer.
$ php bin/console galette:mailing:process-queue --force
Pour une documentation plus complète, voir drainer la file d’envois, et la page page de progression qui draine également.
Commandes des plugins¶
Vous pouvez lister les plugins existants à l’aide de la commande galette:plugins:list :
$ php bin/console galette:plugins:list
Galette plugins
===============
* Galette Activities (1.0.3)
* Galette Auto (2.1.1)
* Galette Events (2.1.2)
* Galette Maps (2.1.0)
* Galette OAuth2 (3.0.0)
* plugin-fullcard (disabled)
* plugin-paypal (disabled)
* plugin-objectslend (disabled)
Les commandes disponibles sont :
galette:plugins:disable: désactive un plugingalette:plugins:enable: active un plugingalette:plugins:install-db: installe la base de données d’un plugin
Avertissement
L’installation de la base de données des plugins supprimera toutes les tables existantes de ce plugin !
Pour chaque commande relative aux plugins, vous pouvez préciser sur quel(s) plugin(s) vus souhaitez agir, utiliser le drapeau --all ou encore vous fier au mode interactif :
$ php bin/console galette:plugins:disable
Galette plugins management
==========================
Which plugins do you want to select?
[* ] All plugins
[plugin-activities] Galette Activities
[plugin-auto ] Galette Auto
[plugin-events ] Galette Events
[plugin-maps ] Galette Maps
[plugin-oauth2 ] Galette OAuth2