♻️ refactor(runner): simplify shell helpers and workflow scripts
This commit is contained in:
@@ -90,29 +90,6 @@ echo ""
|
||||
|
||||
if [ $FIXED_COUNT -gt 0 ]; then
|
||||
echo -e "${GREEN}✓ 所有问题已自动修复!${NC}"
|
||||
echo ""
|
||||
echo "建议执行以下命令重启容器:"
|
||||
echo " docker compose down"
|
||||
echo " docker compose build --no-cache"
|
||||
echo " docker compose up -d"
|
||||
echo ""
|
||||
|
||||
# 询问是否立即重启
|
||||
read -p "是否立即重启容器? (y/N): " -n 1 -r
|
||||
echo ""
|
||||
if [[ $REPLY =~ ^[Yy]$ ]]; then
|
||||
echo "正在重启容器..."
|
||||
docker compose down
|
||||
docker compose build --no-cache
|
||||
docker compose up -d
|
||||
sleep 3
|
||||
echo ""
|
||||
echo "容器状态:"
|
||||
docker compose ps
|
||||
echo ""
|
||||
echo "查看日志:"
|
||||
docker logs gitea-runner --tail=30
|
||||
fi
|
||||
else
|
||||
echo -e "${GREEN}✓ 所有文件格式正确,无需修复!${NC}"
|
||||
fi
|
||||
|
||||
@@ -20,6 +20,24 @@ mkdir -p "$PERSISTENT_BIN"
|
||||
mkdir -p /var/log/supervisor
|
||||
mkdir -p /var/run
|
||||
|
||||
create_buildx_builder() {
|
||||
docker buildx create \
|
||||
--name gitea-multiarch \
|
||||
--driver docker-container \
|
||||
--bootstrap \
|
||||
--use \
|
||||
--config /data/buildx/buildkitd.toml 2>/dev/null || \
|
||||
docker buildx use gitea-multiarch 2>/dev/null
|
||||
}
|
||||
|
||||
ensure_buildx_builder() {
|
||||
docker buildx use gitea-multiarch 2>/dev/null || {
|
||||
echo "⚠ Recreating Buildx builder..."
|
||||
docker buildx rm gitea-multiarch 2>/dev/null || true
|
||||
create_buildx_builder
|
||||
}
|
||||
}
|
||||
|
||||
# ============================================
|
||||
# 初始化 Docker Buildx 支持(可选)
|
||||
# ============================================
|
||||
@@ -104,13 +122,7 @@ if [ "$ENABLE_BUILDX" = "true" ]; then
|
||||
EOF
|
||||
|
||||
# 创建 Buildx builder
|
||||
docker buildx create \
|
||||
--name gitea-multiarch \
|
||||
--driver docker-container \
|
||||
--bootstrap \
|
||||
--use \
|
||||
--config /data/buildx/buildkitd.toml 2>/dev/null || \
|
||||
docker buildx use gitea-multiarch 2>/dev/null
|
||||
create_buildx_builder
|
||||
|
||||
# 验证
|
||||
echo "Verifying Buildx..."
|
||||
@@ -125,15 +137,7 @@ EOF
|
||||
echo "✓ Buildx already configured"
|
||||
|
||||
# 确保 builder 可用
|
||||
docker buildx use gitea-multiarch 2>/dev/null || {
|
||||
echo "⚠ Recreating Buildx builder..."
|
||||
docker buildx rm gitea-multiarch 2>/dev/null || true
|
||||
docker buildx create \
|
||||
--name gitea-multiarch \
|
||||
--driver docker-container \
|
||||
--bootstrap \
|
||||
--use 2>/dev/null
|
||||
}
|
||||
ensure_buildx_builder
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
@@ -133,12 +133,11 @@ echo "✓ Configuration file generated!"
|
||||
# 创建缓存目录
|
||||
mkdir -p cache
|
||||
|
||||
# 使用 Python 修改配置(最可靠的方法)
|
||||
# 使用 Python 修改配置
|
||||
echo ""
|
||||
echo "Configuring runner settings..."
|
||||
|
||||
if command -v python3 &> /dev/null; then
|
||||
python3 << PYEOF
|
||||
python3 << PYEOF
|
||||
import yaml
|
||||
import sys
|
||||
|
||||
@@ -184,32 +183,6 @@ except Exception as e:
|
||||
sys.exit(1)
|
||||
PYEOF
|
||||
|
||||
PYTHON_EXIT=$?
|
||||
|
||||
if [ $PYTHON_EXIT -ne 0 ]; then
|
||||
echo ""
|
||||
echo "⚠ Python configuration failed, using basic sed..."
|
||||
|
||||
# 基本的 sed 修改(只修改简单的值,不动 labels)
|
||||
sed -i 's/capacity: 1/capacity: 4/g' config.yaml || true
|
||||
sed -i 's/enabled: false/enabled: true/g' config.yaml || true
|
||||
sed -i 's|dir: ""|dir: ./cache|g' config.yaml || true
|
||||
|
||||
echo "✓ Basic configuration applied"
|
||||
echo " Note: Please manually verify labels in config.yaml match .runner"
|
||||
fi
|
||||
else
|
||||
echo "⚠ Python3 not found, applying basic configuration..."
|
||||
|
||||
# 基本的 sed 修改
|
||||
sed -i 's/capacity: 1/capacity: 4/g' config.yaml || true
|
||||
sed -i 's/enabled: false/enabled: true/g' config.yaml || true
|
||||
sed -i 's|dir: ""|dir: ./cache|g' config.yaml || true
|
||||
|
||||
echo "✓ Basic configuration applied"
|
||||
echo " Note: Labels will use act_runner defaults"
|
||||
fi
|
||||
|
||||
# 验证配置文件
|
||||
echo ""
|
||||
echo "Validating configuration..."
|
||||
|
||||
@@ -5,10 +5,8 @@ SCRIPT_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
|
||||
UPGRADE_HELPER="${SCRIPT_DIR}/upgrade.sh"
|
||||
DEFAULT_RUNNER_VERSION_FALLBACK="${DEFAULT_RUNNER_VERSION_FALLBACK:-0.2.13}"
|
||||
|
||||
if [ -f "${UPGRADE_HELPER}" ]; then
|
||||
# shellcheck source=/dev/null
|
||||
source "${UPGRADE_HELPER}"
|
||||
fi
|
||||
# shellcheck source=/dev/null
|
||||
source "${UPGRADE_HELPER}"
|
||||
|
||||
echo "=========================================="
|
||||
echo " Gitea Runner Installation Script "
|
||||
@@ -42,15 +40,13 @@ echo "Available versions: https://dl.gitea.com/act_runner/"
|
||||
echo ""
|
||||
|
||||
DEFAULT_RUNNER_VERSION="${DEFAULT_RUNNER_VERSION_FALLBACK}"
|
||||
if declare -F resolve_latest_version_or_fallback >/dev/null 2>&1; then
|
||||
DEFAULT_RUNNER_VERSION=$(resolve_latest_version_or_fallback "${DEFAULT_RUNNER_VERSION_FALLBACK}")
|
||||
fi
|
||||
DEFAULT_RUNNER_VERSION=$(resolve_latest_version_or_fallback "${DEFAULT_RUNNER_VERSION_FALLBACK}")
|
||||
|
||||
echo "Default install version: ${DEFAULT_RUNNER_VERSION}"
|
||||
read -p "Enter version to install (default: ${DEFAULT_RUNNER_VERSION}): " RUNNER_VERSION
|
||||
RUNNER_VERSION=${RUNNER_VERSION:-$DEFAULT_RUNNER_VERSION}
|
||||
|
||||
if declare -F validate_version >/dev/null 2>&1 && ! validate_version "${RUNNER_VERSION}"; then
|
||||
if ! validate_version "${RUNNER_VERSION}"; then
|
||||
echo "✗ Invalid version format: ${RUNNER_VERSION}"
|
||||
exit 1
|
||||
fi
|
||||
@@ -118,10 +114,7 @@ echo ""
|
||||
# 下载到持久化目录
|
||||
if curl -L "$DOWNLOAD_URL" -o "$INSTALL_PATH"; then
|
||||
chmod +x "$INSTALL_PATH"
|
||||
|
||||
if declare -F validate_binary_arch_or_fail >/dev/null 2>&1; then
|
||||
validate_binary_arch_or_fail "$INSTALL_PATH" "$RUNNER_ARCH"
|
||||
fi
|
||||
validate_binary_arch_or_fail "$INSTALL_PATH" "$RUNNER_ARCH"
|
||||
|
||||
# 同时创建软链接到系统路径
|
||||
ln -sf "$INSTALL_PATH" "$SYSTEM_PATH"
|
||||
|
||||
Reference in New Issue
Block a user