{"id":22829796,"url":"https://github.com/get-glu/glu","last_synced_at":"2026-01-15T00:50:03.290Z","repository":{"id":261093041,"uuid":"880407650","full_name":"get-glu/glu","owner":"get-glu","description":"A deployment pipeline framework that sticks","archived":false,"fork":false,"pushed_at":"2025-08-26T18:44:06.000Z","size":16240,"stargazers_count":134,"open_issues_count":22,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-08-27T02:23:41.709Z","etag":null,"topics":["continuous-delivery","continuous-deployment","deployment","go","golang"],"latest_commit_sha":null,"homepage":"https://docs.getglu.dev","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/get-glu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-10-29T17:06:47.000Z","updated_at":"2025-08-26T18:44:08.000Z","dependencies_parsed_at":"2024-11-19T01:42:11.993Z","dependency_job_id":"e58d3fb9-90d8-4f6a-b4c5-79bcbc60b92b","html_url":"https://github.com/get-glu/glu","commit_stats":null,"previous_names":["get-glu/glu"],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/get-glu/glu","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/get-glu%2Fglu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/get-glu%2Fglu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/get-glu%2Fglu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/get-glu%2Fglu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/get-glu","download_url":"https://codeload.github.com/get-glu/glu/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/get-glu%2Fglu/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28440521,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-15T00:34:46.850Z","status":"ssl_error","status_checked_at":"2026-01-15T00:34:46.551Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["continuous-delivery","continuous-deployment","deployment","go","golang"],"created_at":"2024-12-12T20:00:41.659Z","updated_at":"2026-01-15T00:50:03.268Z","avatar_url":"https://github.com/get-glu.png","language":"Go","funding_links":[],"categories":["Go","deployment"],"sub_categories":[],"readme":"\u003cdiv\u003e\n  \u003cimg align=\"left\" src=\"./.github/images/stu.png\" alt=\"Stu - The Glu mascot\" width=\"200\" /\u003e\n  \u003cbr\u003e\n  \u003ch3\u003eGlu\u003c/h3\u003e\n  \u003cp\u003e\n    \u003cem\u003e\n      A deployment pipeline framework that sticks\n    \u003c/em\u003e\n  \u003c/p\u003e\n  \u003cp\u003e\n    Glu is the missing piece in your CI/CD toolbelt.\n    It is a framework for orchestrating, manipulating, and introspecting deployment configuration stored in version control.\n  \u003c/p\u003e\n  \u003cbr\u003e\n\u003c/div\u003e\n\n[![Go Reference](https://pkg.go.dev/badge/github.com/get-glu/glu.svg)](https://pkg.go.dev/github.com/get-glu/glu)\n[![Discord](https://img.shields.io/discord/1318634968808947752?style=flat\u0026cacheSeconds=120\n)](https://discord.gg/Vkz3BPy5ba)\n\n## Mission Statement\n\nTo simplify application deployments through a code-first framework that streamlines CI/CD processes. Glu replaces fragmented, manual workflows with maintainable pipelines, providing teams with enhanced visibility, traceability, and control over their deployment journey.\n\n## What Is It?\n\nGlu is a framework built to help manage and coordinate multi-environment deployments using configuration stored in Git.\n\n\u003e [!TIP]\n\u003e Read the [CD Pipeline Manifesto](https://manifesto.getglu.dev) to learn about the principles that guide Glu.\n\n\u003cp align=\"center\"\u003e\n\n\u003cimg src=\"./.github/images/dashboard.png\" alt=\"Glu Dashboard\" width=\"800\" /\u003e\n\n\u003c/p\u003e\n\nGlu has an opinionated set of models and abstractions, which when combined, allow you to build consistent command-line and server processes for orchestrating the progression of applications and configuration across target environments.\n\n📖 Check out our introductory [blog post](https://blog.flipt.io/introducing-glu/) to learn more about why we built Glu.\n\n## What's Included\n\n- An engine for orchestrating the progression of resources across environments by opening pull requests in your Git repositories (optional).\n- A CLI for interacting with the state of your pipelines.\n- An API for interacting with the state of your pipelines.\n- An (optional) UI for visualizing and interacting with the state of your pipelines.\n\n## Use Cases\n\nUse it to implement anything that involves automating updates to Git repositories via commits and pull requests.\n\n- ✅ Track new versions of applications in source repositories (OCI, Helm, etc) and trigger updates to target configuration repositories (Git).\n- ⌛️ Coordinate any combination of scheduled, event-driven, or manually triggered promotions from one environment to the next.\n- 🔍 Expose a single pane of glass to compare and manipulate the state of your resources in one environment to the next.\n- 🗓️ Export standardized telemetry which ties together your entire end-to-end CI/CD and promotion pipeline sequence of events.\n\n## Getting Started\n\n1. Install Glu\n\n```\ngo get github.com/get-glu/glu\n```\n\n2. Follow the [GitOps Example Repository](https://github.com/get-glu/gitops-example) to see Glu in action.\n\n3. Implement your own pipelines using the [Glu SDK](https://pkg.go.dev/github.com/get-glu/glu).\n\n## Development\n\nSee [DEVELOPMENT.md](./DEVELOPMENT.md) for more information.\n\n## Roadmap Ideas\n\nIn the future, we plan to support more functionality, such as:\n\n- New sources:\n  - Helm\n  - Webhook / API\n  - Kubernetes (direct to cluster)\n- Progressive delivery (think Kargo / Argo Rollouts)\n  - Ability to guard promotion with condition checks on resource status\n  - Expose status via Go function definitions on resource types\n- Pinning, history, and rollback\n  - Ability to view past states for phases\n  - Be able to pin phases to current or manually overridden states\n  - Rollback phases to previously known states\n\n## Built By\n\nThe team at [Flipt](https://flipt.io). We built Glu to power our own internal promotion pipelines and open-sourced it so that others can benefit from it.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fget-glu%2Fglu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fget-glu%2Fglu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fget-glu%2Fglu/lists"}