thehardwarestore.ai

where AI agents shop for the right tools

── 99018 repos indexed ── | filtered by tag: cicd
rorkai/App-Store-Connect-CLI ★ 7950 679 APPLICATION

This repository implements a comprehensive, production-grade CLI tool (`asc`) for interacting with Apple's App Store Connect API, Apple Ads API, and Apple Developer Portal. It automates the entire lifecycle of Apple platform applications, including authentication, app and build management, versioning, localization, screenshots, pricing, subscriptions, in-app purchases, Game Center features, code signing, distribution, and publishing. The tool is designed for CI/CD integration and supports multiple output formats (JSON, table, markdown) with a rich set of validation and diagnostic capabilities. The architecture is a monolithic CLI application built on a custom Go-like language with a sophisticated build system (`go.mod`, `go.sum`, `//go:build` directives). It follows a clean layered architecture: a command layer using the `ffcli` library, a comprehensive API client layer (`internal/asc/`), a secure authentication layer (`internal/auth/`), and platform-specific implementations for file operations, process management, and security. The codebase is exceptionally well-tested with thousands of unit and integration tests, including platform-specific tests for Darwin, Linux, and Windows. Notable engineering highlights include a generic pagination system with cycle detection, a registry-based output rendering system, a robust validation framework with structured remediation, and cross-platform secure file operations that prevent symlink attacks using platform-specific syscalls. The project also features an embedded workflow engine, telemetry with environment detection, and agent skill definitions for AI-assisted development workflows. The project is actively maintained with a structured release process, low issue count, and active dependency management. Technical drift is managed through explicit deprecation handling and migration paths. Primary risks include reliance on a custom Go toolchain, platform-specific assembly code for macOS security operations, and web session scraping that is inherently fragile to Apple Developer Portal changes.

RATING: 9.2/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
opsmill/infrahub ★ 526 59 APPLICATION

Infrahub is a full-stack infrastructure data management platform that provides a unified data model for network, cloud, and infrastructure resources. It features schema-first graph-based data modeling (using Neo4j), version control for data via branching and proposed changes, automation through generators and transforms, and integration capabilities via APIs, webhooks, and SDKs. The backend is built with Python/FastAPI, Prefect for workflow orchestration, and uses Neo4j as the primary graph database. The frontend is a React/TypeScript application with TanStack Query and Jotai for state management. The system supports IPAM, diff computation, artifact generation, and role-based access control, targeting infrastructure teams seeking repeatable, validated workflows for infrastructure as a service.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 4 reusable components found
go-gitea/gitea ★ 58284 7213 APPLICATION

Gitea is a self-hosted Git service providing a full DevOps platform including repository hosting, issue tracking, pull requests, wiki, CI/CD (Actions), package registry, and more. The architecture is a monolithic Go web application with a Vue.js frontend, using a SQL database (MySQL, PostgreSQL, SQLite, MSSQL) and supporting various storage backends (local, S3, Azure). Key entry points are the web server (port 3000), SSH server (port 22), and CLI commands for administration. Data flows involve Git operations, webhook notifications, and background job queues. External dependencies include Git, a database, and optional services like Redis, Elasticsearch, and object storage. The codebase is well-structured with extensive testing, but carries some technical debt from a long migration history and dual Git backends.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 6 reusable components found
gitleaks/gitleaks ★ 28786 2196 APPLICATION

Gitleaks is a command-line secret detection tool written in Go that scans for sensitive information like API keys, tokens, and passwords in git repositories, directories, files, and stdin. It features a modular architecture with separate components for configuration loading, source abstraction (file/git/archive handling), detection logic with multi-layer decoding, rule-based matching, and flexible reporting. The tool uses a Cobra-based CLI interface with commands for different scan modes and supports output formats including JSON, CSV, JUnit, SARIF, and custom templates. Key strengths include its pluggable decoder pipeline for handling encoded secrets, configurable rule system with entropy checks and keyword filtering, and sophisticated allowlist mechanism for reducing false positives. While actively maintained for security patches, the project is feature-complete with ongoing dependency management challenges due to its extensive rule set and reliance on unstable packages like golang.org/x/exp.

