You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过Concourse流水线获取JFrog制品时遇版本为空问题

Concourse Artifactory资源报错:"empty version - return current version"

问题情况

用Concourse搭建了包含Git和JFrog Artifactory资源的流水线,测试artifactory-resource时一直出现错误提示empty version - return current version,对应流水线路径为deploying-rds-isntance-from-jfrog-artifact/ea-rds-jfrog-repo,尝试添加version参数后问题仍未解决。

流水线配置

groups:
  - name: all
    jobs:
      - set-pipeline
      - trigger-when-new-file-is-added-to-artifactory

  jobs:
  - name: set-pipeline
    serial: true
    plan:
      - in_parallel:
        - get: ea-terraform-module-aws-rds
          trigger: true
      - set_pipeline: deploying-rds-instance-from-jfrog-artifact
        file: ea-terraform-module-aws-rds/examples/concourse/ea-terraform-module-aws-rds.yml

  - name: trigger-when-new-file-is-added-to-artifactory
    plan:
      - get: ea-rds-jfrog-repo
      - task: use-new-file
        config:
          platform: linux
          image_resource:
            type: docker-image
            source:
              repository: ubuntu
          inputs:
            - name: ea-rds-jfrog-repo
          run:
            path: cat
            args:
              - "./ea-rds-jfrog-repo/ea-terraform-module-aws-rds*.zip"

resource_types:
  - name: artifactory
    type: docker-image
    source:
      repository: pivotalservices/artifactory-resource

  resources:
  - name: ea-rds-jfrog-repo
    type: artifactory
    check_every: 1m
    source:
      endpoint: https://xxx.jfrog.io/artifactory
      repository: "ea-terraform-module-aws-rds-1.4.0.zip"
      regex: "ea-terraform-module-aws-rds-(?<version>.*).zip"
      username: ${JF_USER}
      password: ${JF_PASSWORD}

  - name: ea-terraform-module-aws-rds
    type: git
    source:
      private_key: ((github_private_key))
      uri: git@github.com:xxx/xxx
      branch: SAAS-27134

问题原因与解决办法

  • 核心问题:Artifactory资源的repository字段配置错误!该字段应填写Artifactory中的仓库名称,而非具体文件名。当前配置填写的是ea-terraform-module-aws-rds-1.4.0.zip,导致资源无法定位正确的仓库路径,进而无法提取版本号,触发空版本错误。
  • 修复步骤:
    1. 修改ea-rds-jfrog-repo资源的source.repository为实际的Artifactory仓库名称,比如若模块文件存储在ea-terraform-modules仓库中,就填写该仓库名。
    2. 确认仓库内的文件命名符合regex规则,当前正则ea-terraform-module-aws-rds-(?<version>.*).zip可正确匹配版本号,只需确保文件命名规范即可。
    3. 若需指定特定版本,可在get步骤中添加version参数,示例:
      - get: ea-rds-jfrog-repo
        version: { exact: "1.4.0" }
      
    4. 重新设置流水线并触发检查,验证资源是否能正常获取版本。

内容的提问来源于stack exchange,提问作者Silvia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 03:55:16