Design der Karten-Auswahlseite

Sieht gut aus.

Der Link zur Gesamtkarte wird zwar hervorgehoben, jedoch hebt er sich in einer Art vom Content ab, dass mein Adblock-Unterbewusstsein den Link erstmal direkt rausgefiltert hat. :stuck_out_tongue: Ggf. kann man das noch etwas anders darstellen. Oder es erging nur mir so, das kann natürlich auch sein.

3 Beiträge wurden in ein neues Thema verschoben: Sinn und Unsinn von Adblockern

habs jetzt mal links in die Spalte geschoben.

Kannst du mir sagen wie ich das template (*.j2) testen kann? Ich würde gerne versuchen die einzelnen Domänen pro Gruppe herauszufiltern und mit in die rechte Spalte schreiben. Ansonsten steht der Code ja im alten template.

Wir haben das bisher nur mit Ansible ausgerollt. Du könntest dir einen kleine VM irgendwo machen und es dort testweise hinrollen.

ich bin gestern ein Stückchen weiter gekommen :grinning:
ich hab auf meiner Maschine ansible installiert und einen kleinen Testserver von @Parad0x zum testweise Ausrollen zur Verfügung gestellt bekommen :+1:
ansible-ffms habe ich von github gecloned und in hosts den Testserver eingetragen
Den Testserver kann ich mit Ansible anpingen: (Der andere schlägt wie erwartet wegen fehlender Rechte fehl)

$ ansible mapserver -i hosts -m ping
freifunkansibleziel | SUCCESS => {
    "changed": false, 
    "ping": "pong"
}

So weit so gut.
Ich verstehe nicht wie ich das submodule roles bekomme. $ git submodule update --init --recursive schlägt fehl weil ich dafür Rechte brauche.

Was brauche ich überhaupt für Rollen? Nur die mapserver-nginx?

1 „Gefällt mir“

in der .gitsubmodules steht:

[submodule "roles"]
        path = roles
        url = git@github.com:FreiFunkMuenster/Ansible-Freifunk-Gateway.git

Änder das mal auf:

[submodule "roles"]
        path = roles
        url = https://github.com/FreiFunkMuenster/Ansible-Freifunk-Gateway.git

Dann klappt auch ein:

git submodule update --init --recursive

Hintergrund ist der das git sich sonst versucht per SSH bei Github anzumelden was Fehlschlägt wenn du den Public teil deines SSH Keys nicht im Github User-Account Hinterlegt hast.

genau.

1 „Gefällt mir“

In meinem Ordner ist nur ein .gitmodules, aber mit genau dem Inhalt. Wenn ich das ändere kommt dennoch ein

Klone nach 'roles' ...
Permission denied (publickey).
fatal: Could not read from remote repository.

Wenn ich mir die Datei .gitsubmodules mit dem gleichen Inhalt wie .gitmodules erstelle, hab ich auch den Fehler…

Sorry mein Fehler… ich meinte .gitmodules

Ok dann Clone das Repo einfach manuell da rein…

also

cd ansible-ffms
git clone https://github.com/FreiFunkMuenster/Ansible-Freifunk-Gateway.git roles

committen und pushen wird dann aber wohl nicht gehen…

Hab ich ja eh keine Rechte :wink:

Und nun möchte ich mapserver-nginx ausrollen. Dazu einfach das playbook mapserver.yml per $ ansible-playbook -i hosts ausführen? Im Playbook alles außer nginx rausnehmen oder alles drin lassen? Ich blick da nicht ganz durch.

edit:
im playbook steht remote_user: root
Muss ich den zu meinem persönlichen ändern? Also ffmsansible (@Parad0x?)

Deine index.html muss als index.html.j2 im Templates Ordner der Rolle mapserver_nginx liegen.

