{"id":13820247,"url":"https://github.com/redhat-developer/gitops-operator","last_synced_at":"2025-05-16T07:33:48.953Z","repository":{"id":37086753,"uuid":"275164598","full_name":"redhat-developer/gitops-operator","owner":"redhat-developer","description":"An operator that gets you an ArgoCD for cluster configuration out-of-the-box on OpenShift along with the UI for visualizing environments.","archived":false,"fork":false,"pushed_at":"2025-05-11T17:42:56.000Z","size":94261,"stargazers_count":165,"open_issues_count":70,"forks_count":319,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-05-11T18:34:00.612Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/redhat-developer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"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":"2020-06-26T13:38:35.000Z","updated_at":"2025-05-09T08:06:38.000Z","dependencies_parsed_at":"2024-01-03T08:31:20.936Z","dependency_job_id":"54cc55e5-b9e4-44cc-83af-6baf9d4ca2f9","html_url":"https://github.com/redhat-developer/gitops-operator","commit_stats":null,"previous_names":[],"tags_count":34,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fgitops-operator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fgitops-operator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fgitops-operator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Fgitops-operator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/redhat-developer","download_url":"https://codeload.github.com/redhat-developer/gitops-operator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254488691,"owners_count":22079478,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-08-04T08:01:00.071Z","updated_at":"2025-05-16T07:33:43.944Z","avatar_url":"https://github.com/redhat-developer.png","language":"Go","readme":"# OpenShift GitOps  Operator\n\nAn operator that gets you an Argo CD for cluster configuration out-of-the-box on OpenShift along with the UI for visualizing environments.\n\n# Getting started\n\n## Making the operator available on the in-cluster OperatorHub\n\n1. Add the following resource to your cluster:\n\n```\napiVersion: operators.coreos.com/v1alpha1\nkind: CatalogSource\nmetadata:\n  name: gitops-service-source\n  namespace: openshift-marketplace\nspec:\n  displayName: 'Gitops Service by Red Hat'\n  image: 'quay.io/\u003cquay-username\u003e/gitops-operator-index:v0.0.1'\n  publisher: 'Red Hat Developer'\n  sourceType: grpc\n```\n\n2. Go to the OperatorHub on OpenShift Webconsole and look for the \"OpenShift GitOps\" operator.\n\n\n\n![a relative link](docs/assets/operatorhub-listing.png)\n\n3. Install the operator in the `openshift-gitops-operator` namespace using the defaults in the wizard, and optionally, select the checkbox to enable cluster monitoring on the namespace. Wait for it to show up in the list of \"Installed Operators\". If it doesn't install properly, you can check on its status in the \"Installed Operators\" tab in the `openshift-gitops-operator` namespace.\n\n![a relative link](docs/assets/installed-operator.png)\n\n4. To validate if the installation was successful, look for the route named `cluster` in the `openshift-gitops` namespace. Note: the namespace doesn't have to exist in advance, the operator creates it for you.\n\nThat's it! Your API `route` should be created for you. You don't need to explicitly create any operand/CR.\n\n## Contributing\n\n\n1. Clone the repository.\n2. Login to a cluster on your command-line.\n3. Execute `make install` to apply the CRDs.\n4. Execute `make run` to run the operator locally.\n\n## Tests\n\n#### Unit tests\n\n```\nmake test\n```\n\n#### e2e tests\n\n```\nmake test-e2e\n```\n\n## Re-build and Deploy\n\nThis operator currently deploys the following payload:\n\n```\nquay.io/\u003cquay-username\u003e/gitops-backend:v0.0.1\n```\n\nIf that's all that you are changing, the following steps are not needed in development\nmode. You could update your image \"payload\" and re-install the operator.\n\nSet the base image and version for building operator, bundle and index images.\n\n```\nexport IMAGE=quay.io/\u003cquay-username\u003e/gitops-operator VERSION=1.8.0\n```\n\n1. Build and push the operator image.\n\n```\nmake docker-build docker-push\n```\n\n\n2. Build and push the Bundle image ( operator + OLM manifests )\n\n```\nmake bundle\nmake bundle-build bundle-push\n```\n\n3. Build and push the Index image\n\nInstall `opm` binary which is required to build index images\n\n```\nmake opm\n```\n\n```\nmake catalog-build catalog-push\n```\n\nThe Index image powers the listing of the Operator on OperatorHub.\n\n\n## GitOps Operator vs [Argo CD Community Operator](https://github.com/argoproj-labs/argocd-operator)\n\n| Features | GitOps Operator | Argo CD Community Operator |\n| -------- | -------- | -------- |\n| Default Cluster Argo CD instance | ✅ | ❌ |\n| Cluster  Argo CD instances in namespaces defined by envrionment variable ARGOCD_CLUSTER_CONFIG_NAMESPACES | openshift-gitops| ❌ |\n| Cluster Configuration RBAC/Policy Rules | All APIGroups,Resources,`get`,`list`,`watch` Verbs appended with `admin` ClusterRoles. Additional APIGroups: `operator.openshift.io`,`user.openshift.io`, `config.openshift.io`, `console.openshift.io`, `machine.openshift.io`, `machineconfig.openshift.io`, `compliance.openshift.io`, `rbac.authorization.k8s.io`, `storage.k8s.io`, etc. | All APIGroups,Resources,Verbs\n| Integrated with OpenShift Console Environments page for visualizing GitOps environments and applications | ✅ | ❌ |\n| Air-gapped environments | OCP | ❌ |\n| Installed tools | helm 3, kustomize | helm 2 and 3, kustomize, ksonnet |\n| Single Sign-on | RHSSO, Dex | Keycloak, Dex |\n| Redis Server | Redis 5, Secure connection is not yet supported | Redis 6 |\n| ArgoCDExport | ❌ | ✅ |\n| Installation Modes | All Namepaces | Single, All Namespaces |\n| Support for Kubernetes | ❌ | ✅ |\n| Maintained by | Red Hat | Community  |\n\n## Migrate from [Argo CD Community Operator](https://github.com/argoproj-labs/argocd-operator) to GitOps Operator\n\nPlease follow the [migration guide](https://github.com/redhat-developer/gitops-operator/blob/master/docs/Migration_Guide.md) when moving from the [Argo CD Community Operator](https://github.com/argoproj-labs/argocd-operator) to the GitOps Operator.\n\n## Progressive Delivery\n\nOpenShift GitOps from release v1.9.0 supports progressive delivery using [Argo Rollouts](https://argo-rollouts.readthedocs.io/en/stable/).\n\nUsers can enable progressive delivery by using a new type of CRD called `RolloutManager`. A detailed usage guide for this new CRD is available [here](https://argo-rollouts-manager.readthedocs.io/en/latest/crd_reference/).\n\n\n","funding_links":[],"categories":["others"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-developer%2Fgitops-operator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredhat-developer%2Fgitops-operator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-developer%2Fgitops-operator/lists"}