Closed thbar closed 1 year ago
On reviendra dessus
Je ré-ouvre, car ça aurait pu aider récemment sur https://github.com/etalab/transport-site/issues/2006
Pour l'instant, j'ai pu me connecter et lire les clés Cachex en local déjà, par exemple. Cela nécessite de fixer le secret cookie du cluster (ce qui n'est pas fait sur CleverCloud pour l'instant).
J'ai repris ce qu'on utilise sur la production pour démarrer, et je préfixe comme suit:
elixir --sname foo --cookie mysecretcookie -S mix phx.migrate_phx.server
Voir https://stackoverflow.com/q/59219229/20302 pour l'explication sur le --sname
plutôt que --name
(j'avais une erreur sinon).
iex --sname console --cookie mysecretcookie --remsh foo
Voir cet article qui explique les dangers de --remsh
(tous les noeuds ont accès à tous les autres), et pourquoi on préfèrera faire tourner le shell sur la même machine.
On peut ensuite faire une requête proxy en local et voir la clé:
curl -I http://proxy.localhost:5000/resource/bibus-brest-gtfs-rt-alerts
Et taper ensuite dans la session "iex":
> Cachex.keys(Unlock.Cachex)
{:ok, ["resource:bibus-brest-gtfs-rt-alerts"]}
Je ne sais pas si ça marchera sur CleverCloud notamment à cause de l'aspect Docker.
Il faut donc tester pour vérifier, avant de tenter d'aller en production:
--remsh
iciNouvel intérêt de faire ça, éviter de créer un problème sur le site car un iex
séparé crée ses propres connections Ecto (voir #1913).
Pour l'instant je clôture pour déclutter le backlog, mais ça reviendra sur le devant de la scène à un moment pour sûr.
Traité dans #2960.
Pour certaines opérations, il est très pratique de pouvoir se connecter via un shell Elixir à une instance en cours d'exécution (ex: vérification de #1380).
Je vais aller voir comment faire cela et le documenter.
Ce point est différent de la connection par SSH, déjà documentée ici.