Skip to content

Commit 42d5c47

Browse files
Merge pull request #28 from IBM/minor-changes
Move Constants At one place, optimisation and removal of duplicates
2 parents 424d2e0 + a20feb4 commit 42d5c47

File tree

15 files changed

+299
-353
lines changed

15 files changed

+299
-353
lines changed

.secrets.baseline

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"files": "go.sum|^.secrets.baseline$",
44
"lines": null
55
},
6-
"generated_at": "2024-05-15T04:17:59Z",
6+
"generated_at": "2024-06-03T09:31:24Z",
77
"plugins_used": [
88
{
99
"name": "AWSKeyDetector"

pkg/config/constants.go renamed to controllers/constants/constants.go

Lines changed: 41 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,21 @@
1-
// Package config ...
2-
package config
1+
// Package constants ...
2+
package constants
3+
4+
import "fmt"
35

4-
// Add a field here if it never changes, if it changes over time, put it to settings.go
56
const (
6-
APIGroup = "objectdriver.csi.ibm.com"
7+
APIGroup = "objectdriver.csi.ibm.com"
8+
79
APIVersion = "v1"
810
CSIOperatorName = "ibm-object-csi-driver-operator"
911
CSIDriverName = "ibm-object-csi-driver"
1012
DriverName = "cos.s3.csi.ibm.io"
11-
ProductName = "ibm-object-csi-driver"
1213

1314
RbacAuthorizationAPIGroup = "rbac.authorization.k8s.io"
1415
SecurityOpenshiftAPIGroup = "security.openshift.io"
1516
StorageAPIGroup = "storage.k8s.io"
1617

17-
CsiNodesResource = "csinodes"
18+
CSINodesResource = "csinodes"
1819
SecretsResource = "secrets"
1920
SecurityContextConstraintsResource = "securitycontextconstraints"
2021
StorageClassesResource = "storageclasses"
@@ -43,9 +44,43 @@ const (
4344
NodeRegistrarSocketPath = "/var/lib/kubelet/plugins/cos.s3.csi.ibm.io/csi.sock"
4445
CSIEndpoint = "unix:///var/lib/csi/sockets/pluginproxy/csi.sock"
4546
CSINodeEndpoint = "unix:///csi/csi.sock"
47+
RegistrationVolumeMountPath = "/registration"
48+
49+
NodeContainerName = "ibm-object-csi-node"
50+
ControllerContainerName = "ibm-object-csi-controller"
51+
52+
RegistrationVolumeName = "registration-dir"
53+
PluginVolumeName = "plugin-dir"
54+
SocketVolumeName = "socket-dir"
55+
56+
HealthPortName = "healthz"
57+
HealthPortNumber = 9808
58+
59+
DriverPrefix = "ibm-object-csi"
60+
61+
CSIController = "controller"
62+
CSINode = "node"
63+
CSIControllerServiceAccount = "controller-sa"
64+
CSINodeServiceAccount = "node-sa"
65+
ExternalProvisionerClusterRole = "external-provisioner-clusterrole"
66+
ExternalProvisionerClusterRoleBinding = "external-provisioner-clusterrolebinding"
67+
CSIControllerSCCClusterRole = "controller-scc-clusterrole"
68+
CSIControllerSCCClusterRoleBinding = "controller-scc-clusterrolebinding"
69+
CSINodeSCCClusterRole = "node-scc-clusterrole"
70+
CSINodeSCCClusterRoleBinding = "node-scc-clusterrolebinding"
71+
72+
RcloneRetainStorageClass = "ibm-object-storage-rclone-retain-sc"
73+
RcloneStorageClass = "ibm-object-storage-rclone-sc"
74+
S3fsRetainStorageClass = "ibm-object-storage-s3fs-retain-sc"
75+
S3fsStorageClass = "ibm-object-storage-s3fs-sc"
4676
)
4777

4878
var CommonCSIResourceLabels = map[string]string{
4979
"app.kubernetes.io/part-of": CSIDriverName,
5080
"app.kubernetes.io/managed-by": CSIOperatorName,
5181
}
82+
83+
// GetResourceName returns the name of a resource for a CSI driver
84+
func GetResourceName(name string) string {
85+
return fmt.Sprintf("%s-%s", DriverPrefix, name)
86+
}

controllers/ibmobjectcsi_controller.go

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ import (
2525
"time"
2626

2727
objectdriverv1alpha1 "github.com/IBM/ibm-object-csi-driver-operator/api/v1alpha1"
28+
"github.com/IBM/ibm-object-csi-driver-operator/controllers/constants"
2829
crutils "github.com/IBM/ibm-object-csi-driver-operator/controllers/internal/crutils"
2930
clustersyncer "github.com/IBM/ibm-object-csi-driver-operator/controllers/syncer"
3031
"github.com/IBM/ibm-object-csi-driver-operator/controllers/util/common"
31-
oconfig "github.com/IBM/ibm-object-csi-driver-operator/pkg/config"
3232
oversion "github.com/IBM/ibm-object-csi-driver-operator/version"
3333
"github.com/go-logr/logr"
3434
"github.com/presslabs/controller-util/pkg/syncer"
@@ -48,9 +48,6 @@ import (
4848
"sigs.k8s.io/controller-runtime/pkg/reconcile"
4949
)
5050

51-
// ReconcileTime is the delay between reconciliations
52-
const ReconcileTime = 30 * time.Second
53-
5451
type reconciler func(instance *crutils.IBMObjectCSI) error
5552

5653
var csiLog = logf.Log.WithName("ibmobjectcsi_controller")
@@ -282,7 +279,7 @@ func (r *IBMObjectCSIReconciler) isNodeReady(node *appsv1.DaemonSet) bool {
282279
func (r *IBMObjectCSIReconciler) getNodeDaemonSet(instance *crutils.IBMObjectCSI) (*appsv1.DaemonSet, error) {
283280
node := &appsv1.DaemonSet{}
284281
err := r.Get(context.TODO(), types.NamespacedName{
285-
Name: oconfig.GetNameForResource(oconfig.CSINode, oconfig.DriverPrefix),
282+
Name: constants.GetResourceName(constants.CSINode),
286283
Namespace: instance.Namespace,
287284
}, node)
288285
return node, err
@@ -291,7 +288,7 @@ func (r *IBMObjectCSIReconciler) getNodeDaemonSet(instance *crutils.IBMObjectCSI
291288
func (r *IBMObjectCSIReconciler) getControllerDeployment(instance *crutils.IBMObjectCSI) (*appsv1.Deployment, error) {
292289
controllerDeployment := &appsv1.Deployment{}
293290
err := r.Get(context.TODO(), types.NamespacedName{
294-
Name: oconfig.GetNameForResource(oconfig.CSIController, oconfig.DriverPrefix),
291+
Name: constants.GetResourceName(constants.CSIController),
295292
Namespace: instance.Namespace,
296293
}, controllerDeployment)
297294
return controllerDeployment, err
@@ -318,8 +315,8 @@ func (r *IBMObjectCSIReconciler) reconcileServiceAccount(instance *crutils.IBMOb
318315
controller := instance.GenerateControllerServiceAccount()
319316
node := instance.GenerateNodeServiceAccount()
320317

321-
controllerServiceAccountName := oconfig.GetNameForResource(oconfig.CSIControllerServiceAccount, oconfig.DriverPrefix)
322-
nodeServiceAccountName := oconfig.GetNameForResource(oconfig.CSINodeServiceAccount, oconfig.DriverPrefix)
318+
controllerServiceAccountName := constants.GetResourceName(constants.CSIControllerServiceAccount)
319+
nodeServiceAccountName := constants.GetResourceName(constants.CSINodeServiceAccount)
323320

324321
for _, sa := range []*corev1.ServiceAccount{
325322
controller,
@@ -373,7 +370,7 @@ func (r *IBMObjectCSIReconciler) reconcileServiceAccount(instance *crutils.IBMOb
373370
}
374371

375372
func (r *IBMObjectCSIReconciler) rolloutRestartNode(node *appsv1.DaemonSet) error {
376-
restartedAt := fmt.Sprintf("%s/restartedAt", oconfig.APIGroup)
373+
restartedAt := fmt.Sprintf("%s/restartedAt", constants.APIGroup)
377374
timestamp := time.Now().String()
378375
node.Spec.Template.ObjectMeta.Annotations[restartedAt] = timestamp
379376
return r.Update(context.TODO(), node)
@@ -472,11 +469,11 @@ func (r *IBMObjectCSIReconciler) getClusterRoleBindings(instance *crutils.IBMObj
472469
}
473470

474471
func (r *IBMObjectCSIReconciler) getStorageClasses(instance *crutils.IBMObjectCSI) []*storagev1.StorageClass {
475-
rcloneRetainSC := instance.GenerateRcloneSC(oconfig.RcloneRetainStorageClass, corev1.PersistentVolumeReclaimRetain)
476-
rcloneSC := instance.GenerateRcloneSC(oconfig.RcloneStorageClass, corev1.PersistentVolumeReclaimDelete)
472+
rcloneRetainSC := instance.GenerateRcloneSC(constants.RcloneRetainStorageClass, corev1.PersistentVolumeReclaimRetain)
473+
rcloneSC := instance.GenerateRcloneSC(constants.RcloneStorageClass, corev1.PersistentVolumeReclaimDelete)
477474

478-
s3fsRetainSC := instance.GenerateS3fsSC(oconfig.S3fsRetainStorageClass, corev1.PersistentVolumeReclaimRetain)
479-
s3fsSC := instance.GenerateS3fsSC(oconfig.S3fsStorageClass, corev1.PersistentVolumeReclaimDelete)
475+
s3fsRetainSC := instance.GenerateS3fsSC(constants.S3fsRetainStorageClass, corev1.PersistentVolumeReclaimRetain)
476+
s3fsSC := instance.GenerateS3fsSC(constants.S3fsStorageClass, corev1.PersistentVolumeReclaimDelete)
480477

481478
return []*storagev1.StorageClass{
482479
rcloneRetainSC,

0 commit comments

Comments
 (0)