Dienst:Homepage: Unterschied zwischen den Versionen

Aus Freifunk Köln, Bonn und Umgebung
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „Kategorie:DiensteKategorie:Infrastruktur == Dokumentation zur Homepage == * URL: https://kbu.freifunk.net Q: Wie ändere ich was? # Fork auf github e…“)
 
 
(27 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:Dienste]][[Kategorie:Infrastruktur]]
[[Kategorie:Dienste]][[Kategorie:Infrastruktur]]


== Dokumentation zur Homepage ==
== Dokumentation zur Homepage ==
Zeile 5: Zeile 6:


Q: Wie ändere ich was?
Q: Wie ändere ich was?
# Fork auf github erstellen.
* Änderungen auf gitlab einstellen (https://git.kbu.freifunk.net/ff-kbu/website),
# checkout & Aufsetzen der Entwicklungsumgebung (wie unten beschrieben)
** Gitlab hat einen Web-Editor, über den Dateien bearbeitet werden können
# Ändern und testen
** Best-practice: '''Eigenen Branch''' (fork) für jede zusammenhängende Änderung erstellen
# Pull-Request mit den Änderungen erstellen
**  Änderungen auf dem '''master'''-branch werden '''sofort live''' gestellt.  
** Alternativ checkout & Aufsetzen der Entwicklungsumgebung
* Ändern und testen (gitlab-ci durchlaufen lassen)
* Merge-Request mit den Änderungen erstellen
 
== Review / Rechte / 4-Augen Prinzip ==
 
* Grundsätzlich: Änderungen an der Homepage nur nach Rücksprache. Öffentlichkeitsarbeit betrifft alle.
* Gitlab-Accounts in der KBU-Gruppe (vgl. https://git.kbu.freifunk.net/ff-kbu/website/-/project_members) können Änderungen vornehmen. Mitglieder sind die Freifunker, das Projekt länger begleiten. Die Aufnahme erfolgt auf Anfrage / Rücksprache.
* Review:
** Für blog-Artikel hat sich ein Review / 4-Augen Prinzip bewährt. Hierbei geht's darum, Tippfehler zu entfernen und Missverständnisse zu vermeiden.
** Für kleinere Änderungen (z.B. kaputten Link reparieren), kann ein review helfen (z.B. um alle Stellen zu finden; auch auf der englischen Seite), ist aber nicht zwigend nötig.
** Größere Änderungen an anderen Teilen der Homepage sollte mit der Community abgestimmt sein.


== Technik ==
== Technik ==
* Jekyll als Offline / Blogging System. Details: http://jekyllrb.com/
* Jekyll als Offline / Blogging System. Details: http://jekyllrb.com/


== Workflow ==
== Blogposts ==
* Änderungsvorschläge werden als Pull-Request gegen das github-Repo erstellt (https://github.com/ff-kbu/website - Branch: master)
* Werden in Markdown geschrieben [http://markdown.de/]
* Nach dem 4-Augen Prinzip wird der Pull-Request merged -- Kommentare, fragen werden dort hinterlegt
* Aus semantischen Gründen stehen nur die Überschrifen h1-h3, respektive # - ### in markdown zur Verfügung, beim Rendern werden diese verarbeitet
* Existiert eine Änderung, so wird die Homepage stündlich automatisch über jenkins deployed (https://apps.jluehr.de/jenkins/view/KBU/job/kbu-jenkins-deploy/configure)
* Mittels <code>&lt;!--break--&gt;</code> kann ein Beitrag Einleitung und restlichen Text unterteilt werden.
: Dabei sollte die Einleitung auf der Homepage nur ein oder zwei Absätze lang sein, der Rest ist dann auf der folgeseite zu lesen. Das bitte in der Zukunft beachten.


== Einrichten der Entwicklungsumgebung ==
== Einrichten der Entwicklungsumgebung ==
Für: Debian Stable / Wheezy
* <tt>apt-get install ruby1.9 jekyll bundler git ImageMagick</tt>
* <tt>git clone https://github.com/</tt><Dein_Account><tt>/website</tt>
* Im Verzeichnis website: <tt>bundle install</tt>


== Autodeployment via jenkins  ==
Die Ruby dependencies sind recht alt (ein Upgrade des jekyll-fFrameworks steht eigentlich an). Damit bietet sich Docker für die lokale Entwicklung an.
Build & Deployment der Homepage
 
* Schedule: H/5 * * * *
=== Docker ===
* Kommando
Vgl. https://git.kbu.freifunk.net/ff-kbu/website/blob/master/.gitlab-ci.yml
/usr/local/bin/jekyll build
 
rsync -Havc -e "ssh -p 2222 -l www-data-jenkins" ./_site/ kbu.freifunk.net:/srv/apache2/kbu.freifunk.net/htdocs
* Image: ruby:2.2-jessie
 
Vorbereiten des Containers
<pre>
# git clone ausführen und in das Verzeichnis wechseln
$ gem install bundler --no-ri --no-rdoc -v 1.17.3
$ bundle install  --path vendor
$ bundle exec jekyll serve # Startet einen Server, siehe unten (How to jekyll)
</pre>
 
=== Debian Wheezy ===
<pre>
mkdir /verzeichnis/zur/website/
cd /verzeichnis/zur/website/
</pre>
Notwendige Jekyll Komponenten installieren:
<pre>
apt-get install ruby1.9.1 jekyll bundler git imagemagick
git clone https://git.kbu.freifunk.net/ff-kbu/website.git
bundle install
</pre>
 
=== OSX ===
Getestet unter OS 10.6.8
<pre>
mkdir /verzeichnis/zur/website/
cd /verzeichnis/zur/website/
</pre>
Notwendige Jekyll Komponenten installieren, vorraussetzung ist [https://www.macports.org/ Macports]:
<pre>
sudo port install ruby1.9 gem1.9 ImageMagick git-core Jekyll
gem1.9 install bundler
git clone https://git.kbu.freifunk.net/ff-kbu/website.git
bundle install
</pre>
 
=== How to Jekyll ===
Soweit so gut, jetzt können wir:
<pre>
bundle exec jekyll build // die Seite bauen
bundle exec jekyll -w         // uns Änderungen anzeigen lassen
bundle exec jekyll serve -w // Einen lokalen Server starten auf port 4000 (http://0.0.0.0:4000) auf dem wir eine Vorschau
                                // der Seite betrachten können.  
</pre>
 
== Git Repo ==
Aktuellen Source der Page clonen
<pre>
git clone https://git.kbu.freifunk.net/ff-kbu/website.git
</pre>
 
Wer einen Account auf github hat, kann so von der Shell auf ein neues Repo erstellen:
<pre>
touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://git.kbu.freifunk.net/username/repo-name.git
git push -u origin master
</pre>

Aktuelle Version vom 18. Januar 2020, 10:15 Uhr


Dokumentation zur Homepage

Q: Wie ändere ich was?

  • Änderungen auf gitlab einstellen (https://git.kbu.freifunk.net/ff-kbu/website),
    • Gitlab hat einen Web-Editor, über den Dateien bearbeitet werden können
    • Best-practice: Eigenen Branch (fork) für jede zusammenhängende Änderung erstellen
    • Änderungen auf dem master-branch werden sofort live gestellt.
    • Alternativ checkout & Aufsetzen der Entwicklungsumgebung
  • Ändern und testen (gitlab-ci durchlaufen lassen)
  • Merge-Request mit den Änderungen erstellen

Review / Rechte / 4-Augen Prinzip

  • Grundsätzlich: Änderungen an der Homepage nur nach Rücksprache. Öffentlichkeitsarbeit betrifft alle.
  • Gitlab-Accounts in der KBU-Gruppe (vgl. https://git.kbu.freifunk.net/ff-kbu/website/-/project_members) können Änderungen vornehmen. Mitglieder sind die Freifunker, das Projekt länger begleiten. Die Aufnahme erfolgt auf Anfrage / Rücksprache.
  • Review:
    • Für blog-Artikel hat sich ein Review / 4-Augen Prinzip bewährt. Hierbei geht's darum, Tippfehler zu entfernen und Missverständnisse zu vermeiden.
    • Für kleinere Änderungen (z.B. kaputten Link reparieren), kann ein review helfen (z.B. um alle Stellen zu finden; auch auf der englischen Seite), ist aber nicht zwigend nötig.
    • Größere Änderungen an anderen Teilen der Homepage sollte mit der Community abgestimmt sein.

Technik

Blogposts

  • Werden in Markdown geschrieben [1]
  • Aus semantischen Gründen stehen nur die Überschrifen h1-h3, respektive # - ### in markdown zur Verfügung, beim Rendern werden diese verarbeitet
  • Mittels <!--break--> kann ein Beitrag Einleitung und restlichen Text unterteilt werden.
Dabei sollte die Einleitung auf der Homepage nur ein oder zwei Absätze lang sein, der Rest ist dann auf der folgeseite zu lesen. Das bitte in der Zukunft beachten.

Einrichten der Entwicklungsumgebung

Die Ruby dependencies sind recht alt (ein Upgrade des jekyll-fFrameworks steht eigentlich an). Damit bietet sich Docker für die lokale Entwicklung an.

Docker

Vgl. https://git.kbu.freifunk.net/ff-kbu/website/blob/master/.gitlab-ci.yml

  • Image: ruby:2.2-jessie

Vorbereiten des Containers

# git clone ausführen und in das Verzeichnis wechseln
$ gem install bundler --no-ri --no-rdoc -v 1.17.3
$ bundle install  --path vendor
$ bundle exec jekyll serve # Startet einen Server, siehe unten (How to jekyll)

Debian Wheezy

mkdir /verzeichnis/zur/website/
cd /verzeichnis/zur/website/

Notwendige Jekyll Komponenten installieren:

apt-get install ruby1.9.1 jekyll bundler git imagemagick
git clone https://git.kbu.freifunk.net/ff-kbu/website.git
bundle install

OSX

Getestet unter OS 10.6.8

mkdir /verzeichnis/zur/website/
cd /verzeichnis/zur/website/

Notwendige Jekyll Komponenten installieren, vorraussetzung ist Macports:

sudo port install ruby1.9 gem1.9 ImageMagick git-core Jekyll
gem1.9 install bundler
git clone https://git.kbu.freifunk.net/ff-kbu/website.git
bundle install

How to Jekyll

Soweit so gut, jetzt können wir:

bundle exec jekyll build 	// die Seite bauen
bundle exec jekyll -w	        // uns Änderungen anzeigen lassen
bundle exec jekyll serve -w	// Einen lokalen Server starten auf port 4000 (http://0.0.0.0:4000) auf dem wir eine Vorschau 
                                // der Seite betrachten können. 

Git Repo

Aktuellen Source der Page clonen

git clone https://git.kbu.freifunk.net/ff-kbu/website.git

Wer einen Account auf github hat, kann so von der Shell auf ein neues Repo erstellen:

touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://git.kbu.freifunk.net/username/repo-name.git
git push -u origin master