{"id":21919477,"url":"https://github.com/dlrsp/workflows","last_synced_at":"2026-04-12T00:27:44.418Z","repository":{"id":184865191,"uuid":"672578816","full_name":"DLRSP/workflows","owner":"DLRSP","description":"⚙️ Central repository for all workflows used in my projects","archived":false,"fork":false,"pushed_at":"2024-10-29T08:04:04.000Z","size":1047,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-10-29T09:22:05.994Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"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/DLRSP.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":"2023-07-30T15:04:52.000Z","updated_at":"2024-10-29T08:03:54.000Z","dependencies_parsed_at":"2023-10-03T15:20:24.161Z","dependency_job_id":"9c468b83-823b-4e16-b49b-356f2e43b481","html_url":"https://github.com/DLRSP/workflows","commit_stats":null,"previous_names":["dlrsp/workflows"],"tags_count":97,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DLRSP%2Fworkflows","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DLRSP%2Fworkflows/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DLRSP%2Fworkflows/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DLRSP%2Fworkflows/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DLRSP","download_url":"https://codeload.github.com/DLRSP/workflows/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244937931,"owners_count":20535144,"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":[],"created_at":"2024-11-28T20:08:11.594Z","updated_at":"2026-01-16T17:36:38.018Z","avatar_url":"https://github.com/DLRSP.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Workflows\n\nInspired by the more complete repo [workflows](https://github.com/kdeldycke/workflows) owned by [Kevin Deldycke](https://github.com/kdeldycke)\n\nMaintaining project takes time. This repository contains workflows to automate most of the boring tasks.\n\nThese workflows are mostly used for ~~Poetry-based~~ Python CLI and their documentation, but not only. They're all [reuseable GitHub actions workflows](https://docs.github.com/en/actions/learn-github-actions/reusing-workflows).\n\nReasons for a centralized workflow repository:\n\n- reuseability of course: no need to update dozens of repository where 95% of workflows are the same\n- centralize all dependencies pertaining to automation: think of the point-release of an action that triggers dependabot upgrade to all your repositories dependeing on it\n\n## Release management\n\n**TODO**: To-Be-Review-And-Updated\n\nIt turns out [Release Engineering is a full-time job, and full of edge-cases](https://blog.axo.dev/2023/02/cargo-dist).\n\nRust has [`cargo-dist`](https://github.com/axodotdev/cargo-dist). Go has... ? But there is no equivalent for Python.\n\nSo I made up a [`release.yaml` workflow](https://github.com/kdeldycke/workflows/blob/main/.github/workflows/release.yaml), which:\n\n1. Extracts project metadata from `pyproject.toml`\n1. Generates a build matrix of all commits / os / arch / CLI entry points\n1. Build Python wheel with Twine\n1. Compile binaries of all CLI with Nuitka\n1. Tag the release commit in Git\n1. Publish new version to PyPi\n1. Publish a GitHub release\n1. Attach and rename build artifacts to it\n\n## Changelog\n\nA [detailed changelog](changelog.md) is available.\n\n## Used in\n\nCheck these projects to get real-life examples of usage and inspiration:\n\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-errors?label=%E2%AD%90\u0026style=flat-square) [django-errors](https://github.com/DLRSP/django-errors#readme) - Django application for handling server errors.\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-sp?label=%E2%AD%90\u0026style=flat-square) [django-sp](https://github.com/DLRSP/django-sp#readme) - Django application for social authentication and other security integrations.\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-iubenda?label=%E2%AD%90\u0026style=flat-square) [django-iubenda](https://github.com/DLRSP/django-iubenda#readme) - Django application for privacy and cookies policy managed by Iubenda.\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-requests-api?label=%E2%AD%90\u0026style=flat-square) [django-requests-api](https://github.com/DLRSP/django-requests-api#readme) - Django application to provide simple and shared requests client.\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-custom-storage?label=%E2%AD%90\u0026style=flat-square) [django-custom-storage](https://github.com/DLRSP/django-custom-storage#readme) - Django application provide custom storage uses S3 and Compressor\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-hashtag?label=%E2%AD%90\u0026style=flat-square) [django-hashtag](https://github.com/DLRSP/django-hashtag#readme)\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-model-mixin?label=%E2%AD%90\u0026style=flat-square) [django-model-mixin](https://github.com/DLRSP/django-model-mixin#readme) - Django application provide simple model's mixins to add common reusable attributes.\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-lang?label=%E2%AD%90\u0026style=flat-square) [django-lang](https://github.com/DLRSP/django-lang#readme) - Django application to provide useful utils and reusable parts of code for multi-languages sites.\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-static-base?label=%E2%AD%90\u0026style=flat-square) [django-static-base](https://github.com/DLRSP/django-static-base#readme) - Django application to serve up-to-date common static files (JQuery, Bootstrap, Plugins, ...) as \"base\" static directory\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-sites-extra?label=%E2%AD%90\u0026style=flat-square) [django-sites-extra](https://github.com/DLRSP/django-sites-extra#readme) - Django application to extend the standard \"sites\" framework with extra utils.\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-filer-optimizer?label=%E2%AD%90\u0026style=flat-square) [django-filer-optimizer](https://github.com/DLRSP/django-filer-optimizer#readme) - Django application to extend the \"django-filer\" application with extra utils like.\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/requirements?label=%E2%AD%90\u0026style=flat-square) [requirements](https://github.com/DLRSP/requirements#readme)\n- ![GitHub stars](https://img.shields.io/github/stars/DLRSP/django-service?label=%E2%AD%90\u0026style=flat-square) [django-service](https://github.com/DLRSP/django-service#readme)\n\nFeel free to send a PR to add your project in this list if you are relying on these scripts.\n\n## Release process\n\n**TODO**: To-Be-Review-And-Updated\n\nAll steps of the release process and version management are automated in the\n[`changelog.yaml`](https://github.com/kdeldycke/workflows/blob/main/.github/workflows/changelog.yaml)\nand\n[`release.yaml`](https://github.com/kdeldycke/workflows/blob/main/.github/workflows/release.yaml)\nworkflows.\n\nAll there's left to do is to:\n\n- [check the open draft `prepare-release` PR](https://github.com/DLRSP/workflows/pulls?q=is%3Apr+is%3Aopen+head%3Aprepare-release)\n  and its changes,\n- click the `Ready for review` button,\n- click the `Rebase and merge` button,\n- let the workflows tag the release and set back the `main` branch into a\n  development state.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdlrsp%2Fworkflows","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdlrsp%2Fworkflows","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdlrsp%2Fworkflows/lists"}