* Implement human readable output for kn route describe
- Keeps the machine readable output
- Align the command description text, check for single argument, reported error messages and unit tests in service, revision, route, source binding describe commands
* Dont print separate section for owner references
* Print Service heading irrespective of owner.Kind == Service
* Align desc, err msg for trigger, apiserver and cronjob source
* feature(serving): Update API to serving.knative.dev/v1
Due to an issue with 0.12.0 (a missing constant) the update also includes an update
to the latest knative-serving and knative-eventing dependencies from master
(as reflected in version.go)
Signed-off-by: Roland Huß <roland@ro14nd.de>
* fix(serving): Bogus import removed
* fix(serving): Add missing go.sum entry
* feature(source binding): Support for Sink Binding as source
Sink bindings are managed like any other source. Sinks are specified as usual (with prefix and name),
'subjects' (the other end of the binding) is managed via a shortcut notation:
* with name: `<kind>:<apiVersion>:<name>`
* with label selector: `<kind>:<apiVersion>:key1=value1,key2=value2`
With `--subject-namespace` and additional namespace can be provided (shoudl be possible for a sink, too but is not yet)
The implementation already uses the new sink binding from the `sources.knative.dev` group
and hence is a bit inconsistent to the still old usage kf `sources.eventing.knative.dev` for apiserver source and cronjob.
However as we will move over to `sources.knative.dev` very soon (right after v0.12.0) release,
this is was more appropriates.
Still WIP, but eventually fixes#624
Task list:
- [X] create
- [] update
- [] delete
- [] describe
- [] list
* fix(source binding): Added missing commands
Also, it looks like that knative eventing 0.12.0 is still on the old api group.
So I need to move this code to use the legacyclient, too, for the sink binding
and only switch over to the new client for 0.13.0
* feature(source binding): Added missing subcommands
* update
* delete
* list
* describe
* fix(source binding): Removed --subject-namespace as this namespace cant b set.
Tuned describe output a bit.
* feat(source binding) add support for CeOverride
* fix: Worked on review comments
* fix: review comments
* fix: names in binding client
* Introduce Broker as a kind of sink, genericize sinks in general
* loltest
* Fix tests for mergeout
* the test file I forgot
* docstrings
* Move fake dynamic client into seprate file
* Pass whole client, not raw client, to resolve sinks
* one more test
* Dont return created ApiServer source object but only error
- After ApiServer source object is created, we don't need it to pass
around in caller function.
* Align creating ApiServer source client, removes unit tests
* Add ApiServer source update command
* Rename TestMockKnClient to TestMockKnCronJobSourceClient
* Add mock client for ApiServer Source and its tests
* Add mock unit tests for create, delete and update
* Add e2e tests for apiserver source update
- Add a test for apiserver source sink update
- Verify the updated sink name after the apiserver source is created
- Update resource names in existing tests
* Uses builder pattern for ApiServer source create command
* Update ApiServer source create/update flags and required config
* Uses builder pattern for ApiServer source update command
* Align create/update/delete description and error messages
* Add unit tests for get/create/update/delete in apiserver_client.go
* Update e2e tests expected output per change in commands output
* Golint fixes, Api -> API and add exported method docs
* Rename a test method and source update command description
* Add ApiServer source describe command
- Add command and unit tests
- TODO for later: Add 'Controller Selector' section for --verbose
* feature(source cronjobs): Implementation of CronJobSource management
Contains create/delete/update/describe but not tests yet.
Still todo:
* Think how to provide a namespace for the sink
* Support for more sinks
* Synchronous mode for create & update
* Add list (or implement "source list")
* chore: Add a mock test for cronjob source
* addd missing license headers
* cosmetic changes
* chore(cronjobsource): Add tests
* fixup
* chore(cronjob source): Improved test coverage
* chore(cronjob source): some review polishing
- Pin contrib.go.opencensus.io/exporter/stackdriver@59d068f8d8ff5b653916aa30cdc4e13c7f15d56e
- Pin knative.dev/pkg@release-0.11
- Move `Destination` from (knative.dev/pkg) v1alpha1 to duckv1beta1
- Run tests against Eventing v0.11.0
* feat: kn source list-types (builtin types)
- Only lists the builtin source types
- Uses client-go dynamic client for listing CRDs
- Adds DyanmicClient interface to KnParams
- Adds printing options
* chore(lint): Address golint suggestions
* Rebase and update venodr/modules.txt
* Adds unit tests for DynamicClient in types.go
* Add kn source list-types command in smoke tests
* Constants for the CRD GVR and source identifier label key value
GVR as:
- Group: apiextensions.k8s.io
- Version: v1beta1
- Resource: customresourcedefinitions
Label as:
{"duck.knative.dev/source": "true"}
* Add tests for dynamic client
* Add description about SinkBinding source type
as - "Binding Pattern for ContainerSource"
* Remove unused imports
* Adds unit tests for list-types command processing
* More unit tests for flags
* Adds e2e tests for kn source list-types
- also test the YAML output
* Sort the source types while listing them
- Update the unit tests accordingly
* Add examples
* Add unit tests for CreateDynamicTestKnCommand
* Fix typo in unit tests
* golint fixes
* Updates to vendor/modules.txt after rebase
* Remove the extra lines