Как скачать metadata.gz и job.log из GitLab API

Я пытаюсь выполнить скрипт, загружая три специальных файла из наших проектов GitLab. В настоящее время я могу загружать artifacts.zip и отдельные файлы из zip, но не два других специальных файла: metadata.gz и job.log.

Вот кое-что, что я сделал:

# Grab the list of job data
r = requests.get("https://gitlab.local.com/api/v4/projects/12/jobs/13", headers={'PRIVATE-TOKEN':'...'}, verify='...')

# Display artifacts available (shows artifacts.zip, metadata.gz, and job.log)
r.json()['artifacts']

# Printing the filename of the artifacts (best in a for loop)
r.json()['artifacts'][0]['filename']
r.json()['artifacts'][1]['filename']
...

# Download artifacts.zip
r = requests.get(".../jobs/13/artifacts", ...)
with open(".../artifacts.zip", 'wb') as f:
  f.write(artifacts.content)

# Download metadata.gz
?

person Josh    schedule 06.03.2019    source источник


Ответы (1)


Job.log - это не что иное, как файл журнала задания. Итак, вы можете получить журнал, используя:

r = requests.get("https://gitlab.local.com/api/v4/projects/12/jobs/13/trace", headers={'PRIVATE-TOKEN':'...'}, verify='...')

ref: https://docs.gitlab.com/ee/api/jobs.html#get-a-log-file

И для загрузки других артефактов запрос gitlab все еще открыт: https://gitlab.com/gitlab-org/gitlab/-/issues/35805

person Madhusudhan Kasula    schedule 15.12.2020