Building on Argo
We at GreenOps believe strongly in adopting open-source technology - from the large helpful communities built behind them, to faster pace of development, and also knowing what you are deploying (no black boxes!). GreenOps is built around the Argo project (Workflows, CD, and Rollouts), and provides a lot of features to help supplement potential product gaps.
POC to Adoption
Without GreenOps
Configuring a full fledged Argo deployment is not simple, especially when combining the projects. This timeline can often take between 6 - 18 months to build all the necessary supplementary scripts/tooling, configure and tune Argo, and then onboard users onto a new experience and flow.
With GreenOps
With GreenOps, the entire Argo suite can be deployed into production in a day, complete will supplementary tooling, best practice configurations, RBAC requirements, and more. DevOps teams can then focus on building the custom company logic instead of focusing on boilerplate.
Operations & Centralization
Without GreenOps
Orchestrating Argo CD deployments with Argo Workflows requires its own set of supplemental tooling. Argo Workflows can trigger syncs for Argo CD applications, but it does not connect directly to it - a user would have to read the workflow logs, find the application deployed, go to Argo CD, and then match the application name to a resource in the UI. DevOps teams may also have to create custom dashboards per application to help provide a single centralized view.
Argo Workflows does not come with a centralized, per-application/workflow audit log. RBAC policies are also different for Workflows and CD, requiring them to be managed separately.
Combined with deploying across multiple environments, this becomes a challenge for DevOps teams to manage, and for developers to have a paved path experience that reduces effort from their side.
Custom automation/meshing services would have to built internally to connect CD & Workflows and provide a single touchpoint, provide centralized audit, and also manage configuration at scale.
With GreenOps
GreenOps centralizes usage of the Argo project and provides a single touchpoint (across environments) for visibility into workflows, audit logging, and application state. GreenOps also provides a granular, global RBAC policy for entire CI/CD pipelines.
Security & Reliability
Without GreenOps
Modern companies requires visibility, analysis, and security capabilities surrounding their deployment processes.
Argo Workflows provides flexible capabilities for emitting Prometheus metrics as a part of pipelines, but users have to configure these at scale with every single workflow being made, or every template being registered. Unique schemas for metrics have to be created to support getting granular views of product velocity at the team, product owner, and org level.
Whether it is for exporting product velocity metrics (like DORA) or implementing visibility into deployment bottlenecks, a lot of custom infrastructure would have to be built to support these essential features in practice.
Argo has reporting capabilities and displays Kubernetes reports on applications. Kubernetes is helpful, but is often not enough when verifying application state. Users would still have to add custom verification suites to run on intervals against their applications to verify if the application is stable or degrading. Basic rollbacks or simple incident handling would still require a system to be set up, or for manual intervention to be taken.
With GreenOps
GreenOps helps enhance reliability and visibility by providing built-in infrastructure for continuous verification, automated application rollbacks, exported DORA metrics, and deployment bottleneck isolation.
Manifesting & Developer Experience
Without GreenOps
All manifesting has to be done as YAML. All workflows have to be created, shared, customized, and managed using YAML, which can introduce learning curves for developers and challenges in standardization for DevOps.
DevOps teams would have to build services to enforce organizational standards for workflows (what steps should be there, what workflows have to look like), as well as create systems to easily onboard new applications. Some kind of templating engine would likely have to be built to translate YAML manifests and allow for simple customization without a learning curve.
With GreenOps
GreenOps provides a flexible organizational structure for creating, sharing, and managing CI/CD pipelines. Pipelines can be created through a no-code UI or directly as YAML. Users can create a paved path pipeline once, and share/customize it efficiently without any learning curve or hassle.
Expert Support
Without GreenOps
There are a lot of knobs to configure when deploying the Argo project. From RBAC policies and authentication to manifest plugins and artifact repositories, managing all these different components can require a lot of research and extend a rollout from weeks to months.
With GreenOps
GreenOps provides support and best practices for companies looking to fine tune their Argo usage.