fix: 将环境校验默认值改为 false,并优化 kubectl 相关步骤的条件判断

- 将 enable-validation 默认值从 true 改为 false
- kubectl 配置和验证步骤增加工具可用性检测条件
- 环境配置总结中仅在 kubectl 可用时显示版本信息
- 当 enable-validation 为 true 时,Docker 和 kubectl 都改为必需验证
- 优化输出逻辑:仅在 kubectl 验证成功时显示当前上下文
This commit is contained in:
Lyda
2026-03-12 15:04:55 +08:00
parent e3ca3af8d3
commit 1618c6fe6d
2 changed files with 10 additions and 7 deletions
+6 -4
View File
@@ -22,7 +22,7 @@ inputs:
enable-validation:
description: '是否执行环境校验 (true/false)'
required: false
default: 'true'
default: 'false'
docker-registry:
description: 'Docker 私有仓库地址'
required: false
@@ -69,7 +69,7 @@ runs:
ENABLE_VALIDATION: ${{ inputs.enable-validation }}
- name: 配置 kubectl
if: ${{ inputs.kube-config != '' }}
if: ${{ inputs.kube-config != '' && steps.validate-tools.outputs.kubectl-version != 'not-found' && steps.validate-tools.outputs.kubectl-version != 'skipped' }}
shell: bash
run: bash ${{ github.action_path }}/scripts/configure-kubectl.sh
env:
@@ -77,7 +77,7 @@ runs:
- name: 验证 kubectl 连通性
id: verify-kubectl
if: ${{ inputs.kube-config != '' && inputs.enable-validation != 'false' }}
if: ${{ inputs.kube-config != '' && inputs.enable-validation != 'false' && steps.validate-tools.outputs.kubectl-version != 'not-found' && steps.validate-tools.outputs.kubectl-version != 'skipped' }}
shell: bash
run: bash ${{ github.action_path }}/scripts/verify-kubectl.sh
@@ -97,8 +97,10 @@ runs:
if [[ "${{ steps.validate-tools.outputs.docker-version }}" != 'not-found' && "${{ steps.validate-tools.outputs.docker-version }}" != 'skipped' ]]; then
echo " - Docker: ${{ steps.validate-tools.outputs.docker-version }}"
fi
if [[ "${{ steps.validate-tools.outputs.kubectl-version }}" != 'not-found' && "${{ steps.validate-tools.outputs.kubectl-version }}" != 'skipped' ]]; then
echo " - kubectl: ${{ steps.validate-tools.outputs.kubectl-version }}"
fi
if [[ "${{ inputs.kube-config }}" != '' && "${{ inputs.enable-validation }}" != 'false' ]]; then
fi
if [[ "${{ inputs.kube-config }}" != '' && "${{ inputs.enable-validation }}" != 'false' && "${{ steps.verify-kubectl.outputs.current-context }}" != '' ]]; then
echo " - 当前上下文: ${{ steps.verify-kubectl.outputs.current-context }}"
fi
+3 -2
View File
@@ -58,7 +58,7 @@ validate_binary() {
main() {
: "${GITHUB_OUTPUT:?GITHUB_OUTPUT 未设置}" >/dev/null
local enable_validation="${ENABLE_VALIDATION:-true}"
local enable_validation="${ENABLE_VALIDATION:-false}"
if [[ "$enable_validation" != "true" ]]; then
log_info "已通过统一开关禁用环境校验"
@@ -67,7 +67,8 @@ main() {
return 0
fi
validate_binary "docker" "false" "docker --version" "docker-version"
# 当 enable-validation 为 true 时,Docker 和 kubectl 都是必需的
validate_binary "docker" "true" "docker --version" "docker-version"
validate_binary "kubectl" "true" "kubectl version --client --short 2>/dev/null || kubectl version --client" "kubectl-version"
}