diff --git a/install_alpine.sh b/install_alpine.sh new file mode 100644 index 0000000..1b81d34 --- /dev/null +++ b/install_alpine.sh @@ -0,0 +1,125 @@ +#!/bin/sh + +# ================================================================= # +# SMART INSTALLER: ACT_RUNNER + OPENRC + SYSTEM LABELS (ALPINE) +# ================================================================= # + +set -e + +# --- Проверка, что это Alpine Linux --- +if [ ! -f /sbin/openrc-run ]; then + echo "Ошибка: Этот скрипт предназначен только для Alpine Linux (OpenRC)" + exit 1 +fi + +# --- Конфигурация --- +WORK_DIR="/opt/act_runner" +EXE_URL="https://git.dadehard.ru/kalugin66/act_runner/raw/branch/main/act_runner-0.4.0-linux-amd64" +INSTANCE_URL="https://git.dadehard.ru/" +TOKEN="UzVNobPFBJe8ZoQXwu5ZamfgqCpTJZGR3LDVnX7N" +SERVICE_NAME="act_runner" +DEFAULT_LABEL="sber" + +# --- 1. Установка зависимостей --- +echo "--- Проверка зависимостей ---" +apk add --no-cache wget + +# --- 2. Сбор системной информации --- +HOSTNAME=$(hostname) +ARCH="linux-amd64" +MEM_TOTAL_KB=$(grep MemTotal /proc/meminfo | awk '{print $2}') +MEM_GB=$(( MEM_TOTAL_KB / 1024 / 1024 )) +MEM_LABEL="${MEM_GB}GB_RAM" + +FULL_LABELS="$DEFAULT_LABEL:host,linux-amd64:host,self-hosted:host,$HOSTNAME:host,$ARCH:host,$MEM_LABEL:host" + +echo "--- Данные системы: ПК=$HOSTNAME, ОЗУ=$MEM_LABEL, Метка=$DEFAULT_LABEL ---" + +# --- 3. Подготовка окружения --- +if [ ! -d "$WORK_DIR" ]; then + mkdir -p "$WORK_DIR" +fi +cd "$WORK_DIR" + +# --- 4. Остановка и удаление старой службы (если есть) --- +echo "--- Шаг 1: Очистка ---" +if [ -f "/etc/init.d/${SERVICE_NAME}" ]; then + rc-service "$SERVICE_NAME" stop 2>/dev/null || true + rc-update del "$SERVICE_NAME" 2>/dev/null || true + rm -f "/etc/init.d/${SERVICE_NAME}" +fi + +# --- 5. Загрузка бинарного файла --- +echo "--- Шаг 2: Загрузка act_runner ---" +if [ ! -f "$WORK_DIR/act_runner" ]; then + wget -q --show-progress -O act_runner "$EXE_URL" + chmod +x act_runner +fi + +# --- 6. Создание конфигурационного файла config.yaml --- +echo "--- Шаг 3: Формирование конфига ---" + tee "$WORK_DIR/config.yaml" > /dev/null < /dev/null <