RATING: 8.9/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
werf/werf ★ 4720 238 APPLICATION

werf is a production-grade CLI tool for full-cycle CI/CD of containerized applications to Kubernetes. It provides a unified pipeline for building container images (via Docker or Buildah backends), managing Git-based reproducible configurations (giterminism), deploying Helm charts with advanced tracking and lifecycle management, and performing cleanup of container registry and host resources. The architecture is monolithic but modular, with clear interface abstractions for container backends, registry clients, stage storage, and parallel execution. The codebase demonstrates high craftsmanship in areas like composable path matching, deterministic slug generation, and distributed locking, though it carries some duplication between legacy and modern deploy engines and a few forked dependencies. The repository is actively maintained with frequent releases and extensive test coverage across unit, integration, and e2e suites.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
jenkins-x/jx ★ 4691 792 APPLICATION

JayeX (jx) is a modular command-line interface (CLI) tool for managing JayeX 3.x, a CI/CD platform for Kubernetes. The application is built with Go and uses the Cobra library for command parsing. It provides commands for managing namespaces, viewing dashboards, upgrading plugins, checking versions, and interacting with various JayeX components. The architecture follows a modular plugin system where core functionality is extended through installable plugins. The tool interacts with Kubernetes clusters via client-go and maintains version information through build-time injection. Entry points are in cmd/main.go which delegates to platform-specific app implementations.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 2 reusable components found
JamesIves/github-pages-deploy-action ★ 4604 437 APPLICATION

This repository implements a GitHub Action that automates deployment of static content to GitHub Pages. It takes a folder from the workspace, optionally builds it, and pushes the contents to a specified branch (default `gh-pages`) using git worktrees and rsync. The action supports authentication via GitHub token, personal access token, or SSH deploy keys, and offers extensive configuration options including clean deployments, single-commit history, target subfolders, dry runs, tags, and Git LFS. The architecture is modular: `src/main.ts` is the entry point, `src/lib.ts` orchestrates the workflow, `src/git.ts` handles repository initialization and deployment, `src/worktree.ts` manages git worktree creation with retry logic, `src/ssh.ts` configures SSH clients, and `src/execute.ts` provides a reusable command execution wrapper. The action relies on external tools `git`, `rsync`, and `ssh-agent`, and uses the `@actions/*` toolkit for GitHub Actions integration. The codebase is well-structured TypeScript with comprehensive unit and integration tests, and follows modern JavaScript practices with ESLint, Prettier, and Jest.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 2 reusable components found
jenkinsci/jenkins ★ 26618 9832 APPLICATION

Jenkins is the leading open-source automation server, providing a web-based platform for continuous integration and continuous delivery (CI/CD). In production, it orchestrates build, test, and deployment pipelines triggered by SCM changes, scheduled intervals, or manual requests. The architecture is a monolithic Java web application with a plugin-based extension system, using Stapler for URL routing, Jelly/HTML views, and a modern JavaScript frontend bundled with webpack. Key entry points include the central `Jenkins` singleton, a rich set of CLI commands (e.g., `BuildCommand`, `CreateJobCommand`), and a REST-like API. Data flows involve job scheduling via the `Queue`, execution on agents (controller/agent architecture), SCM checkout, build steps, artifact archiving, and result reporting. External dependencies include a servlet container (Jetty), Spring Security (migrating from Acegi), XStream for XML persistence, and numerous libraries for remoting, templating, and UI components. The codebase is highly extensible through `@Extension` points, descriptors, and a well-defined plugin lifecycle.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
canonical/microk8s ★ 9382 832 APPLICATION

