代码之家  ›  专栏  ›  技术社区  ›  SnIpY

大厅:未找到资源?

  •  0
  • SnIpY  · 技术社区  · 6 年前

    我试图构建一个由git触发的concourse管道,然后在git存储库中运行一个脚本。

    这就是我目前的情况:

    resources:
    
    - name: component_structure_git
      type: git
      source:
        branch: master
        uri: git@bitbucket.org:foo/bar.git
    
    jobs:
    - name: component_structure-docker
      serial: true
      plan:
      - aggregate:
        - get: component_structure_git
          trigger: true
        - task: do-something
          config:
            platform: linux
            image_resource:
              type: docker-image
              source: { repository: ubuntu }
            inputs:
              - name: component_structure_git
            outputs:
              - name: updated-gist  
            run:
              path: component_structure_git/run.sh
      - put: component_structure-docker
        params:
          build: component_structure/concourse
    
    - name: component_structure-deploy-test
      serial: true
      plan:
      - aggregate:
        - get: component_structure-docker
          passed: [component_structure-docker]
    
    - name: component_structure-deploy-prod
      serial: true
      plan:
      - aggregate:
        - get: component_structure-docker
          passed: [component_structure-docker]

    当我将此代码应用于fly时,一切都正常。当我尝试运行构建时。它失败,出现以下错误:

    缺少输入:component\u structure\u git

    你知道我在这里遗漏了什么吗?

    2 回复  |  直到 6 年前
        1
  •  1
  •   Mark Hender    6 年前

    同意第一个答案。在并行运行(聚合块)时,需要考虑以下几点

    1. 我有多少输入?我不止一个,让我们运行这些 get 骨料块中的台阶
    2. 如果我有两个任务,任务之间是否存在可以更改任务运行结果的依赖关系,例如,我是否有下一个任务所需的一个任务的输出
    3. 我有一系列 put 语句,让我们在聚合块中运行这些步骤
        2
  •  0
  •   Sam    6 年前

    这只是一个猜测,但问题是由总量造成的。您不能从同时执行的某个对象获得输入?为什么你有聚合呢?这通常用于“get”以加快过程。