{"id":23080096,"url":"https://github.com/kilianpaquier/gitlab-storage-cleaner","last_synced_at":"2025-12-26T20:59:27.114Z","repository":{"id":225548172,"uuid":"762685894","full_name":"kilianpaquier/gitlab-storage-cleaner","owner":"kilianpaquier","description":"Easily clean gitlab maintained repositories storage (jobs artifacts only) with a simple command","archived":false,"fork":false,"pushed_at":"2025-03-30T10:22:58.000Z","size":258,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-30T11:22:11.087Z","etag":null,"topics":["artifacts","cleaner","gitlab-ci","golang"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kilianpaquier.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-24T12:05:06.000Z","updated_at":"2025-03-30T10:23:00.000Z","dependencies_parsed_at":"2024-03-11T19:47:33.802Z","dependency_job_id":"11283975-0b27-4e24-b34c-16b3cd1a1b28","html_url":"https://github.com/kilianpaquier/gitlab-storage-cleaner","commit_stats":null,"previous_names":["kilianpaquier/gitlab-storage-cleaner"],"tags_count":40,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kilianpaquier%2Fgitlab-storage-cleaner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kilianpaquier%2Fgitlab-storage-cleaner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kilianpaquier%2Fgitlab-storage-cleaner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kilianpaquier%2Fgitlab-storage-cleaner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kilianpaquier","download_url":"https://codeload.github.com/kilianpaquier/gitlab-storage-cleaner/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247013214,"owners_count":20869233,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["artifacts","cleaner","gitlab-ci","golang"],"created_at":"2024-12-16T13:04:36.986Z","updated_at":"2025-12-26T20:59:27.102Z","avatar_url":"https://github.com/kilianpaquier.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# gitlab-storage-cleaner \u003c!-- omit in toc --\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"GitHub Release\" src=\"https://img.shields.io/github/v/release/kilianpaquier/gitlab-storage-cleaner?include_prereleases\u0026sort=semver\u0026style=for-the-badge\"\u003e\n  \u003cimg alt=\"GitHub Issues\" src=\"https://img.shields.io/github/issues-raw/kilianpaquier/gitlab-storage-cleaner?style=for-the-badge\"\u003e\n  \u003cimg alt=\"GitHub License\" src=\"https://img.shields.io/github/license/kilianpaquier/gitlab-storage-cleaner?style=for-the-badge\"\u003e\n  \u003cimg alt=\"GitHub Actions\" src=\"https://img.shields.io/github/actions/workflow/status/kilianpaquier/gitlab-storage-cleaner/integration.yml?style=for-the-badge\"\u003e\n  \u003cimg alt=\"Coverage\" src=\"https://img.shields.io/codecov/c/github/kilianpaquier/gitlab-storage-cleaner?style=for-the-badge\"\u003e\n  \u003cimg alt=\"Go Version\" src=\"https://img.shields.io/github/go-mod/go-version/kilianpaquier/gitlab-storage-cleaner?style=for-the-badge\"\u003e\n  \u003cimg alt=\"Go Report Card\" src=\"https://goreportcard.com/badge/github.com/kilianpaquier/gitlab-storage-cleaner?style=for-the-badge\"\u003e\n  \u003cimg alt=\"OpenSSF Scorecard\" src=\"https://img.shields.io/ossf-scorecard/github.com/kilianpaquier/gitlab-storage-cleaner?label=OpenSSF+Scorecard\u0026style=for-the-badge\"\u003e\n\u003c/p\u003e\n\n---\n\n- [How to use ?](#how-to-use-)\n  - [Go](#go)\n  - [Docker](#docker)\n  - [Gitlab CICD](#gitlab-cicd)\n  - [Linux](#linux)\n- [Commands](#commands)\n  - [Artifacts](#artifacts)\n\n## How to use ?\n\n### Go\n\n```sh\ngo install github.com/kilianpaquier/gitlab-storage-cleaner/cmd/gitlab-storage-cleaner@latest\n```\n\n### Docker\n\n```sh\ndocker run ghcr.io/kilianpaquier/gitlab-storage-cleaner:v1 artifacts\n```\n\n### Gitlab CICD\n\nA potential usage can be to schedule a job once a while with given [`.gitlab-ci.yml`](./.gitlab/.gitlab-ci.yml).\n\n### Linux\n\n```sh\nOS=\"linux\" # change it depending on your case\nARCH=\"amd64\" # change it depending on your case\nINSTALL_DIR=\"$HOME/.local/bin\" # change it depending on your case\n\nnew_version=$(curl -fsSL \"https://api.github.com/repos/kilianpaquier/gitlab-storage-cleaner/releases/latest\" | jq -r '.tag_name')\nurl=\"https://github.com/kilianpaquier/gitlab-storage-cleaner/releases/download/$new_version/gitlab-storage-cleaner_${OS}_${ARCH}.tar.gz\"\ncurl -fsSL \"$url\" | (mkdir -p \"/tmp/gitlab-storage-cleaner/$new_version\" \u0026\u0026 cd \"/tmp/gitlab-storage-cleaner/$new_version\" \u0026\u0026 tar -xz)\ncp \"/tmp/gitlab-storage-cleaner/$new_version/gitlab-storage-cleaner\" \"$INSTALL_DIR/gitlab-storage-cleaner\"\n```\n\n## Commands\n\n```\nUsage:\n  gitlab-storage-cleaner [command]\n\nAvailable Commands:\n  artifacts   Clean artifacts of provided project(s)' gitlab storage\n  completion  Generate the autocompletion script for the specified shell\n  help        Help about any command\n  upgrade     Upgrade or install gitlab-storage-cleaner\n  version     Show current gitlab-storage-cleaner version\n\nFlags:\n  -h, --help                help for gitlab-storage-cleaner\n      --log-format string   set logging format (either \"text\" or \"json\") (default \"text\")\n      --log-level string    set logging level (default \"info\")\n\nUse \"gitlab-storage-cleaner [command] --help\" for more information about a command.\n```\n\n### Artifacts\n\n```\nClean artifacts of provided project(s)' gitlab storage\n\nUsage:\n  gitlab-storage-cleaner artifacts [flags]\n\nFlags:\n      --dry-run                       truthy if run must not delete jobs' artifacts but only list matched projects\n  -h, --help                          help for artifacts\n      --paths strings                 list of valid regexps to match project path (with namespace)\n      --server string                 gitlab server host\n      --threshold-duration duration   threshold duration (positive) where, jobs older than command execution time minus this threshold will be deleted (default 168h0m0s)\n      --token string                  gitlab read/write token with maintainer rights to delete artifacts\n\nGlobal Flags:\n      --log-format string   set logging format (either \"text\" or \"json\") (default \"text\")\n      --log-level string    set logging level (default \"info\")\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkilianpaquier%2Fgitlab-storage-cleaner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkilianpaquier%2Fgitlab-storage-cleaner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkilianpaquier%2Fgitlab-storage-cleaner/lists"}