52 lines
1.4 KiB
YAML
52 lines
1.4 KiB
YAML
# Sample workflow for building and deploying a Hugo site to GitHub Pages
|
|
name: Deploy
|
|
|
|
on:
|
|
# Runs on pushes targeting the default branch
|
|
push:
|
|
branches: ["main"]
|
|
|
|
# Allows you to run this workflow manually from the Actions tab
|
|
workflow_dispatch:
|
|
|
|
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
|
|
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
|
|
concurrency:
|
|
group: "deploy"
|
|
cancel-in-progress: false
|
|
|
|
# Default to bash
|
|
defaults:
|
|
run:
|
|
shell: bash
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Setup Hugo
|
|
uses: peaceiris/actions-hugo@v3
|
|
with:
|
|
hugo-version: "latest"
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
- name: Build with Hugo
|
|
env:
|
|
HUGO_CACHEDIR: ${{ runner.temp }}/hugo_cache
|
|
HUGO_ENVIRONMENT: production
|
|
run: |
|
|
hugo \
|
|
--minify \
|
|
--cleanDestinationDir
|
|
- name: rsync deployments
|
|
uses: burnett01/rsync-deployments@7.0.2
|
|
with:
|
|
switches: -rlp --delete
|
|
path: ./public/
|
|
remote_path: /var/www/johannes-dokumentation/
|
|
remote_host: johannes-dokumentation.z1glr.de
|
|
remote_user: deploy_johannes-dokumentation
|
|
remote_key: ${{ secrets.DEPLOY_KEY }}
|