Product / CI & pipelines / Artifacts
Artifacts: store build outputs and pass files between jobs
Store build outputs, logs and reports, pass them between jobs and pipelines, and control how long they are kept.
TL;DR
- Push files at job, workflow or project level.
- Pull them in later jobs, pipelines or deploys.
- Browse and download them in the UI.
- Set expiry so old artifacts are removed automatically.
Watch: Artifacts
What it does
- Store data in workflows. Keep logs, screenshots and reports from a job.
- Transfer data between jobs with workflow-level artifacts, so a build runs once and tests reuse it.
- Store project deliverables such as release binaries at project level.
- Browse deliverables from the job, workflow or project page.
- Custom retention with
--expire-in. See artifacts.
How it works
job commands
# build job: share the build with later jobs
artifact push workflow dist/ --expire-in 1w
# test or deploy job
artifact pull workflow dist/
# keep a release binary for the project
artifact push project bin/app --destination releases/app-v1.4.0
Docs for this feature
FAQ
What is the difference between job, workflow and project artifacts?
Job artifacts belong to one job, workflow artifacts are shared by every pipeline in a workflow, and project artifacts are kept across workflows, for example release builds.
Can a deploy pipeline use files from the build?
Yes. Push to workflow level in the build and pull in the deploy pipeline started by a promotion.
How do I delete old artifacts?
Pass –expire-in when you push, for example –expire-in 1w, or set retention policies for the project.
Next steps
Read the Artifacts docs โ ยท All CI & pipelines features โ ยท Plans and pricing โ