Skip to content

A more compatible way for concat a url in Kubeflow Pipeline/v2/Installation/Quickstart #3703

Closed
@realnumber666

Description

While I'm trying to lauch a KFP following the doc, I found that current URL concat way is not compatible when user set endpoint with a / in the end.

Current Doc Content

image

A Possible Mistake

from kfp import dsl
from kfp import client

@dsl.component
def addition_component(num1: int, num2: int) -> int:
    return num1 + num2

@dsl.pipeline(name='addition-pipeline')
def my_pipeline(a: int, b: int, c: int = 10):
    add_task_1 = addition_component(num1=a, num2=b)
    add_task_2 = addition_component(num1=add_task_1.output, num2=c)

endpoint = 'http://localhost:8080/'    # <= endpoint with a / in the end
kfp_client = client.Client(host=endpoint)
run = kfp_client.create_run_from_pipeline_func(
    my_pipeline,
    arguments={
        'a': 1,
        'b': 2
    }
)

url = f'{endpoint}/#/runs/details/{run.run_id}'
print(url)

Output

There will be a redundant '/' following 8080.
http://localhost:8080//#/runs/details/your_run_id_here

What We Can Do

I think we can use urllib other than just a simple string concat to avoiding this possible problem.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    • Status

      Closed

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions