diff options
| author | Benjamin Sanders <ben@Benjamins-MacBook-Pro.local> | 2025-10-16 18:02:37 -0400 |
|---|---|---|
| committer | Benjamin Sanders <ben@Benjamins-MacBook-Pro.local> | 2025-10-16 18:02:37 -0400 |
| commit | 1ccc6f5a5eaa69496c6c2abdd3e1cf13206e6f1a (patch) | |
| tree | 5deadcd628bf21c7c5ba202a01cbb0557d106781 /_site/jekyll-nginx.sh | |
| parent | 86c784235321db30a07cd799cc179a115dfffa33 (diff) | |
initial commit
Diffstat (limited to '_site/jekyll-nginx.sh')
| -rw-r--r-- | _site/jekyll-nginx.sh | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/_site/jekyll-nginx.sh b/_site/jekyll-nginx.sh deleted file mode 100644 index 634449d..0000000 --- a/_site/jekyll-nginx.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/bin/bash - -# Exit on errors -set -e - -# Variables -USER_HOME="/data" -SITE_NAME="stg-jekyll" -BARE_REPO="$USER_HOME/repos/$SITE_NAME.git" -SITE_DIR="$USER_HOME/sites/$SITE_NAME" -PUBLIC_DIR="$SITE_DIR/html" -DOMAIN="sanderstechnologygroup.com" -NGINX_CONF="/etc/nginx/sites-available/$DOMAIN.conf" - -# Update and install dependencies -sudo apt update -sudo apt install -y ruby-full build-essential zlib1g-dev git nginx - -# Setup Ruby environment in .bashrc if not already present -if ! grep -q 'export GEM_HOME' "$USER_HOME/.bashrc"; then - echo 'export GEM_HOME="$HOME/gems"' >> "$USER_HOME/.bashrc" - echo 'export PATH="$HOME/gems/bin:$PATH"' >> "$USER_HOME/.bashrc" -fi - -# Load environment -export GEM_HOME="$USER_HOME/gems" -export PATH="$USER_HOME/gems/bin:$PATH" - -# Install Jekyll and Bundler -gem install jekyll bundler - -# Create directories -mkdir -p "$BARE_REPO" "$SITE_DIR" "$PUBLIC_DIR" - -# Setup Git bare repo -cd "$BARE_REPO" -git init --bare - -# Create post-receive hook -cat > hooks/post-receive <<EOF -#!/bin/bash -TARGET_DIR="$SITE_DIR" -PUBLIC_DIR="$PUBLIC_DIR" - -export GEM_HOME="$USER_HOME/gems" -export PATH="$USER_HOME/gems/bin:$PATH" - -GIT_WORK_TREE="\$TARGET_DIR" git checkout -f - -cd "\$TARGET_DIR" -bundle install --path vendor/bundle -bundle exec jekyll build -d "\$PUBLIC_DIR" -EOF - -chmod +x hooks/post-receive - -# Adjust permissions for NGINX access -chmod o+x "$USER_HOME" -chmod -R o+rX "$PUBLIC_DIR" - -# Create NGINX config -sudo tee "$NGINX_CONF" > /dev/null <<EOF -server { - listen 80; - server_name $DOMAIN; - - root $PUBLIC_DIR; - index index.html; - - location / { - try_files \$uri \$uri.html \$uri/ =404; - } -} -EOF - -# Enable NGINX site -sudo ln -s "$NGINX_CONF" /etc/nginx/sites-enabled/ - -# Test and reload NGINX -sudo nginx -t && sudo systemctl reload nginx - -echo "✅ Jekyll site deployment setup complete." -echo "➡️ Push your site with: git remote add live ssh://ben@64.42.180.156/$BARE_REPO && git push live master" |
