Skip to content

Commit 66f5813

Browse files
author
ianzhang366
authored
possible synchronizer refactor solution (#182)
* possible synchronizer refactor solution Signed-off-by: ianzhang366 <[email protected]> * unify the reconcile manager start up for namespace reconciler to fix test error Signed-off-by: ianzhang366 <[email protected]> * fix lint Signed-off-by: ianzhang366 <[email protected]> * fix naming Signed-off-by: ianzhang366 <[email protected]> * refacotor sync tests Signed-off-by: ianzhang366 <[email protected]> * fix CRD update Signed-off-by: ianzhang366 <[email protected]> * enable all test cases Signed-off-by: ianzhang366 <[email protected]> * apply to all sub reconcile Signed-off-by: ianzhang366 <[email protected]> * working on e2e example Signed-off-by: ianzhang366 <[email protected]> * fix lint Signed-off-by: ianzhang366 <[email protected]> * fix lint Signed-off-by: ianzhang366 <[email protected]> * fix lint Signed-off-by: ianzhang366 <[email protected]> * fix lint Signed-off-by: ianzhang366 <[email protected]> * upgrade kubebuilder version on travis Signed-off-by: ianzhang366 <[email protected]> * fix the variable scope issue Signed-off-by: ianzhang366 <[email protected]> * fix sec issue Signed-off-by: ianzhang366 <[email protected]> * fix syntax Signed-off-by: ianzhang366 <[email protected]>
1 parent 5a0ce5c commit 66f5813

Some content is hidden

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

41 files changed

+1897
-1255
lines changed

Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ lint: lint-all
111111
############################################################
112112

113113
test:
114+
@kubebuilder version
114115
@go test ${TESTARGS} ./...
115116

116117
############################################################

build-harness-extensions

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
Subproject commit 0f606076cbb165f8673ce0729312bb6cbccb29c1
1+
Subproject commit 9793735f99f93752000aa5856502aff9e12ebd05

build/run-unit-tests.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,15 @@ echo "Install Kubebuilder components for test framework usage!"
2121

2222
_OS=$(go env GOOS)
2323
_ARCH=$(go env GOARCH)
24-
24+
KubeBuilderVersion="2.3.1"
2525
# download kubebuilder and extract it to tmp
26-
curl -L https://go.kubebuilder.io/dl/2.2.0/"${_OS}"/"${_ARCH}" | tar -xz -C /tmp/
26+
curl -L https://go.kubebuilder.io/dl/"$KubeBuilderVersion"/"${_OS}"/"${_ARCH}" | tar -xz -C /tmp/
2727

2828
# move to a long-term location and put it on your path
2929
# (you'll need to set the KUBEBUILDER_ASSETS env var if you put it somewhere else)
30-
sudo mv /tmp/kubebuilder_2.2.0_"${_OS}"_"${_ARCH}" /usr/local/kubebuilder
30+
sudo mv /tmp/kubebuilder_"$KubeBuilderVersion"_"${_OS}"_"${_ARCH}" /usr/local/kubebuilder
3131
export PATH=$PATH:/usr/local/kubebuilder/bin
3232

3333
# Run unit test
3434
export IMAGE_NAME_AND_VERSION=${1}
35-
make test
35+
make test

cmd/uninstall-crd/uninstall-crd.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,17 @@ import (
1818
"fmt"
1919
"os"
2020

21-
dplapis "github.com/open-cluster-management/multicloud-operators-deployable/pkg/apis"
22-
releaseapis "github.com/open-cluster-management/multicloud-operators-subscription-release/pkg/apis"
23-
subapis "github.com/open-cluster-management/multicloud-operators-subscription/pkg/apis"
24-
"github.com/open-cluster-management/multicloud-operators-subscription/pkg/utils"
2521
clientsetx "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset"
2622
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2723
"k8s.io/klog"
2824
"sigs.k8s.io/controller-runtime/pkg/client"
2925
"sigs.k8s.io/controller-runtime/pkg/client/config"
3026
"sigs.k8s.io/controller-runtime/pkg/manager"
27+
28+
dplapis "github.com/open-cluster-management/multicloud-operators-deployable/pkg/apis"
29+
releaseapis "github.com/open-cluster-management/multicloud-operators-subscription-release/pkg/apis"
30+
subapis "github.com/open-cluster-management/multicloud-operators-subscription/pkg/apis"
31+
"github.com/open-cluster-management/multicloud-operators-subscription/pkg/utils"
3132
)
3233

3334
var (
Lines changed: 34 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,59 @@
11
---
22
apiVersion: v1
33
kind: Namespace
4+
metadata:
5+
name: git-sub-ns
6+
---
7+
apiVersion: v1
8+
kind: Namespace
49
metadata:
510
name: ch-git
611
---
12+
apiVersion: app.k8s.io/v1beta1
13+
kind: Application
14+
metadata:
15+
name: git-sub-app
16+
namespace: git-sub-ns
17+
spec:
18+
componentKinds:
19+
- group: apps.open-cluster-management.io
20+
kind: Subscription
21+
descriptor: {}
22+
selector:
23+
matchLabels:
24+
name: git-sub
25+
---
726
apiVersion: apps.open-cluster-management.io/v1
827
kind: Channel
928
metadata:
1029
name: git
1130
namespace: ch-git
31+
labels:
32+
name: git-sub
1233
spec:
1334
type: GitHub
14-
pathname: https://github.com/IBM/charts.git
35+
pathname: https://github.com/ianzhang366/acm-applifecycle-samples.git
1536
configMapRef:
16-
name: ibm-mongodb-dev-cm
37+
name: guestbook
38+
kind: configmap
1739
---
1840
apiVersion: v1
19-
data:
20-
path: stable/ibm-mongodb-dev
2141
kind: ConfigMap
2242
metadata:
23-
name: ibm-mongodb-dev-cm
43+
name: guestbook
2444
namespace: ch-git
25-
---
26-
apiVersion: v1
27-
kind: Namespace
28-
metadata:
29-
name: git-sub-ns
45+
labels:
46+
name: git-sub
47+
data:
48+
path: git-ops/bookinfo/guestbook
3049
---
3150
apiVersion: apps.open-cluster-management.io/v1
3251
kind: PlacementRule
3352
metadata:
3453
name: towhichcluster
3554
namespace: git-sub-ns
55+
labels:
56+
name: git-sub
3657
spec:
3758
clusterReplicas: 1
3859
clusterLabels:
@@ -44,6 +65,8 @@ kind: Subscription
4465
metadata:
4566
name: git-sub
4667
namespace: git-sub-ns
68+
labels:
69+
name: git-sub
4770
spec:
4871
channel: ch-git/git
4972
placement:
@@ -52,18 +75,4 @@ spec:
5275
kind: PlacementRule
5376
packageFilter:
5477
filterRef:
55-
name: ibm-mongodb-dev-cm
56-
packageOverrides:
57-
- packageName: ibm-mongodb-dev
58-
packageOverrides:
59-
- path: spec
60-
value:
61-
persistence:
62-
enabled: false
63-
resources:
64-
requests:
65-
memory: 256Mi
66-
cpu: 100m
67-
limits:
68-
cpu: 200m
69-
memory: 500Mi
78+
name: guestbook

examples/e2e_example/helm_channel_e2e.yaml

Lines changed: 27 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,35 @@
11
---
22
apiVersion: v1
33
kind: Namespace
4+
metadata:
5+
name: helm-sub-ns
6+
---
7+
apiVersion: v1
8+
kind: Namespace
49
metadata:
510
name: ch-helm
611
---
12+
apiVersion: app.k8s.io/v1beta1
13+
kind: Application
14+
metadata:
15+
name: helm-sub-app
16+
namespace: helm-sub-ns
17+
spec:
18+
componentKinds:
19+
- group: apps.open-cluster-management.io
20+
kind: Subscription
21+
descriptor: {}
22+
selector:
23+
matchLabels:
24+
name: helm-sub
25+
---
726
apiVersion: v1
827
kind: ConfigMap
928
metadata:
1029
name: skip-cert-verify
1130
namespace: ch-helm
31+
labels:
32+
name: helm-sub
1233
data:
1334
insecureSkipVerify: "true"
1435
---
@@ -17,6 +38,8 @@ kind: Channel
1738
metadata:
1839
name: helm
1940
namespace: ch-helm
41+
labels:
42+
name: helm-sub
2043
spec:
2144
type: HelmRepo
2245
pathname: https://ianzhang366.github.io/guestbook-chart/
@@ -25,16 +48,13 @@ spec:
2548
apiVersion: v1
2649
kind: ConfigMap
2750
---
28-
apiVersion: v1
29-
kind: Namespace
30-
metadata:
31-
name: helm-sub-ns
32-
---
3351
apiVersion: apps.open-cluster-management.io/v1
3452
kind: PlacementRule
3553
metadata:
3654
name: towhichcluster
3755
namespace: helm-sub-ns
56+
labels:
57+
name: helm-sub
3858
spec:
3959
clusterReplicas: 1
4060
clusterLabels:
@@ -46,6 +66,8 @@ kind: Subscription
4666
metadata:
4767
name: helm-sub
4868
namespace: helm-sub-ns
69+
labels:
70+
name: helm-sub
4971
spec:
5072
channel: ch-helm/helm
5173
name: gbapp

examples/e2e_example/namepsace_channel_e2e.yaml

Lines changed: 34 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,35 @@
11
---
22
apiVersion: v1
3+
kind: Namespace
4+
metadata:
5+
name: ns-sub-ns
6+
---
7+
apiVersion: v1
8+
kind: Namespace
9+
metadata:
10+
name: ch-ns
11+
---
12+
apiVersion: app.k8s.io/v1beta1
13+
kind: Application
14+
metadata:
15+
name: ns-sub-app
16+
namespace: ns-sub-ns
17+
spec:
18+
componentKinds:
19+
- group: apps.open-cluster-management.io
20+
kind: Subscription
21+
descriptor: {}
22+
selector:
23+
matchLabels:
24+
name: ns-sub
25+
---
26+
apiVersion: v1
327
kind: Secret
428
metadata:
529
name: dev-test
630
namespace: ch-ns
31+
labels:
32+
name: ns-sub
733
annotations:
834
apps.open-cluster-management.io/deployables: "true"
935
data:
@@ -14,6 +40,8 @@ apiVersion: apps.open-cluster-management.io/v1
1440
kind: Deployable
1541
metadata:
1642
name: payload-cfg-namespace-channel
43+
labels:
44+
name: ns-sub
1745
annotations:
1846
apps.open-cluster-management.io/is-local-deployable: "false"
1947
namespace: default
@@ -28,32 +56,26 @@ spec:
2856
metadata:
2957
name: cfg-from-ch-qa
3058
---
31-
apiVersion: v1
32-
kind: Namespace
33-
metadata:
34-
name: ch-ns
35-
---
3659
apiVersion: apps.open-cluster-management.io/v1
3760
kind: Channel
3861
metadata:
3962
name: ns
4063
namespace: ch-ns
64+
labels:
65+
name: ns-sub
4166
spec:
4267
type: Namespace
4368
pathname: ch-ns
4469
sourceNamespaces:
4570
- default
4671
---
47-
apiVersion: v1
48-
kind: Namespace
49-
metadata:
50-
name: ns-sub-ns
51-
---
5272
apiVersion: apps.open-cluster-management.io/v1
5373
kind: PlacementRule
5474
metadata:
5575
name: towhichcluster
5676
namespace: ns-sub-ns
77+
labels:
78+
name: ns-sub
5779
spec:
5880
clusterReplicas: 1
5981
clusterLabels:
@@ -65,6 +87,8 @@ kind: Subscription
6587
metadata:
6688
name: ns-sub
6789
namespace: ns-sub-ns
90+
labels:
91+
name: ns-sub
6892
spec:
6993
channel: ch-ns/ns
7094
placement:

0 commit comments

Comments
 (0)