update
Some checks are pending
🪞 Mirror to Codeberg / codeberg (push) Waiting to run

This commit is contained in:
Adrian Altner 2026-04-03 13:17:23 +02:00
parent 01db90151a
commit 89113060ea
8 changed files with 37 additions and 68 deletions

View file

@ -30,7 +30,8 @@ publishDate: $PUBLISH_DATE
description: ""
cover: "./$SLUG.jpg"
coverAlt: ""
tags: []
tags:
-
draft: false
syndication:
---

View file

@ -28,7 +28,8 @@ cat > "$FILE" << EOF
title: "$TITLE"
publishDate: $PUBLISH_DATE
description: ""
tags: []
tags:
-
draft: false
syndication:
---

View file

@ -45,7 +45,8 @@ publishDate: $PUBLISH_DATE
description: ""
cover: "./$SLUG.jpg"
coverAlt: ""
tags: []
tags:
-
draft: false
syndication:
---
@ -56,7 +57,8 @@ else
title: "$TITLE"
publishDate: $PUBLISH_DATE
description: ""
tags: []
tags:
-
draft: false
syndication:
---

View file

@ -28,8 +28,8 @@ cat > "$FILE" << EOF
title: "$TITLE"
description: ""
publishDate: $PUBLISH_DATE
tags: []
category: general
tags:
-
draft: true
syndication:
---

View file

@ -29,8 +29,8 @@ cat > "$FILE" << EOF
title: "$TITLE"
description: ""
publishDate: $PUBLISH_DATE
tags: []
category: general
tags:
-
draft: true
syndication:
---

View file

@ -1,14 +1,12 @@
#!/usr/bin/env bash
set -euo pipefail
VAULT_BLOG='/Users/adrian/Obsidian/Web/adrian-altner-com/content/blog'
VAULT_PHOTOS='/Users/adrian/Obsidian/Web/adrian-altner-com/content/photos'
VAULT_CONTENT='/Users/adrian/Obsidian/Web/adrian-altner-com/content'
VPS="${1:-hetzner}"
REMOTE_BRANCH="${2:-main}"
REMOTE_BASE='/opt/websites/www.adrian-altner.com'
REMOTE_BLOG="${REMOTE_BASE}/src/content/blog"
REMOTE_PHOTOS="${REMOTE_BASE}/src/content/photos"
REMOTE_BASE='/opt/websites/adrian-altner.com'
REMOTE_CONTENT="${REMOTE_BASE}/src/content"
# --- 1. Sync vault to VPS ---
ssh "$VPS" "
@ -18,17 +16,9 @@ ssh "$VPS" "
git checkout '$REMOTE_BRANCH'
git reset --hard 'origin/$REMOTE_BRANCH'
git clean -fd -e .env -e .env.production
mkdir -p '$REMOTE_BLOG'
mkdir -p '$REMOTE_PHOTOS'
mkdir -p '$REMOTE_CONTENT'
"
rsync -az --delete \
--include='*/' \
--include='*.md' \
--include='*.mdx' \
--exclude='*' \
"$VAULT_BLOG/" "$VPS:$REMOTE_BLOG/"
rsync -az --delete \
--include='*/' \
--include='*.md' \
@ -40,15 +30,18 @@ rsync -az --delete \
--include='*.json' \
--exclude='.DS_Store' \
--exclude='*' \
"$VAULT_PHOTOS/" "$VPS:$REMOTE_PHOTOS/"
"$VAULT_CONTENT/" "$VPS:$REMOTE_CONTENT/"
# --- 2. Build + cleanup ---
ssh "$VPS" "
set -euo pipefail
cd '$REMOTE_BASE'
podman-compose -f compose.yml up --build -d --force-recreate
podman image prune -af
podman builder prune -af
sudo podman build -t localhost/adrian-altner.com:latest .
sudo systemctl restart podman-compose@adrian-altner.com.service
sudo podman container prune -f 2>/dev/null || true
sudo podman image prune --external -f 2>/dev/null || true
sudo podman image prune -f 2>/dev/null || true
sudo podman builder prune -af 2>/dev/null || true
"
echo "Redeploy done via $VPS (branch: $REMOTE_BRANCH)."
@ -64,4 +57,4 @@ if [[ -n "$WEBMENTION_APP_TOKEN" ]]; then
echo "Webmentions triggered."
else
echo "No WEBMENTION_APP_TOKEN in .env.production — skipping webmentions."
fi
fi

View file

@ -45,7 +45,7 @@ ssh "$VPS" "
podman-compose -f compose.yml up --build -d --force-recreate
podman image prune -af
podman builder prune -af
podman builder prune -af || true
"
echo "Blog deploy done via $VPS (branch: $REMOTE_BRANCH)."

View file

@ -43,55 +43,27 @@ const { dark } = Astro.props;
y2="6.5"></line>
</svg>
</a>
<a href="https://www.linkedin.com/in/adrian-altner/" aria-label="LinkedIn" target="_blank" rel="noopener noreferrer">
<a href="https://git.altner.cloud/adrian" aria-label="Forgejo" target="_blank" rel="noopener noreferrer">
<svg
width="18"
height="18"
viewBox="0 0 24 24"
viewBox="0 0 212 212"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="15"
aria-hidden="true"
>
<path
d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"
></path><rect x="2" y="9" width="4" height="12"></rect><circle
cx="4"
cy="4"
r="2"></circle>
</svg>
</a>
<a href="https://codeberg.org/adrian-altner" aria-label="Codeberg" target="_blank" rel="noopener noreferrer">
<svg
width="18"
height="18"
viewBox="0 0 24 24"
fill="currentColor"
stroke="none"
aria-hidden="true"
>
<path d="M11.999.747A11.974 11.974 0 0 0 0 12.75c0 2.254.635 4.465 1.833 6.376L11.837 6.19c.072-.092.251-.092.323 0l4.178 5.402h-2.992l.065.239h3.113l.882 1.138h-3.674l.103.374h3.86l.777 1.003h-4.358l.135.483h4.593l.695.894h-5.038l.165.589h5.326l.609.785h-5.717l.182.65h6.038l.562.727h-6.397l.183.65h6.717A12.003 12.003 0 0 0 24 12.75 11.977 11.977 0 0 0 11.999.747zm3.654 19.104.182.65h5.326c.173-.204.353-.433.513-.65zm.385 1.377.18.65h3.563c.233-.198.485-.428.712-.65zm.383 1.377.182.648h1.203c.356-.204.685-.412 1.042-.648z"/>
</svg>
</a>
<a href="https://github.com/adrian-altner" aria-label="GitHub" target="_blank" rel="noopener noreferrer">
<svg
width="18"
height="18"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
aria-hidden="true"
>
<path
d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"
></path>
<g transform="translate(6,6)">
<path d="M58 168 v-98 a50 50 0 0 1 50-50 h20" stroke-width="25" />
<path d="M58 168 v-30 a50 50 0 0 1 50-50 h20" stroke-width="25" />
<circle cx="142" cy="20" r="18" />
<circle cx="142" cy="88" r="18" />
<circle cx="58" cy="180" r="18" />
</g>
</svg>
</a>
<a href="/rss.xml" aria-label="RSS">
<svg
width="18"