#!/bin/zsh function _env() { d=${0:a:h:h} ailog=$d/target/release/ailog oauth=$d/oauth myblog=$d/my-blog port=4173 source $oauth/.env.production case $OSTYPE in darwin*) export NVM_DIR="$HOME/.nvm" [ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh" [ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ;; esac } function _server() { lsof -ti:$port | xargs kill -9 2>/dev/null || true cd $d/my-blog cargo build --release $ailog build $ailog serve --port $port } function _server_public() { cloudflared tunnel --config $d/cloudflared-config.yml run } function _oauth_build() { cd $oauth nvm use 21 npm i npm run build rm -rf $myblog/static/assets cp -rf dist/* $myblog/static/ cp $oauth/dist/index.html $myblog/templates/oauth-assets.html #npm run preview } function _server_comment() { cargo build --release AILOG_DEBUG_ALL=1 $ailog stream start my-blog } function _server_ollama(){ lsof -ti:11434 | xargs kill -9 2>/dev/null || true brew services stop ollama OLLAMA_ORIGINS="https://log.syui.ai" ollama serve } _env case "${1:-serve}" in tunnel|c) _server_public ;; oauth|o) _oauth_build ;; comment|co) _server_comment ;; ollama|ol) _server_ollama ;; serve|s|*) _server ;; esac