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

Remove use of interface{} in types in favor of a struct #723

Closed
jessesuen opened this issue Feb 7, 2018 · 0 comments
Closed

Remove use of interface{} in types in favor of a struct #723

jessesuen opened this issue Feb 7, 2018 · 0 comments
Assignees

Comments

@jessesuen
Copy link
Member

Is this a BUG REPORT or FEATURE REQUEST?: FEATURE REQUEST

What happened:
In the API types, we have the following definition of Item

// Item expands a single workflow step into multiple parallel steps
type Item interface{}

The problem is that our use of the interface{} type does not play well with kube OpenAPI generator, nor with the kube DeepCopy generators. As a result, the withItems field is not included in the OpenAPI spec at the moment, and we have to override the DeepCopy function in the types. Instead of interface{}, we need to define a new type MapOrString similar in function to IntOrString with custom UnmarshalJSON feature.

Environment:

  • Argo version: v2.0.0
@jessesuen jessesuen self-assigned this Feb 7, 2018
@jessesuen jessesuen changed the title Remove use of interface{} in types in favor of a new MapOrString type Remove use of interface{} in types in favor of a struct Feb 11, 2018
icecoffee531 pushed a commit to icecoffee531/argo-workflows that referenced this issue Jan 5, 2022
* feat: Sensor controller re-implementation

* use cloudevent properties instead of multiple subjects

* implment sensor logic

* fix sensor part code

* refac eventbus driver

* fix NATS duplicated clientID issue

* update gateway to use eventbus

* remove unused fileds

* fix test cases

* test case again

* fix

* fix lint issue

* still lint

* clean up

* log change

* defaults nats volume to 10G

* mocks

* not watch service

* remove unused env

* minor
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

1 participant