From a82c4b22a223a6dd3331c548ee18763eb4ebbce3 Mon Sep 17 00:00:00 2001 From: Abu Sayed <82162518+sayedppqq@users.noreply.github.com> Date: Wed, 17 Jul 2024 19:25:01 +0600 Subject: [PATCH] Make changes to run cli from the appscode/grafana-dashboards CI (#766) Signed-off-by: sayedppqq Signed-off-by: Arnob kumar saha --- pkg/cmds/monitor.go | 25 +++++++- pkg/common/mysql.go | 6 +- pkg/common/postgres.go | 6 +- pkg/connect/elasticsearch.go | 8 +-- pkg/connect/mariadb.go | 8 +-- pkg/connect/memcached.go | 6 +- pkg/connect/mongodb.go | 8 +-- pkg/connect/mysql.go | 8 +-- pkg/connect/postgres.go | 8 +-- pkg/connect/redis.go | 6 +- pkg/credentials/show_cred.go | 14 ++--- pkg/data/elasticsearch.go | 6 +- pkg/data/mariadb.go | 12 ++-- pkg/data/mongodb.go | 8 +-- pkg/data/mysql.go | 12 ++-- pkg/data/postgres.go | 8 +-- pkg/data/redis.go | 12 ++-- pkg/debug/elasticsearch.go | 4 +- pkg/debug/mariadb.go | 4 +- pkg/debug/mongodb.go | 4 +- pkg/debug/mysql.go | 4 +- pkg/debug/postgres.go | 4 +- pkg/debug/redis.go | 4 +- pkg/describer/describer.go | 14 ++--- pkg/describer/elasticsearch.go | 6 +- pkg/describer/helper.go | 14 ++--- pkg/describer/memcached.go | 4 +- pkg/describer/mongodb.go | 6 +- pkg/describer/mysql.go | 6 +- pkg/describer/postgres.go | 6 +- pkg/describer/redis.go | 4 +- pkg/monitor/alerts/db.go | 4 +- pkg/monitor/connection/db.go | 1 + pkg/monitor/connection/helper.go | 20 +++--- pkg/monitor/dashboard/db.go | 49 ++++++++++----- pkg/monitor/dashboard/helper.go | 15 +++-- pkg/monitor/util.go | 104 ++++++++++++++++++++----------- pkg/pauser/elasticsearch.go | 4 +- pkg/pauser/mariadb.go | 4 +- pkg/pauser/mongodb.go | 4 +- pkg/pauser/mysql.go | 4 +- pkg/pauser/pauser.go | 14 ++--- pkg/pauser/postgres.go | 4 +- pkg/pauser/redis.go | 4 +- pkg/remote_replica/mysql.go | 8 +-- pkg/remote_replica/postgres.go | 8 +-- pkg/restarter/elasticsearch.go | 4 +- pkg/restarter/mariadb.go | 4 +- pkg/restarter/mongodb.go | 4 +- pkg/restarter/mysql.go | 4 +- pkg/restarter/postgres.go | 4 +- pkg/restarter/redis.go | 4 +- pkg/restarter/restarter.go | 14 ++--- pkg/resumer/elasticsearch.go | 4 +- pkg/resumer/mariadb.go | 4 +- pkg/resumer/mongodb.go | 4 +- pkg/resumer/mysql.go | 4 +- pkg/resumer/postgres.go | 4 +- pkg/resumer/redis.go | 4 +- pkg/resumer/resumer.go | 14 ++--- 60 files changed, 322 insertions(+), 246 deletions(-) diff --git a/pkg/cmds/monitor.go b/pkg/cmds/monitor.go index 3af75a140..eee614737 100644 --- a/pkg/cmds/monitor.go +++ b/pkg/cmds/monitor.go @@ -89,15 +89,22 @@ var alertExample = templates.Examples(` --prom-svc-name=prometheus-kube-prometheus-prometheus --prom-svc-namespace=monitoring --prom-svc-port=9090 Valid resource types include: + * connectcluster + * druid * elasticsearch * kafka * mariadb * mongodb * mysql * perconaxtradb + * pgpool * postgres * proxysql + * rabbitmq * redis + * singlestore + * solr + * zookeeper `) func AlertCMD(f cmdutil.Factory) *cobra.Command { @@ -131,15 +138,22 @@ var dashboardExample = templates.Examples(` --prom-svc-name=prometheus-kube-prometheus-prometheus --prom-svc-namespace=monitoring --prom-svc-port=9090 Valid dashboards include: + * connectcluster + * druid * elasticsearch * kafka * mariadb * mongodb * mysql * perconaxtradb + * pgpool * postgres * proxysql + * rabbitmq * redis + * singlestore + * solr + * zookeeper If --file is given, that is the local file. absolute or relative path both accepted. If --url is given, that is the remote file. You have to specify the full raw url. @@ -152,6 +166,7 @@ func DashboardCMD(f cmdutil.Factory) *cobra.Command { branch string file string url string + isDB bool ) cmd := &cobra.Command{ Use: "dashboard", @@ -159,7 +174,7 @@ func DashboardCMD(f cmdutil.Factory) *cobra.Command { Long: dashboardLong, Run: func(cmd *cobra.Command, args []string) { - dashboard.Run(f, args, branch, file, url, prom) + dashboard.Run(f, args, branch, file, url, prom, isDB) }, Example: dashboardExample, DisableFlagsInUseLine: true, @@ -169,6 +184,7 @@ func DashboardCMD(f cmdutil.Factory) *cobra.Command { cmd.Flags().StringVarP(&file, "file", "f", "", "absolute or relative path of the file containing dashboard") cmd.Flags().StringVarP(&url, "url", "u", "", "url of the raw file containing dashboard. "+ "For example: https://raw.githubusercontent.com/appscode/grafana-dashboards/master/mongodb/mongodb-summary-dashboard.json") + cmd.Flags().BoolVarP(&isDB, "isdb", "d", true, "for non db object's. just provide the url") return cmd } @@ -186,15 +202,22 @@ var connectionExample = templates.Examples(` --prom-svc-name=prometheus-kube-prometheus-prometheus --prom-svc-namespace=monitoring --prom-svc-port=9090 Valid resource types include: + * connectcluster + * druid * elasticsearch * kafka * mariadb * mongodb * mysql * perconaxtradb + * pgpool * postgres * proxysql + * rabbitmq * redis + * singlestore + * solr + * zookeeper `) func ConnectionCMD(f cmdutil.Factory) *cobra.Command { diff --git a/pkg/common/mysql.go b/pkg/common/mysql.go index 4f432eb1d..8f0c3a954 100644 --- a/pkg/common/mysql.go +++ b/pkg/common/mysql.go @@ -21,7 +21,7 @@ import ( "context" "fmt" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" cm "github.com/cert-manager/cert-manager/pkg/client/clientset/versioned" @@ -34,7 +34,7 @@ import ( ) type MySQLOpts struct { - DB *api.MySQL + DB *dbapi.MySQL DBImage string Config *rest.Config Client *kubernetes.Clientset @@ -75,7 +75,7 @@ func NewMySQLOpts(f cmdutil.Factory, dbName, namespace string) (*MySQLOpts, erro return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("MySQL %s/%s is not ready", namespace, dbName) } diff --git a/pkg/common/postgres.go b/pkg/common/postgres.go index 5ba259d12..3b8c0d8f8 100644 --- a/pkg/common/postgres.go +++ b/pkg/common/postgres.go @@ -21,7 +21,7 @@ import ( "context" "fmt" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" cm "github.com/cert-manager/cert-manager/pkg/client/clientset/versioned" @@ -34,7 +34,7 @@ import ( ) type PostgresOpts struct { - DB *api.Postgres + DB *dbapi.Postgres DBImage string Config *rest.Config Client *kubernetes.Clientset @@ -77,7 +77,7 @@ func NewPostgresOpts(f cmdutil.Factory, dbName, namespace string) (*PostgresOpts return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("postgres %s/%s is not ready", namespace, dbName) } diff --git a/pkg/connect/elasticsearch.go b/pkg/connect/elasticsearch.go index 952d0116c..048823144 100644 --- a/pkg/connect/elasticsearch.go +++ b/pkg/connect/elasticsearch.go @@ -23,7 +23,7 @@ import ( "os" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "kubedb.dev/cli/pkg/lib" @@ -103,7 +103,7 @@ Example curl commands: } type elasticsearchOpts struct { - db *api.Elasticsearch + db *dbapi.Elasticsearch config *rest.Config client *kubernetes.Clientset dbClient *cs.Clientset @@ -133,7 +133,7 @@ func newElasticsearchOpts(f cmdutil.Factory, dbName, namespace string) (*elastic return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("elasticsearch %s/%s is not ready", namespace, dbName) } @@ -165,7 +165,7 @@ func (opts *elasticsearchOpts) getDockerShellCommand(localPort int, dockerFlags, dockerCommand = append(dockerCommand, dockerFlags...) if db.Spec.EnableSSL { - secretName := db.CertificateName(api.ElasticsearchAdminCert) + secretName := db.CertificateName(dbapi.ElasticsearchAdminCert) certSecret, err := opts.client.CoreV1().Secrets(db.Namespace).Get(context.TODO(), secretName, metav1.GetOptions{}) if err != nil { return nil, err diff --git a/pkg/connect/mariadb.go b/pkg/connect/mariadb.go index 311244418..8ea8c4fe9 100644 --- a/pkg/connect/mariadb.go +++ b/pkg/connect/mariadb.go @@ -24,7 +24,7 @@ import ( "path/filepath" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "kubedb.dev/cli/pkg/lib" @@ -154,7 +154,7 @@ Examples: } type mariadbOpts struct { - db *api.MariaDB + db *dbapi.MariaDB dbImage string config *rest.Config client *kubernetes.Clientset @@ -185,7 +185,7 @@ func newmariadbOpts(f cmdutil.Factory, dbName, namespace string) (*mariadbOpts, return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("mariadb %s/%s is not ready", namespace, dbName) } @@ -228,7 +228,7 @@ func (opts *mariadbOpts) getDockerShellCommand(localPort int, dockerFlags, mysql } if db.Spec.TLS != nil { - secretName := db.CertificateName(api.MariaDBClientCert) + secretName := db.CertificateName(dbapi.MariaDBClientCert) certSecret, err := opts.client.CoreV1().Secrets(db.Namespace).Get(context.TODO(), secretName, metav1.GetOptions{}) if err != nil { return nil, err diff --git a/pkg/connect/memcached.go b/pkg/connect/memcached.go index 0bdd26761..374aa415a 100644 --- a/pkg/connect/memcached.go +++ b/pkg/connect/memcached.go @@ -24,7 +24,7 @@ import ( "strconv" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "kubedb.dev/cli/pkg/lib" @@ -81,7 +81,7 @@ func MemcachedConnectCMD(f cmdutil.Factory) *cobra.Command { } type memcachedOpts struct { - db *api.Memcached + db *dbapi.Memcached config *rest.Config client *kubernetes.Clientset dbClient *cs.Clientset @@ -108,7 +108,7 @@ func newMemcachedOpts(f cmdutil.Factory, dbName, namespace string) (*memcachedOp return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("memcached %s/%s is not ready", namespace, dbName) } diff --git a/pkg/connect/mongodb.go b/pkg/connect/mongodb.go index dab086a5a..6523d1a39 100644 --- a/pkg/connect/mongodb.go +++ b/pkg/connect/mongodb.go @@ -24,7 +24,7 @@ import ( "path/filepath" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "kubedb.dev/cli/pkg/lib" @@ -159,7 +159,7 @@ Examples: } type mongodbOpts struct { - db *api.MongoDB + db *dbapi.MongoDB dbImage string config *rest.Config client *kubernetes.Clientset @@ -190,7 +190,7 @@ func newMongodbOpts(f cmdutil.Factory, dbName, namespace string) (*mongodbOpts, return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("mongodb %s/%s is not ready", namespace, dbName) } @@ -233,7 +233,7 @@ func (opts *mongodbOpts) getDockerShellCommand(localPort int, dockerFlags, mongo } if db.Spec.TLS != nil { - secretName := db.GetCertSecretName(api.MongoDBClientCert, "") + secretName := db.GetCertSecretName(dbapi.MongoDBClientCert, "") certSecret, err := opts.client.CoreV1().Secrets(db.Namespace).Get(context.TODO(), secretName, metav1.GetOptions{}) if err != nil { return nil, err diff --git a/pkg/connect/mysql.go b/pkg/connect/mysql.go index 9066b8d94..4294e0e4b 100644 --- a/pkg/connect/mysql.go +++ b/pkg/connect/mysql.go @@ -24,7 +24,7 @@ import ( "path/filepath" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "kubedb.dev/cli/pkg/lib" @@ -156,7 +156,7 @@ Examples: } type mysqlOpts struct { - db *api.MySQL + db *dbapi.MySQL dbImage string config *rest.Config client *kubernetes.Clientset @@ -187,7 +187,7 @@ func newmysqlOpts(f cmdutil.Factory, dbName, namespace string) (*mysqlOpts, erro return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("mysql %s/%s is not ready", namespace, dbName) } @@ -230,7 +230,7 @@ func (opts *mysqlOpts) getDockerShellCommand(localPort int, dockerFlags, mysqlEx } if db.Spec.TLS != nil { - secretName := db.CertificateName(api.MySQLClientCert) + secretName := db.CertificateName(dbapi.MySQLClientCert) certSecret, err := opts.client.CoreV1().Secrets(db.Namespace).Get(context.TODO(), secretName, metav1.GetOptions{}) if err != nil { return nil, err diff --git a/pkg/connect/postgres.go b/pkg/connect/postgres.go index 9db39b9de..401f9a4b4 100644 --- a/pkg/connect/postgres.go +++ b/pkg/connect/postgres.go @@ -25,7 +25,7 @@ import ( "path/filepath" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "kubedb.dev/cli/pkg/lib" @@ -164,7 +164,7 @@ Examples: } type postgresOpts struct { - db *api.Postgres + db *dbapi.Postgres dbImage string config *rest.Config client *kubernetes.Clientset @@ -199,7 +199,7 @@ func newPostgresOpts(f cmdutil.Factory, dbName, namespace, postgresDBName string return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("postgres %s/%s is not ready", namespace, dbName) } @@ -245,7 +245,7 @@ func (opts *postgresOpts) getDockerShellCommand(localPort int, dockerFlags, post } if db.Spec.TLS != nil { - secretName := db.CertificateName(api.PostgresClientCert) + secretName := db.CertificateName(dbapi.PostgresClientCert) certSecret, err := opts.client.CoreV1().Secrets(db.Namespace).Get(context.TODO(), secretName, metav1.GetOptions{}) if err != nil { return nil, err diff --git a/pkg/connect/redis.go b/pkg/connect/redis.go index 8cbaefe5f..763abbd04 100644 --- a/pkg/connect/redis.go +++ b/pkg/connect/redis.go @@ -26,7 +26,7 @@ import ( "strings" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "kubedb.dev/cli/pkg/lib" @@ -159,7 +159,7 @@ Examples: } type redisOpts struct { - db *api.Redis + db *dbapi.Redis config *rest.Config client *kubernetes.Clientset dbClient *cs.Clientset @@ -191,7 +191,7 @@ func newRedisOpts(f cmdutil.Factory, dbName, namespace string, keys, args []stri return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("redis %s/%s is not ready", namespace, dbName) } diff --git a/pkg/credentials/show_cred.go b/pkg/credentials/show_cred.go index 41b8799d3..685f5a858 100644 --- a/pkg/credentials/show_cred.go +++ b/pkg/credentials/show_cred.go @@ -20,7 +20,7 @@ import ( "errors" "fmt" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "k8s.io/apimachinery/pkg/api/meta" "k8s.io/cli-runtime/pkg/genericclioptions" @@ -40,17 +40,17 @@ func NewShowCredentials(restClientGetter genericclioptions.RESTClientGetter, map } switch mapping.GroupVersionKind.Kind { - case api.ResourceKindElasticsearch: + case dbapi.ResourceKindElasticsearch: return NewElasticsearchShowCred(clientConfig) - case api.ResourceKindMongoDB: + case dbapi.ResourceKindMongoDB: return NewMongoDBShowCred(clientConfig) - case api.ResourceKindMySQL: + case dbapi.ResourceKindMySQL: return NewMySQLShowCred(clientConfig) - case api.ResourceKindRedis: + case dbapi.ResourceKindRedis: return NewRedisShowCred(clientConfig) - case api.ResourceKindMariaDB: + case dbapi.ResourceKindMariaDB: return NewMariaDBShowCred(clientConfig) - case api.ResourceKindPostgres: + case dbapi.ResourceKindPostgres: return NewPostgresShowCred(clientConfig) default: return nil, fmt.Errorf("unsupporterd kind %s", mapping.GroupVersionKind.Kind) diff --git a/pkg/data/elasticsearch.go b/pkg/data/elasticsearch.go index c87e784c1..72a2b235a 100644 --- a/pkg/data/elasticsearch.go +++ b/pkg/data/elasticsearch.go @@ -22,7 +22,7 @@ import ( "log" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "kubedb.dev/apimachinery/pkg/factory" "kubedb.dev/cli/pkg/lib" @@ -43,7 +43,7 @@ const ( ) type elasticsearchOpts struct { - db *api.Elasticsearch + db *dbapi.Elasticsearch client *kubernetes.Clientset esClient *es_clientgo.Client username string @@ -228,7 +228,7 @@ func newElasticsearchOpts(config *rest.Config, dbName, namespace string, tunnel return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("elasticsearch %s/%s is not ready", namespace, dbName) } diff --git a/pkg/data/mariadb.go b/pkg/data/mariadb.go index 8b7b3eb82..9d6f6d186 100644 --- a/pkg/data/mariadb.go +++ b/pkg/data/mariadb.go @@ -26,7 +26,7 @@ import ( "strconv" "strings" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" _ "github.com/go-sql-driver/mysql" @@ -258,7 +258,7 @@ func (opts *mariadbOpts) dropDataExecCmd() error { } type mariadbOpts struct { - db *api.MariaDB + db *dbapi.MariaDB dbImage string config *rest.Config client *kubernetes.Clientset @@ -288,7 +288,7 @@ func newMariaDBOpts(f cmdutil.Factory, dbName, namespace string) (*mariadbOpts, return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("mariadb %s/%s is not ready", namespace, dbName) } @@ -323,15 +323,15 @@ func (opts *mariadbOpts) getShellCommand(command string) (string, error) { containerName := "mariadb" if db.Spec.TLS != nil { - cmd = fmt.Sprintf("kubectl exec -n %s svc/%s -c %s -- mariadb -u%s -p'%s' --host=%s --port=%s --ssl-ca='%v' --ssl-cert='%v' --ssl-key='%v' %s -e \"%s\"", db.Namespace, db.OffshootName(), containerName, user, password, "127.0.0.1", "3306", mdCaFile, mdCertFile, mdKeyFile, api.ResourceSingularMySQL, command) + cmd = fmt.Sprintf("kubectl exec -n %s svc/%s -c %s -- mariadb -u%s -p'%s' --host=%s --port=%s --ssl-ca='%v' --ssl-cert='%v' --ssl-key='%v' %s -e \"%s\"", db.Namespace, db.OffshootName(), containerName, user, password, "127.0.0.1", "3306", mdCaFile, mdCertFile, mdKeyFile, dbapi.ResourceSingularMySQL, command) } else { - cmd = fmt.Sprintf("kubectl exec -n %s svc/%s -c %s -- mariadb -u%s -p'%s' %s -e \"%s\"", db.Namespace, db.OffshootName(), containerName, user, password, api.ResourceSingularMySQL, command) + cmd = fmt.Sprintf("kubectl exec -n %s svc/%s -c %s -- mariadb -u%s -p'%s' %s -e \"%s\"", db.Namespace, db.OffshootName(), containerName, user, password, dbapi.ResourceSingularMySQL, command) } return cmd, err } -func (opts *mariadbOpts) GetMariaDBAuthCredentials(db *api.MariaDB) (string, string, error) { +func (opts *mariadbOpts) GetMariaDBAuthCredentials(db *dbapi.MariaDB) (string, string, error) { if db.Spec.AuthSecret == nil { return "", "", errors.New("no database secret") } diff --git a/pkg/data/mongodb.go b/pkg/data/mongodb.go index 06a5c3e7c..5ad1f2473 100644 --- a/pkg/data/mongodb.go +++ b/pkg/data/mongodb.go @@ -27,7 +27,7 @@ import ( "strconv" "strings" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "github.com/Masterminds/semver/v3" @@ -187,7 +187,7 @@ func DropMongoDBDataCMD(f cmdutil.Factory) *cobra.Command { } type mongoDBOpts struct { - db *api.MongoDB + db *dbapi.MongoDB client *kubernetes.Clientset dbClient *cs.Clientset @@ -218,7 +218,7 @@ func newMongoDBOpts(f cmdutil.Factory, dbName, namespace string) (*mongoDBOpts, return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("mongodb %s/%s is not ready", namespace, dbName) } @@ -384,7 +384,7 @@ func (opts *mongoDBOpts) handleTLS() ([]interface{}, error) { return strings.TrimSpace(user), nil } - secretName := db.GetCertSecretName(api.MongoDBClientCert, "") + secretName := db.GetCertSecretName(dbapi.MongoDBClientCert, "") certSecret, err := opts.client.CoreV1().Secrets(db.Namespace).Get(context.TODO(), secretName, metav1.GetOptions{}) if err != nil { return nil, err diff --git a/pkg/data/mysql.go b/pkg/data/mysql.go index b7f56b33f..26b952f29 100644 --- a/pkg/data/mysql.go +++ b/pkg/data/mysql.go @@ -26,7 +26,7 @@ import ( "strconv" "strings" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" _ "github.com/go-sql-driver/mysql" @@ -258,7 +258,7 @@ func (opts *mysqlOpts) dropDataExecCmd() error { } type mysqlOpts struct { - db *api.MySQL + db *dbapi.MySQL dbImage string config *rest.Config client *kubernetes.Clientset @@ -288,7 +288,7 @@ func newMySQLOpts(f cmdutil.Factory, dbName, namespace string) (*mysqlOpts, erro return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("mysql %s/%s is not ready", namespace, dbName) } @@ -323,15 +323,15 @@ func (opts *mysqlOpts) getShellCommand(command string) (string, error) { containerName := "mysql" if db.Spec.TLS != nil { - cmd = fmt.Sprintf("kubectl exec -n %s svc/%s -c %s -- mysql -u%s -p'%s' --host=%s --port=%s --ssl-ca='%v' --ssl-cert='%v' --ssl-key='%v' %s -e \"%s\"", db.Namespace, db.OffshootName(), containerName, user, password, "127.0.0.1", "3306", myCaFile, myCertFile, myKeyFile, api.ResourceSingularMySQL, command) + cmd = fmt.Sprintf("kubectl exec -n %s svc/%s -c %s -- mysql -u%s -p'%s' --host=%s --port=%s --ssl-ca='%v' --ssl-cert='%v' --ssl-key='%v' %s -e \"%s\"", db.Namespace, db.OffshootName(), containerName, user, password, "127.0.0.1", "3306", myCaFile, myCertFile, myKeyFile, dbapi.ResourceSingularMySQL, command) } else { - cmd = fmt.Sprintf("kubectl exec -n %s svc/%s -c %s -- mysql -u%s -p'%s' %s -e \"%s\"", db.Namespace, db.OffshootName(), containerName, user, password, api.ResourceSingularMySQL, command) + cmd = fmt.Sprintf("kubectl exec -n %s svc/%s -c %s -- mysql -u%s -p'%s' %s -e \"%s\"", db.Namespace, db.OffshootName(), containerName, user, password, dbapi.ResourceSingularMySQL, command) } return cmd, err } -func (opts *mysqlOpts) GetMySQLAuthCredentials(db *api.MySQL) (string, string, error) { +func (opts *mysqlOpts) GetMySQLAuthCredentials(db *dbapi.MySQL) (string, string, error) { if db.Spec.AuthSecret == nil { return "", "", errors.New("no database secret") } diff --git a/pkg/data/postgres.go b/pkg/data/postgres.go index 47c75855f..4a66c86bc 100644 --- a/pkg/data/postgres.go +++ b/pkg/data/postgres.go @@ -25,7 +25,7 @@ import ( "strconv" "strings" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "github.com/spf13/cobra" @@ -46,7 +46,7 @@ const ( ) type postgresOpts struct { - db *api.Postgres + db *dbapi.Postgres config *rest.Config client *kubernetes.Clientset dbClient *cs.Clientset @@ -76,7 +76,7 @@ func newPostgresOpts(f cmdutil.Factory, dbName, namespace string) (*postgresOpts return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("postgres %s/%s is not ready", namespace, dbName) } @@ -296,7 +296,7 @@ func (opts *postgresOpts) getShellCommand(command string) string { cmd := "" if db.Spec.TLS != nil { - if db.Spec.ClientAuthMode == api.ClientAuthModeCert { + if db.Spec.ClientAuthMode == dbapi.ClientAuthModeCert { cmd = fmt.Sprintf("kubectl exec -n %s %s -c postgres -- env PGSSLMODE='%s' PGSSLROOTCERT='%s' PGSSLCERT='%s' PGSSLKEY='%s' PGPASSWORD='%s' psql -d postgres -U %s -c '%s'", db.Namespace, svcName, db.Spec.SSLMode, pgCaFile, pgCertFile, pgKeyFile, opts.pass, opts.username, command) } else { cmd = fmt.Sprintf("kubectl exec -n %s %s -c postgres -- env PGSSLMODE='%s' PGSSLROOTCERT='%s' PGPASSWORD='%s' psql -d postgres -U %s -c '%s'", db.Namespace, svcName, db.Spec.SSLMode, pgCaFile, opts.pass, opts.username, command) diff --git a/pkg/data/redis.go b/pkg/data/redis.go index 5e3a591a3..aea4e1145 100644 --- a/pkg/data/redis.go +++ b/pkg/data/redis.go @@ -26,7 +26,7 @@ import ( "strconv" "strings" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "kubedb.dev/cli/pkg/data/redisutil" _ "kubedb.dev/db-client-go/redis" @@ -40,7 +40,7 @@ import ( ) type redisOpts struct { - db *api.Redis + db *dbapi.Redis dbClient *cs.Clientset errWriter *bytes.Buffer @@ -128,7 +128,7 @@ func InsertRedisDataCMD(f cmdutil.Factory) *cobra.Command { } func (opts *redisOpts) insertDataInDatabase(rows int) error { - if opts.db.Spec.Mode == api.RedisModeCluster { + if opts.db.Spec.Mode == dbapi.RedisModeCluster { return opts.insertDataInRedisCluster(rows) } @@ -222,7 +222,7 @@ func VerifyRedisDataCMD(f cmdutil.Factory) *cobra.Command { } func (opts *redisOpts) verifyRedisData(rows int) error { - if opts.db.Spec.Mode == api.RedisModeCluster { + if opts.db.Spec.Mode == dbapi.RedisModeCluster { return opts.verifyDataInRedisCluster(rows) } redisCommand := []interface{}{ @@ -310,7 +310,7 @@ func DropRedisDataCMD(f cmdutil.Factory) *cobra.Command { } func (opts *redisOpts) dropRedisData() error { - if opts.db.Spec.Mode == api.RedisModeCluster { + if opts.db.Spec.Mode == dbapi.RedisModeCluster { return opts.dropRedisClusterData() } redisCommand := []interface{}{ @@ -365,7 +365,7 @@ func newRedisOpts(f cmdutil.Factory, dbName, namespace string) (*redisOpts, erro return nil, err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return nil, fmt.Errorf("redis %s/%s is not ready", namespace, dbName) } diff --git a/pkg/debug/elasticsearch.go b/pkg/debug/elasticsearch.go index f295c9038..2ce3bd6ea 100644 --- a/pkg/debug/elasticsearch.go +++ b/pkg/debug/elasticsearch.go @@ -23,7 +23,7 @@ import ( "os" "path" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "github.com/spf13/cobra" @@ -37,7 +37,7 @@ import ( ) type elasticsearchOpts struct { - db *api.Elasticsearch + db *dbapi.Elasticsearch dbClient *cs.Clientset podClient *kubernetes.Clientset diff --git a/pkg/debug/mariadb.go b/pkg/debug/mariadb.go index 6512208b7..a5840f0ab 100644 --- a/pkg/debug/mariadb.go +++ b/pkg/debug/mariadb.go @@ -23,7 +23,7 @@ import ( "os" "path" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "github.com/spf13/cobra" @@ -37,7 +37,7 @@ import ( ) type mariadbOpts struct { - db *api.MariaDB + db *dbapi.MariaDB dbClient *cs.Clientset podClient *kubernetes.Clientset diff --git a/pkg/debug/mongodb.go b/pkg/debug/mongodb.go index 280611c54..408f2189a 100644 --- a/pkg/debug/mongodb.go +++ b/pkg/debug/mongodb.go @@ -23,7 +23,7 @@ import ( "os" "path" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "github.com/spf13/cobra" @@ -37,7 +37,7 @@ import ( ) type mongodbOpts struct { - db *api.MongoDB + db *dbapi.MongoDB dbClient *cs.Clientset podClient *kubernetes.Clientset diff --git a/pkg/debug/mysql.go b/pkg/debug/mysql.go index 5866b1e08..00abcef21 100644 --- a/pkg/debug/mysql.go +++ b/pkg/debug/mysql.go @@ -23,7 +23,7 @@ import ( "os" "path" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "github.com/spf13/cobra" @@ -37,7 +37,7 @@ import ( ) type mysqlOpts struct { - db *api.MySQL + db *dbapi.MySQL dbClient *cs.Clientset podClient *kubernetes.Clientset diff --git a/pkg/debug/postgres.go b/pkg/debug/postgres.go index 2ec6e5800..ab3a7acef 100644 --- a/pkg/debug/postgres.go +++ b/pkg/debug/postgres.go @@ -23,7 +23,7 @@ import ( "os" "path" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "github.com/spf13/cobra" @@ -37,7 +37,7 @@ import ( ) type postgresOpts struct { - db *api.Postgres + db *dbapi.Postgres dbClient *cs.Clientset podClient *kubernetes.Clientset diff --git a/pkg/debug/redis.go b/pkg/debug/redis.go index eb57e2bb3..2ea6361e1 100644 --- a/pkg/debug/redis.go +++ b/pkg/debug/redis.go @@ -23,7 +23,7 @@ import ( "os" "path" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned" "github.com/spf13/cobra" @@ -37,7 +37,7 @@ import ( ) type redisOpts struct { - db *api.Redis + db *dbapi.Redis dbClient *cs.Clientset podClient *kubernetes.Clientset diff --git a/pkg/describer/describer.go b/pkg/describer/describer.go index c283e792b..4201c1a04 100644 --- a/pkg/describer/describer.go +++ b/pkg/describer/describer.go @@ -26,7 +26,7 @@ import ( "strings" "text/tabwriter" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" "kubedb.dev/cli/pkg/events" @@ -101,12 +101,12 @@ func describerMap(clientConfig *rest.Config) (map[schema.GroupKind]describe.Reso } m := map[schema.GroupKind]describe.ResourceDescriber{ - api.Kind(api.ResourceKindElasticsearch): &ElasticsearchDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, - api.Kind(api.ResourceKindMemcached): &MemcachedDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, - api.Kind(api.ResourceKindMongoDB): &MongoDBDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, - api.Kind(api.ResourceKindMySQL): &MySQLDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, - api.Kind(api.ResourceKindPostgres): &PostgresDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, - api.Kind(api.ResourceKindRedis): &RedisDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, + dbapi.Kind(dbapi.ResourceKindElasticsearch): &ElasticsearchDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, + dbapi.Kind(dbapi.ResourceKindMemcached): &MemcachedDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, + dbapi.Kind(dbapi.ResourceKindMongoDB): &MongoDBDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, + dbapi.Kind(dbapi.ResourceKindMySQL): &MySQLDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, + dbapi.Kind(dbapi.ResourceKindPostgres): &PostgresDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, + dbapi.Kind(dbapi.ResourceKindRedis): &RedisDescriber{client: c, kubedb: k, stash: s, appcat: appcat}, } return m, nil diff --git a/pkg/describer/elasticsearch.go b/pkg/describer/elasticsearch.go index edeca6645..ea32be826 100644 --- a/pkg/describer/elasticsearch.go +++ b/pkg/describer/elasticsearch.go @@ -21,7 +21,7 @@ import ( "io" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/client/clientset/versioned/scheme" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" @@ -65,7 +65,7 @@ func (d *ElasticsearchDescriber) Describe(namespace, name string, describerSetti return d.describeElasticsearch(item, selector, events) } -func (d *ElasticsearchDescriber) describeElasticsearch(item *api.Elasticsearch, selector labels.Selector, events *core.EventList) (string, error) { +func (d *ElasticsearchDescriber) describeElasticsearch(item *dbapi.Elasticsearch, selector labels.Selector, events *core.EventList) (string, error) { return tabbedString(func(out io.Writer) error { w := describe.NewPrefixWriter(out) w.Write(LEVEL_0, "Name:\t%s\n", item.Name) @@ -87,7 +87,7 @@ func (d *ElasticsearchDescriber) describeElasticsearch(item *api.Elasticsearch, showWorkload(d.client, item.Namespace, selector, w) - secrets := make(map[string]*api.SecretReference) + secrets := make(map[string]*dbapi.SecretReference) if item.Spec.AuthSecret != nil { secrets["Auth"] = item.Spec.AuthSecret } diff --git a/pkg/describer/helper.go b/pkg/describer/helper.go index 76bad8239..d0bcfd673 100644 --- a/pkg/describer/helper.go +++ b/pkg/describer/helper.go @@ -23,7 +23,7 @@ import ( "strings" "unicode" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "github.com/fatih/camelcase" "golang.org/x/text/cases" @@ -39,11 +39,11 @@ import ( mona "kmodules.xyz/monitoring-agent-api/api/v1" ) -func describeStorage(st api.StorageType, pvcSpec *core.PersistentVolumeClaimSpec, w describe.PrefixWriter) { - if st == api.StorageTypeEphemeral { - w.Write(LEVEL_0, "StorageType:\t%s\n", api.StorageTypeEphemeral) +func describeStorage(st dbapi.StorageType, pvcSpec *core.PersistentVolumeClaimSpec, w describe.PrefixWriter) { + if st == dbapi.StorageTypeEphemeral { + w.Write(LEVEL_0, "StorageType:\t%s\n", dbapi.StorageTypeEphemeral) } else { - w.Write(LEVEL_0, "StorageType:\t%s\n", api.StorageTypeDurable) + w.Write(LEVEL_0, "StorageType:\t%s\n", dbapi.StorageTypeDurable) } if pvcSpec == nil { w.Write(LEVEL_0, "No volumes.\n") @@ -63,7 +63,7 @@ func describeStorage(st api.StorageType, pvcSpec *core.PersistentVolumeClaimSpec } } -func describeInitialization(init *api.InitSpec, w describe.PrefixWriter) { +func describeInitialization(init *dbapi.InitSpec, w describe.PrefixWriter) { if init == nil { return } @@ -242,7 +242,7 @@ func showWorkload(client kubernetes.Interface, namespace string, selector labels } } -func showSecret(client kubernetes.Interface, namespace string, secrets map[string]*api.SecretReference, w describe.PrefixWriter) { +func showSecret(client kubernetes.Interface, namespace string, secrets map[string]*dbapi.SecretReference, w describe.PrefixWriter) { sc := client.CoreV1().Secrets(namespace) for key, sv := range secrets { diff --git a/pkg/describer/memcached.go b/pkg/describer/memcached.go index eb5b7cdaa..93188f6cc 100644 --- a/pkg/describer/memcached.go +++ b/pkg/describer/memcached.go @@ -21,7 +21,7 @@ import ( "io" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/client/clientset/versioned/scheme" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" @@ -65,7 +65,7 @@ func (d *MemcachedDescriber) Describe(namespace, name string, describerSettings return d.describeMemcached(item, selector, events) } -func (d *MemcachedDescriber) describeMemcached(item *api.Memcached, selector labels.Selector, events *core.EventList) (string, error) { +func (d *MemcachedDescriber) describeMemcached(item *dbapi.Memcached, selector labels.Selector, events *core.EventList) (string, error) { return tabbedString(func(out io.Writer) error { w := describe.NewPrefixWriter(out) w.Write(LEVEL_0, "Name:\t%s\n", item.Name) diff --git a/pkg/describer/mongodb.go b/pkg/describer/mongodb.go index f2f53e5a5..6f12b53f6 100644 --- a/pkg/describer/mongodb.go +++ b/pkg/describer/mongodb.go @@ -21,7 +21,7 @@ import ( "io" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/client/clientset/versioned/scheme" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" @@ -65,7 +65,7 @@ func (d *MongoDBDescriber) Describe(namespace, name string, describerSettings de return d.describeMongoDB(item, selector, events) } -func (d *MongoDBDescriber) describeMongoDB(item *api.MongoDB, selector labels.Selector, events *core.EventList) (string, error) { +func (d *MongoDBDescriber) describeMongoDB(item *dbapi.MongoDB, selector labels.Selector, events *core.EventList) (string, error) { return tabbedString(func(out io.Writer) error { w := describe.NewPrefixWriter(out) w.Write(LEVEL_0, "Name:\t%s\n", item.Name) @@ -87,7 +87,7 @@ func (d *MongoDBDescriber) describeMongoDB(item *api.MongoDB, selector labels.Se showWorkload(d.client, item.Namespace, selector, w) - secrets := make(map[string]*api.SecretReference) + secrets := make(map[string]*dbapi.SecretReference) if item.Spec.AuthSecret != nil { secrets["Auth"] = item.Spec.AuthSecret } diff --git a/pkg/describer/mysql.go b/pkg/describer/mysql.go index da9d54e80..0c4b5b6ec 100644 --- a/pkg/describer/mysql.go +++ b/pkg/describer/mysql.go @@ -21,7 +21,7 @@ import ( "io" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/client/clientset/versioned/scheme" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" @@ -65,7 +65,7 @@ func (d *MySQLDescriber) Describe(namespace, name string, describerSettings desc return d.describeMySQL(item, selector, events) } -func (d *MySQLDescriber) describeMySQL(item *api.MySQL, selector labels.Selector, events *core.EventList) (string, error) { +func (d *MySQLDescriber) describeMySQL(item *dbapi.MySQL, selector labels.Selector, events *core.EventList) (string, error) { return tabbedString(func(out io.Writer) error { w := describe.NewPrefixWriter(out) w.Write(LEVEL_0, "Name:\t%s\n", item.Name) @@ -87,7 +87,7 @@ func (d *MySQLDescriber) describeMySQL(item *api.MySQL, selector labels.Selector showWorkload(d.client, item.Namespace, selector, w) - secrets := make(map[string]*api.SecretReference) + secrets := make(map[string]*dbapi.SecretReference) if item.Spec.AuthSecret != nil { secrets["Auth"] = item.Spec.AuthSecret } diff --git a/pkg/describer/postgres.go b/pkg/describer/postgres.go index 0534d3aa2..4d9233228 100644 --- a/pkg/describer/postgres.go +++ b/pkg/describer/postgres.go @@ -21,7 +21,7 @@ import ( "io" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/client/clientset/versioned/scheme" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" @@ -65,7 +65,7 @@ func (d *PostgresDescriber) Describe(namespace, name string, describerSettings d return d.describePostgres(item, selector, events) } -func (d *PostgresDescriber) describePostgres(item *api.Postgres, selector labels.Selector, events *core.EventList) (string, error) { +func (d *PostgresDescriber) describePostgres(item *dbapi.Postgres, selector labels.Selector, events *core.EventList) (string, error) { return tabbedString(func(out io.Writer) error { w := describe.NewPrefixWriter(out) w.Write(LEVEL_0, "Name:\t%s\n", item.Name) @@ -87,7 +87,7 @@ func (d *PostgresDescriber) describePostgres(item *api.Postgres, selector labels showWorkload(d.client, item.Namespace, selector, w) - secrets := make(map[string]*api.SecretReference) + secrets := make(map[string]*dbapi.SecretReference) if item.Spec.AuthSecret != nil { secrets["Auth"] = item.Spec.AuthSecret } diff --git a/pkg/describer/redis.go b/pkg/describer/redis.go index 4a44c3d5f..2ee67cd1d 100644 --- a/pkg/describer/redis.go +++ b/pkg/describer/redis.go @@ -21,7 +21,7 @@ import ( "io" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/client/clientset/versioned/scheme" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" @@ -65,7 +65,7 @@ func (d *RedisDescriber) Describe(namespace, name string, describerSettings desc return d.describeRedis(item, selector, events) } -func (d *RedisDescriber) describeRedis(item *api.Redis, selector labels.Selector, events *core.EventList) (string, error) { +func (d *RedisDescriber) describeRedis(item *dbapi.Redis, selector labels.Selector, events *core.EventList) (string, error) { return tabbedString(func(out io.Writer) error { w := describe.NewPrefixWriter(out) w.Write(LEVEL_0, "Name:\t%s\n", item.Name) diff --git a/pkg/monitor/alerts/db.go b/pkg/monitor/alerts/db.go index d6435c6a1..1bf99a911 100644 --- a/pkg/monitor/alerts/db.go +++ b/pkg/monitor/alerts/db.go @@ -22,7 +22,7 @@ import ( "log" "time" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/cli/pkg/monitor" promv1 "github.com/prometheus/client_golang/api/prometheus/v1" @@ -82,7 +82,7 @@ func newDBOpts(f cmdutil.Factory, dbName, namespace, resource string) (*dbOpts, return nil, err } - gvk := api.SchemeGroupVersion + gvk := dbapi.SchemeGroupVersion dbRes := schema.GroupVersionResource{Group: gvk.Group, Version: gvk.Version, Resource: resource} db, err := dc.Resource(dbRes).Namespace(namespace).Get(context.TODO(), dbName, metav1.GetOptions{}) if err != nil { diff --git a/pkg/monitor/connection/db.go b/pkg/monitor/connection/db.go index 2b8d83c76..19c2e3fdd 100644 --- a/pkg/monitor/connection/db.go +++ b/pkg/monitor/connection/db.go @@ -104,5 +104,6 @@ func Run(f cmdutil.Factory, args []string, prom monitor.PromSvc) { for _, target := range notFound { fmt.Printf("%s monitoring connection not found for %s : %s/%s\n", target, database, namespace, databaseName) } + log.Fatalf("connection not established properly for %s: %s/%s", database, namespace, databaseName) } } diff --git a/pkg/monitor/connection/helper.go b/pkg/monitor/connection/helper.go index fc9f85e61..d92e7dbe7 100644 --- a/pkg/monitor/connection/helper.go +++ b/pkg/monitor/connection/helper.go @@ -20,7 +20,7 @@ import ( "fmt" "log" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" ) const ( @@ -46,55 +46,55 @@ func getDBMetrics(database, name string, queries map[string]*metrics) map[string label := "service" labelValue := fmt.Sprintf("%s-stats", name) switch database { - case api.ResourceSingularElasticsearch: + case dbapi.ResourceSingularElasticsearch: queries[database] = &metrics{ metric: "elasticsearch_clusterinfo_up", label: label, labelValue: labelValue, } - case api.ResourceSingularKafka: + case dbapi.ResourceSingularKafka: queries[database] = &metrics{ metric: "kafka_controller_kafkacontroller_activebrokercount", label: label, labelValue: labelValue, } - case api.ResourceSingularMariaDB: + case dbapi.ResourceSingularMariaDB: queries[database] = &metrics{ metric: "mysql_up", label: label, labelValue: labelValue, } - case api.ResourceSingularMongoDB: + case dbapi.ResourceSingularMongoDB: queries[database] = &metrics{ metric: "mongodb_up", label: label, labelValue: labelValue, } - case api.ResourceSingularMySQL: + case dbapi.ResourceSingularMySQL: queries[database] = &metrics{ metric: "mysql_up", label: label, labelValue: labelValue, } - case api.ResourceSingularPerconaXtraDB: + case dbapi.ResourceSingularPerconaXtraDB: queries[database] = &metrics{ metric: "mysql_up", label: label, labelValue: labelValue, } - case api.ResourceSingularPostgres: + case dbapi.ResourceSingularPostgres: queries[database] = &metrics{ metric: "pg_up", label: label, labelValue: labelValue, } - case api.ResourceSingularProxySQL: + case dbapi.ResourceSingularProxySQL: queries[database] = &metrics{ metric: "proxysql_uptime_seconds_total", label: label, labelValue: labelValue, } - case api.ResourceSingularRedis: + case dbapi.ResourceSingularRedis: queries[database] = &metrics{ metric: "redis_up", label: label, diff --git a/pkg/monitor/dashboard/db.go b/pkg/monitor/dashboard/db.go index 5837cc22c..34ced75af 100644 --- a/pkg/monitor/dashboard/db.go +++ b/pkg/monitor/dashboard/db.go @@ -26,6 +26,7 @@ import ( "kubedb.dev/cli/pkg/monitor" "github.com/prometheus/common/model" + "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" cmdutil "k8s.io/kubectl/pkg/cmd/util" ) @@ -40,25 +41,34 @@ type missingOpts struct { panelTitle []string } -func Run(f cmdutil.Factory, args []string, branch, file, url string, prom monitor.PromSvc) { - if len(args) < 2 { - log.Fatal("Enter db object's name as an argument") - } - database := monitor.ConvertedResourceToPlural(args[0]) - dbName := args[1] - namespace, _, err := f.ToRawKubeConfigLoader().Namespace() - if err != nil { - _ = fmt.Errorf("failed to get current namespace") - return - } +func Run(f cmdutil.Factory, args []string, branch, file, url string, prom monitor.PromSvc, isDB bool) { + var ( + db *unstructured.Unstructured + database string + namespace string + dbName string + err error + ) + if isDB { + if len(args) < 2 { + log.Fatal("Enter db object's name as an argument") + } + database = monitor.ConvertedResourceToPlural(args[0]) + dbName = args[1] + namespace, _, err = f.ToRawKubeConfigLoader().Namespace() + if err != nil { + _ = fmt.Errorf("failed to get current namespace") + return + } - db, err := getDB(f, database, namespace, dbName) - if err != nil { - fmt.Printf("failed to get %s database %s/%s. error %s \n", database, namespace, dbName, err.Error()) - return - } + db, err = getDB(f, database, namespace, dbName) + if err != nil { + fmt.Printf("failed to get %s database %s/%s. error %s \n", database, namespace, dbName, err.Error()) + return + } - database = monitor.ConvertedResourceToSingular(database) + database = monitor.ConvertedResourceToSingular(database) + } var dashboardData map[string]interface{} if file == "" { if url == "" { // fetch from appscode/grafana-dashboard repo @@ -137,6 +147,11 @@ func Run(f cmdutil.Factory, args []string, branch, file, url string, prom monito } fmt.Printf("Effected Panel: %s \n", strings.Join(opts.panelTitle, ", ")) } + if isDB { + log.Fatalf("Information missing for database %s: %s/%s\n", database, namespace, dbName) + } else { + log.Fatalf("Information missing") + } } else { fmt.Println("All metrics found") } diff --git a/pkg/monitor/dashboard/helper.go b/pkg/monitor/dashboard/helper.go index fae543727..daa8b3ba6 100644 --- a/pkg/monitor/dashboard/helper.go +++ b/pkg/monitor/dashboard/helper.go @@ -25,7 +25,8 @@ import ( "net/http" "os" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + kapi "kubedb.dev/apimachinery/apis/kafka/v1alpha1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" @@ -45,7 +46,13 @@ func getDB(f cmdutil.Factory, resource, ns, name string) (*unstructured.Unstruct return nil, err } - gvk := api.SchemeGroupVersion + if resource == kapi.ResourcePluralConnectCluster { + kGvk := kapi.SchemeGroupVersion + kRes := schema.GroupVersionResource{Group: kGvk.Group, Version: kGvk.Version, Resource: resource} + return dc.Resource(kRes).Namespace(ns).Get(context.TODO(), name, metav1.GetOptions{}) + } + + gvk := dbapi.SchemeGroupVersion dbRes := schema.GroupVersionResource{Group: gvk.Group, Version: gvk.Version, Resource: resource} return dc.Resource(dbRes).Namespace(ns).Get(context.TODO(), name, metav1.GetOptions{}) } @@ -99,10 +106,10 @@ func uniqueAppend(slice []string, valueToAdd string) []string { } func ignoreModeSpecificExpressions(unknown map[string]*missingOpts, database string, db *unstructured.Unstructured) map[string]*missingOpts { - if database == api.ResourceSingularMongoDB { + if database == dbapi.ResourceSingularMongoDB { return ignoreMongoDBModeSpecificExpressions(unknown, db) } - if database == api.ResourceSingularElasticsearch { + if database == dbapi.ResourceSingularElasticsearch { return ignoreElasticsearchModeSpecificExpressions(unknown, db) } return unknown diff --git a/pkg/monitor/util.go b/pkg/monitor/util.go index 16707c504..c18f3d7ac 100644 --- a/pkg/monitor/util.go +++ b/pkg/monitor/util.go @@ -20,31 +20,47 @@ import ( "log" "strings" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + kapi "kubedb.dev/apimachinery/apis/kafka/v1alpha1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" + olddbapi "kubedb.dev/apimachinery/apis/kubedb/v1alpha2" ) func ConvertedResourceToPlural(resource string) string { // standardizing the resource name res := strings.ToLower(resource) switch res { - case api.ResourceCodeElasticsearch, api.ResourcePluralElasticsearch, api.ResourceSingularElasticsearch: - res = api.ResourcePluralElasticsearch - case api.ResourceCodeKafka, api.ResourcePluralKafka, api.ResourceSingularKafka: - res = api.ResourcePluralKafka - case api.ResourceCodeMariaDB, api.ResourcePluralMariaDB, api.ResourceSingularMariaDB: - res = api.ResourcePluralMariaDB - case api.ResourceCodeMongoDB, api.ResourcePluralMongoDB, api.ResourceSingularMongoDB: - res = api.ResourcePluralMongoDB - case api.ResourceCodeMySQL, api.ResourcePluralMySQL, api.ResourceSingularMySQL: - res = api.ResourcePluralMySQL - case api.ResourceCodePerconaXtraDB, api.ResourcePluralPerconaXtraDB, api.ResourceSingularPerconaXtraDB: - res = api.ResourcePluralPerconaXtraDB - case api.ResourceCodePostgres, api.ResourcePluralPostgres, api.ResourceSingularPostgres: - res = api.ResourcePluralPostgres - case api.ResourceCodeProxySQL, api.ResourcePluralProxySQL, api.ResourceSingularProxySQL: - res = api.ResourcePluralProxySQL - case api.ResourceCodeRedis, api.ResourcePluralRedis, api.ResourceSingularRedis: - res = api.ResourcePluralRedis + case kapi.ResourceCodeConnectCluster, kapi.ResourcePluralConnectCluster, kapi.ResourceSingularConnectCluster: + res = kapi.ResourcePluralConnectCluster + case olddbapi.ResourceCodeDruid, olddbapi.ResourcePluralDruid, olddbapi.ResourceSingularDruid: + res = olddbapi.ResourcePluralDruid + case dbapi.ResourceCodeElasticsearch, dbapi.ResourcePluralElasticsearch, dbapi.ResourceSingularElasticsearch: + res = dbapi.ResourcePluralElasticsearch + case dbapi.ResourceCodeKafka, dbapi.ResourcePluralKafka, dbapi.ResourceSingularKafka: + res = dbapi.ResourcePluralKafka + case dbapi.ResourceCodeMariaDB, dbapi.ResourcePluralMariaDB, dbapi.ResourceSingularMariaDB: + res = dbapi.ResourcePluralMariaDB + case dbapi.ResourceCodeMongoDB, dbapi.ResourcePluralMongoDB, dbapi.ResourceSingularMongoDB: + res = dbapi.ResourcePluralMongoDB + case dbapi.ResourceCodeMySQL, dbapi.ResourcePluralMySQL, dbapi.ResourceSingularMySQL: + res = dbapi.ResourcePluralMySQL + case dbapi.ResourceCodePerconaXtraDB, dbapi.ResourcePluralPerconaXtraDB, dbapi.ResourceSingularPerconaXtraDB: + res = dbapi.ResourcePluralPerconaXtraDB + case olddbapi.ResourceCodePgpool, olddbapi.ResourcePluralPgpool, olddbapi.ResourceSingularPgpool: + res = olddbapi.ResourcePluralPgpool + case dbapi.ResourceCodePostgres, dbapi.ResourcePluralPostgres, dbapi.ResourceSingularPostgres: + res = dbapi.ResourcePluralPostgres + case dbapi.ResourceCodeProxySQL, dbapi.ResourcePluralProxySQL, dbapi.ResourceSingularProxySQL: + res = dbapi.ResourcePluralProxySQL + case olddbapi.ResourceCodeRabbitmq, olddbapi.ResourcePluralRabbitmq, olddbapi.ResourceSingularRabbitmq: + res = olddbapi.ResourcePluralRabbitmq + case dbapi.ResourceCodeRedis, dbapi.ResourcePluralRedis, dbapi.ResourceSingularRedis: + res = dbapi.ResourcePluralRedis + case olddbapi.ResourceCodeSinglestore, olddbapi.ResourcePluralSinglestore, olddbapi.ResourceSingularSinglestore: + res = olddbapi.ResourcePluralSinglestore + case olddbapi.ResourceCodeSolr, olddbapi.ResourcePluralSolr, olddbapi.ResourceSingularSolr: + res = olddbapi.ResourcePluralSolr + case olddbapi.ResourceCodeZooKeeper, olddbapi.ResourcePluralZooKeeper, olddbapi.ResourceSingularZooKeeper: + res = olddbapi.ResourcePluralZooKeeper default: log.Fatalf("%s is not a valid resource type \n", resource) } @@ -55,24 +71,38 @@ func ConvertedResourceToSingular(resource string) string { // standardizing the resource name res := strings.ToLower(resource) switch res { - case api.ResourceCodeElasticsearch, api.ResourcePluralElasticsearch, api.ResourceSingularElasticsearch: - res = api.ResourceSingularElasticsearch - case api.ResourceCodeKafka, api.ResourcePluralKafka, api.ResourceSingularKafka: - res = api.ResourceSingularKafka - case api.ResourceCodeMariaDB, api.ResourcePluralMariaDB, api.ResourceSingularMariaDB: - res = api.ResourceSingularMariaDB - case api.ResourceCodeMongoDB, api.ResourcePluralMongoDB, api.ResourceSingularMongoDB: - res = api.ResourceSingularMongoDB - case api.ResourceCodeMySQL, api.ResourcePluralMySQL, api.ResourceSingularMySQL: - res = api.ResourceSingularMySQL - case api.ResourceCodePerconaXtraDB, api.ResourcePluralPerconaXtraDB, api.ResourceSingularPerconaXtraDB: - res = api.ResourceSingularPerconaXtraDB - case api.ResourceCodePostgres, api.ResourcePluralPostgres, api.ResourceSingularPostgres: - res = api.ResourceSingularPostgres - case api.ResourceCodeProxySQL, api.ResourcePluralProxySQL, api.ResourceSingularProxySQL: - res = api.ResourceSingularProxySQL - case api.ResourceCodeRedis, api.ResourcePluralRedis, api.ResourceSingularRedis: - res = api.ResourceSingularRedis + case kapi.ResourceCodeConnectCluster, kapi.ResourcePluralConnectCluster, kapi.ResourceSingularConnectCluster: + res = kapi.ResourceSingularConnectCluster + case olddbapi.ResourceCodeDruid, olddbapi.ResourcePluralDruid, olddbapi.ResourceSingularDruid: + res = olddbapi.ResourceSingularDruid + case dbapi.ResourceCodeElasticsearch, dbapi.ResourcePluralElasticsearch, dbapi.ResourceSingularElasticsearch: + res = dbapi.ResourceSingularElasticsearch + case dbapi.ResourceCodeKafka, dbapi.ResourcePluralKafka, dbapi.ResourceSingularKafka: + res = dbapi.ResourceSingularKafka + case dbapi.ResourceCodeMariaDB, dbapi.ResourcePluralMariaDB, dbapi.ResourceSingularMariaDB: + res = dbapi.ResourceSingularMariaDB + case dbapi.ResourceCodeMongoDB, dbapi.ResourcePluralMongoDB, dbapi.ResourceSingularMongoDB: + res = dbapi.ResourceSingularMongoDB + case dbapi.ResourceCodeMySQL, dbapi.ResourcePluralMySQL, dbapi.ResourceSingularMySQL: + res = dbapi.ResourceSingularMySQL + case dbapi.ResourceCodePerconaXtraDB, dbapi.ResourcePluralPerconaXtraDB, dbapi.ResourceSingularPerconaXtraDB: + res = dbapi.ResourceSingularPerconaXtraDB + case olddbapi.ResourceCodePgpool, olddbapi.ResourcePluralPgpool, olddbapi.ResourceSingularPgpool: + res = olddbapi.ResourceSingularPgpool + case dbapi.ResourceCodePostgres, dbapi.ResourcePluralPostgres, dbapi.ResourceSingularPostgres: + res = dbapi.ResourceSingularPostgres + case dbapi.ResourceCodeProxySQL, dbapi.ResourcePluralProxySQL, dbapi.ResourceSingularProxySQL: + res = dbapi.ResourceSingularProxySQL + case olddbapi.ResourceCodeRabbitmq, olddbapi.ResourcePluralRabbitmq, olddbapi.ResourceSingularRabbitmq: + res = olddbapi.ResourceSingularRabbitmq + case dbapi.ResourceCodeRedis, dbapi.ResourcePluralRedis, dbapi.ResourceSingularRedis: + res = dbapi.ResourceSingularRedis + case olddbapi.ResourceCodeSinglestore, olddbapi.ResourcePluralSinglestore, olddbapi.ResourceSingularSinglestore: + res = olddbapi.ResourceSingularSinglestore + case olddbapi.ResourceCodeSolr, olddbapi.ResourcePluralSolr, olddbapi.ResourceSingularSolr: + res = olddbapi.ResourceSingularSolr + case olddbapi.ResourceCodeZooKeeper, olddbapi.ResourcePluralZooKeeper, olddbapi.ResourceSingularZooKeeper: + res = olddbapi.ResourceSingularZooKeeper default: log.Fatalf("%s is not a valid resource type \n", resource) } diff --git a/pkg/pauser/elasticsearch.go b/pkg/pauser/elasticsearch.go index 75b4dcf14..934a9ca14 100644 --- a/pkg/pauser/elasticsearch.go +++ b/pkg/pauser/elasticsearch.go @@ -20,7 +20,7 @@ import ( "context" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" @@ -66,7 +66,7 @@ func (e *ElasticsearchPauser) Pause(name, namespace string) (bool, error) { pauseAll := !(e.onlyBackup || e.onlyDb) if e.onlyDb || pauseAll { - _, err = dbutil.UpdateElasticsearchStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.ElasticsearchStatus) (types.UID, *api.ElasticsearchStatus) { + _, err = dbutil.UpdateElasticsearchStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.ElasticsearchStatus) (types.UID, *dbapi.ElasticsearchStatus) { status.Conditions = condutil.SetCondition(status.Conditions, condutil.NewCondition( kubedb.DatabasePaused, "Paused by KubeDB CLI tool", diff --git a/pkg/pauser/mariadb.go b/pkg/pauser/mariadb.go index 5d50ad54a..f08ec8b09 100644 --- a/pkg/pauser/mariadb.go +++ b/pkg/pauser/mariadb.go @@ -21,7 +21,7 @@ import ( coreapi "kubedb.dev/apimachinery/apis/archiver/v1alpha1" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" @@ -86,7 +86,7 @@ func (e *MariaDBPauser) Pause(name, namespace string) (bool, error) { } if e.onlyDb || pauseAll { - _, err = dbutil.UpdateMariaDBStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.MariaDBStatus) (types.UID, *api.MariaDBStatus) { + _, err = dbutil.UpdateMariaDBStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.MariaDBStatus) (types.UID, *dbapi.MariaDBStatus) { status.Conditions = condutil.SetCondition(status.Conditions, condutil.NewCondition( kubedb.DatabasePaused, "Paused by KubeDB CLI tool", diff --git a/pkg/pauser/mongodb.go b/pkg/pauser/mongodb.go index e2e1f7dec..1f55ba649 100644 --- a/pkg/pauser/mongodb.go +++ b/pkg/pauser/mongodb.go @@ -21,7 +21,7 @@ import ( coreapi "kubedb.dev/apimachinery/apis/archiver/v1alpha1" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" @@ -86,7 +86,7 @@ func (e *MongoDBPauser) Pause(name, namespace string) (bool, error) { } if e.onlyDb || pauseAll { - _, err = dbutil.UpdateMongoDBStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.MongoDBStatus) (types.UID, *api.MongoDBStatus) { + _, err = dbutil.UpdateMongoDBStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.MongoDBStatus) (types.UID, *dbapi.MongoDBStatus) { status.Conditions = condutil.SetCondition(status.Conditions, condutil.NewCondition( kubedb.DatabasePaused, "Paused by KubeDB CLI tool", diff --git a/pkg/pauser/mysql.go b/pkg/pauser/mysql.go index 30441ba0c..81bc7010b 100644 --- a/pkg/pauser/mysql.go +++ b/pkg/pauser/mysql.go @@ -21,7 +21,7 @@ import ( coreapi "kubedb.dev/apimachinery/apis/archiver/v1alpha1" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" @@ -84,7 +84,7 @@ func (e *MySQLPauser) Pause(name string, namespace string) (bool, error) { } } if e.onlyDb || pauseAll { - _, err = dbutil.UpdateMySQLStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.MySQLStatus) (types.UID, *api.MySQLStatus) { + _, err = dbutil.UpdateMySQLStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.MySQLStatus) (types.UID, *dbapi.MySQLStatus) { status.Conditions = condutil.SetCondition(status.Conditions, condutil.NewCondition( kubedb.DatabasePaused, "Paused by KubeDB CLI tool", diff --git a/pkg/pauser/pauser.go b/pkg/pauser/pauser.go index 166c8e83b..5d4c4453d 100644 --- a/pkg/pauser/pauser.go +++ b/pkg/pauser/pauser.go @@ -19,7 +19,7 @@ package pauser import ( "errors" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "k8s.io/apimachinery/pkg/api/meta" "k8s.io/cli-runtime/pkg/genericclioptions" @@ -39,17 +39,17 @@ func NewPauser(restClientGetter genericclioptions.RESTClientGetter, mapping *met } switch mapping.GroupVersionKind.Kind { - case api.ResourceKindElasticsearch: + case dbapi.ResourceKindElasticsearch: return NewElasticsearchPauser(clientConfig, onlyDb, onlyBackup) - case api.ResourceKindMongoDB: + case dbapi.ResourceKindMongoDB: return NewMongoDBPauser(clientConfig, onlyDb, onlyBackup, onlyArchiver) - case api.ResourceKindMySQL: + case dbapi.ResourceKindMySQL: return NewMySQLPauser(clientConfig, onlyDb, onlyBackup, onlyArchiver) - case api.ResourceKindMariaDB: + case dbapi.ResourceKindMariaDB: return NewMariaDBPauser(clientConfig, onlyDb, onlyBackup, onlyArchiver) - case api.ResourceKindPostgres: + case dbapi.ResourceKindPostgres: return NewPostgresPauser(clientConfig, onlyDb, onlyBackup, onlyArchiver) - case api.ResourceKindRedis: + case dbapi.ResourceKindRedis: return NewRedisPauser(clientConfig, onlyDb, onlyBackup) default: return nil, errors.New("unknown kind") diff --git a/pkg/pauser/postgres.go b/pkg/pauser/postgres.go index 567a43b0f..b1aa49c16 100644 --- a/pkg/pauser/postgres.go +++ b/pkg/pauser/postgres.go @@ -21,7 +21,7 @@ import ( coreapi "kubedb.dev/apimachinery/apis/archiver/v1alpha1" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" @@ -87,7 +87,7 @@ func (e *PostgresPauser) Pause(name, namespace string) (bool, error) { } if e.onlyDb || pauseAll { - _, err = dbutil.UpdatePostgresStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.PostgresStatus) (types.UID, *api.PostgresStatus) { + _, err = dbutil.UpdatePostgresStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.PostgresStatus) (types.UID, *dbapi.PostgresStatus) { status.Conditions = condutil.SetCondition(status.Conditions, condutil.NewCondition( kubedb.DatabasePaused, "Paused by KubeDB CLI tool", diff --git a/pkg/pauser/redis.go b/pkg/pauser/redis.go index f2de4fc1b..6f2b2fed3 100644 --- a/pkg/pauser/redis.go +++ b/pkg/pauser/redis.go @@ -20,7 +20,7 @@ import ( "context" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" @@ -65,7 +65,7 @@ func (e *RedisPauser) Pause(name, namespace string) (bool, error) { pauseAll := !(e.onlyBackup || e.onlyDb) if e.onlyDb || pauseAll { - _, err = dbutil.UpdateRedisStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.RedisStatus) (types.UID, *api.RedisStatus) { + _, err = dbutil.UpdateRedisStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.RedisStatus) (types.UID, *dbapi.RedisStatus) { status.Conditions = condutil.SetCondition(status.Conditions, condutil.NewCondition( kubedb.DatabasePaused, "Paused by KubeDB CLI tool", diff --git a/pkg/remote_replica/mysql.go b/pkg/remote_replica/mysql.go index 3a3498542..1fe137b20 100644 --- a/pkg/remote_replica/mysql.go +++ b/pkg/remote_replica/mysql.go @@ -23,7 +23,7 @@ import ( "os" "time" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/cli/pkg/common" cm_api "github.com/cert-manager/cert-manager/pkg/apis/certmanager/v1" @@ -162,14 +162,14 @@ func generateMySQLConfig(f cmdutil.Factory, userName string, password string, dn func generateMySQLTlsSecret(userName string, apb *appApi.AppBinding, ns string, opts *common.MySQLOpts) ([]byte, string, error) { var buffer []byte - _, err := ensureMySQLClientCert(opts, apb, opts.DB, api.MySQLClientCert, userName) + _, err := ensureMySQLClientCert(opts, apb, opts.DB, dbapi.MySQLClientCert, userName) if err != nil { return nil, "", fmt.Errorf("failed to ensure client cert %v", err) } tlsSecret := &core.Secret{} err = wait.PollUntilContextTimeout(context.Background(), 300*time.Millisecond, 60*time.Minute, true, func(ctx context.Context) (done bool, err error) { - sercretName := opts.DB.GetCertSecretName(api.MySQLClientCert) + fmt.Sprintf("-%s", userName) + sercretName := opts.DB.GetCertSecretName(dbapi.MySQLClientCert) + fmt.Sprintf("-%s", userName) tlsSecret, err = opts.Client.CoreV1().Secrets(ns).Get(ctx, sercretName, metav1.GetOptions{}) if kerr.IsNotFound(err) { @@ -264,7 +264,7 @@ func generateMySQLUser(opts *common.MySQLOpts, name string, password string) err return nil } -func ensureMySQLClientCert(opts *common.MySQLOpts, apb *appApi.AppBinding, mysql *api.MySQL, alias api.MySQLCertificateAlias, username string) (kutil.VerbType, error) { +func ensureMySQLClientCert(opts *common.MySQLOpts, apb *appApi.AppBinding, mysql *dbapi.MySQL, alias dbapi.MySQLCertificateAlias, username string) (kutil.VerbType, error) { var duration, renewBefore *metav1.Duration var subject *cm_api.X509Subject var dnsNames, ipAddresses, uriSANs, emailSANs []string diff --git a/pkg/remote_replica/postgres.go b/pkg/remote_replica/postgres.go index e50f1effa..7afe471aa 100644 --- a/pkg/remote_replica/postgres.go +++ b/pkg/remote_replica/postgres.go @@ -25,7 +25,7 @@ import ( "strings" "time" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/cli/pkg/common" cm_api "github.com/cert-manager/cert-manager/pkg/apis/certmanager/v1" @@ -158,14 +158,14 @@ func generateConfig(f cmdutil.Factory, userName string, password string, dns str func generateTlsSecret(userName string, apb *appApi.AppBinding, ns string, opts *common.PostgresOpts) ([]byte, string, error) { var buffer []byte - _, err := ensureClientCert(opts, apb, opts.DB, api.PostgresClientCert, userName) + _, err := ensureClientCert(opts, apb, opts.DB, dbapi.PostgresClientCert, userName) if err != nil { return nil, "", fmt.Errorf("failed to ensure client cert %v", err) } tlsSecret := &core.Secret{} err = wait.PollUntilContextTimeout(context.Background(), 300*time.Millisecond, 60*time.Minute, true, func(ctx context.Context) (done bool, err error) { - sercretName := opts.DB.GetCertSecretName(api.PostgresClientCert) + fmt.Sprintf("-%s", userName) + sercretName := opts.DB.GetCertSecretName(dbapi.PostgresClientCert) + fmt.Sprintf("-%s", userName) tlsSecret, err = opts.Client.CoreV1().Secrets(ns).Get(ctx, sercretName, metav1.GetOptions{}) if kerr.IsNotFound(err) { @@ -275,7 +275,7 @@ func generateUser(opts *common.PostgresOpts, name string, password string) error return nil } -func ensureClientCert(opts *common.PostgresOpts, apb *appApi.AppBinding, postgres *api.Postgres, alias api.PostgresCertificateAlias, username string) (kutil.VerbType, error) { +func ensureClientCert(opts *common.PostgresOpts, apb *appApi.AppBinding, postgres *dbapi.Postgres, alias dbapi.PostgresCertificateAlias, username string) (kutil.VerbType, error) { var duration, renewBefore *metav1.Duration var subject *cm_api.X509Subject var dnsNames, ipAddresses, uriSANs, emailSANs []string diff --git a/pkg/restarter/elasticsearch.go b/pkg/restarter/elasticsearch.go index 0b9228e70..980dbb3a6 100644 --- a/pkg/restarter/elasticsearch.go +++ b/pkg/restarter/elasticsearch.go @@ -20,7 +20,7 @@ import ( "context" "fmt" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/apis/ops/v1alpha1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" ops "kubedb.dev/apimachinery/client/clientset/versioned/typed/ops/v1alpha1" @@ -58,7 +58,7 @@ func (e *ElasticsearchRestarter) Restart(name, namespace string) (string, error) if err != nil { return "", err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return "", fmt.Errorf("can't restart a database which is not in Ready state") } diff --git a/pkg/restarter/mariadb.go b/pkg/restarter/mariadb.go index 2a10d6a36..daf730107 100644 --- a/pkg/restarter/mariadb.go +++ b/pkg/restarter/mariadb.go @@ -20,7 +20,7 @@ import ( "context" "fmt" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/apis/ops/v1alpha1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" ops "kubedb.dev/apimachinery/client/clientset/versioned/typed/ops/v1alpha1" @@ -58,7 +58,7 @@ func (e *MariaDBRestarter) Restart(name, namespace string) (string, error) { if err != nil { return "", err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return "", fmt.Errorf("can't restart a database which is not in Ready state") } diff --git a/pkg/restarter/mongodb.go b/pkg/restarter/mongodb.go index 324fa5ff1..5db626500 100644 --- a/pkg/restarter/mongodb.go +++ b/pkg/restarter/mongodb.go @@ -20,7 +20,7 @@ import ( "context" "fmt" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/apis/ops/v1alpha1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" ops "kubedb.dev/apimachinery/client/clientset/versioned/typed/ops/v1alpha1" @@ -58,7 +58,7 @@ func (e *MongoDBRestarter) Restart(name, namespace string) (string, error) { if err != nil { return "", err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return "", fmt.Errorf("can't restart a database which is not in Ready state") } diff --git a/pkg/restarter/mysql.go b/pkg/restarter/mysql.go index 8169a2aae..35bd8534b 100644 --- a/pkg/restarter/mysql.go +++ b/pkg/restarter/mysql.go @@ -20,7 +20,7 @@ import ( "context" "fmt" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/apis/ops/v1alpha1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" ops "kubedb.dev/apimachinery/client/clientset/versioned/typed/ops/v1alpha1" @@ -59,7 +59,7 @@ func (e *MySQLRestarter) Restart(name, namespace string) (string, error) { return "", err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return "", fmt.Errorf("can't restart a database which is not in Ready state") } diff --git a/pkg/restarter/postgres.go b/pkg/restarter/postgres.go index 62002f4dd..681b207c3 100644 --- a/pkg/restarter/postgres.go +++ b/pkg/restarter/postgres.go @@ -20,7 +20,7 @@ import ( "context" "fmt" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/apis/ops/v1alpha1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" ops "kubedb.dev/apimachinery/client/clientset/versioned/typed/ops/v1alpha1" @@ -58,7 +58,7 @@ func (e *PostgresRestarter) Restart(name, namespace string) (string, error) { if err != nil { return "", err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return "", fmt.Errorf("can't restart a database which is not in Ready state") } diff --git a/pkg/restarter/redis.go b/pkg/restarter/redis.go index b82938330..c36ca29b6 100644 --- a/pkg/restarter/redis.go +++ b/pkg/restarter/redis.go @@ -20,7 +20,7 @@ import ( "context" "fmt" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "kubedb.dev/apimachinery/apis/ops/v1alpha1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" ops "kubedb.dev/apimachinery/client/clientset/versioned/typed/ops/v1alpha1" @@ -58,7 +58,7 @@ func (e *RedisRestarter) Restart(name, namespace string) (string, error) { if err != nil { return "", err } - if db.Status.Phase != api.DatabasePhaseReady { + if db.Status.Phase != dbapi.DatabasePhaseReady { return "", fmt.Errorf("can't restart a database which is not in Ready state") } diff --git a/pkg/restarter/restarter.go b/pkg/restarter/restarter.go index a05e55e25..0bf8faf76 100644 --- a/pkg/restarter/restarter.go +++ b/pkg/restarter/restarter.go @@ -20,7 +20,7 @@ import ( "errors" "fmt" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "k8s.io/apimachinery/pkg/api/meta" "k8s.io/cli-runtime/pkg/genericclioptions" @@ -40,17 +40,17 @@ func NewRestarter(restClientGetter genericclioptions.RESTClientGetter, mapping * } switch mapping.GroupVersionKind.Kind { - case api.ResourceKindElasticsearch: + case dbapi.ResourceKindElasticsearch: return NewElasticsearchRestarter(clientConfig) - case api.ResourceKindMongoDB: + case dbapi.ResourceKindMongoDB: return NewMongoDBRestarter(clientConfig) - case api.ResourceKindMySQL: + case dbapi.ResourceKindMySQL: return NewMySQLRestarter(clientConfig) - case api.ResourceKindRedis: + case dbapi.ResourceKindRedis: return NewRedisRestarter(clientConfig) - case api.ResourceKindMariaDB: + case dbapi.ResourceKindMariaDB: return NewMariaDBRestarter(clientConfig) - case api.ResourceKindPostgres: + case dbapi.ResourceKindPostgres: return NewPostgresRestarter(clientConfig) default: return nil, fmt.Errorf("unsupporterd kind %s", mapping.GroupVersionKind.Kind) diff --git a/pkg/resumer/elasticsearch.go b/pkg/resumer/elasticsearch.go index 0bdca6068..24c6ef00c 100644 --- a/pkg/resumer/elasticsearch.go +++ b/pkg/resumer/elasticsearch.go @@ -20,7 +20,7 @@ import ( "context" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" @@ -66,7 +66,7 @@ func (e *ElasticsearchResumer) Resume(name, namespace string) (bool, error) { resumeAll := !(e.onlyBackup || e.onlyDb) if e.onlyDb || resumeAll { - _, err = dbutil.UpdateElasticsearchStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.ElasticsearchStatus) (types.UID, *api.ElasticsearchStatus) { + _, err = dbutil.UpdateElasticsearchStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.ElasticsearchStatus) (types.UID, *dbapi.ElasticsearchStatus) { status.Conditions = condutil.RemoveCondition(status.Conditions, kubedb.DatabasePaused) return db.UID, status }, metav1.UpdateOptions{}) diff --git a/pkg/resumer/mariadb.go b/pkg/resumer/mariadb.go index f7369c41d..5647ced86 100644 --- a/pkg/resumer/mariadb.go +++ b/pkg/resumer/mariadb.go @@ -21,7 +21,7 @@ import ( coreapi "kubedb.dev/apimachinery/apis/archiver/v1alpha1" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" pautil "kubedb.dev/cli/pkg/pauser" @@ -86,7 +86,7 @@ func (e *MariaDBResumer) Resume(name, namespace string) (bool, error) { } if e.onlyDb || resumeAll { - _, err = dbutil.UpdateMariaDBStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.MariaDBStatus) (types.UID, *api.MariaDBStatus) { + _, err = dbutil.UpdateMariaDBStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.MariaDBStatus) (types.UID, *dbapi.MariaDBStatus) { status.Conditions = condutil.RemoveCondition(status.Conditions, kubedb.DatabasePaused) return db.UID, status }, metav1.UpdateOptions{}) diff --git a/pkg/resumer/mongodb.go b/pkg/resumer/mongodb.go index b67e3b233..540229009 100644 --- a/pkg/resumer/mongodb.go +++ b/pkg/resumer/mongodb.go @@ -21,7 +21,7 @@ import ( coreapi "kubedb.dev/apimachinery/apis/archiver/v1alpha1" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" pautil "kubedb.dev/cli/pkg/pauser" @@ -87,7 +87,7 @@ func (e *MongoDBResumer) Resume(name, namespace string) (bool, error) { } if e.onlyDb || resumeAll { - _, err = dbutil.UpdateMongoDBStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.MongoDBStatus) (types.UID, *api.MongoDBStatus) { + _, err = dbutil.UpdateMongoDBStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.MongoDBStatus) (types.UID, *dbapi.MongoDBStatus) { status.Conditions = condutil.RemoveCondition(status.Conditions, kubedb.DatabasePaused) return db.UID, status }, metav1.UpdateOptions{}) diff --git a/pkg/resumer/mysql.go b/pkg/resumer/mysql.go index f715752cb..cb6d303d5 100644 --- a/pkg/resumer/mysql.go +++ b/pkg/resumer/mysql.go @@ -21,7 +21,7 @@ import ( coreapi "kubedb.dev/apimachinery/apis/archiver/v1alpha1" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" pautil "kubedb.dev/cli/pkg/pauser" @@ -86,7 +86,7 @@ func (e *MySQLResumer) Resume(name, namespace string) (bool, error) { } if e.onlyDb || resumeAll { - _, err = dbutil.UpdateMySQLStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.MySQLStatus) (types.UID, *api.MySQLStatus) { + _, err = dbutil.UpdateMySQLStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.MySQLStatus) (types.UID, *dbapi.MySQLStatus) { status.Conditions = condutil.RemoveCondition(status.Conditions, kubedb.DatabasePaused) return db.UID, status }, metav1.UpdateOptions{}) diff --git a/pkg/resumer/postgres.go b/pkg/resumer/postgres.go index e0af76f73..f8178027e 100644 --- a/pkg/resumer/postgres.go +++ b/pkg/resumer/postgres.go @@ -21,7 +21,7 @@ import ( coreapi "kubedb.dev/apimachinery/apis/archiver/v1alpha1" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" pautil "kubedb.dev/cli/pkg/pauser" @@ -87,7 +87,7 @@ func (e *PostgresResumer) Resume(name, namespace string) (bool, error) { } if e.onlyDb || resumeAll { - _, err = dbutil.UpdatePostgresStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.PostgresStatus) (types.UID, *api.PostgresStatus) { + _, err = dbutil.UpdatePostgresStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.PostgresStatus) (types.UID, *dbapi.PostgresStatus) { status.Conditions = condutil.RemoveCondition(status.Conditions, kubedb.DatabasePaused) return db.UID, status }, metav1.UpdateOptions{}) diff --git a/pkg/resumer/redis.go b/pkg/resumer/redis.go index 8e94dd00d..bf34e10d3 100644 --- a/pkg/resumer/redis.go +++ b/pkg/resumer/redis.go @@ -20,7 +20,7 @@ import ( "context" "kubedb.dev/apimachinery/apis/kubedb" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" cs "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1" dbutil "kubedb.dev/apimachinery/client/clientset/versioned/typed/kubedb/v1/util" @@ -65,7 +65,7 @@ func (e *RedisResumer) Resume(name, namespace string) (bool, error) { resumeAll := !(e.onlyBackup || e.onlyDb) if e.onlyDb || resumeAll { - _, err = dbutil.UpdateRedisStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *api.RedisStatus) (types.UID, *api.RedisStatus) { + _, err = dbutil.UpdateRedisStatus(context.TODO(), e.dbClient, db.ObjectMeta, func(status *dbapi.RedisStatus) (types.UID, *dbapi.RedisStatus) { status.Conditions = condutil.RemoveCondition(status.Conditions, kubedb.DatabasePaused) return db.UID, status }, metav1.UpdateOptions{}) diff --git a/pkg/resumer/resumer.go b/pkg/resumer/resumer.go index c2c48fefc..0a83c90fd 100644 --- a/pkg/resumer/resumer.go +++ b/pkg/resumer/resumer.go @@ -19,7 +19,7 @@ package resumer import ( "errors" - api "kubedb.dev/apimachinery/apis/kubedb/v1" + dbapi "kubedb.dev/apimachinery/apis/kubedb/v1" "k8s.io/apimachinery/pkg/api/meta" "k8s.io/cli-runtime/pkg/genericclioptions" @@ -39,17 +39,17 @@ func NewResumer(restClientGetter genericclioptions.RESTClientGetter, mapping *me } switch mapping.GroupVersionKind.Kind { - case api.ResourceKindElasticsearch: + case dbapi.ResourceKindElasticsearch: return NewElasticsearchResumer(clientConfig, onlyDb, onlyBackup) - case api.ResourceKindMongoDB: + case dbapi.ResourceKindMongoDB: return NewMongoDBResumer(clientConfig, onlyDb, onlyBackup, onlyArchiver) - case api.ResourceKindMySQL: + case dbapi.ResourceKindMySQL: return NewMySQLResumer(clientConfig, onlyDb, onlyBackup, onlyArchiver) - case api.ResourceKindMariaDB: + case dbapi.ResourceKindMariaDB: return NewMariaDBResumer(clientConfig, onlyDb, onlyBackup, onlyArchiver) - case api.ResourceKindPostgres: + case dbapi.ResourceKindPostgres: return NewPostgresResumer(clientConfig, onlyDb, onlyBackup, onlyArchiver) - case api.ResourceKindRedis: + case dbapi.ResourceKindRedis: return NewRedisResumer(clientConfig, onlyDb, onlyBackup) default: return nil, errors.New("unknown object kind")