全部产品

主机部署—环境变量包含特殊字符

错误说明

Flow 经过优化后,新的主机部署不会再对环境变量进行默认编码,如果你的环境变量中不包含特殊字符(空格、引号、分号等),您可以在部署脚本中通过${key}使用环境变量,无需再进行 Base 64 解码处理。

但是如果你的环境变量中包含特殊字符,您将无法正常使用您的环境变量,典型错误如下,环境变量abc中包含特殊字符空格,导致环境变量打印出错:

环境变量包含特殊字符1

解决方案

因为您的环境变量中包含了特殊字符,所以需要通过以下操作对流水线进行配置,才可正常使用环境变量

  1. 主机部署任务中,勾选“变量进行编码”。

  2. 在部署脚本中,把您需要使用的所有环境变量进行 Base 64 解码。比如要使用PIPELINE_ID的环境变量,在部署脚本最前面添加一行export PIPELINE_ID=$(echo $PIPELINE_ID | base64 -d)

示例:

环境变量包含特殊字符2环境变量包含特殊字符3