Skip to content

Commit 7695ec1

Browse files
author
Jeff McCormick
committed
minor fixes
1 parent b510f15 commit 7695ec1

File tree

5 files changed

+63
-15
lines changed

5 files changed

+63
-15
lines changed

client/cmd/load.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ func init() {
8282

8383
loadCmd.Flags().StringVarP(&Selector, "selector", "s", "", "The selector to use for cluster filtering ")
8484
loadCmd.Flags().StringVarP(&LoadConfig, "load-config", "l", "", "The load configuration to use that defines the load job")
85-
fmt.Println(" config is " + viper.GetString("PGO.CSVLOAD_TEMPLATE"))
85+
log.Debug(" csvload config is " + viper.GetString("PGO.CSVLOAD_TEMPLATE"))
8686
}
8787

8888
func createLoad(args []string) {

client/cmd/upgrade.go

Lines changed: 40 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ import (
2323
"github.com/crunchydata/postgres-operator/tpr"
2424
"github.com/spf13/cobra"
2525
"github.com/spf13/viper"
26+
"k8s.io/apimachinery/pkg/labels"
27+
2628
kerrors "k8s.io/apimachinery/pkg/api/errors"
2729
meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2830
"strconv"
@@ -42,8 +44,8 @@ var upgradeCmd = &cobra.Command{
4244
pgo upgrade mycluster`,
4345
Run: func(cmd *cobra.Command, args []string) {
4446
log.Debug("upgrade called")
45-
if len(args) == 0 {
46-
fmt.Println(`You must specify the cluster to upgrade.`)
47+
if len(args) == 0 && Selector == "" {
48+
fmt.Println(`You must specify the cluster to upgrade or a selector value.`)
4749
} else {
4850
err := validateCreateUpdate(args)
4951
if err != nil {
@@ -59,6 +61,8 @@ var upgradeCmd = &cobra.Command{
5961

6062
func init() {
6163
RootCmd.AddCommand(upgradeCmd)
64+
upgradeCmd.Flags().StringVarP(&Selector, "selector", "s", "", "The selector to use for cluster filtering ")
65+
6266
upgradeCmd.Flags().StringVarP(&UpgradeType, "upgrade-type", "t", "minor", "The upgrade type to perform either minor or major, default is minor ")
6367
upgradeCmd.Flags().StringVarP(&CCP_IMAGE_TAG, "ccp-image-tag", "c", "", "The CCP_IMAGE_TAG to use for the upgrade target")
6468

@@ -162,6 +166,40 @@ func createUpgrade(args []string) {
162166
var err error
163167
var newInstance *tpr.PgUpgrade
164168

169+
if Selector != "" {
170+
//use the selector instead of an argument list to filter on
171+
172+
myselector, err := labels.Parse(Selector)
173+
if err != nil {
174+
log.Error("could not parse selector flag")
175+
return
176+
}
177+
178+
//get the clusters list
179+
clusterList := tpr.PgClusterList{}
180+
err = Tprclient.Get().
181+
Resource(tpr.CLUSTER_RESOURCE).
182+
Namespace(Namespace).
183+
LabelsSelectorParam(myselector).
184+
Do().
185+
Into(&clusterList)
186+
if err != nil {
187+
log.Error("error getting cluster list" + err.Error())
188+
return
189+
}
190+
191+
if len(clusterList.Items) == 0 {
192+
log.Debug("no clusters found")
193+
} else {
194+
newargs := make([]string, 0)
195+
for _, cluster := range clusterList.Items {
196+
newargs = append(newargs, cluster.Spec.Name)
197+
}
198+
args = newargs
199+
}
200+
201+
}
202+
165203
for _, arg := range args {
166204
log.Debug("create upgrade called for " + arg)
167205
result := tpr.PgUpgrade{}

client/cmd/user.go

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ func userManager() {
107107
return
108108

109109
}
110-
log.Infoln("selector string=[" + sel + "]")
110+
log.Debug("selector string=[" + sel + "]")
111111

112112
myselector, err := labels.Parse(sel)
113113
if err != nil {
@@ -135,6 +135,8 @@ func userManager() {
135135

136136
for _, cluster := range clusterList.Items {
137137

138+
//log.Infoln("working on cluster " + cluster.Spec.Name)
139+
//log.Infof("clusters %v\n", clusterList.Items)
138140
sel = "pg-cluster=" + cluster.Spec.Name + ",!replica"
139141
lo := meta_v1.ListOptions{LabelSelector: sel}
140142
deployments, err := Clientset.ExtensionsV1beta1().Deployments(Namespace).List(lo)
@@ -144,11 +146,10 @@ func userManager() {
144146
}
145147

146148
for _, d := range deployments.Items {
147-
fmt.Println("deployment : " + d.ObjectMeta.Name)
148149
info := getPostgresUserInfo(d.ObjectMeta.Name)
149150

150151
if ChangePasswordForUser != "" {
151-
fmt.Println("changing password of user " + ChangePasswordForUser)
152+
fmt.Println("changing password of user " + ChangePasswordForUser + " on " + d.ObjectMeta.Name)
152153
newPassword := util.GeneratePassword(PasswordLength)
153154
newExpireDate := GeneratePasswordExpireDate(PasswordAgeDays)
154155
err = updatePassword(cluster.Spec.Name, info, ChangePasswordForUser, newPassword, newExpireDate)
@@ -158,11 +159,11 @@ func userManager() {
158159
}
159160
}
160161
if DeleteUser != "" {
161-
fmt.Println("deleting user " + DeleteUser)
162+
fmt.Println("deleting user " + DeleteUser + " from " + d.ObjectMeta.Name)
162163
deleteUser(cluster.Spec.Name, info, DeleteUser)
163164
}
164165
if AddUser != "" {
165-
fmt.Println("adding new user " + AddUser)
166+
fmt.Println("adding new user " + AddUser + " to " + d.ObjectMeta.Name)
166167
addUser(d.ObjectMeta.Name, info, AddUser)
167168
newPassword := util.GeneratePassword(PasswordLength)
168169
newExpireDate := GeneratePasswordExpireDate(PasswordAgeDays)
@@ -418,7 +419,7 @@ func deleteUser(clusterName string, info ConnInfo, user string) {
418419
conn, err = sql.Open("postgres", "sslmode=disable user="+info.Username+" host="+info.Hostip+" port="+info.Port+" dbname="+info.Database+" password="+info.Password)
419420
if err != nil {
420421
log.Debug(err.Error())
421-
os.Exit(2)
422+
//os.Exit(2)
422423
}
423424

424425
var rows *sql.Rows
@@ -428,14 +429,14 @@ func deleteUser(clusterName string, info ConnInfo, user string) {
428429
rows, err = conn.Query(querystr)
429430
if err != nil {
430431
log.Debug(err.Error())
431-
os.Exit(2)
432+
//os.Exit(2)
432433
}
433434
querystr = "drop user if exists " + user
434435
log.Debug(querystr)
435436
rows, err = conn.Query(querystr)
436437
if err != nil {
437438
log.Debug(err.Error())
438-
os.Exit(2)
439+
//os.Exit(2)
439440
}
440441

441442
defer func() {
@@ -450,7 +451,7 @@ func deleteUser(clusterName string, info ConnInfo, user string) {
450451
err = util.DeleteUserSecret(Clientset, clusterName, user, Namespace)
451452
if err != nil {
452453
log.Debug(err.Error())
453-
os.Exit(2)
454+
//os.Exit(2)
454455
}
455456

456457
}

examples/operator/remove-tpr.sh

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,13 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
1616

1717
source $DIR/setup.sh
1818

19+
$CO_CMD delete pgbackups --all
20+
$CO_CMD delete pgclones --all
21+
$CO_CMD delete pgclusters --all
22+
$CO_CMD delete pgpolicies --all
23+
$CO_CMD delete pgpolicylogs --all
24+
$CO_CMD delete pgupgrades --all
25+
1926
$CO_CMD delete thirdpartyresources pg-backup.crunchydata.com \
2027
pg-clone.crunchydata.com \
2128
pg-cluster.crunchydata.com \

operator/cluster/cluster_strategy_1.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ func shutdownCluster(clientset *kubernetes.Clientset, client *rest.RESTClient, c
240240
}
241241

242242
//sleep just a bit to give the drain time to work
243-
time.Sleep(2000 * time.Millisecond)
243+
time.Sleep(9000 * time.Millisecond)
244244

245245
//TODO when client-go 3.0 is ready, use propagation_policy
246246
//in the delete options to also delete the replica sets
@@ -259,6 +259,7 @@ func shutdownCluster(clientset *kubernetes.Clientset, client *rest.RESTClient, c
259259
}
260260
}
261261

262+
/**
262263
//TODO for k8s 1.6 and client-go 3.0 we can use propagation_policy
263264
// to have the replica sets removed as part of the deployment remove
264265
//delete replica sets if they exist
@@ -280,12 +281,13 @@ func shutdownCluster(clientset *kubernetes.Clientset, client *rest.RESTClient, c
280281
log.Info("deleted cluster replicaset " + r.Name + " in namespace " + namespace)
281282
}
282283
}
284+
*/
283285

284286
for _, d := range deployments.Items {
285287
log.Debug("making sure deployment " + d.ObjectMeta.Name + " is deleted")
286-
err := util.WaitUntilDeploymentIsDeleted(clientset, d.ObjectMeta.Name, time.Second*3, namespace)
288+
err := util.WaitUntilDeploymentIsDeleted(clientset, d.ObjectMeta.Name, time.Second*39, namespace)
287289
if err != nil {
288-
log.Error("timeout waiting for deployment " + d.ObjectMeta.Name + " to delete")
290+
log.Error("timeout waiting for deployment " + d.ObjectMeta.Name + " to delete " + err.Error())
289291
}
290292
}
291293

0 commit comments

Comments
 (0)