Skip to content

Commit

Permalink
fix merge conflicts
Browse files Browse the repository at this point in the history
Signed-off-by: Jaideep Rao <jaideep.r97@gmail.com>
  • Loading branch information
jaideepr97 committed Jul 7, 2023
2 parents 4b28b5f + ba14854 commit 390d426
Show file tree
Hide file tree
Showing 75 changed files with 1,320 additions and 2,178 deletions.
62 changes: 30 additions & 32 deletions api/v1alpha1/argocd_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ limitations under the License.
package v1alpha1

import (
"strings"

routev1 "github.com/openshift/api/route/v1"

"github.com/argoproj-labs/argocd-operator/common"
Expand Down Expand Up @@ -115,6 +117,20 @@ type ArgoCDApplicationControllerShardSpec struct {

// Replicas defines the number of replicas to run in the Application controller shard.
Replicas int32 `json:"replicas,omitempty"`

// DynamicScalingEnabled defines whether dynamic scaling should be enabled for Application Controller component
DynamicScalingEnabled *bool `json:"dynamicScalingEnabled,omitempty"`

// MinShards defines the minimum number of shards at any given point
// +kubebuilder:validation:Minimum=1
MinShards int32 `json:"minShards,omitempty"`

// MaxShards defines the maximum number of shards at any given point
MaxShards int32 `json:"maxShards,omitempty"`

// ClustersPerShard defines the maximum number of clusters managed by each argocd shard
// +kubebuilder:validation:Minimum=1
ClustersPerShard int32 `json:"clustersPerShard,omitempty"`
}

// ArgoCDApplicationSet defines whether the Argo CD ApplicationSet controller should be installed.
Expand Down Expand Up @@ -185,12 +201,6 @@ type ArgoCDDexSpec struct {
Version string `json:"version,omitempty"`
}

// ArgoCDDexOAuthSpec defines the desired state for the Dex OAuth configuration.
type ArgoCDDexOAuthSpec struct {
// Enabled will toggle OAuth support for the Dex server.
Enabled bool `json:"enabled"`
}

// ArgoCDGrafanaSpec defines the desired state for the Grafana component.
type ArgoCDGrafanaSpec struct {
// Enabled will toggle Grafana support globally for ArgoCD.
Expand Down Expand Up @@ -602,16 +612,8 @@ const (

// ArgoCDSSOSpec defines SSO provider.
type ArgoCDSSOSpec struct {
// Image is the SSO container image.
Image string `json:"image,omitempty"`
// Provider installs and configures the given SSO Provider with Argo CD.
Provider SSOProviderType `json:"provider,omitempty"`
// Resources defines the Compute Resources required by the container for SSO.
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// VerifyTLS set to false disables strict TLS validation.
VerifyTLS *bool `json:"verifyTLS,omitempty"`
// Version is the SSO container image tag.
Version string `json:"version,omitempty"`

// Dex contains the configuration for Argo CD dex authentication
Dex *ArgoCDDexSpec `json:"dex,omitempty"`
Expand Down Expand Up @@ -663,9 +665,6 @@ type ArgoCDSpec struct {
// Controller defines the Application Controller options for ArgoCD.
Controller ArgoCDApplicationControllerSpec `json:"controller,omitempty"`

// Dex defines the Dex server options for ArgoCD.
Dex *ArgoCDDexSpec `json:"dex,omitempty"`

// DisableAdmin will disable the admin user.
DisableAdmin bool `json:"disableAdmin,omitempty"`

Expand Down Expand Up @@ -826,14 +825,14 @@ type ArgoCDStatus struct {
//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="ApplicationSetController",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
ApplicationSetController string `json:"applicationSetController,omitempty"`

// Dex is a simple, high-level summary of where the Argo CD Dex component is in its lifecycle.
// There are four possible dex values:
// Pending: The Argo CD Dex component has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
// Running: All of the required Pods for the Argo CD Dex component are in a Ready state.
// Failed: At least one of the Argo CD Dex component Pods had a failure.
// Unknown: The state of the Argo CD Dex component could not be obtained.
//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="Dex",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
Dex string `json:"dex,omitempty"`
// SSO is a simple, high-level summary of where the Argo CD SSO(Dex/Keycloak) component is in its lifecycle.
// There are four possible sso values:
// Pending: The Argo CD SSO component has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
// Running: All of the required Pods for the Argo CD SSO component are in a Ready state.
// Failed: At least one of the Argo CD SSO component Pods had a failure.
// Unknown: The state of the Argo CD SSO component could not be obtained.
//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="SSO",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
SSO string `json:"sso,omitempty"`

// NotificationsController is a simple, high-level summary of where the Argo CD notifications controller component is in its lifecycle.
// There are four possible NotificationsController values:
Expand All @@ -844,13 +843,6 @@ type ArgoCDStatus struct {
//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="NotificationsController",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
NotificationsController string `json:"notificationsController,omitempty"`

// SSOConfig defines the status of SSO configuration.
// Success: Only one SSO provider is configured in CR.
// Failed: SSO configuration is illegal or more than one SSO providers are configured in CR.
// Unknown: The SSO configuration could not be obtained.
//+operator-sdk:csv:customresourcedefinitions:type=status,displayName="SSOConfig",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
SSOConfig string `json:"ssoConfig,omitempty"`

// Phase is a simple, high-level summary of where the ArgoCD is in its lifecycle.
// There are four possible phase values:
// Pending: The ArgoCD has been accepted by the Kubernetes system, but one or more of the required resources have not been created.
Expand Down Expand Up @@ -1021,3 +1013,9 @@ func ParseResourceTrackingMethod(name string) ResourceTrackingMethod {

return ResourceTrackingMethodInvalid
}

// ToLower returns the lower case representation for a SSOProviderType
func (p SSOProviderType) ToLower() SSOProviderType {
str := string(p)
return SSOProviderType(strings.ToLower(str))
}
37 changes: 6 additions & 31 deletions api/v1alpha1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions build/util/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Argo CD v2.6.3
FROM quay.io/argoproj/argocd@sha256:0fd690bd7b89bd6f947b4000de33abd53ebcd36b57216f1c675a1127707b5eef as argocd
# Argo CD v2.7.6
FROM quay.io/argoproj/argocd@sha256:7daba5f38b23f4f091951b727db6f87dc04ad396fd21044401502438d633836e as argocd

# Final Image
FROM docker.io/library/ubuntu:22.04
Expand Down
2 changes: 1 addition & 1 deletion bundle.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
LABEL operators.operatorframework.io.bundle.package.v1=argocd-operator
LABEL operators.operatorframework.io.bundle.channels.v1=alpha
LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.10.0+git
LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.28.1
LABEL operators.operatorframework.io.metrics.mediatype.v1=metrics+v1
LABEL operators.operatorframework.io.metrics.project_layout=go.kubebuilder.io/v3

Expand Down
61 changes: 11 additions & 50 deletions bundle/manifests/argocd-operator.clusterserviceversion.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,9 @@ metadata:
capabilities: Deep Insights
categories: Integration & Delivery
certified: "false"
createdAt: "2023-07-07T22:41:38Z"
description: Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes.
operators.operatorframework.io/builder: operator-sdk-v1.10.0+git
operators.operatorframework.io/builder: operator-sdk-v1.28.1
operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
repository: https://github.com/argoproj-labs/argocd-operator
support: Argo CD
Expand Down Expand Up @@ -349,38 +350,6 @@ spec:
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:fieldGroup:Controller
- urn:alm:descriptor:com.tectonic.ui:resourceRequirements
- description: Config is the dex connector configuration.
displayName: Configuration
path: dex.config
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:fieldGroup:Dex
- urn:alm:descriptor:com.tectonic.ui:text
- description: Image is the Dex container image.
displayName: Image
path: dex.image
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:fieldGroup:Dex
- urn:alm:descriptor:com.tectonic.ui:text
- description: OpenShiftOAuth enables OpenShift OAuth authentication for the
Dex server.
displayName: OpenShift OAuth Enabled'
path: dex.openShiftOAuth
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:fieldGroup:Dex
- urn:alm:descriptor:com.tectonic.ui:booleanSwitch
- description: Resources defines the Compute Resources required by the container
for Dex.
displayName: Resource Requirements'
path: dex.resources
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:fieldGroup:Dex
- urn:alm:descriptor:com.tectonic.ui:resourceRequirements
- description: Version is the Dex container image tag.
displayName: Version
path: dex.version
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:fieldGroup:Dex
- urn:alm:descriptor:com.tectonic.ui:text
- description: GAAnonymizeUsers toggles user IDs being hashed before sending
to google analytics.
displayName: Google Analytics Anonymize Users'
Expand Down Expand Up @@ -780,17 +749,6 @@ spec:
path: applicationSetController
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:text
- description: 'Dex is a simple, high-level summary of where the Argo CD Dex
component is in its lifecycle. There are four possible dex values: Pending:
The Argo CD Dex component has been accepted by the Kubernetes system, but
one or more of the required resources have not been created. Running: All
of the required Pods for the Argo CD Dex component are in a Ready state.
Failed: At least one of the Argo CD Dex component Pods had a failure. Unknown:
The state of the Argo CD Dex component could not be obtained.'
displayName: Dex
path: dex
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:text
- description: 'NotificationsController is a simple, high-level summary of where
the Argo CD notifications controller component is in its lifecycle. There
are four possible NotificationsController values: Pending: The Argo CD notifications
Expand Down Expand Up @@ -848,12 +806,15 @@ spec:
path: server
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:text
- description: 'SSOConfig defines the status of SSO configuration. Success:
Only one SSO provider is configured in CR. Failed: SSO configuration is
illegal or more than one SSO providers are configured in CR. Unknown: The
SSO configuration could not be obtained.'
displayName: SSOConfig
path: ssoConfig
- description: 'SSO is a simple, high-level summary of where the Argo CD SSO(Dex/Keycloak)
component is in its lifecycle. There are four possible sso values: Pending:
The Argo CD SSO component has been accepted by the Kubernetes system, but
one or more of the required resources have not been created. Running: All
of the required Pods for the Argo CD SSO component are in a Ready state.
Failed: At least one of the Argo CD SSO component Pods had a failure. Unknown:
The state of the Argo CD SSO component could not be obtained.'
displayName: SSO
path: sso
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:text
version: v1alpha1
Expand Down
Loading

0 comments on commit 390d426

Please sign in to comment.