pipelines icon indicating copy to clipboard operation
pipelines copied to clipboard

feat(frontend, sdk): towards namespaced pipelines. Part of #4197

Open grobbie opened this issue 2 years ago • 15 comments

Add some features to limit users' access to pipelines to pipelines in the user's own namespace and non-namespaced pipelines, in the web front end and in the Python SDK. The necessary backend RBAC hooks are already available and implemented.

Note that I think relevant CRDs, roles and rolebindings will still be needed in order to properly close the circle on this.

grobbie avatar Mar 22 '22 14:03 grobbie

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: To complete the pull request process, please assign chensun after the PR has been reviewed. You can assign the PR to them by writing /assign @chensun in a comment when ready.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment Approvers can cancel approval by writing /approve cancel in a comment

google-oss-prow[bot] avatar Mar 22 '22 14:03 google-oss-prow[bot]

Hi @grobbie ! Nice work here :) Please take a look here https://github.com/kubeflow/pipelines/issues/4197#issuecomment-1075284702

I understand your approach is to just treat every pipeline definition as namespaced. We think it's really important to support both private and shared definitions at the same time, based on the feedback we have received from enterprise customers.

We have done the work and we are about to upstream all of it.

So, the work you are doing on the swagger definitions definitely helps and needed. But may I propose you hold off the UI changes, and see what we have to propose?

StefanoFioravanzo avatar Mar 22 '22 15:03 StefanoFioravanzo

Hi @grobbie ! Nice work here :) Please take a look here #4197 (comment)

I understand your approach is to just treat every pipeline definition as namespaced. We think it's really important to support both private and shared definitions at the same time, based on the feedback we have received from enterprise customers.

We have done the work and we are about to upstream all of it.

So, the work you are doing on the swagger definitions definitely helps and needed. But may I propose you hold off the UI changes, and see what we have to propose?

Sure - as long as its implemented, that's what matters to me : ) I will make the PR a draft for now.

grobbie avatar Mar 22 '22 16:03 grobbie

/test kubeflow-pipeline-e2e-test

grobbie avatar Mar 23 '22 07:03 grobbie

/test kubeflow-pipeline-e2e-test

grobbie avatar Mar 23 '22 08:03 grobbie

/test kubeflow-pipeline-upgrade-test

grobbie avatar Mar 23 '22 09:03 grobbie

Sure - as long as its implemented, that's what matters to me : ) I will make the PR a draft for now.

Thanks! We will be back with more within 2-3 weeks at most, we need to sort a few things out and then put together the PRs

StefanoFioravanzo avatar Mar 23 '22 09:03 StefanoFioravanzo

We also have an implementation ready https://github.com/kubeflow/pipelines/pull/7406

juliusvonkohout avatar Mar 31 '22 23:03 juliusvonkohout

Sure - as long as its implemented, that's what matters to me : ) I will make the PR a draft for now.

Thanks! We will be back with more within 2-3 weeks at most, we need to sort a few things out and then put together the PRs

At most 2-3 weeks ;-) What is your status? I would really like to see this merged together with https://github.com/kubeflow/pipelines/pull/7725 to have a basic level of security.

juliusvonkohout avatar May 14 '22 16:05 juliusvonkohout

Sorry for the slow reply, was traveling to KubeCon 🙂

At most 2-3 weeks ;-) What is your status? I would really like to see this merged together with #7725 to have a basic level of security.

Well afaic it's ready to go, I'll change the status.

grobbie avatar May 16 '22 14:05 grobbie

Sorry for the slow reply, was traveling to KubeCon 🙂

At most 2-3 weeks ;-) What is your status? I would really like to see this merged together with #7725 to have a basic level of security.

Well afaic it's ready to go, I'll change the status.

i am a bit confused. I was talking about @StefanoFioravanzo or does this here support both namespaced and shared pipelines?

juliusvonkohout avatar May 16 '22 14:05 juliusvonkohout

Sorry for the slow reply, was traveling to KubeCon slightly_smiling_face

At most 2-3 weeks ;-) What is your status? I would really like to see this merged together with #7725 to have a basic level of security.

Well afaic it's ready to go, I'll change the status.

i am a bit confused. I was talking about @StefanoFioravanzo or does this here support both namespaced and shared pipelines?

Folks, this has been dragging on for quite some time. I'm keen to see it get at least some of this problematic stuff resolved one way or another. Can we at least try to make some progress on the front end?

grobbie avatar Jun 08 '22 13:06 grobbie

@grobbie Unfortunately we had to delay by a few weeks our contribution as we had to shift some priorities. We are still targeting to send some PRs (both backend and frontend) to support this fully as soon as possible. Possibly by the end of July. This is the design doc where we detailed the changes requires, including the frontend changes that we want to contribute with https://docs.google.com/document/d/1fM4y2L1IVqVj-iiNjYFRRktdCh7FQXgU2XpaYLaqt-A/edit?resourcekey=0-kd5loyP7w3PBD0ug6ECmLQ

StefanoFioravanzo avatar Jun 13 '22 08:06 StefanoFioravanzo

So this one supports using both namespaced and shared pipelines, but users can only create new pipelines that are namespaced.

I'm not sure where Stefano's PR has gotten to.

On Mon, May 16, 2022 at 4:55 PM juliusvonkohout @.***> wrote:

Sorry for the slow reply, was traveling to KubeCon 🙂

At most 2-3 weeks ;-) What is your status? I would really like to see this merged together with #7725 https://github.com/kubeflow/pipelines/pull/7725 to have a basic level of security.

Well afaic it's ready to go, I'll change the status.

i am a bit confused. I was talking about @StefanoFioravanzo https://github.com/StefanoFioravanzo or does this here support both namespaced and shared pipelines?

— Reply to this email directly, view it on GitHub https://github.com/kubeflow/pipelines/pull/7447#issuecomment-1127778566, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAY2RUFQOSHC6HJ7UHP4RSTVKJOVLANCNFSM5RLC2C3A . You are receiving this because you were mentioned.Message ID: @.***>

grobbie avatar Oct 11 '22 07:10 grobbie

@grobbie please check https://github.com/kubeflow/pipelines/pull/8196

juliusvonkohout avatar Oct 11 '22 08:10 juliusvonkohout