Skip to content

Commit 9ddd895

Browse files
committed
Updated readme with build and deploy workflow.
1 parent 6711ac7 commit 9ddd895

File tree

1 file changed

+86
-1
lines changed

1 file changed

+86
-1
lines changed

README.md

Lines changed: 86 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,17 @@ Die Vorlage orientiert sich aber an den Vorschriften der Fakultät Technik an de
44

55
Die Vorlage ist universal einsetzbar für T1000, T2000, T3000, die Studienarbeit, die Bachelorarbeit, sowie sonstige Projekte während der Theorie-Semester.
66

7+
## Overview
8+
- [dhbw-latex-template](#dhbw-latex-template)
9+
- [Overview](#overview)
10+
- [How to use](#how-to-use)
11+
- [Release and Deploy](#release-and-deploy)
12+
- [Release](#release)
13+
- [Deployment](#deployment)
14+
- [Feedback/Issues](#feedbackissues)
15+
- [Author](#author)
16+
- [LICENSE](#license)
17+
718
## How to use
819
1. Installiere einen beliebigen Latex-Editor (getestet unter: [VS-Code-Extension](https://github.com/James-Yu/LaTeX-Workshop/wiki/Install))
920
1. Klone das Repo auf deine Maschine
@@ -111,10 +122,84 @@ Die Vorlage ist universal einsetzbar für T1000, T2000, T3000, die Studienarbeit
111122
> Auch die getroffenen Einstellungen in [main.tex](main.tex) müssen nicht bearbeitet werden.
112123
> Eigene Bibliotheken und Definitionen können hier aber eingebunden werden (Bestehende Module könnten dadurch jedoch beeinflusst werden).
113124

125+
## Release and Deploy
126+
Die folgenden Automatisierungen sind in der Datei [new_release.yml](.github/workflows/new_release.yml) definiert und beschreiben [GitHub Actions](https://github.com/features/actions).
127+
128+
Um automatisch einen Release zu erstellen, muss ein Tag im Format v\*.\*.\* erstellt und auf das Repository gepusht werden.
129+
Dies wird mit den Folgenden Befehlen erreicht:
130+
1. Tag erstellen
131+
```sh
132+
git tag v*.*.*
133+
```
134+
2. Tag pushen
135+
```sh
136+
git push origin v*.*.*
137+
```
138+
139+
### Release
140+
Die GitHub Action [xu-cheng/latex-action@v2](https://github.com/marketplace/actions/github-action-for-latex) baut zunächst die PDF aus den Latex-Dokumenten des Repository.
141+
142+
Anschließend erstellt die GitHub Action [marvinpinto/action-automatic-releases@latest](https://github.com/marvinpinto/action-automatic-releases) den Release unter Einbindung der generierten PDF-Datei.
143+
Zusätzlich wird ein Changelog generiert.
144+
145+
### Deployment
146+
Für das automatische Deployment mit [GitHub Pages](https://pages.github.com) wird die GitHub Action [crazy-max/ghaction-github-pages@v3](https://github.com/crazy-max/ghaction-github-pages/tree/dev) verwendet.
147+
148+
149+
Zunächst muss GitHub Pages in den Repository-Einstellungen konfiguriert werden.
150+
Dazu müssen die Folgenden Schritte ausgeführt werden:
151+
1. Öffne die Einstellungen des Repository
152+
2. Wähle im Optionsmenü den Punkt "Pages"
153+
3. Wähle als Quelle "Deploy from branch"
154+
4. Wähle als Branch-Namen "gh-pages" im "/root" Verzeichnis
155+
156+
Anschließend kann das automatische Deployment in der Datei [new_releases.yml](.github/workflows/new_release.yml) angepasst werden.
157+
1. Anpassen der anzuzeigenden HTML-Datei
158+
```yml
159+
- name: Create build destination
160+
run: |
161+
mkdir public
162+
cat > public/index.html <<EOL
163+
<!doctype html>
164+
<html>
165+
<head>
166+
<title>GitHub Pages deployed!</title>
167+
</head>
168+
<body>
169+
<div style="position: absolute; left: 0; right: 0; bottom: 0; top: 0;">
170+
<iframe src="./main.pdf" width="100%" height="100%" frameborder="0">
171+
</iframe>
172+
</div>
173+
</body>
174+
</html>
175+
EOL
176+
```
177+
> Standardmäßig zeigt GitHub Pages unter Verwendung dieses HTML-Codes die PDF-Datei "main.pdf".
178+
> Solltest du den Namen deiner [main.tex](main.tex) Datei verändert haben, musst du hier auch den Namen in den kompilierten Namen der PDF ändern.
179+
180+
> Alternativ kannst du an dieser Stelle auch deinen eigenen HTML-Code einsetzen.
181+
> Bedenke: Ohne Anpassungen des Deployments steht dir lediglich die generierte PDF-Datei im Repository zur Verfügung.
182+
2. Verbinden des Deployment mit einer eigenen Domain
183+
```yml
184+
- name: Deploy to GitHub Pages
185+
if: success()
186+
uses: crazy-max/ghaction-github-pages@v3
187+
with:
188+
target_branch: gh-pages
189+
build_dir: public
190+
env:
191+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
192+
```
193+
> Unter dem Schlüssel "with:" kann neben der target_branch auch mittels des Keywords "fqdn:" die Zieldomain angegeben werden.
194+
```yml
195+
fqdn: my-domain-name.de
196+
```
197+
> Für weitere Personalisierungen: [crazy-max/ghaction-github-pages@v3 Dokumentation](https://github.com/crazy-max/ghaction-github-pages/tree/dev)
198+
114199
## Feedback/Issues
115200
Sollten Sie Fehler in der Latex Vorlage finden oder Anregungen zur Verbesserung haben, können Sie diese in Form eines Issue unter dem [Issue-Tab](https://github.com/schuler-henry/dhbw-latex-template/issues) einreichen.
116201
117-
## Autor
202+
## Author
118203
* [Henry Schuler](https://henryschuler.de) / [github](https://github.com/schuler-henry) / [E-Mail](mailto:contact@henryschuler.de?subject=[GitHub]%20dhbw-latex-template)
119204
120205
## [LICENSE](LICENSE)

0 commit comments

Comments
 (0)