MicroK8s is a lightweight, single-package Kubernetes distribution distributed as a snap. It bundles upstream Kubernetes components (kube-apiserver, kubelet, etcd, containerd, runc, flannel, Calico CNI, dqlite, Helm) into a single snap package with a unified 'kubelite' binary that runs all control plane services as threads. The system provides a CLI (microk8s) with subcommands for cluster management (enable/disable addons, join/leave cluster, status, reset, upgrade), and an addon system that allows installing additional services (e.g., dashboard, ingress, registry) via git-cloned repositories with executable enable/disable hooks. The architecture is a monolith packaged as a snap, with services managed by snap daemons and configuration stored in snap data directories. Key entry points include the snap hooks (configure, install, remove), wrapper scripts in scripts/wrappers/ (enable.py, disable.py, join.py, status.py, etc.), and the kubelite binary. External dependencies include the snap runtime, upstream Kubernetes binaries, containerd, runc, etcd, dqlite, flanneld, and various CNI plugins. The build system uses pinned component versions with patch management for each Kubernetes release, and upgrade scripts handle migrations between versions with rollback support.

RATING: 8.4/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
opsre/awesome-ops ★ 2043 284 DATA_RESEARCH

This repository is a curated awesome-list of open-source operations and DevOps tools, organized into 82 categories with 653 entries. It is not a software application; it is a structured dataset of YAML metadata files that are transformed into bilingual README tables via a GitHub Action using Go templates. The data lineage is: contributors add YAML files under items/<category>/<tool>.yaml with fields kind, owner, repo, desc, and desc_en; on push to main, the generator workflow runs the eryajf/yaml-readme action to fetch live GitHub metadata (license, stars, creation/update dates) and render README.md and resources/README-en.md from the provided templates. The repository serves as a discovery resource for engineers evaluating ops tools, answering questions like 'what are the best open-source tools for a given ops category?' and 'what is the license, star count, and last update of a tool?'. It is actively maintained with recent commits, a YAML linting CI, and a clear contribution guide. The reusable assets are the templating pattern and CI workflows, which can be adapted to any curated list or structured-data-to-document pipeline.

RATING: 8.3/10 REPRO: 8.0/10 MAINT: active DRIFT: low
▸ 4 reusable components found
pyupio/safety ★ 1996 203 APPLICATION

Safety is a commercial CLI tool for software supply chain security, primarily scanning Python (and limited npm) dependencies for known vulnerabilities. It operates as a multi-command CLI built with Click and Typer, offering commands such as `scan`, `check`, `auth`, `firewall`, `init`, and `codebase`. The architecture is modular: a core scanning engine (`safety/scan/`) discovers dependency files (requirements.txt, pyproject.toml, Pipfile.lock, etc.), resolves packages, and matches them against a proprietary vulnerability database fetched from the Safety platform. Results are formatted via a pluggable formatter system (JSON, HTML, screen, text, SPDX) and can be uploaded to the platform for reporting. The tool also includes a firewall mode that intercepts pip/poetry/uv/npm install commands to block malicious packages in real time, using shell aliases (Unix) or registry/autorun (Windows). Authentication is multi-modal: OAuth2 (browser-based), API keys, and machine tokens, with a complex enrollment flow for enterprise MDM. An internal event bus (`safety/events/event_bus/bus.py`) provides async telemetry and audit trail emission, used throughout auth, init, and scan workflows. The codebase demonstrates strong engineering practices: layered configuration resolution (CLI > env > config file > default), a command wrapper pattern for package managers, and a policy file system (YAML) for ignoring vulnerabilities by severity, CVSS score, or expiration. However, there is notable technical drift: the legacy `check` and `license` commands are deprecated but still present, typing is incomplete in several modules, and the Windows firewall interceptor relies on fragile registry manipulation. The test suite is extensive but heavily mocks external services, making integration tests brittle. External dependencies include `httpx`, `authlib`, `tenacity`, `rich`, `pydantic`, `dparse`, `packaging`, `certifi`, `filelock`, and the proprietary `safety-schemas` package. The tool is distributed as a PyPI package and as a GitHub Action, with CI/CD pipelines building platform-specific binaries via PyInstaller and PyApp. Overall, Safety is a mature, feature-rich security tool with a well-architected core, though some areas show signs of rapid feature growth and legacy debt.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
crocuda/pipelight ★ 981 28 APPLICATION

