{"categories":[{"label":"Build Tools","url":"https://skillfed.io/packages/category/software-development-build-tools"}],"enrichment":{"capability":"Programmatically generate Evergreen project configurations in JSON format by building task, variant, and project objects in Python.","skillfed_tags":["ci-cd","evergreen","config-generation"],"use_cases":["Generate parallel test tasks with shared dependencies and display them under a single display task","Programmatically create build variants for multiple platforms or configurations from a template","Build task definitions with function calls and parameterized variables without manual JSON editing","Automate CI configuration for projects that need dynamic task generation based on input data"],"what_it_does":"shrub.py is a Python library for building Evergreen CI project configurations programmatically. Instead of writing YAML or JSON by hand, you define tasks, build variants, and display tasks as Python objects, then generate the final configuration JSON. It wraps the Evergreen project file format with a type-safe, composable API.\n\nThe library depends on PyYaml, pydantic, croniter, dataclasses, and typing-extensions to provide validation and scheduling support. It supports Python 3.9 through 3.14 and requires Python 3.8.1 or later. The main use case is automating CI/CD configuration generation for projects using MongoDB's Evergreen CI system, particularly when you need to generate many similar tasks or variants programmatically.","worth_installing":"Yes, if you are using Evergreen CI and need to generate configurations programmatically. The package is actively maintained, has low install friction, carries a permissive license, and has no known vulnerabilities. The low star count and niche use case (Evergreen-specific) mean it is not a general-purpose tool, but it is well-suited for its intended audience."},"id":"shrub-py","links":{"html":"https://skillfed.io/packages/shrub-py","md":"https://skillfed.io/packages/shrub-py.md","pypi":"https://pypi.org/project/shrub-py/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-04","license_spdx":null,"license_treatment":"permissive","name":"shrub.py","python_support":"supports_current","summary":"Library for creating evergreen configurations"},"popularity":{"monthly_downloads":2997023,"position":2793,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"3.11.0"}
