fix: make workflow package installation environment-agnostic (fix apk command not found)
This commit is contained in:
@@ -19,7 +19,16 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
TOKEN: ${{ secrets.GIT_TOKEN }}
|
TOKEN: ${{ secrets.GIT_TOKEN }}
|
||||||
run: |
|
run: |
|
||||||
|
if ! command -v git >/dev/null 2>&1; then
|
||||||
|
if command -v apk >/dev/null 2>&1; then
|
||||||
apk add --no-cache git
|
apk add --no-cache git
|
||||||
|
elif command -v apt-get >/dev/null 2>&1; then
|
||||||
|
apt-get update && apt-get install -y git
|
||||||
|
else
|
||||||
|
echo "Git not found and no package manager detected"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
CLEAN_TOKEN=$(printf '%s' "${TOKEN}" | tr -d '\r\n')
|
CLEAN_TOKEN=$(printf '%s' "${TOKEN}" | tr -d '\r\n')
|
||||||
git clone "http://oauth2:${CLEAN_TOKEN}@gitea:3000/AVTEX/XFlow.git" .
|
git clone "http://oauth2:${CLEAN_TOKEN}@gitea:3000/AVTEX/XFlow.git" .
|
||||||
|
|
||||||
@@ -47,7 +56,28 @@ jobs:
|
|||||||
|
|
||||||
- name: Deploy to server
|
- name: Deploy to server
|
||||||
run: |
|
run: |
|
||||||
apk add --no-cache docker-cli docker-compose
|
if ! command -v docker >/dev/null 2>&1; then
|
||||||
|
if command -v apk >/dev/null 2>&1; then
|
||||||
|
apk add --no-cache docker-cli
|
||||||
|
elif command -v apt-get >/dev/null 2>&1; then
|
||||||
|
apt-get update && apt-get install -y docker.io
|
||||||
|
else
|
||||||
|
echo "Docker not found and no package manager detected"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! command -v docker-compose >/dev/null 2>&1 && ! docker compose version >/dev/null 2>&1; then
|
||||||
|
if command -v apk >/dev/null 2>&1; then
|
||||||
|
apk add --no-cache docker-compose
|
||||||
|
elif command -v apt-get >/dev/null 2>&1; then
|
||||||
|
apt-get update && apt-get install -y docker-compose
|
||||||
|
else
|
||||||
|
echo "Docker compose not found and no package manager detected"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# Подготовка папок в новой структуре
|
# Подготовка папок в новой структуре
|
||||||
mkdir -p /root/projects/xflow/.output /root/projects/xflow/prisma /root/projects/xflow/node_modules
|
mkdir -p /root/projects/xflow/.output /root/projects/xflow/prisma /root/projects/xflow/node_modules
|
||||||
cp -r .output/. /root/projects/xflow/.output/
|
cp -r .output/. /root/projects/xflow/.output/
|
||||||
@@ -60,7 +90,12 @@ jobs:
|
|||||||
# Мы используем мастер-файл из корня проектов
|
# Мы используем мастер-файл из корня проектов
|
||||||
docker stop xflow_crm 2>/dev/null || true
|
docker stop xflow_crm 2>/dev/null || true
|
||||||
docker rm xflow_crm 2>/dev/null || true
|
docker rm xflow_crm 2>/dev/null || true
|
||||||
|
|
||||||
|
if docker compose version >/dev/null 2>&1; then
|
||||||
docker compose -f /root/projects/docker-compose.yml up -d --no-deps xflow_crm
|
docker compose -f /root/projects/docker-compose.yml up -d --no-deps xflow_crm
|
||||||
|
else
|
||||||
|
docker-compose -f /root/projects/docker-compose.yml up -d --no-deps xflow_crm
|
||||||
|
fi
|
||||||
|
|
||||||
echo "⏳ Waiting for container to start..."
|
echo "⏳ Waiting for container to start..."
|
||||||
sleep 5
|
sleep 5
|
||||||
|
|||||||
Reference in New Issue
Block a user