fix: 移除 setup-opencode action 的安装验证步骤,简化缓存保存条件
- 删除 verify-install 步骤及其相关的 npm list 验证逻辑 - 简化缓存保存条件,移除对 install-verified 输出的依赖 - 缓存保存现在仅依赖 need-install 和 skip-cache 参数
This commit is contained in:
@@ -214,37 +214,8 @@ runs:
|
||||
fi
|
||||
done
|
||||
|
||||
- name: 验证安装
|
||||
id: verify-install
|
||||
if: steps.check-installed.outputs.need-install == 'true'
|
||||
shell: bash
|
||||
run: |
|
||||
PACKAGE="${{ inputs.package-name }}"
|
||||
|
||||
# 通过 npm list 检查包是否安装,而不是检查命令(因为包名和命令名可能不同)
|
||||
INSTALLED_INFO=$(npm list -g $PACKAGE --json --depth=0 2>/dev/null || echo '{}')
|
||||
INSTALLED_VERSION=$(echo "${INSTALLED_INFO}" | grep -o '"version":"[^"]*"' | head -1 | cut -d'"' -f4 || echo "")
|
||||
|
||||
if [[ -n "${INSTALLED_VERSION}" ]]; then
|
||||
echo "install-verified=true" >> $GITHUB_OUTPUT
|
||||
echo "✅ 安装验证成功 - 版本: ${INSTALLED_VERSION}"
|
||||
|
||||
# 尝试查找实际的命令名
|
||||
BIN_DIR="${{ steps.npm-paths.outputs.prefix }}/bin"
|
||||
if [[ -d "${BIN_DIR}" ]]; then
|
||||
COMMANDS=$(ls -1 "${BIN_DIR}" 2>/dev/null | grep -i opencode || echo "")
|
||||
if [[ -n "${COMMANDS}" ]]; then
|
||||
echo "📦 可用命令: ${COMMANDS}"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "install-verified=false" >> $GITHUB_OUTPUT
|
||||
echo "❌ 安装验证失败 - 未找到包 ${PACKAGE}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- name: 保存缓存
|
||||
if: steps.check-installed.outputs.need-install == 'true' && steps.verify-install.outputs.install-verified == 'true' && inputs.skip-cache != 'true'
|
||||
if: steps.check-installed.outputs.need-install == 'true' && inputs.skip-cache != 'true'
|
||||
uses: actions/cache/save@v4
|
||||
with:
|
||||
path: |
|
||||
|
||||
Reference in New Issue
Block a user