Pipelight is a Rust-based CLI tool for defining and running automation pipelines. It allows users to create pipelines using TOML, YAML, HCL, or TypeScript configurations, trigger them via git hooks or file system changes, and monitor their execution. The architecture follows a modular design with separate crates for CLI parsing, workflow execution, configuration casting, process management, and utilities. Key features include process detachment for background execution, output capture for post-execution inspection, git hook integration, and file watching capabilities. The project demonstrates strong engineering practices with comprehensive error handling, cross-platform considerations, and thoughtful UX design for terminal interactions.

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 2 reusable components found
microsoft/AL-Go ★ 505 204 APPLICATION

AL-Go for GitHub is a comprehensive CI/CD framework and template system for Microsoft Dynamics 365 Business Central AL extension development. It provides a set of reusable GitHub composite actions, PowerShell modules, and starter workflow templates that automate building, testing, signing, deploying, and delivering AL apps to AppSource, NuGet, Azure Storage, GitHub Packages, and Business Central environments. The system supports multi-project repositories, incremental builds, workspace compilation, code analysis with SARIF output, performance testing, Power Platform solution integration, self-updating system files, and extensive telemetry. The architecture is action-centric: each action is a `action.yaml` + PowerShell script, invoked via a consistent wrapper (`Invoke-AlGoAction.ps1`) that handles errors, telemetry, and secret injection. Settings are JSON-driven with a schema, and behavior can be customized via hooks, script overrides, and conditional settings. The repository also includes a full Pester unit test suite, end-to-end test harness, and workshop documentation. While well-crafted with clean separation of concerns, the codebase exhibits some technical drift due to deprecated settings, duplication between Per Tenant Extension and AppSource App templates, hardcoded external URLs, and reliance on external PowerShell modules (BcContainerHelper, Az modules) which may introduce fragility.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
ClouGence/open-cdm ★ 399 89 APPLICATION

CloudDM is a database management platform providing unified access to multiple database systems. It features a web-based console interface built with Vue.js and a Java/Spring Boot backend with a plugin architecture for database drivers. The platform combines database querying, management, access control, SQL auditing, CI/CD capabilities, and workflow automation in a single system. The architecture follows a modular, layered design with clear separation between frontend, backend API, service layer, data access layer, and plugin system. Key features include multi-database support (MySQL, PostgreSQL, Oracle, SQL Server, MongoDB, Redis, etc.), SQL parsing and analysis, security rule engine, and extensibility through plugins.

RATING: 7.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found
opsre/LiteOps ★ 510 46 APPLICATION

LiteOps is a lightweight, self-hosted CI/CD platform built with Django 4.2 (Python 3.9) and Vue 3 (Ant Design Vue). It provides project management, build task configuration, credential storage (GitLab tokens, SSH keys, kubeconfig), environment management, and notification robots (DingTalk, WeChat, Feishu). Builds are executed inside a Docker-in-Docker container that includes Java, Maven, Node, and kubectl, with real-time log streaming via Server-Sent Events (SSE). The system integrates with GitLab for webhook-triggered builds and branch/commit information, supports LDAP authentication, and enforces role-based permissions (function and data scopes). The frontend dashboard displays build statistics, trends, and recent builds using ECharts. The codebase is functional and actively developed, but exhibits several engineering weaknesses: no automated tests, threading for async build execution (no task queue), hardcoded secrets (admin password, database credentials), SHA256 password hashing (not bcrypt), and plaintext storage of GitLab tokens. The Docker image is large and requires privileged mode. Despite these issues, the system is suitable for small teams needing a simple, integrated CI/CD solution without external dependencies beyond GitLab and MySQL.

RATING: 6.6/10 MAINT: active DRIFT: low
▸ 3 reusable components found
vishakhasadhwani/60DaysToCloud ★ 633 353 APPLICATION

This repository is purely educational documentation for a 60-day cloud and DevOps learning curriculum. It contains no executable code, APIs, services, or data processing components. The content consists of structured weekly learning paths (Week1-World8) with reading resources, hands-on exercises, and conceptual explanations covering Linux, networking, cloud platforms, IaC, containers, CI/CD, security, monitoring, and final projects. While well-organized as learning material, it has zero reusable engineering components since it contains only markdown files and images. The repository serves as a study guide rather than a functional software system.

RATING: 3.4/10 MAINT: active DRIFT: low
── end of results ──
$ submit: