forked from yousinix/portfolYOU
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdeploy.bash
More file actions
50 lines (41 loc) · 1.26 KB
/
Copy pathdeploy.bash
File metadata and controls
50 lines (41 loc) · 1.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
DIR="$(dirname "$(realpath "$0")")"
cd $DIR
echo "=== Portfolio Deployment ==="
echo "Directory: $DIR"
# 1. Подтягиваем свежие изменения
echo "Updating repository..."
if [ -d "$DIR/.git" ]; then
git pull origin master
else
echo "Not a git repository, skipping pull"
fi
# 2. Удаляем содержимое старого сайта
echo "Cleaning old site..."
if [ -d "$DIR/_site" ]; then
rm -rf "$DIR/_site"
echo "Old site removed"
else
echo "No previous build found"
fi
# 5. Билдим сайт
echo "Building Jekyll site..."
docker compose down --remove-orphans
docker compose run --rm jekyll_builder
# 5.1 самопроверка
if [ ! -d "$DIR/_site" ] || [ ! -f "$DIR/_site/index.html" ]; then
echo "❌ Jekyll build failed!"
echo "No site was generated or missing index.html"
exit 1 # Выходим из всего скрипта
fi
echo "✅ Site built succesfully"
# 6. Запускаем nginx
echo "Starting nginx..."
docker stop nginx 2>/dev/null || true
docker rm nginx 2>/dev/null || true
docker compose up -d nginx
echo ""
echo "=== Deployment Complete! ==="
echo "Site is available at: http://localhost:9060"
echo ""
echo "To stop: docker compose down"
echo "To view logs: docker compose logs -f"