Routine zum Skript-Deployment
zwei beteiligte Repos/RStudio-Projekte:
-
srfs
\Rightarrow
"Arbeits-Repo" mit allen.Rmd
-Dateien -
sfsr
\Rightarrow
"Deployment-Repo" mit dem zu hostenden Output (Ort dieses Issues)
Voraussetzungen
-
bs4_book
ist aktuell nur in der github-Version vonbookdown
verfügbar ( siehe hier ):
remotes::install_github("rstudio/bslib")
install.packages("downlit")
remotes::install_github("rstudio/bookdown")
- Außerdem muss ein spezifischer Branch installiert werden, um Probleme mit Umlauten zu vermeiden:
remotes::install_github("rstudio/bookdown#1027")
knit
Die folgenden Schritte sind dann in der srfs
-Repo nötig, bevor Du auf Build Webseite
klickst:
_output.yaml
Anpassung der Ich habe das auskommentiert, um Probleme beim Testen der knits zu vermeiden. Diese Abschnitt muss "aktiv" sein, um das neue Layout zu erhalten:
bookdown::bs4_book:
theme:
primary: "#004F9F"
Das folgende muss dann auskommentiert werden:
# bookdown::gitbook:
# css: style.css
# config:
# toc:
# before: |
# <li><a href="./">Statistik fuer Sozialwissenschaften mit R</a></li>
# after: |
# <li><span>Version 0.1</span></br><a href="https://github.com/rstudio/bookdown" target="blank">Published with bookdown</a></li>
_bookdown.yml
Anpassen der Output-Directory im Zielordner mit output_dir:
anpassen:
output_dir: "../sfsr"
Du gibst mit ../sfsr
den "Nachbarordner" als Ziel an. Das setzt natürlich voraus, dass sowohl der Skriptordner als auch sfsr
im gleichen Verzeichnis liegen. Bei mir D:\oCloud\srfs
bzw. D:\oCloud\sfsr
Ggf. mit rmd_files:
die gewünschten Kapitel angeben:
rmd_files: ['index.Rmd','1020-Definition_Begriffe.Rmd','....' ]
Die Reihenfolge bestimmt auch die Kapitelreihenfolge
Nach erfolgreichem knit wieder auskommentieren
...um Probleme zu vermeiden: die beiden .yml
wieder in den Ausgangszustand versetzen, um beim Arbeiten und kapitelweisen Testen der srfs
-Arbeitsrepo keine Konflikte zu bekommen. Bspw. müssten sonst die Hiwis das neue Layout installieren, würden Fehler entstehen, wenn die Nachbar-Repo nicht richtig erstellt ist. (Was ja bei den Hiwis nicht der Fall sein dürfte). Zielkonfiguration siehe erster Kommentar unten.
Letzter Schritt: commit & push in die host-repo
Wechsel in das Projekt für sfsr
, commit und push.
Die Bereitstellung dauert ggf. einige Minuten, Du erkennst das an diesem Symbol in der Projektliste:
Trouble shooting:
Wahrscheinlich ist es am besten, vor dem knitten alles in der deployment-Repo zu löschen, außer der R-Projektdatei, Readme.md
und vor allem die .gitlab-ci.yml
. Das ist das Skript, das die Bereitstellung der Seite sicherstellt.