* add run as user flag #678
* add run as user flag #678
* add changelog for pr 679
* review comments for pr 679
* review comments for pr 679
* add test for config changes
* add user flag
* chore(e2e): Refactor e2e to better track errors
* Collect results from various `kn` calls to
provide the context
* Changed sub-Run() commands to t.Log() to reduce
the log noise and get file + line information
in the log output
* Removed any Fatal() calls to allows the test
to properly finish
* Only output via t.Log() to get the output at the
proper places and allow Prow to better pick
up the test results.
* Most important: EMOJIS !! 🦆🦆🦆🦆🦆
* chore(e2e): Add more dumpers
* Moar debug
* feature(service update): Add generic mechanism to include retries on conflicts
Move the retry logic for retrying in case of a resource conflict into the KnClient.
* chore: Update unit tests
* added multiple parameters to revision and added e2e test
* add to changelog
* fix changelog table
* fix warning message and revision test
* remove commented lines
* remove 'successfully' from revision output
* added requires one or more revision name
* remove absent revision pre check
* re add nonexist revision
* fixed tests
The error window introduced with #644 had a wrong conditional. Fixed that and added a test which would have detected this.
Also, this should fix some issues which we tried to detect with #659.
* Fix --image flag to only allow single occurence
* Fix changelog link
* Reflect feedback in error message and type name
* Add unit tests
* Reflect unit tests improvement from feedback
* Fix unit tests due to changes in master
Inferring the `sync` param from `fakeServiceUpdate` and `fakeServiceCreate` by the
parameter `--no-wait`.
Simplifies the UTs and also avoids a nasty NPE if the sync param was not (in sync :)
with the `--no-wait` flag.
* 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
* fix(serving): Add an error window for ReadyCondition
A default error window of 2 seconds (not sure if this should be made configurable
as it is hard to explain/document) cause return an error during
sync operations only, if a ReadyCondition == false stays for that
long in false. This is needed to compensate situation where the
condition is false when a race between revision and route creation
occurse during a service creation.
This should fix the flakes we have in our E2E tests as described in #544.
* fix: words, words
* fix(serving): More words + a check
* 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
* Add --pull-secrets flag
Fixes#616
- Add --pull-secrets flag for service create/update operations
- Setting empty string to flag clears the pull secrets
- List ImagePullSecrets for service in `service describe` default output
- Run e2e tests against latets serving v0.12.0 (ImagePullSecrets introduced in v0.11.1 release)
* Space separated field name for describe and update flag help msg
- Update the key name in service describe:
- ImagePullSecrets --> Image Pull Secrets
- ServiceAccount --> Service Account
- Update the help message for --service-account and --pull-secrets
* validate sub command verb (#557)
* fix review comments for pr #555
* validate sub commands
* update error message
* use inner args returned by find func
* return appropriate error message for #557
* return appropriate error message for #557
* Revert "fix review comments for pr #555"
This reverts commit 14ea8d2dc6.
* review comments for pr 589
* misleading error message when verb is bad (#557)
* misleading error message when verb is bad (#557)
* misleading error message when verb is bad (#557)
* refactor,fix(revision list): Refactoring and fixing issues
This PR fixes the following issues of `kn revision list`:
* `kn revision list -A` didn't work as the internal service-get requires a namespace (that from the revision)
* `kn revison list -s myservice myrevision` was not supported
* Service caching assumed that the revision list returned by the server is grouped by servicename. This is not guaranteed.
* `kn revision list -o yaml` returned yaml with the artificial and bogus annotations used for printing out in columns.
The following refactorings were added:
* The main run function was simplified and splitted up in multiple methods
* List-filter handling was made straight forward (and hopefully easier to understand)
I abandoned my initial intention to remove the bogus, temporary, in-memory set annotations for tags and traffic as it does not fit well with the resource printer framework which only works with original K8s resource runtime.Object (and e.g. use serialization directly). I still don't like the hackish approach to add to annotatin (please note, how I need to write a wrapped printed to get rid of the annotations for fixing the `-o yaml` use case, which otherwise prints out those annotations, which are not existant on the server side), but for the sake of simplicity let's keep this (not dogmatic here).
* chore: Simplified
* chore: Some docs update
* fix: wtf
* fix(revision list): Add Namespace column for -A and unified list handling
* fix(revision list): truncate long columns
* add(revision list): Unit test for extracting target and tags
* fix(revision list): Add missing license header
* fix(revision list): Formatting issue
* fix: formatting
* chore: Some cosmetics