我正在尝试使用 github-release-resource 在我的 Concourse 管道中提取 git hub 版本的旧版本/标签,但它似乎无法找到除最新版本之外的版本。< br/> 这是一个简单的测试,我们尝试提取 concourse 本身的旧版本。
---
resources:
- name: concourse-release
type: github-release
source:
user: concourse
repository: concourse
access_token: YOUR-GITHUB-ACCESS-TOKEN-GOES-HERE
jobs:
- name: test-concourse-release
plan:
- do:
- get: concourse-release
version: { tag: 'v2.4.0' }
- task: test-release
config:
platform: linux
image_resource:
type: docker-image
source:
repository: ubuntu
inputs:
- name: concourse-release
run:
path: sh
args:
- -exc
- |
find .
cat ./concourse-release/tag
cat ./concourse-release/version
上述任务的资源输出为:
waiting for a suitable set of input versions
concourse-release - pinned version {"tag":"v2.4.0"} is not available
即使版本存在:https://github.com/concourse/concourse/releases/tag/v2.4.0
我怎样才能让它发挥作用?
最佳答案
根据Concourse文档,新配置的资源只会从最新版本开始。
您必须通过命令 check-resource
使用 fly
CLI为了下载旧版本的资源。
例如,对于问题中列出的示例管道,这将是检索旧版本 (v2.4.0) Concourse 并使其可用于管道执行的命令:
fly -t <your-target-alias> check-resource --resource <your-pipeline-name>/concourse-release --from tag:v2.4.0
关于Concourse github-release 资源找不到旧版本或标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41108427/