Skip to content

Commit c749771

Browse files
RC2 draft 🎈 (#22)
PR for the second release candidate, incorporating feedback from RC 1 by GitOps Working Group and community participants. After merge, we will create an RC 2 release branch and tag the release. RC 2 is the last planned release candidate before the [v1.0.0 milestone](https://github.com/open-gitops/documents/milestone/1), scheduled to release before Kubecon NA, 2021. Any open discussions from feedback will be moved to issues and attached to the appropriate milestone. These may be addressed either the v1.0.0 milestone or after depending on how motivated its proponents are, and how consensus from the GitOps Working Group unfolds. ## About OpenGitOps OpenGitOps is a CNCF Sandbox project for lasting programs, documents and code from the [GitOps Working Group](https://github.com/gitops-working-group/gitops-working-group/). ## About the GitOps Working Group The GitOps Working Group is an open group, inviting companies and individuals to join and contribute to the community and the adoption of GitOps across the cloud native landscape. There are many ways to [get involved](https://github.com/gitops-working-group/gitops-working-group/blob/main/README.md#how-to-get-involved). Here are a few: ## Getting Involved - [Star](https://docs.github.com/en/github/getting-started-with-github/exploring-projects-on-github/saving-repositories-with-stars) and [watch](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications) the [OpenGitOps Documents](https://github.com/open-gitops/documents) and [GitOps Working Group](https://github.com/gitops-working-group/gitops-working-group) repos to see when things change - For more, see https://github.com/open-gitops/.github/blob/main/CONTRIBUTING.md ## Changelog ## Attribution RC 2 drafted by: Co-authored-by: Dan Garfield <[email protected]> Co-authored-by: Scott Rigby <[email protected]> With feedback from meeting participants: Co-authored-by: Christian Hernandez <[email protected]> Co-authored-by: Moshe Immerman <[email protected]> Co-authored-by: Chris Short <[email protected]> And John Hession (can not find co-authorship email) And PR in collaboration with: Co-authored-by: Michael Bridgen <[email protected]> Co-authored-by: Lloyd Chang <[email protected]> Co-authored-by: Brian Fox <[email protected]> Co-authored-by: Moshe Immerman <[email protected]> Co-authored-by: Cansu Kavılı Örnek <[email protected]> Co-authored-by: Piotr <[email protected]> Co-authored-by: Chris Sanders <[email protected]> ## Review changes on this PR were: * Remove breaking glass language as it is no longer referenced. This is something we may add back later as we add things. Signed-off-by: Dan Garfield <[email protected]> * Revise wording to make each definition more clear. Also remove the extra components under software system. Signed-off-by: Dan Garfield <[email protected]> * Fixed 3 typos 3 small typos were fixed in the document. Co-authored-by: Lloyd Chang <[email protected]> Co-authored-by: Cansu Kavılı Örnek <[email protected]> Signed-off-by: Piotr <[email protected]> * Remove CIOps and use standard language to clarify reconciliation. Signed-off-by: Dan Garfield <[email protected]> * Add space Co-authored-by: Brian Fox <[email protected]> Signed-off-by: Dan Garfield <[email protected]> * Remove unnecessary 'declarations' modifier Co-authored-by: Brian Fox <[email protected]> Signed-off-by: Scott Rigby <[email protected]> * Update Desired State glossary item Co-authored-by: Lloyd Chang <[email protected]> Co-authored-by: Michael Bridgen <[email protected]> Co-authored-by: Dan Garfield <[email protected]> Signed-off-by: Scott Rigby <[email protected]> * Clarify "drift" means moving away from desired state not moving toward Good note Michael, important to be precise here. Co-authored-by: Michael Bridgen <[email protected]> Co-authored-by: Dan Garfield <[email protected]> Co-authored-by: Lloyd Chang <[email protected]> Signed-off-by: Scott Rigby <[email protected]> Co-authored-by: Piotr <[email protected]> Co-authored-by: Scott Rigby <[email protected]> Signed-off-by: Scott Rigby <[email protected]>
1 parent 11b362b commit c749771

File tree

1 file changed

+12
-21
lines changed

1 file changed

+12
-21
lines changed

GLOSSARY.md

Lines changed: 12 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,48 +2,39 @@
22

33
This glossary accompanies the [GitOps Principles](./PRINCIPLES.md), and other supporting documents in this repository.
44

5-
- ## Break Glass
6-
7-
The temporary suspension of GitOps principles, often accomplished by pausing automated [reconciliation](#reconciliation).
8-
While these principles apply to typical operations, it may at times be necessary to temporarily pause reconciliation, for example during incident management activities.
9-
In these cases, other modes of operations should be considered (e.g. manual intervention), followed by any necessary updates to the desired state declarations, and finally resuming reconciliation of the system with the updated declarations.
10-
Pragmatic exceptions to these guiding principles are expected from time to time during the journey toward a system being fully managed by GitOps.
11-
125
- ## Continuous
136

14-
By "continuous" we adopt the industry standard to mean that [reconciliation](#reconciliation) continues to happen, not that it must be instantaneous.
7+
"Continuous" is intended to match the industry standard term: [reconciliation](#reconciliation) continues to happen, not that it must be instantaneous.
158

169
- ## Declarative Description
1710

18-
Describing the desired state or behavior of a system without specifying how that state will be achieved, thereby separating configuration (the desired state) from the implementation (commands, API calls, scripts etc.) that actually achieves the desired state described in the declarative description.
11+
A configuration that describes the desired operating state of a system without specifying procedures for how that state will be achieved. This separates configuration (the desired state) from the implementation (commands, API calls, scripts etc.) used to achieve that state.
1912

2013
- ## Desired State
2114

22-
The aggregate of all configuration data for a system form its desired state which is defined as data sufficient to recreate the system so that instances of the system are behaviourally indistinguishable, but do not include the state of any data stored within the system, eg. database contents.
15+
The aggregate of all configuration data for a system form its desired state which is defined as data sufficient to recreate the system so that instances of the system are behaviourally indistinguishable.
16+
This configuration data generally does not include persistent application data, eg. database contents, though often does include credentials for accessing that data, or configuration for data recovery tools running on that system.
2317

2418
- ## Drift
2519

26-
When a system's actual state changes for any reason other than its versioned [desired state](#desired-state) declarations having changed, we say that the system has drifted from its desired state.
20+
When a system's actual state has moved or is in the process of moving away from the [desired state](#desired-state), this is often referred to as drift.
2721

2822
- ## Reconciliation
2923

30-
The process of ensuring that the actual state of a system matches its [desired state](#desired-state) declarations.
31-
Contrary to CIops, any divergence between the two will trigger reconciliation, regardless of where changes occured.
32-
Divergence could be due to the actual state unintentionally [drifting](#drift) from the desired state declarations, or a new desired state declaration version having been changed intentionally.
24+
The process of ensuring the actual state of a system matches its [desired state](#desired-state).
25+
Contrary to traditional CI/CD where automation is generally driven by pre-set triggers, in GitOps reconciliation is triggered whenever there is a divergence. Divergence could be due to the actual state unintentionally [drifting](#drift) from the desired state declarations, or a new desired state declaration version having been changed intentionally.
3326

3427
- ## Software System
3528

36-
We currently understand a software system to include:
29+
A software system managed by GitOps includes:
3730

38-
- One or more runtime environments consisting of resources under management
39-
- In each runtime, the management agents which act on resources according to security policies
40-
- One or more software repositories for storing deployable artifacts that may be loaded into the runtime environments, eg. configuration files, code, binaries, and packages
41-
- One or more Administrators who are responsible for operating the runtime environments ie. installing, starting, stopping and updating software, code, configuration, etc
42-
- A set of policies controlling access and management of repositories, deployments, runtimes
31+
1. One or more runtime environments consisting of resources under management
32+
1. The management agents within each runtime
33+
1. Policies for controlling access and management of repositories, deployments, runtimes
4334

4435
- ## State Store
4536

4637
A system for storing immutable versions of [desired state](#desired-state) declarations.
4738
This state store should provide access control and auditing on the changes to the Desired State.
4839
Git, from which GitOps derives its name, is the canonical example used as this state store but any other system that meets these criteria may be used.
49-
In all cases, these state stores must be properly configured and special precautions must be taken to comply with requirements set out in the GitOps Principles.
40+
In all cases, these state stores must be properly configured and precautions must be taken to comply with requirements set out in the GitOps Principles.

0 commit comments

Comments
 (0)