fix: 将环境校验默认值改为 false,并优化 kubectl 相关步骤的条件判断
- 将 enable-validation 默认值从 true 改为 false - kubectl 配置和验证步骤增加工具可用性检测条件 - 环境配置总结中仅在 kubectl 可用时显示版本信息 - 当 enable-validation 为 true 时,Docker 和 kubectl 都改为必需验证 - 优化输出逻辑:仅在 kubectl 验证成功时显示当前上下文
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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"
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user