stolostron / multicloud-operators-deployable

Multicloud application management with a deployable CRD.
Apache License 2.0
6 stars 12 forks source link

Need to check the difference between `SyncSet` and `Deployable` #10

Open gyliu513 opened 5 years ago

gyliu513 commented 5 years ago

@kuanf can you help check the difference between SyncSet and Deployable?

The SyncSet is a concept in Hive which is very similar with Deployable, here is the document https://github.com/openshift/hive/blob/master/docs/syncset.md

A sample SyncSet is as follows:

---
apiVersion: hive.openshift.io/v1alpha1
kind: SyncSet
metadata:
  name: mygroup
spec:
  clusterDeploymentRefs:
  - name: ClusterName

  resourceApplyMode: Upsert

  resources:
  - apiVersion: user.openshift.io/v1
    kind: Group
    metadata:
      name: mygroup
    users:
    - myuser

  patches:
  - kind: ConfigMap
    apiVersion: v1
    name: foo
    namespace: default
    applyMode: AlwaysApply
    patch: |-
      { "data": { "foo": "new-bar" } }
    patchType: merge

The SyncSet can not only distribute resources to different clusters, but also patch resources in different clusters.

FYI @mdelder @clyang82

kuanf commented 5 years ago

At very high level, they share very similar objective: facilitate resource management in managed clusters. I guess we all acknowledge the needs of having a resource sitting in one k8s without being executed by that k8s. In practice, they’re quite different.