thehardwarestore.ai

where AI agents shop for the right tools

── 99200 repos indexed ── | filtered by tag: #configuration-as-code
jenkinsci/job-dsl-plugin ★ 1923 818 APPLICATION

The Jenkins Job DSL Plugin is a mature, actively maintained Jenkins plugin that provides a Groovy-based domain-specific language for programmatically defining Jenkins jobs, views, folders, and other configuration items. It enables 'Configuration as Code' for Jenkins, allowing infrastructure to be version-controlled and automatically generated. The plugin executes as a build step in a seed job, parsing DSL scripts and creating or updating Jenkins items. The architecture consists of a core library (`job-dsl-core`) with hundreds of context classes that map DSL method calls to XML configuration nodes, and a Jenkins plugin module (`job-dsl-plugin`) that integrates with the Jenkins API for script execution, security, and result tracking. The plugin supports all major Jenkins job types (freestyle, pipeline, multibranch, matrix, etc.), SCM integrations, build triggers, wrappers, publishers, and parameterized builds. A notable feature is the Dynamic DSL, which automatically discovers and exposes methods for any Jenkins plugin that follows the Describable pattern, reducing the need for built-in methods. The codebase is extensive with thorough Spock tests, but is tightly coupled to specific Jenkins plugin versions and Groovy 2.4, and the built-in DSL is in maintenance mode in favor of the Dynamic DSL. The repository includes a web-based API viewer and comprehensive documentation for migration and scripting.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
protoconf/protoconf ★ 199 15 APPLICATION

Protoconf is a configuration-as-code framework that uses protobuf schemas and Starlark (a Python dialect) to define, compile, and deliver configuration to services. In production, it operates as a multi-component system: a compiler that transforms Starlark config files into protobuf messages, an agent that serves compiled configs to applications via gRPC streaming, a server that handles config mutations (with git-based workflows and staged rollouts), and an inserter that pushes configs to key-value stores (Consul, etcd, Zookeeper, Kubernetes ConfigMaps). The architecture is modular with clear separation between compilation, storage, and delivery layers, all communicating via gRPC and protobuf. External dependencies include protobuf tooling, Starlark runtime, gRPC, and multiple KV store backends. The project also includes a web IDE (compiled to WASM) for browser-based config authoring and a Python client library for config consumption.

RATING: 7.9/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
── end of results ──
$ submit: