Testing
/ Build and Deploy Website (push) Successful in 1m52s Details

This commit is contained in:
Brayd 2023-12-25 23:08:54 +01:00
parent 75091f0ff5
commit ee4b6836c7
Signed by: brayd
SSH Key Fingerprint: SHA256:qfebJ1zYUipSSbdcVk/qygkt0xr4VSzCKk7LXw6DGe0
1 changed files with 0 additions and 47 deletions

View File

@ -28,53 +28,6 @@ Nachfolgend findet ihr mal einen Vergleich zwischen früher vs heute dank Forgej
Das besondere an Forgejo Actions ist, dass ich alle Schritte, die ich früher machen musste, die nach dem pushen ins Repository stattgefunden haben, heute automatisieren kann. Hierzu ist eine Datei im Repository unter `.forgejo/workflows/deploy-to-website.yml` definiert. Diese Datei hat alle Infos darüber, was die Forgejo-Instanz jetzt machen soll, wenn ein neuer Commit zum Repository kommt.
Aussehen tut die Datei vom Inhalt aktuell so (die neuste Version findest du immer [im Repository](https://code.braydmedia.de/Braydmedia/braydmedia-web/src/branch/develop/.forgejo/workflows/deploy-to-website.yml)):
```yml
on: [push]
jobs:
Build and Deploy Website:
runs-on: docker
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Update Repositories
run: apt-get update && apt-get upgrade -y
- name: Install Dependencies
run: apt-get install gcc git wget -y
- name: Download Golang v1.21.5
run: wget https://go.dev/dl/go1.21.5.linux-amd64.tar.gz
- name: Unpack Golang
run: rm -rf /usr/local/go && tar -C /usr/local -xzf go1.21.5.linux-amd64.tar.gz
- name: Remove downloaded archive
run: rm ./go1.21.5.linux-amd64.tar.gz
- name: Download Hugo v0.121.1 binary
run: wget https://github.com/gohugoio/hugo/releases/download/v0.121.1/hugo_0.121.1_linux-amd64.deb
- name: Install hugo
run: apt-get install ./hugo_0.121.1_linux-amd64.deb
- name: Remove downloaded .deb package
run: rm ./hugo_0.121.1_linux-amd64.deb
- name: Building Hugo Site
run: hugo
- name: Deploy built site
uses: https://github.com/Dylan700/sftp-upload-action@latest
with:
server: ${{secrets.SSH_URL}}
username: ${{secrets.SSH_USER}}
password: ${{secrets.SSH_PASSWORD}}
port: 22
uploads: |
./public => /www/
ignore: |
*.git
*/**/*git*
*.forgejo
*/**/*forgejo*
delete: 'true'
```
Generell geht die Datei vereinfacht gesagt alle vorher manuellen Schritte jetzt nach und nach automatisch durch, sobald ein neuer Commit zum Repository kommt. Ich liebe das, weil es mir die Arbeit so sehr vereinfacht. Forgejo Actions werden seit v1.19 von Forgejo unterstützt. Wenn ihr selbst eine Instanz habt, würde ich euch definitiv empfehlen das ganze zu nutzen. 👀