From df0a145f3bb4f9d921243fe42eae0e6f10fd2338 Mon Sep 17 00:00:00 2001 From: john Date: Tue, 17 Jun 2025 10:09:19 +0200 Subject: [PATCH 01/23] add deployment to build script --- scripts/bump-build-push.sh | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/scripts/bump-build-push.sh b/scripts/bump-build-push.sh index 45d88e4..42c2d57 100755 --- a/scripts/bump-build-push.sh +++ b/scripts/bump-build-push.sh @@ -2,6 +2,15 @@ set -euo pipefail +# Parse command line arguments +DEPLOY=false +for arg in "$@"; do + case "$arg" in + -d|--deploy) DEPLOY=true ;; + *) echo "Unknown option: $arg"; echo "Usage: $0 [-d|--deploy]"; exit 1 ;; + esac +done + # CONFIGURATION REGISTRY="docker.botris.dev" USERNAME="johnbotris" @@ -54,3 +63,10 @@ git push origin main git push origin "v$NEW_VERSION" echo "🎉 Release v$NEW_VERSION complete." + +# Step 6: Deploy if flag is set +if [ "$DEPLOY" = true ]; then + echo "🚀 Deploying to production..." + ssh john@botris.social 'bash /home/john/docker/femto/update.sh' + echo "✅ Deployment complete." +fi From f21d20e08c44d0450bdd52cf38cbcff6e0d2eac6 Mon Sep 17 00:00:00 2001 From: john Date: Tue, 17 Jun 2025 10:30:54 +0200 Subject: [PATCH 02/23] niceify build script --- package.json | 2 +- scripts/{bump-build-push.sh => publish.sh} | 35 ++++++++++++++++++++-- 2 files changed, 33 insertions(+), 4 deletions(-) rename scripts/{bump-build-push.sh => publish.sh} (58%) diff --git a/package.json b/package.json index f826503..e89b605 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "build": "tsc -b && vite build", "lint": "eslint .", "preview": "vite preview", - "build:deploy": "bash scripts/bump-build-push.sh", + "build:deploy": "bash scripts/publish.sh", "generate:schema": "node scripts/generate-schema.mjs" }, "dependencies": { diff --git a/scripts/bump-build-push.sh b/scripts/publish.sh similarity index 58% rename from scripts/bump-build-push.sh rename to scripts/publish.sh index 42c2d57..fbe77c7 100755 --- a/scripts/bump-build-push.sh +++ b/scripts/publish.sh @@ -2,12 +2,41 @@ set -euo pipefail +# Function to display help text +show_help() { + echo "Usage: $0 [OPTIONS]" + echo + echo "Description:" + echo " This script automates the process of bumping the version, building a Docker image," + echo " pushing it to the registry, and optionally deploying to production." + echo + echo "Options:" + echo " -h, --help Display this help message and exit" + echo " -d, --deploy Deploy to production after building and pushing" + echo " --major Bump the major version (x.0.0)" + echo " --minor Bump the minor version (0.x.0)" + echo " --patch Bump the patch version (0.0.x) [default]" + echo + echo "Examples:" + echo " $0 # Bump patch version, build and push" + echo " $0 --minor # Bump minor version, build and push" + echo " $0 --major -d # Bump major version, build, push and deploy" + echo " $0 --patch --deploy # Bump patch version, build, push and deploy" + echo +} + # Parse command line arguments DEPLOY=false +VERSION_TYPE="patch" # Default to patch version bump + for arg in "$@"; do case "$arg" in + -h|--help) show_help; exit 0 ;; -d|--deploy) DEPLOY=true ;; - *) echo "Unknown option: $arg"; echo "Usage: $0 [-d|--deploy]"; exit 1 ;; + --major) VERSION_TYPE="major" ;; + --minor) VERSION_TYPE="minor" ;; + --patch) VERSION_TYPE="patch" ;; + *) echo "Unknown option: $arg"; echo "Usage: $0 [-h|--help] [-d|--deploy] [--major|--minor|--patch]"; exit 1 ;; esac done @@ -30,8 +59,8 @@ OLD_VERSION=$(node -p "require('./package.json').version") echo "🔍 Current version: $OLD_VERSION" # Step 2: Bump version without Git tag/commit -echo "🚀 Bumping minor version..." -yarn version --minor --no-git-tag-version +echo "🚀 Bumping $VERSION_TYPE version..." +yarn version --$VERSION_TYPE --no-git-tag-version NEW_VERSION=$(node -p "require('./package.json').version") echo "📦 New version: $NEW_VERSION" From f7771c7df36c5cadd4268d70e911ba8d709ca846 Mon Sep 17 00:00:00 2001 From: john Date: Tue, 17 Jun 2025 10:47:46 +0200 Subject: [PATCH 03/23] tweak help text --- scripts/publish.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/publish.sh b/scripts/publish.sh index fbe77c7..68a75e4 100755 --- a/scripts/publish.sh +++ b/scripts/publish.sh @@ -11,8 +11,8 @@ show_help() { echo " pushing it to the registry, and optionally deploying to production." echo echo "Options:" - echo " -h, --help Display this help message and exit" - echo " -d, --deploy Deploy to production after building and pushing" + echo " -h,--help Display this help message and exit" + echo " -d,--deploy Deploy to production after building and pushing" echo " --major Bump the major version (x.0.0)" echo " --minor Bump the minor version (0.x.0)" echo " --patch Bump the patch version (0.0.x) [default]" From 7fab3d0d9f40f44f965c79ac90b1722618b2ff00 Mon Sep 17 00:00:00 2001 From: john Date: Tue, 17 Jun 2025 11:18:23 +0200 Subject: [PATCH 04/23] add source code link --- public/forgejo-logo-primary.svg | 40 +++++++++++++++++++++++++++++++++ src/components/NavBar.tsx | 23 ++++++++++++++++--- 2 files changed, 60 insertions(+), 3 deletions(-) create mode 100644 public/forgejo-logo-primary.svg diff --git a/public/forgejo-logo-primary.svg b/public/forgejo-logo-primary.svg new file mode 100644 index 0000000..7f64c1a --- /dev/null +++ b/public/forgejo-logo-primary.svg @@ -0,0 +1,40 @@ + + + + + Forgejo logo + Caesar Schinas + + + + + + + + + + + + + diff --git a/src/components/NavBar.tsx b/src/components/NavBar.tsx index 02baea5..330c7aa 100644 --- a/src/components/NavBar.tsx +++ b/src/components/NavBar.tsx @@ -8,9 +8,26 @@ export default function NavBar({ children }: PropsWithChildren) { const user = useUser() const isSuperUser = user?.roles.includes(Role.SuperUser) return ( -