使用Octavia CLI配置Airbyte BigQuery目标端遇JSON Schema验证错误
解决Octavia CLI创建Airbyte BigQuery目标端的Schema验证错误
问题重现
执行octavia apply命令创建Airbyte BigQuery目标端时,收到以下错误:
Error: {"message":"The provided configuration does not fulfill the specification. Errors: json schema validation failed when comparing the data to the json schema. \nErrors: $.loading_method.method: must be a constant value Standard
错误原因
- YAML语法错误:配置中
method: "GCS Staging"行的注释末尾多了一个多余的},可能导致YAML解析异常; - 配置结构不符合Schema要求:GCS Staging模式的相关配置(
credential、gcs_bucket_name等)未嵌套到gcs_staging节点下,而是直接放在loading_method层级,导致Schema验证认为未正确提供GCS Staging的配置,从而强制要求使用默认的Standard方法。
修正后的配置片段
将loading_method部分修改为以下结构:
loading_method: ## -------- 选择GCS Staging模式的正确结构 -------- method: "GCS Staging" # REQUIRED | string gcs_staging: credential: credential_type: "HMAC_KEY" # REQUIRED | string hmac_key_secret: ${AIRBYTE_BQ1_HMAC_KEY_SECRET} # 从环境变量读取密钥 hmac_key_access_id: ${AIRBYTE_BQ1_HMAC_KEY_ACCESS_ID} # 从环境变量读取访问ID gcs_bucket_name: "airbyte-octavia-thibaut-gcs" # GCS桶名称 gcs_bucket_path: "gcs" # GCS桶内路径 # keep_files_in_gcs_bucket: "Delete all tmp files from GCS" # 可选:迁移完成后是否删除GCS临时文件,默认删除
额外注意事项
- 务必移除原配置中
method: "GCS Staging"行注释里的多余}; - 若需保留GCS临时文件,取消注释
keep_files_in_gcs_bucket并修改值,注意字段名使用下划线(keep_files_in_gcs_bucket)而非中划线; - 确认环境变量
AIRBYTE_BQ1_HMAC_KEY_SECRET、AIRBYTE_BQ1_HMAC_KEY_ACCESS_ID、AIRBYTE_BQ1_CREDENTIALS_JSON已正确设置。
验证
修改配置后重新执行octavia apply命令,即可完成BigQuery目标端的创建。
内容的提问来源于stack exchange,提问作者tdebroc
相关产品推荐
相关产品推荐

