{"id":19208032,"url":"https://github.com/ubuntu/azure-resource-reaper","last_synced_at":"2026-06-19T13:31:40.086Z","repository":{"id":195975359,"uuid":"691468774","full_name":"ubuntu/azure-resource-reaper","owner":"ubuntu","description":"Time-triggered Azure function that deletes resources older than their declared lifetime","archived":false,"fork":false,"pushed_at":"2023-09-20T14:57:44.000Z","size":17,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-02-06T08:44:02.287Z","etag":null,"topics":["azure-functions","azure-functions-python","resource-management"],"latest_commit_sha":null,"homepage":"","language":"Python","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/ubuntu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-14T08:36:59.000Z","updated_at":"2023-09-20T08:24:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"7ea73d5b-5561-4833-a1f0-308d8065c381","html_url":"https://github.com/ubuntu/azure-resource-reaper","commit_stats":null,"previous_names":["ubuntu/azure-resource-reaper"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ubuntu/azure-resource-reaper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ubuntu%2Fazure-resource-reaper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ubuntu%2Fazure-resource-reaper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ubuntu%2Fazure-resource-reaper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ubuntu%2Fazure-resource-reaper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ubuntu","download_url":"https://codeload.github.com/ubuntu/azure-resource-reaper/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ubuntu%2Fazure-resource-reaper/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34534274,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-19T02:00:06.005Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["azure-functions","azure-functions-python","resource-management"],"created_at":"2024-11-09T13:23:54.342Z","updated_at":"2026-06-19T13:31:40.073Z","avatar_url":"https://github.com/ubuntu.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# azure-resource-reaper\n\n![Azure Functions](https://img.shields.io/badge/Azure%20Functions-v4-blue.svg) ![Azure](https://img.shields.io/badge/Azure-Resource%20Deletion-green.svg)\n\nThis Azure Function is a time-triggered function designed to automatically\ndelete Azure resources based on a specific lifetime tag. It helps manage and\nclean up resources that are no longer needed, saving costs and improving\nresource management in any Azure environment.\n\n## Table of Contents\n- [Overview](#overview)\n- [Setup](#setup)\n- [Configuration](#configuration)\n- [Development](#configuration)\n- [Contributing](#contributing)\n- [License](#license)\n\n## Overview\n\nAzure resources can accumulate over time, leading to increased costs and\npotential security risks. To mitigate this, this Azure Function provides a\nsolution for automatic resource deletion based on a `lifetime` tag that can\nbe assigned to resources.\n\nThe `lifetime` tag format is a succession of `\u003cvalue\u003e\u003cunit\u003e` stanzas where\n`\u003cvalue\u003e` is an integer and `\u003cunit\u003e` is one of the following:\n\n- y: years\n- mo: months\n- d: days\n- h: hours\n- m: minutes\n\n## Setup\n\nTo deploy and use the function, follow the instructions in [Create a Python function in Azure from the command line](https://learn.microsoft.com/en-us/azure/azure-functions/create-first-function-cli-python).\n\n## Configuration\n\nThe timer string for the `reap_resources` function can be configured in the `@app.schedule` decorator call via the [NCRONTAB](https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-timer?tabs=python-v2%2Cin-process%2Cnodejs-v4\u0026pivots=programming-language-python#ncrontab-expressions) expression. Additionally, a subscription ID must be set in the `AZURE_SUBSCRIPTION_ID` variable.\n\n## Development\n\nIn order to develop on the function, the following are required:\n- An Azure account with an active subscription.\n- A [Python version supported by Azure Functions](https://learn.microsoft.com/en-us/azure/azure-functions/supported-languages#languages-by-runtime-version).\n- The [Azurite storage emulator](https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azurite?tabs=npm#install-azurite).\n\nNote that by using production credentials the function can delete resources from your environment!\n\n## Contributing\n\nIt is required to sign the [Contributor Licence Agreement](https://ubuntu.com/legal/contributors) in order to contribute to this project.\n\nAn automated test is executed on PRs to check if it has been accepted.\n\n## License\n\nThis project is covered by the [MIT License](https://github.com/ubuntu/azure-resource-reaper/blob/main/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fubuntu%2Fazure-resource-reaper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fubuntu%2Fazure-resource-reaper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fubuntu%2Fazure-resource-reaper/lists"}