tektoncd / dashboard

A dashboard for Tekton!
Apache License 2.0
872 stars 265 forks source link

Improve display of pipelines loaded via remote resolution #2851

Open mike-serchenia opened 1 year ago

mike-serchenia commented 1 year ago

Expected behavior

Dashboard displays pipelines name using git resolver

Actual behaviour

Dashboard doesn't display pipelines name if using git resolver

Steps to reproduce the bug

  1. install dashboard v0.34.0, pipelines v0.46.0
  2. use the standard pipelineRef e.g.
    pipelineRef:
    params:
      - name: repo
        value: tekton-catalog
      - name: pathInRepo
        value: pipeline/go/0.3/go.yaml
    resolver: git
AlanGreene commented 1 year ago

Hi @mike-serchenia, thanks for opening an issue. I'm not sure I understand the bug, can you elaborate on what the issue is that you're seeing? Perhaps screenshots might help.

mike-serchenia commented 1 year ago

Hi @mike-serchenia, thanks for opening an issue. I'm not sure I understand the bug, can you elaborate on what the issue is that you're seeing? Perhaps screenshots might help.

Screenshot 2023-04-10 at 1 02 39 PM

pipelineRuns with old ref schema have pipeline names e.g

  pipelineRef:
    bundle: >-
      us-east4-docker.pkg.dev/projectIDhere/tekton-catalog/pipeline/nodejs:0.2
    name: nodejs-site-release
mike-serchenia commented 1 year ago

I think the problem with git resolver rather then dashboard

Git resolver
      taskRef:
        resolver: git
        params:
          - name: repo
            value: tkn-catalog
          - name: pathInRepo
            value: task/github-find-pr/0.1/github-find-pr.yaml
          - name: name  <<< NO SUCH OPTION
            value: hello-world

Bundle

  taskRef:
    resolver: bundles
    params:
    - name: bundle
      value: docker.io/ptasci67/example-oci@sha256:053a6cb9f3711d4527dd0d37ac610e8727ec0288a898d5dfbd79b25bcaa29828
    - name: name  <<< HERE
      value: hello-world
    - name: kind
      value: task

this results in pod label tekton.dev/pipeline takes value of pipelineRun

tekton.dev/pipeline=python-sanity-run-68rln
tekton.dev/pipelineRun=python-sanity-run-68rln
AlanGreene commented 1 year ago

Ah I see, thanks. The values displayed for the Pipeline name in that column come from PipelineRun.spec.pipelineRef.name which isn't valid when using the git resolver.

This value is displayed to provide a link to view a filtered list of PipelineRuns of that Pipeline definition resource which exists on the cluster. In the case of remote resolution no such resource exists on the cluster.

Can you describe how you would expect to use the value if it was displayed? Perhaps there's something we could do to improve the experience.

mike-serchenia commented 1 year ago

Probably filtering by simply clicking on the pipeline name

AlanGreene commented 1 year ago

The Dashboard supports label-based filtering provided by the Kubernetes API server via the labelSelector param. If there's an appropriate label available we can use that, but I see in your message above the tekton.dev/pipeline label does not have a useful value in this case.

It might be worth raising this in the #pipeline channel on Slack or in a discussion on the tektoncd/pipeline repo to see if there's an alternative or to propose a change.

woland7 commented 1 year ago

Following, I also would like to have the same feature.

tekton-robot commented 11 months ago

Issues go stale after 90d of inactivity. Mark the issue as fresh with /remove-lifecycle stale with a justification. Stale issues rot after an additional 30d of inactivity and eventually close. If this issue is safe to close now please do so with /close with a justification. If this issue should be exempted, mark the issue as frozen with /lifecycle frozen with a justification.

/lifecycle stale

Send feedback to tektoncd/plumbing.