-
Notifications
You must be signed in to change notification settings - Fork 263
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
kn secret
for managing secrets
#287
Comments
I don't think that We should first get this supported in the API so that non-Kubernetes based clients can use that as well. I'm afraid, it's not something the client could do right now. |
FWIW, we're moving most of the serving specification stuff to: https://github.com/knative/docs/blob/master/docs/serving/spec/knative-api-specification-1.0.md The omission of Secrets (or ConfigMaps) there was not intended to mean "this cannot be in clients", I believe it was simply "these aren't our resources to specify", or "Gee, I wish K8s had a more formal API specification." 😄 I think it should be acceptable for us to reference from our clients resources that are referenced from our API objects, including:
My $0.02 |
@mattmoor would listing of namespaces also fall in this kind of category ? (as we would have to find out the namespaces available so that a user knows wheter to put her services into ?) |
@mattmoor would it make sense to collect an explicit list of those resource types which are referenced by Knative resources and add them to the spec to have more clarity ? And also, whether this access should be supported as read-write (e.g. ConfigMap, Secret) or read-only (Namespace) ? |
Namespace is an interesting case since it straddles what I generally see as a perceived line between operators and developers (or tenants). If we see For namespaced resources, which all of Secrets, ConfigMaps, and ServiceAccounts are, then I think read/write makes some sense. That said, read-only may be the sweet spot for ServiceAccount because "write" is mainly interesting if you also start to creep in Roles and RoleBindings, ... So I think (again, my $0.02) something like the following makes sense:
WDYT? |
ServiceAccount falls into a different category to me too - but that's not to say I'd be against exposing them via But Namespaces is a common thing people may create as a way to separate their apps. If an operator wants to limit who create them then they would do so via RBAC so |
Especially on namespaces: Are we going to create any additional value here? Or are we literally replacing If it's the latter I feel like it's not really worth getting into that business and just tell people to use kubectl. That also eliminates potential confusion on whether or not Kubernetes namespace == Knative namespace and vice versa. |
I think it's a valuable thing to be able to "use knative" with kn alone. I currently don't think creating a namespace is part of that, but knowing what namespaces you could deploy to is. Kn shouldn't expose istio-system, for example, though.
… On Aug 5, 2019, at 8:38 AM, Doug Davis ***@***.***> wrote:
ServiceAccount falls into a different category to me too - but that's not to say I'd be against exposing them via kn at some point :-)
But Namespaces is a common thing people may create as a way to separate their apps. If an operator wants to limit who create them then they would do so via RBAC so kn doesn't need to get into the permission side of things. However, if RBAC is setup to allow this user to create a namespace then if the first step of their "create a new app"workflow is create a namespace, but they can't do it via kn (and they need to use kubectl) then I feel like we've let them down from a UX perspective.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
* add knative testgrid to README * fix the typo
This issue is stale because it has been open for 90 days with no |
/remove-lifecycle statle I'd like to revisit this one. I feel like thinking has shifted since this was first opened and we should consider expanding the list of objects that |
So if we can agree that I would put them either top-level ( What are the communities thoughts on the usefulness of such a command ? |
I'd prefer top level entities so that all resources a user might need to manage are treated equally. Similar to how we have the eventing resources at the same level as the knService resources. As for duplicating what kubectl does, from a UX perspective the more people can get their job done via one CLI the better the experience, IMO. |
Great to see this idea being discussed! I recently came across this challenge as consumer of Knative and realized that we'd have to ask our end users to switch between @rhuss Your proposal sounds great (prefer top level as well), how do we go about moving this forward? |
That's not true, for So from that pov, I wouldn't mind adding a |
The next step would be to think about the implementation of this feature and how it looks like from the CLI. For larger new features we should create a Feature Track document (like it is common for Knative serving), but for this one I would suggest that we just mimic the way how kubectl implements the secret/cm management. We should just decided whether we want to skip some of the more advanced features for a first step. ConfigMap
Secret
Kubectl differentiates between three kind of secrets, I think we should only focus on the 'generic' secret (not tls secret, no docker secret) The implementation itself should reuse as much as possible for the kubectl client library. The first step would be to analyse how However, first of all we need to think where to put the command. I add a poll in the next two comment. This pool is open until the end of the week. @lamw Would you be interested into implementing this feature ? |
Option A:
Please vote with 👍 if you in favour of this option (don't vote down please) |
Option B
Please vote with 👍 if you in favour of this option (don't vote down please) |
Please vote Option A or B until EOD PDT of February 19th. |
Have a copy and support all options as kubectl create secret including registry creds. alias “kn secret create”=”kubectl create secret” |
Thanks for the write-up @rhuss and no, I'm not a developer, so I wouldn't be able to help with the implementation but more than happy to help with the testing/consumption :) |
I think @csantanapr raises a good point: if we simply mimic |
@embano1 the reasoning above was to add a kubectl feature 1:1 to allow for a single tool (kn) managing all aspects of Knative applications. No need for an installing kubectl in addition. From this issue's description by @duglin
If we can reuse kubectl commands by including those as dependencies (like we do for machine-readable output for |
no worries, was just asking ;-) Anybody who is interested in implementing this feature, feel free to pick it up. |
This issue is stale because it has been open for 90 days with no |
/remove-lifecycle stale |
This issue is stale because it has been open for 90 days with no |
/remove-lifecycle stale |
kn secret
commandkn secret
for managing secrets
* [release-v1.10] Update Quarkus version in plugins to 2.13.8.SP3-redhat-00001 * Use S-O release branch
In what area(s)?
Classifications:
/kind good-first-issue
/kind feature
/kind proposal
Describe the feature:
With us on the verge of adding support for KnEventing, it seems that we should consider adding support for basic secret creation/management in
kn
. I say this because from a UX perspective it would be really nice if the user didn't have to switch betweenkn
andkubectl
just to do the basic KnEventing actions - like create a github event source. I like the goal of trying to keep them in thekn
world as much as possible. Obviously, there will always be a balance we'll need to watch for, but I think some basic secret stuff makes sense.We should look at what you can do with
kubectl
to create secrets. Passing in name/value pairs is obvious, but reading them from files on disk is another common (and probably safer) thing to support as well.We could then also consider adding secret volume mounting in the
service
cmd.We might want to think about configMaps at some point too - but my more immediate concern is secrets because once Eventing support is added I think that'll be a more obvious gap in our feature set.
The text was updated successfully, but these errors were encountered: