Skip to content
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

Add Support for Tekton Pipeline v1 APIs #352

Closed
wants to merge 2 commits into from
Closed

Conversation

khrm
Copy link
Contributor

@khrm khrm commented Feb 14, 2023

No description provided.

@tekton-robot tekton-robot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Feb 14, 2023
Copy link
Contributor Author

@khrm khrm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/kind feature

@tekton-robot tekton-robot added the kind/feature Categorizes issue or PR as related to a new feature. label Feb 14, 2023
Copy link
Contributor Author

@khrm khrm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/hold

@tekton-robot tekton-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Feb 14, 2023
@vdemeester
Copy link
Member

So I think results is in a similar case as chains, see tektoncd/chains#665 (comment). Today results will work with tektoncd/pipeline release >= 0.43, as it will get object through the v1beta1 API (and conversion webhook do the work for us).

This PR would make results require a tektoncd/pipeline release that supports v1 ; so it would not work with any release prior to v0.43. Seems fine to me, but we need to make sure we are ok with this, that starting from the next release of tektoncd/results, the minimum version of a tektoncd/pipeline release is going to be 0.43.

@khrm khrm force-pushed the f/mig2v1 branch 3 times, most recently from 2480316 to e71de6b Compare February 14, 2023 17:35
@tekton-robot tekton-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Feb 16, 2023
@adambkaplan
Copy link
Contributor

Per WG discussion - we are going to hold this PR until v0.5.0 is released, then we can cut over to v1.

See #303 (comment)

@adambkaplan
Copy link
Contributor

Keeping the hold on this PR - the logs feature is likely blocked by tektoncd/cli#1837

@khrm
Copy link
Contributor Author

khrm commented Mar 30, 2023

A new version of cli with v1 has been released. I would rebase and update with cli.

@tekton-robot tekton-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Apr 19, 2023
@khrm khrm force-pushed the f/mig2v1 branch 2 times, most recently from 31b2f5a to f91c812 Compare April 19, 2023 15:59
@khrm
Copy link
Contributor Author

khrm commented Apr 19, 2023

/hold cancel

@tekton-robot tekton-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Apr 19, 2023
@khrm
Copy link
Contributor Author

khrm commented Apr 19, 2023

@alan-ghelardi @dibyom @adambkaplan @sayan-biswas @enarha We should try to get this merge asap.

@vdemeester
Copy link
Member

/approve

@tekton-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: vdemeester

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

The pull request process is described 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

@tekton-robot tekton-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Apr 19, 2023
Copy link
Contributor

@adambkaplan adambkaplan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most of the code upgrades look good.

I do have a few questions regarding upgrade scenarios:

  1. Can the apiserver handle updates from v1beta1 and v1 objects (ex - rolling upgrade of watchers)
  2. Do we record the object version in the underlying record? Will clients be able to decode v1beta1 and v1 objects?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file should not be added. Please remove and add a .gitignore entry.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like we have a few obsolete dependencies as well. Maybe we take this up in separate pull requests?

@@ -68,7 +68,7 @@ type ui struct {
}

func main() {
conn, err := grpc.Dial("localhost:8080", grpc.WithInsecure(), grpc.WithBlock())
conn, err := grpc.Dial("localhost:50051", grpc.WithInsecure(), grpc.WithBlock())
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why change the port number?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this was changed in a different pr. So will update this. It happened due to rebasing.

Comment on lines -183 to +184
return json.Unmarshal(m.GetValue(), &v1beta1.TaskRun{})
return json.Unmarshal(m.GetValue(), &v1.TaskRun{})
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will this break if the value data contains v1beta1.TaskRun?

case "pipeline.tekton.dev/PipelineRun":
return json.Unmarshal(m.GetValue(), &v1beta1.PipelineRun{})
return json.Unmarshal(m.GetValue(), &v1.PipelineRun{})
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will this break if the value data contains v1beta1.PipelineRun?

Comment on lines -123 to -126
} else {
// TODO(alan-ghelardi): remove this else once we support only
// Tekton v1 API since the full embedded status will no longer
// be supported.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 - great work @alan-ghelardi to mark this out ahead of time!

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove this file. It was the source of a data race condition in our tests. We have replaced this "integration" controller test with a full end to end test.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes to posgres-migrate are probably not necessary. This is a legacy tool from when this project used MySQL.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes to postgres-migrate are probably not necessary.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes to postgres-migrate are probably not necessary

@adambkaplan
Copy link
Contributor

/hold

At the last working group meeting, @enarha wanted to take the lead on publishing a new release this week. We should wait on merging this change until that is complete.

@tekton-robot tekton-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Apr 19, 2023
@tekton-robot tekton-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label May 9, 2023
@tekton-robot
Copy link

@khrm: PR needs rebase.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@tekton-robot
Copy link

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.

@tekton-robot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten with a justification.
Rotten issues close after an additional 30d of inactivity.
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 rotten

Send feedback to tektoncd/plumbing.

@tekton-robot
Copy link

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen with a justification.
Mark the issue as fresh with /remove-lifecycle rotten with a justification.
If this issue should be exempted, mark the issue as frozen with /lifecycle frozen with a justification.

/close

Send feedback to tektoncd/plumbing.

@tekton-robot
Copy link

@tekton-robot: Closed this PR.

In response to this:

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen with a justification.
Mark the issue as fresh with /remove-lifecycle rotten with a justification.
If this issue should be exempted, mark the issue as frozen with /lifecycle frozen with a justification.

/close

Send feedback to tektoncd/plumbing.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@khrm
Copy link
Contributor Author

khrm commented Oct 6, 2023

We need to create an implementation based on WG call discussions and TEP in the community.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. kind/feature Categorizes issue or PR as related to a new feature. lifecycle/rotten needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants