Есть ли способ через API GitLab получить путь к каждому артефакту для конкретного задания?
Если я использую GET /projects/:id/pipelines/:pipeline_id/jobs
, существует фрагмент, ссылающийся на zip-файл всех артефактовдля каждой работы:
"artifacts_file": {
"filename": "artifacts.zip",
"size": 2556287
},
"artifacts": [{
"file_type": "archive",
"size": 2556287,
"filename": "artifacts.zip",
"file_format": "zip"
}, {
"file_type": "metadata",
"size": 351,
"filename": "metadata.gz",
"file_format": "gzip"
}, {
"file_type": "trace",
"size": 3248,
"filename": "job.log",
"file_format": null
}]
Но это не помогает мне, поскольку мне нужен путь к каждому артефакту .
вызов API артефактов * загрузит сами артефакты.Я просто хочу увидеть пути артефактов.
Причина, по которой я не знаю полных путей артефактов заранее, заключается в том, что имя файлаУ артефактов есть временная метка, и git commit SHA встроен в имя файла.(Если бы не это, я мог бы просто жестко закодировать статические пути.)
Справочная информация: В качестве части моего попытки обходного решения до тех пор, пока проблема 56022 не будет решена, я намерен "вручную" сделатьВыпуск как последний этап моего конвейера CI.links
для assets
этого выпуска будет URL-адресами артефактов, которые были созданы во время более ранних заданий в конвейере.Чтобы сделать Релиз, мне нужно использовать GitLab API напрямую и указать пути к артефактам, которые я хочу в релизе.
Внутренне, GitLab, очевидно, знает пути к артефактам каждого задания, посколькуфункция «Обзор» для артефактов задания в веб-интерфейсе позволяет просматривать структуру каталогов.Эта функция доступна или доступна каким-либо образом?