Skip to content

Commit a9aa84d

Browse files
authored
Revendor stash@v0.9.0-rc.3 (#14)
Signed-off-by: Tamal Saha <tamal@appscode.com>
1 parent 450f79b commit a9aa84d

46 files changed

Lines changed: 5874 additions & 3889 deletions

Some content is hidden

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

go.mod

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@ require (
1616
k8s.io/client-go v12.0.0+incompatible
1717
k8s.io/component-base v0.0.0-20191114102325-35a9586014f7
1818
k8s.io/kubectl v0.0.0-20191114113550-6123e1c827f7
19-
kmodules.xyz/client-go v0.0.0-20191219184245-880ab4b0e5db
19+
kmodules.xyz/client-go v0.0.0-20200108114229-70ba8841e60f
2020
kmodules.xyz/objectstore-api v0.0.0-20191127144749-5881939b57f0
21-
kmodules.xyz/offshoot-api v0.0.0-20191204032627-ee9a85c51ab3
21+
kmodules.xyz/offshoot-api v0.0.0-20200103145223-2c4f520520d2
2222
kmodules.xyz/openshift v0.0.0-20191127145035-f6c48a90dbb7
23-
stash.appscode.dev/stash v0.9.0-rc.2.0.20191220142029-ca6885400de1
23+
stash.appscode.dev/stash v0.9.0-rc.3
2424
)
2525

2626
replace (

go.sum

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -637,16 +637,17 @@ k8s.io/utils v0.0.0-20190801114015-581e00157fb1 h1:+ySTxfHnfzZb9ys375PXNlLhkJPLK
637637
k8s.io/utils v0.0.0-20190801114015-581e00157fb1/go.mod h1:sZAwmy6armz5eXlNoLmJcl4F1QuKu7sr+mFQ0byX7Ew=
638638
kmodules.xyz/client-go v0.0.0-20191127054604-26981530831d/go.mod h1:OFxuKCiVR+MYlR2a08FkfaF+IbXkLe0xBetu2LTUuGI=
639639
kmodules.xyz/client-go v0.0.0-20191211192817-f1dcd02124ba/go.mod h1:OFxuKCiVR+MYlR2a08FkfaF+IbXkLe0xBetu2LTUuGI=
640-
kmodules.xyz/client-go v0.0.0-20191219184245-880ab4b0e5db h1:6ucciOzNh6nKC5uN3DetZ/rLtp/mgc3SfFSFL+sZEX0=
641-
kmodules.xyz/client-go v0.0.0-20191219184245-880ab4b0e5db/go.mod h1:OFxuKCiVR+MYlR2a08FkfaF+IbXkLe0xBetu2LTUuGI=
640+
kmodules.xyz/client-go v0.0.0-20200105092743-4b797c0c0802/go.mod h1:OFxuKCiVR+MYlR2a08FkfaF+IbXkLe0xBetu2LTUuGI=
641+
kmodules.xyz/client-go v0.0.0-20200108114229-70ba8841e60f h1:5ESkNkJbL/oqn82REmxuQUm4WKVFZeuU3P4mEvI24JM=
642+
kmodules.xyz/client-go v0.0.0-20200108114229-70ba8841e60f/go.mod h1:OFxuKCiVR+MYlR2a08FkfaF+IbXkLe0xBetu2LTUuGI=
642643
kmodules.xyz/constants v0.0.0-20191024095500-cd4313df4aa6/go.mod h1:DbiFk1bJ1KEO94t1SlAn7tzc+Zz95rSXgyUKa2nzPmY=
643644
kmodules.xyz/crd-schema-fuzz v0.0.0-20191129174258-81f984340891/go.mod h1:9NXNZ4xhqof0WngtIuo4vl+WoCQpLJEJcyuEo3mPpiM=
644645
kmodules.xyz/custom-resources v0.0.0-20191130062942-f41b54f62419 h1:o6KD8XMxdyRR3rqScTsWvcufFDT7vQBnYXpHUp6UtRg=
645646
kmodules.xyz/custom-resources v0.0.0-20191130062942-f41b54f62419/go.mod h1:EksiAQK3p3bVU5cNBjLT0z5V7er1tvWLBWILTuf6G/0=
646647
kmodules.xyz/objectstore-api v0.0.0-20191127144749-5881939b57f0 h1:ilgkGU/bteKRvH99piXxU8b2c1E9lwxb0sDpLLhy4iY=
647648
kmodules.xyz/objectstore-api v0.0.0-20191127144749-5881939b57f0/go.mod h1:AE1rz+T/3dlUwH5pLgCNghWeeFfeVBnBXKJVpsLHlmc=
648-
kmodules.xyz/offshoot-api v0.0.0-20191204032627-ee9a85c51ab3 h1:DW3lX0hZzx14WTNCU+RTWU2eKZ4xbKpUvYVy6S5OtBc=
649-
kmodules.xyz/offshoot-api v0.0.0-20191204032627-ee9a85c51ab3/go.mod h1:k1M+OOFHbMeS6N6OB2j9smKfMCyQOEQjZ3SLZ/KSe+w=
649+
kmodules.xyz/offshoot-api v0.0.0-20200103145223-2c4f520520d2 h1:c/wxNy8KgaS8v/htruqtL0YgrKciUKroK1zXPVZHuqg=
650+
kmodules.xyz/offshoot-api v0.0.0-20200103145223-2c4f520520d2/go.mod h1:k1M+OOFHbMeS6N6OB2j9smKfMCyQOEQjZ3SLZ/KSe+w=
650651
kmodules.xyz/openshift v0.0.0-20191127054841-113eeb13704f/go.mod h1:de9+Zk2+wtGhRmGFBZ9T4+0lJZr4rHXW0dHffCaeO+g=
651652
kmodules.xyz/openshift v0.0.0-20191127145035-f6c48a90dbb7 h1:9PImU28r8bt+QoW7FkYbJ+prsZSNtwctLeXJj3wJK5U=
652653
kmodules.xyz/openshift v0.0.0-20191127145035-f6c48a90dbb7/go.mod h1:de9+Zk2+wtGhRmGFBZ9T4+0lJZr4rHXW0dHffCaeO+g=
@@ -664,6 +665,6 @@ sigs.k8s.io/kustomize v2.0.3+incompatible/go.mod h1:MkjgH3RdOWrievjo6c9T245dYlB5
664665
sigs.k8s.io/structured-merge-diff v0.0.0-20190817042607-6149e4549fca/go.mod h1:IIgPezJWb76P0hotTxzDbWsMYB8APh18qZnxkomBpxA=
665666
sigs.k8s.io/yaml v1.1.0 h1:4A07+ZFc2wgJwo8YNlQpr1rVlgUDlxXHhPJciaPY5gs=
666667
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=
667-
stash.appscode.dev/stash v0.9.0-rc.2.0.20191220142029-ca6885400de1 h1:f8U9rRn+HK14rMeACXI4XWPygJYLAvzxvpfXEn3t0G0=
668-
stash.appscode.dev/stash v0.9.0-rc.2.0.20191220142029-ca6885400de1/go.mod h1:XGmFKv77U95iI1P8FHMAiotv615kYLY9dKq14wPUs+M=
668+
stash.appscode.dev/stash v0.9.0-rc.3 h1:31g/AeYfZwayvynNh72kqRCUzson9kj3YRnrI2V9rPs=
669+
stash.appscode.dev/stash v0.9.0-rc.3/go.mod h1:2oNiS7Vg3PKZxT6u2Q1+etbTEPNFOpR0/hx1kxnGVOU=
669670
vbom.ml/util v0.0.0-20160121211510-db5cfe13f5cc/go.mod h1:so/NYdZXCz+E3ZpW0uAoCj6uzU2+8OWDFv/HxUSs7kI=

pkg/clone_pvc.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -172,9 +172,6 @@ func restorePVC(pvc *core.PersistentVolumeClaim, repoName string) error {
172172
PartialObjectMeta: ofst.PartialObjectMeta{
173173
Name: pvc.Name,
174174
Namespace: dstNamespace,
175-
CreationTimestamp: metav1.Time{
176-
Time: time.Now(),
177-
},
178175
},
179176
Spec: core.PersistentVolumeClaimSpec{
180177
StorageClassName: pvc.Spec.StorageClassName,

pkg/create_restoresession.go

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ package pkg
1717

1818
import (
1919
"fmt"
20-
"time"
2120

21+
"stash.appscode.dev/stash/apis"
2222
"stash.appscode.dev/stash/apis/stash/v1beta1"
2323
v1beta1_util "stash.appscode.dev/stash/client/clientset/versioned/typed/stash/v1beta1/util"
2424
"stash.appscode.dev/stash/pkg/util"
@@ -162,7 +162,7 @@ func (opt restoreSessionOption) setRestoreTarget(restoreSession *v1beta1.Restore
162162
APIGroup: types.StringP(vs.GroupName),
163163
}
164164
} else {
165-
if opt.targetRef.Kind != "" && util.BackupModel(opt.targetRef.Kind) == util.ModelSidecar {
165+
if opt.targetRef.Kind != "" && util.BackupModel(opt.targetRef.Kind) == apis.ModelSidecar {
166166
restoreSession.Spec.Target = &v1beta1.RestoreTarget{
167167
Ref: opt.targetRef,
168168
}
@@ -192,9 +192,6 @@ func (opt restoreSessionOption) getRestoredPVCTemplates() []ofst.PersistentVolum
192192
PartialObjectMeta: ofst.PartialObjectMeta{
193193
Name: opt.volumeClaimTemplate.name,
194194
Namespace: namespace,
195-
CreationTimestamp: metav1.Time{
196-
Time: time.Now(),
197-
},
198195
},
199196
Spec: core.PersistentVolumeClaimSpec{
200197
AccessModes: getPVAccessModes(opt.volumeClaimTemplate.accessModes),

pkg/trigger.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ package pkg
1818
import (
1919
"fmt"
2020

21+
"stash.appscode.dev/stash/apis"
2122
"stash.appscode.dev/stash/apis/stash/v1beta1"
2223
cs "stash.appscode.dev/stash/client/clientset/versioned"
23-
"stash.appscode.dev/stash/pkg/util"
2424

2525
"github.com/appscode/go/log"
2626
"github.com/pkg/errors"
@@ -71,15 +71,15 @@ func NewCmdTriggerBackup(clientGetter genericclioptions.RESTClientGetter) *cobra
7171
}
7272

7373
func triggerBackup(backupConfig *v1beta1.BackupConfiguration, client cs.Interface) (*v1beta1.BackupSession, error) {
74-
7574
// create backupSession for backupConfig
7675
backupSession := &v1beta1.BackupSession{
7776
ObjectMeta: metav1.ObjectMeta{
7877
GenerateName: backupConfig.Name + "-",
7978
Namespace: backupConfig.Namespace,
8079
Labels: map[string]string{
81-
util.LabelApp: util.AppLabelStash,
82-
util.LabelBackupConfiguration: backupConfig.Name,
80+
apis.LabelApp: apis.AppLabelStash,
81+
apis.LabelInvokerType: "BackupConfiguration",
82+
apis.LabelInvokerName: backupConfig.Name,
8383
},
8484
},
8585
Spec: v1beta1.BackupSessionSpec{

vendor/kmodules.xyz/client-go/core/v1/node.go

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,23 @@ limitations under the License.
1717
package v1
1818

1919
import (
20+
"context"
21+
22+
meta_util "kmodules.xyz/client-go/meta"
23+
2024
"github.com/golang/glog"
2125
"github.com/pkg/errors"
2226
core "k8s.io/api/core/v1"
2327
kerr "k8s.io/apimachinery/pkg/api/errors"
28+
"k8s.io/apimachinery/pkg/api/meta"
2429
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
30+
"k8s.io/apimachinery/pkg/runtime"
2531
"k8s.io/apimachinery/pkg/types"
32+
"k8s.io/apimachinery/pkg/util/sets"
2633
"k8s.io/apimachinery/pkg/util/strategicpatch"
2734
"k8s.io/apimachinery/pkg/util/wait"
2835
"k8s.io/client-go/kubernetes"
36+
"k8s.io/client-go/tools/pager"
2937
kutil "kmodules.xyz/client-go"
3038
)
3139

@@ -112,3 +120,56 @@ func IsMaster(node core.Node) bool {
112120
role16, ok16 := node.Labels["kubernetes.io/role"]
113121
return ok17 || (ok16 && role16 == "master")
114122
}
123+
124+
func Topology(kc kubernetes.Interface) (regions map[string][]string, instances map[string]int, err error) {
125+
// TODO: Use https://github.com/kubernetes/client-go/blob/kubernetes-1.17.0/metadata/interface.go once upgraded to 1.17
126+
127+
mapRegion := make(map[string]sets.String)
128+
instances = make(map[string]int)
129+
130+
lister := pager.New(pager.SimplePageFunc(func(opts metav1.ListOptions) (runtime.Object, error) {
131+
return kc.CoreV1().Nodes().List(opts)
132+
}))
133+
err = lister.EachListItem(context.Background(), metav1.ListOptions{Limit: 100}, func(obj runtime.Object) error {
134+
m, err := meta.Accessor(obj)
135+
if err != nil {
136+
return err
137+
}
138+
139+
annotations := m.GetAnnotations()
140+
141+
os, _ := meta_util.GetStringValueForKeys(annotations, "kubernetes.io/os", "beta.kubernetes.io/os")
142+
if os != "linux" {
143+
return nil
144+
}
145+
arch, _ := meta_util.GetStringValueForKeys(annotations, "kubernetes.io/arch", "beta.kubernetes.io/arch")
146+
if arch != "amd64" {
147+
return nil
148+
}
149+
150+
region, _ := meta_util.GetStringValueForKeys(annotations, "topology.kubernetes.io/region", "failure-domain.beta.kubernetes.io/region")
151+
zone, _ := meta_util.GetStringValueForKeys(annotations, "topology.kubernetes.io/zone", "failure-domain.beta.kubernetes.io/zone")
152+
if _, ok := mapRegion[region]; !ok {
153+
mapRegion[region] = sets.NewString()
154+
}
155+
mapRegion[region].Insert(zone)
156+
157+
instance, _ := meta_util.GetStringValueForKeys(annotations, "node.kubernetes.io/instance-type", "beta.kubernetes.io/instance-type")
158+
if n, ok := instances[instance]; ok {
159+
instances[instance] = n + 1
160+
} else {
161+
instances[instance] = 1
162+
}
163+
164+
return nil
165+
})
166+
if err != nil {
167+
return nil, nil, err
168+
}
169+
170+
regions = make(map[string][]string)
171+
for k, v := range mapRegion {
172+
regions[k] = v.List()
173+
}
174+
return regions, instances, nil
175+
}

vendor/kmodules.xyz/client-go/meta/annotations.go

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,3 +174,16 @@ func ParseFor(key string, fn ParserFunc) GetFunc {
174174
return fn(m, key)
175175
}
176176
}
177+
178+
func GetStringValueForKeys(m map[string]string, key string, alts ...string) (string, error) {
179+
if m == nil {
180+
return "", kutil.ErrNotFound
181+
}
182+
keys := append([]string{key}, alts...)
183+
for _, k := range keys {
184+
if v, ok := m[k]; ok {
185+
return v, nil
186+
}
187+
}
188+
return "", kutil.ErrNotFound
189+
}

0 commit comments

Comments
 (0)