Scripts2026年4月16日·1 分钟阅读

GoCD — Continuous Delivery Server by ThoughtWorks

A mature open-source continuous delivery server that models complex build-test-deploy pipelines with first-class support for pipeline dependencies, fan-in/fan-out, and value stream visualization.

Introduction

GoCD was purpose-built for continuous delivery by ThoughtWorks, the company that popularized the CD practice. Unlike CI tools retrofitted for deployment, GoCD models the entire delivery pipeline as a first-class concept with dependency tracking, fan-in logic, and value stream maps.

What GoCD Does

  • Models multi-stage pipelines with dependency-aware fan-in and fan-out
  • Visualizes the entire value stream from commit to production in one dashboard
  • Supports pipeline-as-code via YAML or JSON config repos
  • Manages environments to promote artifacts through dev, staging, and production
  • Provides role-based access control and approval gates for deployments

Architecture Overview

GoCD uses a server-agent model. The server manages pipeline configurations, schedules builds, and serves the web UI. Agents poll the server for work, execute jobs in isolated sandboxes, and upload artifacts. Pipeline dependencies form a DAG that GoCD resolves using fan-in logic to ensure consistent artifact versions propagate downstream.

Self-Hosting & Configuration

  • Deploy server and agents via Docker, Kubernetes Helm chart, or native packages
  • Define pipelines as code in YAML files stored alongside application repos
  • Configure elastic agents for Kubernetes, Docker, or AWS to auto-scale workers
  • Set environment variables and secure variables per pipeline or environment
  • Enable LDAP or OAuth for authentication and define granular role permissions

Key Features

  • Value Stream Map gives end-to-end visibility from commit to deployment
  • Fan-in dependency management prevents version mismatches across pipelines
  • Elastic agent plugins auto-scale build capacity on Kubernetes or cloud
  • Compare pipeline runs to see exactly which commits and dependencies changed
  • Built-in artifact management with upstream pipeline material tracking

Comparison with Similar Tools

  • Jenkins — plugin-heavy CI server; GoCD has CD concepts built in natively
  • GitHub Actions — tightly coupled to GitHub; GoCD is VCS-agnostic
  • Argo CD — GitOps for Kubernetes only; GoCD handles any deployment target
  • GitLab CI — integrated with GitLab; GoCD runs standalone with any git host
  • Tekton — Kubernetes-native pipelines; GoCD offers richer value stream views

FAQ

Q: Is GoCD truly free and open source? A: Yes. GoCD is Apache 2.0 licensed with no paid tiers. All features including pipeline-as-code and elastic agents are free.

Q: Can GoCD run on Kubernetes? A: Yes. Official Helm charts deploy the server and elastic agents on K8s with auto-scaling support.

Q: How does GoCD handle secrets? A: GoCD supports encrypted secure variables and integrates with external secret managers via plugins for Vault and AWS Secrets Manager.

Q: What languages and build tools does GoCD support? A: GoCD is language-agnostic. Agents run any command, so it works with Maven, Gradle, npm, Make, Bazel, or any build tool.

Sources

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产