Skip to content

Commit

Permalink
Enable importas golang linter (#2239)
Browse files Browse the repository at this point in the history
* Enable gocyclo linter

* Enable gocritic linter

* Fix typo for linters-settings, fix gocyclo lint failures

* Add lll linter

* Add nakedret linter

* Enable dupl linter

* Enable exportloopref linter

* Enable importas linter

* Update new lint misses, add TODO for lint disables

* Merge master, resolve conflicts

* Apply linter to new changes

* Fix merge issues

* Add missing newlint

* Add explanation for ignoring dupl linter

* Address review comments

* Address review comments - move args

* Temporarily disable depguard linter, lint fix
  • Loading branch information
ankitjain235 committed Dec 21, 2023
1 parent a3656cd commit e55fc37
Show file tree
Hide file tree
Showing 98 changed files with 926 additions and 923 deletions.
12 changes: 12 additions & 0 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ linters:
- dogsled
- dupl
- exportloopref
- importas

run:
timeout: 10m # golangci-lint run's timeout.
Expand Down Expand Up @@ -48,3 +49,14 @@ linters-settings:
line-length: 240
nakedret:
max-func-lines: 2
importas:
no-unaliased: true
alias:
- pkg: k8s.io/apimachinery/pkg/api/errors
alias: apierrors
- pkg: k8s.io/api/core/v1
alias: corev1
- pkg: k8s.io/apimachinery/pkg/apis/meta/v1
alias: metav1
- pkg: github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1
alias: crv1alpha1
7 changes: 3 additions & 4 deletions cmd/reposervercontroller/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,7 @@ import (
"sigs.k8s.io/controller-runtime/pkg/log/zap"
"sigs.k8s.io/controller-runtime/pkg/webhook/admission"

"github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1"
crkanisteriov1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1"
crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1"
"github.com/kanisterio/kanister/pkg/controllers/repositoryserver"
"github.com/kanisterio/kanister/pkg/log"
"github.com/kanisterio/kanister/pkg/resource"
Expand All @@ -57,7 +56,7 @@ const (
func init() {
utilruntime.Must(clientgoscheme.AddToScheme(scheme))

utilruntime.Must(crkanisteriov1alpha1.AddToScheme(scheme))
utilruntime.Must(crv1alpha1.AddToScheme(scheme))
//+kubebuilder:scaffold:scheme
}

Expand Down Expand Up @@ -140,7 +139,7 @@ func main() {
if k8sserverVersion.Major == "1" && minorVersion < minorK8sVersion {
if validatingwebhook.IsCACertMounted() {
hookServer := mgr.GetWebhookServer()
webhook := admission.WithCustomValidator(&v1alpha1.RepositoryServer{}, &validatingwebhook.RepositoryServerValidator{})
webhook := admission.WithCustomValidator(&crv1alpha1.RepositoryServer{}, &validatingwebhook.RepositoryServerValidator{})
hookServer.Register(whHandlePath, webhook)
hookServer.CertDir = validatingwebhook.WHCertsDir
hookServer.Port = webhookServerPort
Expand Down
32 changes: 16 additions & 16 deletions pkg/app/csi-snapshot.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import (

"github.com/pkg/errors"
appsv1 "k8s.io/api/apps/v1"
v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/resource"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
Expand All @@ -36,7 +36,7 @@ type TimeLogCSI struct {
namespace string
name string
deployment appsv1.Deployment
pvc v1.PersistentVolumeClaim
pvc corev1.PersistentVolumeClaim
}

// NewTimeLogCSI instantiates the TimeLogCSI integration test app
Expand Down Expand Up @@ -184,30 +184,30 @@ func (tlc TimeLogCSI) getAppDeploymentObj() *appsv1.Deployment {
Selector: &metav1.LabelSelector{
MatchLabels: map[string]string{"app": tlc.name},
},
Template: v1.PodTemplateSpec{
Template: corev1.PodTemplateSpec{
ObjectMeta: metav1.ObjectMeta{
Labels: map[string]string{"app": tlc.name},
},
Spec: v1.PodSpec{
Containers: []v1.Container{
Spec: corev1.PodSpec{
Containers: []corev1.Container{
{
Name: "test-container",
Image: "ghcr.io/kanisterio/kanister-tools:0.103.0",
Command: []string{"sh", "-c"},
Args: []string{"while true; do for x in $(seq 1200); do date >> /var/log/time.log; sleep 1; done; truncate /var/log/time.log --size 0; done"},
VolumeMounts: []v1.VolumeMount{
VolumeMounts: []corev1.VolumeMount{
{
Name: "data",
MountPath: "/var/log",
},
},
},
},
Volumes: []v1.Volume{
Volumes: []corev1.Volume{
{
Name: "data",
VolumeSource: v1.VolumeSource{
PersistentVolumeClaim: &v1.PersistentVolumeClaimVolumeSource{
VolumeSource: corev1.VolumeSource{
PersistentVolumeClaim: &corev1.PersistentVolumeClaimVolumeSource{
ClaimName: "time-log-pvc",
},
},
Expand All @@ -220,19 +220,19 @@ func (tlc TimeLogCSI) getAppDeploymentObj() *appsv1.Deployment {
return deployment
}

func (tlc TimeLogCSI) getAppPersistentVolumeClaimObj() *v1.PersistentVolumeClaim {
func (tlc TimeLogCSI) getAppPersistentVolumeClaimObj() *corev1.PersistentVolumeClaim {
storageClassName := "csi-hostpath-sc"
pvc := &v1.PersistentVolumeClaim{
pvc := &corev1.PersistentVolumeClaim{
ObjectMeta: metav1.ObjectMeta{
Name: "time-log-pvc",
Labels: map[string]string{"app": tlc.name},
},
Spec: v1.PersistentVolumeClaimSpec{
Spec: corev1.PersistentVolumeClaimSpec{
StorageClassName: &storageClassName,
AccessModes: []v1.PersistentVolumeAccessMode{v1.ReadWriteOnce},
Resources: v1.ResourceRequirements{
Requests: v1.ResourceList{
v1.ResourceStorage: *resource.NewQuantity(1073741824, resource.BinarySI),
AccessModes: []corev1.PersistentVolumeAccessMode{corev1.ReadWriteOnce},
Resources: corev1.ResourceRequirements{
Requests: corev1.ResourceList{
corev1.ResourceStorage: *resource.NewQuantity(1073741824, resource.BinarySI),
},
},
},
Expand Down
20 changes: 10 additions & 10 deletions pkg/app/mssql.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import (

"github.com/pkg/errors"
appsv1 "k8s.io/api/apps/v1"
v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/yaml"
"k8s.io/client-go/kubernetes"
Expand All @@ -32,9 +32,9 @@ type MssqlDB struct {
namespace string
name string
deployment *appsv1.Deployment
service *v1.Service
pvc *v1.PersistentVolumeClaim
secret *v1.Secret
service *corev1.Service
pvc *corev1.PersistentVolumeClaim
secret *corev1.Secret
}

func NewMssqlDB(name string) App {
Expand Down Expand Up @@ -298,7 +298,7 @@ spec:
return deployment, err
}

func (m *MssqlDB) getPVCObj() (*v1.PersistentVolumeClaim, error) {
func (m *MssqlDB) getPVCObj() (*corev1.PersistentVolumeClaim, error) {
pvcmaniFest :=
`kind: PersistentVolumeClaim
apiVersion: v1
Expand All @@ -311,12 +311,12 @@ spec:
requests:
storage: 4Gi`

var pvc *v1.PersistentVolumeClaim
var pvc *corev1.PersistentVolumeClaim
err := yaml.Unmarshal([]byte(pvcmaniFest), &pvc)
return pvc, err
}

func (m *MssqlDB) getServiceObj() (*v1.Service, error) {
func (m *MssqlDB) getServiceObj() (*corev1.Service, error) {
serviceManifest :=
`apiVersion: v1
kind: Service
Expand All @@ -331,13 +331,13 @@ spec:
targetPort: 1433
type: ClusterIP`

var service *v1.Service
var service *corev1.Service
err := yaml.Unmarshal([]byte(serviceManifest), &service)
return service, err
}

func (m MssqlDB) getSecretObj() *v1.Secret {
return &v1.Secret{
func (m MssqlDB) getSecretObj() *corev1.Secret {
return &corev1.Secret{
ObjectMeta: metav1.ObjectMeta{
Name: m.name,
},
Expand Down
4 changes: 2 additions & 2 deletions pkg/app/postgresql-deploymentconfig.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ import (

osversioned "github.com/openshift/client-go/apps/clientset/versioned"
"github.com/pkg/errors"
v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"

Expand Down Expand Up @@ -99,7 +99,7 @@ func (pgres *PostgreSQLDepConfig) Install(ctx context.Context, namespace string)
}

func (pgres *PostgreSQLDepConfig) createPostgreSQLSecret(ctx context.Context) error {
postgreSQLSecret := &v1.Secret{
postgreSQLSecret := &corev1.Secret{
TypeMeta: metav1.TypeMeta{
Kind: "Secret",
APIVersion: "v1",
Expand Down
4 changes: 2 additions & 2 deletions pkg/app/rds_aurora_mysql.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import (
"github.com/aws/aws-sdk-go/aws/awserr"
awsrds "github.com/aws/aws-sdk-go/service/rds"
"github.com/pkg/errors"
v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
Expand Down Expand Up @@ -205,7 +205,7 @@ func (a *RDSAuroraMySQLDB) Install(ctx context.Context, namespace string) error
a.host = *dbCluster.DBClusters[0].Endpoint

// Configmap that is going to store the details for blueprint
cm := &v1.ConfigMap{
cm := &corev1.ConfigMap{
TypeMeta: metav1.TypeMeta{
Kind: "ConfigMap",
APIVersion: "v1",
Expand Down
6 changes: 3 additions & 3 deletions pkg/app/rds_postgres.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import (
"github.com/aws/aws-sdk-go/aws/awserr"
awsrds "github.com/aws/aws-sdk-go/service/rds"
"github.com/pkg/errors"
v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
Expand Down Expand Up @@ -200,7 +200,7 @@ func (pdb *RDSPostgresDB) Install(ctx context.Context, ns string) error {
pdb.host = *dbInstance.DBInstances[0].Endpoint.Address

// Create configmap
dbconfig := &v1.ConfigMap{
dbconfig := &corev1.ConfigMap{
TypeMeta: metav1.TypeMeta{
APIVersion: "v1",
Kind: "ConfigMap",
Expand All @@ -222,7 +222,7 @@ func (pdb *RDSPostgresDB) Install(ctx context.Context, ns string) error {
}

// Create secret
dbsecret := &v1.Secret{
dbsecret := &corev1.Secret{
TypeMeta: metav1.TypeMeta{
APIVersion: "v1",
Kind: "Secret",
Expand Down
8 changes: 4 additions & 4 deletions pkg/app/utils.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ import (
"github.com/kanisterio/kanister/pkg/aws/rds"
"github.com/pkg/errors"
appsv1 "k8s.io/api/apps/v1"
v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/rand"
)
Expand Down Expand Up @@ -83,14 +83,14 @@ func bastionDebugWorkloadSpec(ctx context.Context, name string, image string, na
},
Spec: appsv1.DeploymentSpec{
Selector: &metav1.LabelSelector{MatchLabels: map[string]string{"app": name}},
Template: v1.PodTemplateSpec{
Template: corev1.PodTemplateSpec{
ObjectMeta: metav1.ObjectMeta{
Labels: map[string]string{
"app": name,
},
},
Spec: v1.PodSpec{
Containers: []v1.Container{
Spec: corev1.PodSpec{
Containers: []corev1.Container{
{
Name: name,
Image: image,
Expand Down
6 changes: 3 additions & 3 deletions pkg/blockstorage/zone/zone.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import (
"strings"

"github.com/pkg/errors"
v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"

Expand Down Expand Up @@ -194,14 +194,14 @@ func NodeZonesAndRegion(ctx context.Context, cli kubernetes.Interface) (map[stri
// 2) Needs to be ready.
// Derived from "k8s.io/kubernetes/test/e2e/framework/node"
// TODO: check for taints as well
func GetReadySchedulableNodes(cli kubernetes.Interface) ([]v1.Node, error) {
func GetReadySchedulableNodes(cli kubernetes.Interface) ([]corev1.Node, error) {
ns, err := cli.CoreV1().Nodes().List(context.TODO(), metav1.ListOptions{})
if err != nil {
return nil, err
}
total := len(ns.Items)
var unschedulable, notReady int
var l []v1.Node
var l []corev1.Node
for _, node := range ns.Items {
switch {
case !kube.IsNodeReady(&node):
Expand Down
Loading

0 comments on commit e55fc37

Please sign in to comment.