Skip to content

Commit 38511c6

Browse files
Merge branch 'develop' into develop
2 parents 4867973 + cf986d2 commit 38511c6

File tree

5,643 files changed

+2308281
-1818
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

5,643 files changed

+2308281
-1818
lines changed

Godeps/Godeps.json

Lines changed: 0 additions & 1718 deletions
This file was deleted.

Gopkg.lock

Lines changed: 605 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Gopkg.toml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[[constraint]]
2+
name = "k8s.io/apimachinery"
3+
version = "kubernetes-1.9.0"
4+
5+
[[constraint]]
6+
name = "k8s.io/client-go"
7+
version = "6.0.0"
8+
9+
[[constraint]]
10+
name = "k8s.io/api"
11+
version = "kubernetes-1.9.0"

apis/cr/v1/task.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ import (
2222
// PgtaskResourcePlural ...
2323
const PgtaskResourcePlural = "pgtasks"
2424

25+
const PgtaskAddPgpool = "add-pgpool"
26+
const PgtaskDeletePgpool = "delete-pgpool"
2527
const PgtaskDeleteBackups = "delete-backups"
2628
const PgtaskDeleteData = "delete-data"
2729
const PgtaskFailover = "failover"

apiserver.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import (
2929
"github.com/crunchydata/postgres-operator/apiserver/ingestservice"
3030
"github.com/crunchydata/postgres-operator/apiserver/labelservice"
3131
"github.com/crunchydata/postgres-operator/apiserver/loadservice"
32+
"github.com/crunchydata/postgres-operator/apiserver/pgpoolservice"
3233
"github.com/crunchydata/postgres-operator/apiserver/policyservice"
3334
"github.com/crunchydata/postgres-operator/apiserver/pvcservice"
3435
"github.com/crunchydata/postgres-operator/apiserver/reloadservice"
@@ -120,6 +121,8 @@ func main() {
120121
r.HandleFunc("/reload", reloadservice.ReloadHandler).Methods("POST")
121122
r.HandleFunc("/failover", failoverservice.CreateFailoverHandler).Methods("POST")
122123
r.HandleFunc("/failover/{name}", failoverservice.QueryFailoverHandler).Methods("GET")
124+
r.HandleFunc("/pgpool", pgpoolservice.CreatePgpoolHandler).Methods("POST")
125+
r.HandleFunc("/pgpooldelete", pgpoolservice.DeletePgpoolHandler).Methods("POST")
123126

124127
caCert, err := ioutil.ReadFile(serverCert)
125128
if err != nil {

apiserver/backrestservice/backrestimpl.go

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import (
2525
"github.com/crunchydata/postgres-operator/util"
2626
"k8s.io/api/core/v1"
2727
meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
28-
//"time"
28+
"time"
2929
)
3030

3131
const backrestCommand = "pgbackrest"
@@ -107,8 +107,24 @@ func CreateBackup(request *msgs.CreateBackrestBackupRequest) msgs.CreateBackrest
107107

108108
//remove any previous backup job
109109

110-
kubeapi.DeleteJobs(apiserver.Clientset, util.LABEL_PG_CLUSTER+"="+clusterName+","+util.LABEL_BACKREST+"=true", apiserver.Namespace)
111-
//time.Sleep(time.Seconds * 2)
110+
selector := util.LABEL_PG_CLUSTER + "=" + clusterName + "," + util.LABEL_BACKREST + "=true"
111+
err = kubeapi.DeleteJobs(apiserver.Clientset, selector, apiserver.Namespace)
112+
if err != nil {
113+
log.Error(err)
114+
}
115+
116+
//a hack sort of due to slow propagation
117+
for i := 0; i < 3; i++ {
118+
jobList, err := kubeapi.GetJobs(apiserver.Clientset, selector, apiserver.Namespace)
119+
if err != nil {
120+
log.Error(err)
121+
}
122+
if len(jobList.Items) > 0 {
123+
log.Debug("sleeping a bit for delete job propagation")
124+
time.Sleep(time.Second * 2)
125+
}
126+
}
127+
112128
}
113129

114130
//get pod name from cluster

apiserver/backrestservice/backrestservice.go

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,12 @@ import (
3030
// pgo backup --selector=name=mycluster
3131
// pgo backup mycluster
3232
func CreateBackupHandler(w http.ResponseWriter, r *http.Request) {
33-
var err error
34-
3533
log.Debug("backrestservice.CreateBackupHandler called")
3634

3735
var request msgs.CreateBackrestBackupRequest
3836
_ = json.NewDecoder(r.Body).Decode(&request)
3937

40-
err = apiserver.Authn(apiserver.CREATE_BACKUP_PERM, w, r)
38+
err := apiserver.Authn(apiserver.CREATE_BACKUP_PERM, w, r)
4139
if err != nil {
4240
return
4341
}
@@ -46,10 +44,6 @@ func CreateBackupHandler(w http.ResponseWriter, r *http.Request) {
4644
w.Header().Set("Content-Type", "application/json")
4745

4846
resp := CreateBackup(&request)
49-
if err != nil {
50-
resp.Status.Code = msgs.Error
51-
resp.Status.Msg = err.Error()
52-
}
5347

5448
json.NewEncoder(w).Encode(resp)
5549
}

apiserver/backupservice/backupservice.go

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -94,26 +94,19 @@ func DeleteBackupHandler(w http.ResponseWriter, r *http.Request) {
9494
// pgo backup --selector=name=mycluster
9595
// pgo backup mycluster
9696
func CreateBackupHandler(w http.ResponseWriter, r *http.Request) {
97-
var err error
98-
9997
log.Debug("backupservice.CreateBackupHandler called")
10098

10199
var request msgs.CreateBackupRequest
102100
_ = json.NewDecoder(r.Body).Decode(&request)
103101

104-
err = apiserver.Authn(apiserver.CREATE_BACKUP_PERM, w, r)
102+
err := apiserver.Authn(apiserver.CREATE_BACKUP_PERM, w, r)
105103
if err != nil {
106104
return
107105
}
108-
109106
w.WriteHeader(http.StatusOK)
110107
w.Header().Set("Content-Type", "application/json")
111108

112109
resp := CreateBackup(&request)
113-
if err != nil {
114-
resp.Status.Code = msgs.Error
115-
resp.Status.Msg = err.Error()
116-
}
117110

118111
json.NewEncoder(w).Encode(resp)
119112
}

apiserver/clusterservice/clusterimpl.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ func GetPods(cluster *crv1.Pgcluster) ([]msgs.ShowClusterPod, error) {
186186
output := make([]msgs.ShowClusterPod, 0)
187187

188188
//get pods, but exclude pgpool and backup pods
189-
selector := util.LABEL_PGBACKUP + "!=true," + util.LABEL_PGBACKUP + "!=false," + util.LABEL_PGPOOL + "!=true," + util.LABEL_PG_CLUSTER + "=" + cluster.Spec.Name
189+
selector := util.LABEL_PGBACKUP + "!=true," + util.LABEL_PGBACKUP + "!=false," + util.LABEL_PG_CLUSTER + "=" + cluster.Spec.Name
190190

191191
pods, err := kubeapi.GetPods(apiserver.Clientset, selector, apiserver.Namespace)
192192
if err != nil {

apiserver/common.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ import (
2828
func GetSecrets(cluster *crv1.Pgcluster) ([]msgs.ShowUserSecret, error) {
2929

3030
output := make([]msgs.ShowUserSecret, 0)
31-
selector := "pgpool!=true," + util.LABEL_PG_DATABASE + "=" + cluster.Spec.Name
31+
selector := util.LABEL_PGPOOL + "!=true," + util.LABEL_PG_DATABASE + "=" + cluster.Spec.Name
3232

3333
secrets, err := kubeapi.GetSecrets(Clientset, selector, Namespace)
3434
if err != nil {

0 commit comments

Comments
 (0)