gitops-engine

module
v0.7.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 26, 2024 License: Apache-2.0

README

GitOps Engine

Various GitOps operators address different use-cases and provide different user experiences but all have similar set of core features. The team behind Argo CD has implemented a reusable library that implements core GitOps features:

  • Kubernetes resource cache ✅
  • Resources reconciliation ✅
  • Sync Planning ✅
  • Access to Git repositories
  • Manifest Generation

Proposals, specifications and ideas

Do you want to propose one more feature and want to enhance the existing one? Proposals and ideas are in markdown docs in the specs/ directory. To create a new proposal, simply copy the spec template, name the file corresponding to the title of your proposal, and place it in the specs/ directory.

A good starting point to understand the structure is the GitOps Engine Design spec.

We tried to answer frequently asked question in a separate FAQ document.

Governance

This project is licensed under the Apache 2 license.

The GitOps Engine follows the CNCF Code of Conduct.

Get involved

If you are as excited about GitOps and one common engine for it as much as we are, please get in touch. If you want to write code that's great, if you want to share feedback, ideas and use-cases, that's great too.

Find us on the #gitops channel on Kubernetes Slack (get an invite here).

Contributing to the effort

At this stage we are interested in feedback, use-cases and help on the GitOps Engine.

Directories

Path Synopsis
internal
pkg
cache
Package cache implements lightweight Kubernetes cluster caching that stores only resource references and ownership references.
Package cache implements lightweight Kubernetes cluster caching that stores only resource references and ownership references.
diff
The package provide functions that allows to compare set of Kubernetes resources using the logic equivalent to `kubectl diff`.
The package provide functions that allows to compare set of Kubernetes resources using the logic equivalent to `kubectl diff`.
diff/internal/fieldmanager
Package fieldmanager is a special package as its main purpose is to expose the dependencies required by structured-merge-diff library to calculate diffs when server-side apply option is enabled.
Package fieldmanager is a special package as its main purpose is to expose the dependencies required by structured-merge-diff library to calculate diffs when server-side apply option is enabled.
sync
Package implements Kubernetes resources synchronization and provides the following main features:
Package implements Kubernetes resources synchronization and provides the following main features:
utils/kube
Package kube provides helper utilities common for kubernetes
Package kube provides helper utilities common for kubernetes
utils/tracing/tracer_testing
Package tracer_testing is a generated GoMock package.
Package tracer_testing is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL