contao / manager-bundle

[READ-ONLY] Contao Manager Bundle
GNU Lesser General Public License v3.0
17 stars 10 forks source link

Login und Passwort setzen für app_dev verbessern #39

Closed BugBuster1701 closed 7 years ago

BugBuster1701 commented 7 years ago

Es ist normalerweise nicht üblich auf Kommandozeile Login und Passwort als Parameter anzugeben, da diese beiden Informationen dann in der Befehls-History zu finden sind. Ich hätte erwartet, dass es bei der Angabe ... --user=dev -p zur Abfrage kommt, wenn man hier nichts direkt angibt. Ist das umsetzbar? Stattdessen kommt:

  [InvalidArgumentException]               
  Cannot set a username without password.
BugBuster1701 commented 7 years ago

Zumal die Hilfe --password[=PASSWORD] mir suggeriert, das die Angabe des Passwortes optional wäre und es zur Abfrage kommen müsste.

aschempp commented 7 years ago

@BugBuster1701 eigentlich ist das auch vorgesehen, scheint aber nicht zu funktionieren :(

fritzmg commented 7 years ago

Ich hatte mir auch eingebildet, dass das eigentlich schon mal funktioniert hat.

leofeyer commented 7 years ago

Der Grund warum es nicht (mehr) funktioniert ist, dass Symfony immer null zurückgibt, egal ob --password ganz fehlt oder nur keinen Wert enthält. Eventuell wurde für den letzteren Fall früher mal false zurückgegeben?

Ich habe das Command schon mal so angepasst, dass folgende Fälle abgedeckt sind:

  1. Weder --user noch --password ist gesetzt: kein Access-Key
  2. Sowohl --user als auch --password ist gesetzt: Access-Key
  3. Nur --user ist gesetzt: interaktive Abfrage des Passwortes (auch ohne --password)

Was jetzt noch fehlt ist der Fall, dass beide Werte abgefragt werden. Das geht wie gesagt nicht mehr nur mit der --password-Option, daher wäre ich für eine --with-access-key-Option.

Andere Naming-Vorschläge?

leofeyer commented 7 years ago

Außerdem sollten wir die .env-Datei auch wieder löschen, wenn das Command nochmal ohne Optionen ausgeführt wird. Sollten wir nicht besser ein contao:set-access-key-Command haben?

aschempp commented 7 years ago

Der Grund warum es nicht (mehr) funktioniert ist, dass Symfony immer null zurückgibt, egal ob --password ganz fehlt oder nur keinen Wert enthält.

Liesse sich das nicht mit einem Default-Wert lösen? Der verwendet wird ohne Argument, und bei --password wird null gesetzt?

Außerdem sollten wir die .env-Datei auch wieder löschen, wenn das Command nochmal ohne Optionen ausgeführt wird.

Nein sollten wir nicht, denn die Datei wird potentiell auch deployt bzw. das Command bei jedem Install aufgerufen. Passwort entfernen = Datei löschen, das sollte jeder schaffen.

leofeyer commented 7 years ago

Ist nicht sehr intuitiv. Wäre ein contao:set-access-key-Command nicht einfacher?

aschempp commented 7 years ago

finde ich nicht… es erledigt sich ausserdem sowieso für 95% der Nutzer durch den Manager 😉

leofeyer commented 7 years ago

Behoben in a21c3b6d49916d6575bbdcd0decafee5e7413ebe.