To help maintain overall stability and performance for all GitLab users, some changes are coming to GitLab.com effective June 22, 2020. This will directly impact the default retention period for older job metadata as well as enable a default expiration policy for older job artifacts.
Updating GitLab.com's Job Artifact Expiration Policy
What you need to know:
- Starting June 22, 2020, new job artifacts will immediately default to a 30 day expiration upon creation.
- Existing artifacts created in the last 12 months will be set to expire 12 months from their creation date.
- Existing artifacts created more than 12 months ago will have their expiration date set to August 22nd, 2020.
For additional details, please see our GitLab.com CI/CD settings documentation.
Default archive of jobs on GitLab.com set to 3 months
What you need to know:
- Starting June 22, 2020 jobs older than 12 months will be archived.
- Starting August 6, 2020 jobs older than 6 months will be archived.
- Starting September 22, 2020 jobs older than 3 months will be archived. This will be the default setting going forward on GitLab.com.
- New build data will be archived 3 months after creation starting June 22, 2020.
- New job metadata will be archived 3 months after creation starting June 22, 2020. For additional details, please see our GitLab.com CI/CD settings documentation, linked above.
What are we doing and why?
The functionality changes will set build artifacts to expire on GitLab.com after 30 days and archive build metadata after 3 months. In most cases, you probably aren't utilizing old job artifacts that are sitting in storage and will be set to expire. This same concept applies to old metadata for jobs that aren't getting used and you may have even forgotten about.
When do the changes take effect?
New artifacts will have their expiration date set to 30 days by default starting June 22nd, 2020. Existing artifacts will automatically have their expiration dates set to the updated policy if they aren't already set by the aforementioned date. The last of those existing artifacts will have an expiration date of 12 months.
Additionally, build data older than 12 months will be archived on June 22, 2020 and any other data will be gradually set to expire within 3 months of the original creation date over the next 3 months.
What if I want to keep my artifacts and data? How can I do that?
Don't worry! You can always override artifact expiration with the 'expire_in' keyword to keep a job artifact longer than 30 days. Additionally, artifacts from the last successful job will not be archived after 30 days.
What's the benefit to end users?
These actions will result in improved performance and value for everyone using GitLab. By making these changes, we'll free up a significant amount of space in both the GitLab.com database and on disk, which results in better reliability/performance. It also reduces operational costs for GitLab, which aids us in continuing to provide all users with the smoothest possible user experience far into the future!