* chore: Streamlined build.sh
* Merged generate-docs.sh into build.sh
* Split up into smaller functions
* Added serving dependency version to 'kn version' command
Not sure whether the latter is really useful (showing the serving dependency)
as this is might get confused with the knative version
installed on the cluster.
* chore: Fixed indentation
* Tests running simple workflow in e2e
Fixes#104
* Adds e2e test for --force flag while creating service
also removes http:// before the registry name
* Removes the update command
* Adds the service update command back to e2e tests
also increases the sleep time between create and get
This requires updating test-infra to deal with a repo that has no releases yet.
Also use hash and dates from the helper, to keep the binary and the GCS dirs in sync.
Also:
1. New docs for commands
* service get
* revision get
2. Removes auto generated docs tags
3. Auto run generated docs when building to pick up any command changes
* Adds --force flag to service create command / service replace
Fixes#13
* Keeps the resourceVersion of service with --force flag
* Updates the tests
* Removes unnecessary comments
Previously, we were running into errors on computers without cross-compilation C
headers. For simplicity of building, and because we don't need superperformant
net libs, disable cgo.
* Adds info message after service create operation
Fixes#87
Aligns the service delete info message with service create too.
* Updates per review comments
Adds newline after std imports
Line breaks at proper operator
* Renames test names for service get command
also removes unnecessary commented imports
* Adds revision get command
renames `revision list` ==> `revision get`
* Adds tests for revision get command
* Updates the vendors/modules.txt
* Removes revision list command
* Adds service get command
replaces service list command
* Updates go.mod and vendors/*
* Adds message if no services found in requested namespace
* Adds tests for service get
* Adds human-friendly printer
All the credits goes to authors of https://github.com/kubernetes/kubernetes/tree/master/pkg/printers
* Updates the vendor/modules.txt
As its updated after running hack/verify-codegen.sh
* Removes WithKind and WithNamespace printing options
Lets start with bare minimum printer
* Adds licenses
and references the original implementation file link.
Removes pkg/printers/printers.go
* Removes unused imports
* Fix returning the namespace for listing resources
Fixes#86
* Adds license to pkg/kn/commands/namespaced.go
* Adds tests for namespace flags and retrieval
* Renames test function
* added tests for service update with variations of --requests/limits-cpu --requests/limits-memory
* made image optional on service update since that was not the case and image should be optional
* chore: Update dependency to knative-serving 0.5.1
* chore: Changed deps to released versions where possible
Rebuilt mod deps and vendor dir based on this dependency list
github.com/knative/serving v0.5.
github.com/knative/pkg v0.0.0-20190330001454-aad7a9ad4639
github.com/mitchellh/go-homedir v1.1.0
github.com/spf13/cobra v0.0.3
github.com/spf13/pflag v1.0.3
github.com/spf13/viper v1.3.1
k8s.io/api kubernetes-1.14.1
k8s.io/apimachinery kubernetes-1.14.1
k8s.io/cli-runtime kubernetes-1.14.1
k8s.io/client-go v11.0.0
sigs.k8s.io/yaml v1.1.0
Not sure if all dependencies are required (e.g. is k8s.io/api required
to be specified explicitely or shouldn't we rely on k8s.io/client-go
to bring it this as a transitive dependency which maches always
the cli-runtime's version.
* chore: Update .gitignore to *not* ignore certain vendor files
* chore: Aligned with k8s version from serving 0.5.2
* chore: Run `go mod tidy`
* chore(modules): Update dependencies
* Added support for limits and requests of CPU and memory. Examples:
1. kn service create mysvc --image dev.local/ns/image:latest --request-cpu 100m --requests-memory 64Mi
2. kn service create mysvc --image dev.local/ns/image:latest --limits-cpu 1000m --limits-memory 1024Mi
You can also include and/or omit the requests and limits. So the following should also work:
kn service create mysvc --image dev.local/ns/image:latest --request-cpu 1000m --limits-memory 1024Mi
* Addressed comments about maintaining existing requests and limits and added more tests
* TestServiceCreateWithRequests
* TestServiceCreateWithLimits
* TestServiceCreateRequestsLimitsCPU
* TestServiceCreateRequestsLimitsMemory
* TestServiceCreateRequestsLimitsCPUMemory
* updating dependencies and formatting tests code
The final step when printing out the version of the generated kn
binary uses now the proper path, so that this script can be called
from any directory (like when the cwd is hacks/).
* chore(version): Add buildtime and git revision to version command
For that, also updated `hack/build.sh` and `hack/build-binaries.sh` to
set the values from the outside.
The file `hack/NEXT_VERSION` contains the version number of the next
release. A regular build will create version numbers in the format
"0.1.0-20190417" which according to semver.org is a version less
than 0.1.0 (i.e. a pre-release).
A release script should pick up NEXT_VERSION, make the release with
the number found there and then update to the next release, possibly
a minor a release.
* chore(build.sh): Minor cosmetic fixes
* Aligned variable name
* Streamlined console output of build scripts
* Use "2019-04-18 07:40:10" as format for build time as it used as information only
* chore(build.sh): Add GO111MODULE=on
So that the script can be used also when running from within GOPATH
* chore(build.sh): Changed shasum --> sha256sum
... as shasum is not part of coreutils, and sha256sum should be more
generally available. Made the shasum output optional, too.
* chore(build.sh): Changed from BuildTime to BuildDate
... as this better reflects the value, the date when the client was built.
* chore(build.sh): Typo fix
* Adds service delete command
This chageset adds `service delete` command, able to delete a service
at a time.
Fixes#49
```
kn service delete --help
Delete a service
Usage:
kn service delete <SERVICE_NAME> [flags]
Aliases:
delete, del, d
Examples:
# Delete a service 'svc1' in default namespace
kn service delete svc1
# Delete a service 'svc2' in 'ns1' namespace
kn service delete svc2 -n ns1
```
* Removes aliases, PreRunE and addresses review comments
* Support --all-namespaces option for service and revision list
`kn {service, revision} list` does not have the all-namespaces
options. Although it is possible to list them by `kn service list -n
""`(empty string), it is difficult to find such secret trick.
Hence, This patch adds `--all-namespaces` option.
* Add all-namespace option to KnParams
* Add AddNamespaceFlags function
* Add GetNamespace func
* Update help message
* Use GetNamespace util in service create cmmand
* Adds example usage in service create command
Fixes#61
Adds two examples to service create command as below
```
Examples:
kn service create mysvc --image dev.local/ns/image:latest
kn service create mysvc --env KEY1=VALUE1 --env KEY2=VALUE2 --image dev.local/ns/image:latest
```
* Adds double spaces in the example text
Adding double spaces to properly aligns the example
text while displaying help.
* Stub in an integration test
This just calls `kn service list` and verifies it doesn't have a
non-zero exit status.
* Build the client in pre_integration_tests
* Need to explicitly build the `kn` client
As opposed to just building the entire repo. That didn't actually
stick a `kn` binary in the root.
* Address code review feedback
Build the client in e2e-tests.sh instead of presubmit-tests.sh, fix a
couple copy/paste places that referred to eventing, remove unnecessary
knative_teardown function.
* Don't attempt to build kn twice
* Turns out pre_integration_tests() is the easiest way to build kn
We don't have any other good hooks at the moment to do something in
`e2e-tests.sh` that runs only once before the test cluster gets setup.
* Update test-infra to use the new cluster_setup function
This updates the version of test-infra to use the new cluster_setup
function added in https://github.com/knative/test-infra/pull/667
It simplifies our e2e setup logic into one place instead of being
split over presubmit-tests.sh and e2e-tests.sh
* Update vendored test-infra as well
* We have to explicitly tell CI to use the vendored modules
* Be a bit more descriptive in the stubbed out integration test
`service create` command always requires and specify `--image` to run.
This patch changes:
- Add validation check if image is empty or not.
- Add image to `MarkFlagRequired()`.
- to add `--image IMAGE` in help message
Yes, the file is called verify-codegen.sh, and yes in the other
Knative projects it both verifies generated code and verifies vendored
dependencies are up-to-date. For client, it just verifies vendored
dependencies don't drift.
The test-infra scripts specifically look for a file with this name. If
we'd prefer to call this something else, we'll also need to update
test-infra to look for that something else.
* Intermediate.
* Basic creation working
* Simplify
* Simple test passes
* Tests for env var updater, fix to bug found where wasnt getting a pointer
* Add some comments
* Fix env var quoting issues
* More comments from cppforlife
* Fix a couple copyrights
* Adds DEVELOPMENT.md
Fixes#26
Also adds CONTRIBUTING.md which points to knative/docs.
* Links DEVELOPMENT.md with README.md
- also removes the build steps as those are now part of DEVELOPMENT.md
- links the install guide to www.knative.dev/docs/install/
- removes unnecessary GOPATH setup steps
- removes CONTRIBUTING.md as its linked from README.md now
- links all references for contribution guide to https://www.knative.dev/contributing/
* Updates the repo fork step and removes unnecessary heading
* Add SilenceUsage option to cobra command
This patch adds `cmd.SilenceUsage` to command to stop usage output
after command validation.
Fixes https://github.com/knative/client/issues/38
* Set cmd.SilenceUsage to global cmd
* Support generating bash completion
This patch adds subcommand to generate completion script for bash.
As an knative user, we would like to complete subcommands and
options rather than typing them.
* Adds docs about bash auto completion in README.md
This changeset adds auto-completion section in existing README.md
Suggested-by: Navid Shaikh <nshaikh@redhat.com>