Concourse CI,获取并放置 git 资源

M. *_*one 1 concourse

我正在尝试使用 git-resource 来获取、修改和推送文件,但它不起作用,有人可以帮助我吗?

这两个资源指向同一个 git 存储库,目标是在存储库中添加文件。我不明白我错在哪里,大厅输出是绿色的,但存储库没有新文件

这就是工作:

工作:
- 姓名:我的工作
  计划:
  - 获取:输入存储库
  - 获取:输出仓库

  - 任务:简单任务
    配置:
      平台:Linux
      图片资源:
        类型: docker-image
        来源:
          存储库:ubuntu
      跑步:
        路径:sh
        参数:
          - -排除
          - |
            cat a_file > 输出存储库/another_file
      输入:
      - 名称:输入存储库
      - 名称:输出仓库

  - put:输入仓库
    参数:{存储库:输出存储库}

Jos*_*abi 5

您不应该为此需要两种不同的资源。您要做的是get( git clone) 存储库,修改它,git commit然后put(git push ) 它。

所以你想要这样的东西。

jobs:
- name: myjob
  plan:
  - get: repo

  - task: simpletask
    config:
      platform: linux
      image_resource:
        type: docker-image
        source:
          repository: ubuntu
      run:
        path: sh
        args:
          - -exc
          - |
            cp -r repo changed-repo
            cat a_file > changed-repo/another_file
            git add .
            git commit -m "message"

      inputs:
      - name: repo

  - put: repo
    params: { repository: changed-repo }
Run Code Online (Sandbox Code Playgroud)