In der mapserver_nginx/tasks/main.yml alles bis auf den Task Generate index.html auskommentieren. (mit #)

und mit

ansible-playbook -i hosts -l freifunkansibleziel mapserver.yml -t mapserver_nginx --check

ausrollen.

das --check bewirkt das nur ein Trockenlauf gemacht wird und er dir anzeigt was er wie ändern möchte.
ohne --check wird die Datei dann auf den Server geschrieben.

Wir werden die Rolle aber noch ein wenig anpassen müssen da du ja noch .js und .css Files hast die auch übertragen werden müssen oder?

2 „Gefällt mir“

Ich habe das index.html.j2 template abgeändert und das Ergebnis nach dem Ausrollen kann man sich hier anschauen: CodePen

Jetzt könnte man das CSS und JS noch mit in die HTML reinkopieren oder die Dateien durch Ansible mit ausrollen lassen. Gleiches gilt für das Logo, entweder den Link im HTML auf eine zentrale Stelle ändern, oder das Bild mitkopieren.

Wie sieht es mit Bootstrap aus? Ist es OK wenn das wie im Moment im .html extern verlinkt ist, oder wäre es schöner/besser das mit einer lokalen Installation zu lösen?

5 „Gefällt mir“

Ich wäre für eine lokale Kopie. Wie groß ist die Datei denn? (Der Grund für das externe Einbinden ist, dass es wahrscheinlicher ist, dass diese Datei beim Nutzer schon im Cache liegt und die Seite somit schneller lädt / weniger Daten verbraucht. Auf der anderen Seite hängt dann immer das halbe Internet, wenn gerade Amazon, Google oder wo auch immer das gerade liegt hängt. Außerdem gibt es mögliche sicherheitsrelevante Aspekte, warum man eher eine lokale Kopie verwenden sollte. Wenn also niemand Widerspruch einlegt, würde ich es lokal machen.)

1 „Gefällt mir“

Erstmal vielen dank für deine Arbeit! Kann sich echt sehen lassen!

Ich wäre auch für Lokale Kopie von Bootstrap.

Ein paar Anmerkungen habe ich noch zum Template, da es auch von anderen Communitys genutzt werden wird würde ich das komplett Variablisieren.

  • Die Links zum Forum etc. in einer Ansible Array Variable auslagern und per for Schleife ins Template bauen.
  • Das Logo als Variable ins Template bauen und z.B. in unserem Media Repo Speichern.

Also alle Stellen an denen möglicherweise was geändert werden würde auslagern.

Außerdem hab ich irgendwie das Gefühl das die Gesamt-Map an der Stelle nicht Prominent genug ist und übersehen wird.

2 „Gefällt mir“

Ca ein halbes MB: http://getbootstrap.com/getting-started/#download

Das stimmt, da hab ich nicht drüber nachgedacht. Oben im Titel ist das ja auch so gemacht worden.

Hast du denn einen Vorschlag wie man die Gesamtkarte platzieren könnte? Habs jetzt mal in ein h4 gepackt.

Die Suchfunktion ist richtig geil.

Du arbeitest ja jetzt schon etwas länger daran und dich selbst in ansible ein. Falls du einen kleinen “sichtbarer-Erfolg-Mutivationsschub” gebrauchen kannst, dann bin ich dafür das ganze schon jetzt als Beta in einem Zweig ausrollfähig zu machen und auszurollen (lassen). Wenn das erstmal steht, kann die finale Version mit Feinheiten wie Schriftgröße und Variablenauslagerung unkompliziert nachgezogen werden.

Letzten Mittwoch hat das ja leider nicht so gut geklappt. Aber diesen Mittwoch könnten wir nochmal versuchen gemeinsam dran zu arbeiten.

5 „Gefällt mir“

ich hab den Fehler gefunden, warum mein scroll Befehl so gar nicht wollte, ich hatte nur ein minimal bootstrap eingebunden. Mit dem vollen funktioniert es :sweat_smile:

Edit: funktioniert doch…

1 „Gefällt mir“

Wie viel muss von deinem Zeug noch ins Ansible, @tsued? Wir hatten ja gestern kurz drüber gesprochen.

  • index.html.j2 muss ersetzt werden
  • ffms.css, js/search.js, js/bootstrap.min.js und logo.svg muss kopiert werden

Ich versuche heute abend mal einen pull request zu machen und melde mich im hipchat

mit lokalen bootstrap dateien (css, js und fonts) liegt man im mobilen Netz (3G) bei knapp 2s Ladezeit. Ich denke das ist OK :wink:

Wie soll die Dateiorganisation aussehen?

  1. Das Jinja2 template wird ersetzt in /mapserver_nginx/templates
  2. In dem Ansible task (playbook?) in /mapserver_nginx/tasks/main.yml wird ein neuer Eintrag hinzugefügt mit dem ein neues repo nach /var/www/html/ gecloned wird.

So stelle ich mir das vor :see_no_evil: und funktioniert auch, solange der Ordner html/ leer ist. Ich konnte aus dem Rest nicht sehen, ob der Ordner bei einem normalen rollout immer neu angelegt und somit leer ist, oder ob man sich darum kümmern muss…