Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Duplicate CRD for workflows causes id collision when deployed alongside argoproj/argo #367

Closed
donoftime opened this issue Oct 3, 2019 · 1 comment

Comments

@donoftime
Copy link
Contributor

Describe the bug
The CRD for workflows.argoproj.io is duplicated in this project, causing a collision when deployed alongside argoproj/argo

To Reproduce
When argoproj/argo-events is installed alongside argoproj/argo via Kustomize,
there is a collision between the workflow CRD defined by the argo project
and the one which is duplicated in this project. An example of this
issue in action would be a kustomization file which looks like this:

apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
bases:
  - github.com/argoproj/argo//manifests/cluster-install
  - github.com/argoproj/argo-events//hack/k8s/manifests/

A kustomize build with that kustomization.yml results in the following error with kustomize v3.2.0:

Error: accumulating resources: recursed merging from path 'github.com/argoproj/argo-events//hack/k8s/manifests/': may not add resource with an already registered id: apiextensions.k8s.io_v1beta1_CustomResourceDefinition|~X|workflows.argoproj.io

This is due to both argoproj/argo and argoproj/argo-events
defining a CRD for workflows.argoproj.io. Removing the reference to this CRD
from the kustomization.yml in this project will allow both projects to be deployed
alongside each other more easily with kustomize. The workflow CRD
perhaps should be removed from this project entirely.

Expected behavior
A kustomization file referencing argoproj/argo and argoproj/argo-events as bases can build successfully.

donoftime pushed a commit to donoftime/argo-events that referenced this issue Oct 3, 2019
When `argoproj/argo-events` is installed alongside `argoproj/argo` via Kustomize,
there is a collision between the workflow CRD defined by the argo project
and the one which is duplicated in this project. An example of this
issue in action would be a kustomization file which looks like this:

```
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
bases:
  - github.com/argoproj/argo//manifests/cluster-install
  - github.com/argoproj/argo-events//hack/k8s/manifests/
```

A `kustomize build` with that kustomization.yml results in the following error with kustomize v3.2.0:

```
Error: accumulating resources: recursed merging from path 'github.com/argoproj/argo-events//hack/k8s/manifests/': may not add resource with an already registered id: apiextensions.k8s.io_v1beta1_CustomResourceDefinition|~X|workflows.argoproj.io
```

This is due to both `argoproj/argo` and `argoproj/argo-events`
defining a CRD for `workflows.argoproj.io`. Removing the reference to this CRD
from the kustomization.yml in this project will allow both projects to be deployed
alongside each other more easily with kustomize. The workflow CRD
perhaps should be removed from this project entirely.

This commit  addresses the issue reported in argoproj#367
donoftime added a commit to donoftime/argo-events that referenced this issue Oct 3, 2019
When `argoproj/argo-events` is installed alongside `argoproj/argo` via Kustomize,
there is a collision between the workflow CRD defined by the argo project
and the one which is duplicated in this project. An example of this
issue in action would be a kustomization file which looks like this:

```
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
bases:
  - github.com/argoproj/argo//manifests/cluster-install
  - github.com/argoproj/argo-events//hack/k8s/manifests/
```

A `kustomize build` with that kustomization.yml results in the following error with kustomize v3.2.0:

```
Error: accumulating resources: recursed merging from path 'github.com/argoproj/argo-events//hack/k8s/manifests/': may not add resource with an already registered id: apiextensions.k8s.io_v1beta1_CustomResourceDefinition|~X|workflows.argoproj.io
```

This is due to both `argoproj/argo` and `argoproj/argo-events`
defining a CRD for `workflows.argoproj.io`. Removing the reference to this CRD
from the kustomization.yml in this project will allow both projects to be deployed
alongside each other more easily with kustomize. The workflow CRD
perhaps should be removed from this project entirely.

This commit  addresses the issue reported in argoproj#367
@VaibhavPage
Copy link
Contributor

Thanks for #368 .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants