Commit Graph

535 Commits

Author SHA1 Message Date
wslyln 12d718e7af
Support multiple arguments on revision delete (#657)
* 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
2020-02-13 22:45:40 -08:00
Roland Huß 52b56baf52
fix(service wait): Wrong check for error window (#661)
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.
2020-02-13 11:18:36 -08:00
David Simansky 8bca0bdfff
fix(help): initialize default help cmd early (#664) 2020-02-13 03:58:35 -08:00
Navid Shaikh 7573a07a24
Add description for PingSource for 'kn source list-types' (#663)
- also update the description for SinkBinding
2020-02-13 01:52:36 -08:00
Ying Chun Guo f9d907d401
Harmonize list headers for trigger and sources (#658) 2020-02-12 23:40:36 -08:00
Navid Shaikh 3019f6813b
e2e: Dump stdout and describe ksvc (#659)
if the service create/update command execution failed
2020-02-12 09:41:22 -08:00
Ying Chun Guo e0319177d6
Add E2E tests for trigger (#645)
* add integration test for trigger

* update doc
2020-02-12 06:27:22 -08:00
David Simansky dd2dc97f92
Fix --image flag to only allow single occurence (#647)
* 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
2020-02-12 03:11:21 -08:00
dr.max c8c81da46b
fix(#632): refactored UT to remove need of specifying sync twice (#656)
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.
2020-02-11 22:45:21 -08:00
Navid Shaikh 15dec583ca
Implement human readable output for kn route describe (#643)
* 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
2020-02-10 07:46:07 -08:00
David Simansky 50ae82b0cc Fix capitalization of generated flags (#638)
Co-authored-by: Roland Huß <rhuss@redhat.com>
2020-02-08 06:48:14 -08:00
David Simansky 8d2ecca7ae
Rename --async to --no-wait and deprecate it (#639)
* Rename --async to --no-wait and deprecate it

* Polish wording of deprecation warning message
2020-02-08 02:52:14 -08:00
Lv Jiawei 16bbfa37ed
Add E2E test for "kn source binding" commands (#634)
Fixes #631

* Add E2E test for "kn source binding" commands.
* Fix typo.
2020-02-07 14:37:14 -08:00
Roland Huß f634ab90c0
fix(serving): Add an error window for ReadyCondition (#644)
* 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
2020-02-07 12:06:14 -08:00
Roland Huß c3f77df0d6
fix(serving): Fix test method wording (#642) 2020-02-07 03:06:13 -08:00
Roland Huß 1b9a76bc31
feature(serving): Update API to serving.knative.dev/v1 (#640)
* 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
2020-02-07 02:03:14 -08:00
David Simansky e88a873b27
Add e2e test for cmd and arg options (#637) 2020-02-05 09:50:31 -08:00
David Simansky ffdeafe33e
Add support for command and args in service create (#635)
* Add support for command and args in service create

* Add tests for new update functions
2020-02-04 08:45:31 -08:00
Lv Jiawei d82d55731c
Show envFrom when running describe service or revision (#630)
Fixes #626

Show envFrom when running describe service or revison. The result like:
EnvFrom:  cm:test1, cm:test2
2020-02-02 00:19:29 -08:00
Roland Huß 0e5d1a86c8
chore(e2e): Update dependency to eventing v0.12.0 (#628)
* chore(e2e): Update dependency to eventing v0.12.0

* chore: update infa script dependencies

* chore: Update testinfra dep
2020-01-31 02:20:28 -08:00
Roland Huß 164cb5f362
feature(source binding): Support for Sink Binding as source (#625)
* 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
2020-01-29 12:08:27 -08:00
Roland Huß dfd6defcd1
chore: Update changelog for 0.12.0 release (#627) 2020-01-29 11:36:28 -08:00
Ying Chun Guo 00da0064a0 Improve 'source apiserver update --resource' (#590)
* improve 'source apiserver update --resource' to follow the common update semantics

* add more tests and update based on comments

* rebase
2020-01-28 06:49:26 -08:00
dr.max 606de80741 fixes(#598): checks for namespace creation instead of waiting (#611) 2020-01-24 13:44:24 -08:00
Navid Shaikh ff7dffc0a3 Add --pull-secret flag (#617)
* 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
2020-01-22 06:57:25 -08:00
Roland Huß 599f1a5203 chore: Update k8s dependencies and cleaned up a bit (#622)
* chore: Update k8s dependencies and cleaned up a bit

* chore: Moved to k8s 1.16.4 like for serving & eventing

* fix: Add missing go.sum line
2020-01-22 04:57:23 -08:00
Navid Shaikh 8c417c1226 Vendor serving v0.12.0 (#618)
- Vendor serving release v0.12.0
 - Update `kn version command` to print serving v0.12.0
 - Update latest release e2e tests script to setup serving v0.12.0

Co-authored-by: Roland Huß <rhuss@redhat.com>
2020-01-22 00:48:23 -08:00
Roland Huß 5001dcdc16 feature(serving): Add --autoscale-window (#614)
* feature(serving): Add --autoscale-window

Fixes #613

* chore: Update help-text for --autoscale-window

* chore: Add missing generated files
2020-01-22 00:18:23 -08:00
Scott Nichols 9fd763e5dd migrate to the new eventing legacy client (#621)
* migrate to the new eventing legacy client

* ran go mod tidy

* found the ./hack/build.sh file and ran it.
2020-01-21 23:15:23 -08:00
Daniel Helfand a56afabc8a remove printing err when running root command (#615) 2020-01-21 09:58:05 -08:00
Murugappan Chetty de7e3880d4 Fix misleading error message when verb is bad (#589)
* 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)
2020-01-19 23:47:04 -08:00
Roland Huß f26fdb4297 refactor,fix(revision list): Refactoring and fixing issues (#605)
* 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
2020-01-16 13:05:03 -08:00
Navid Shaikh fc488d98c2 Update test-infra: Eventing nightly release YAML rename (#610)
per d5990f0e5a
2020-01-16 11:25:04 -08:00
Roland Huß 1506cb3cf8 refactor(service list): Removed special "default" namespace handling (#608)
Fixes #607.
2020-01-14 07:15:08 -08:00
Ying Chun Guo 71c9238b7e Enable trigger filter to be optional (#603)
* Enable trigger filter to be optional

* remove RemoveFilters from builder
2020-01-13 23:33:04 -08:00
dr.max 3c23f6ad4e simplified service update message to user (#587)
```bash
➜  client git:(master) ✗ ./kn service update summary-fn --untag sync1
Using kn config file: /Users/maximilien/.kn/config.yaml
Updating Service 'summary-fn' in namespace 'default':

  0.089s Ready to serve.

Service 'summary-fn' with latest revision 'summary-fn-nxqwb-41' (unchanged) is available at URL:
http://summary-fn-default.kndemo-267179.sjc03.containers.appdomain.cloud

➜  client git:(master) ✗ ./kn service update summary-fn --image docker.io/drmax/summary-fn:latest
Using kn config file: /Users/maximilien/.kn/config.yaml
Updating Service 'summary-fn' in namespace 'default':

  0.091s The Configuration is still working to reflect the latest desired specification.
  6.317s Ready to serve.

Service 'summary-fn' updated to latest revision 'summary-fn-jfjcy-42' is available at URL:
http://summary-fn-default.kndemo-267179.sjc03.containers.appdomain.cloud
```
2020-01-10 07:16:56 -08:00
Navid Shaikh 6ab9980e16 chore(e2e): Namespace specific k8s resources for tests (#597)
* chore(e2e): Namespace specific k8s resources for tests

 Completes #576
 - For ApiServer source: ClusteRole and ClusterRoleBinding name(s)
   are now test-namespace specific. They are cleared in test's tearDown method.
 - Use constant prefix as:
  clusterRolePrefix        = "apiserver-role-"
  clusterRoleBindingPrefix = "apiserver-binding-"
 - Use constant ServiceAccountName as:
  testServiceAccount = "apiserver-sa"
 - Rename methods and cleanup.

* Use correct format specifier for error as %v instead of %s
2020-01-10 06:50:56 -08:00
dr.max ac2170c1e2 feature(#580): adds traffic and tags information to revision list (#581) 2020-01-10 04:43:56 -08:00
Navid Shaikh b8d571678f chore(e2e): Update tektoncd pipeline release to v0.9.2 (#594)
Fixes #601

 - Also replace deprecated `serviceAccount` with `serviceAccountName`
 - Sync helloworld test image code from https://github.com/knative/docs/tree/master/docs/serving/samples/hello-world/helloworld-go
 - Use local version of buildah task instead of one from catalog, adding `--format=docker` in `buildah bud` command
   - to build and push the image to registry in docker format to match the manifestype `application/vnd.docker.distribution.manifest.v2+json`
 - Update pipeline to add parameter BUILDER_IMAGE and sets it to quay.io/buildah/stable:latest
2020-01-10 03:42:56 -08:00
dr.max a0910db9a9 adds e2e tests for plugins (#591) 2020-01-09 01:25:54 -08:00
Murugappan Chetty 5ecad782d6 review comments for pr 555 (#602) 2020-01-08 15:17:53 -08:00
Martin Gencur 0aa2299818 Remove redundant cleanup in Tekton tests (#600)
* tear down only if the test passes, we want to keep the pods otherwise
so that the dump will show their errors
2020-01-07 10:17:51 -08:00
Lv Jiawei 9de6e612ef Add E2E tests for CronJob source (#599)
Fixes #566
2020-01-07 02:49:51 -08:00
Lv Jiawei e0877da3d6 Delete k8s cluster resource in e2e test (#596)
Fixes #576
2020-01-06 06:59:49 -08:00
Lv Jiawei 99d8b2269b Handling map like options in a same way (#592)
Fixes #577
2020-01-01 22:57:41 -08:00
Naomi Seyfer f1bfafebcc Allow for http and broker sinks (#574)
* 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
2019-12-27 02:54:30 -08:00
Ying Chun Guo d03cbf904c Use the same list flags for list_type, service and route (#582) 2019-12-20 04:50:33 -08:00
dr.max b640219140 load config values from viper if present in config (#468)
* init config flags in root cmd's PersistentPreRunE

* change Cfg.LookupPlugins to pointer to bool

* simplified logic in setting initial config flags from viper config
2019-12-19 02:24:31 -08:00
Lv Jiawei 2b518d1e4e Retrurn error if exist duplicate key in filter option (#575)
fix #569
2019-12-19 01:25:31 -08:00
Navid Shaikh 4486b36782 Fix link in CHANGELOG (#573) 2019-12-18 04:22:05 -08:00