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

Update v1alpha1 status types to inline fields #1638

Merged
merged 1 commit into from
Dec 11, 2019

Conversation

poy
Copy link
Contributor

@poy poy commented Nov 27, 2019

Changes

Splits up the status types into two structs:

  • XXXStatus
  • XXXStatusFields

This first inlines both knative's duck status type and the
XXXStatusFields. The second stores all the fields that were originially
in XXXStatus. This is advantageous as downstream users can now embed a
the XXXStatusFields if their CRDs manage a Tekton object.

This pattern is demonstrated in Knative (e.g., Serving). Moving to this
pattern does not change the JSON/YAML structure in anyway, however it
does change how status objects have to be instantiated in Go.

fixes #1590

Submitter Checklist

These are the criteria that every PR should meet, please check them off as you
review them:

See the contribution guide for more details.

Double check this list of stuff that's easy to miss:

Reviewer Notes

If API changes are included, additive changes must be approved by at least two OWNERS and backwards incompatible changes must be approved by more than 50% of the OWNERS, and they must first be added in a backwards compatible way.

Release Notes

Describe any user facing changes here, or delete this block.

Examples of user facing changes:
- API changes
- Bug fixes
- Any changes in behavior

@googlebot googlebot added the cla: yes Trying to make the CLA bot happy with ppl from different companies work on one commit label Nov 27, 2019
@tekton-robot tekton-robot requested review from abayer and a user November 27, 2019 21:23
@tekton-robot tekton-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Nov 27, 2019
@tekton-robot
Copy link
Collaborator

Hi @poy. Thanks for your PR.

I'm waiting for a tektoncd member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

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.

@imjasonh
Copy link
Member

/ok-to-test

@tekton-robot tekton-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Nov 27, 2019
@vdemeester
Copy link
Member

/hold
Let's merge this after 0.9.0 release (planned this week)

@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 Nov 28, 2019
@imjasonh
Copy link
Member

/hold

This change looks good to me, but we're going to hold off on this until after the v0.9 release cut, which is next week. I'm not concerned about the breaking-ness of this change since it only affects integrators using the Go structs directly.

@poy poy changed the title Update v1alpha1 status types to line fields Update v1alpha1 status types to inline fields Nov 30, 2019
@vdemeester
Copy link
Member

/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 Dec 9, 2019
Copy link
Member

@vdemeester vdemeester left a comment

Choose a reason for hiding this comment

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

/lgtm
/cc @imjasonh
@poy can you squash your commits ? 👼

@tekton-robot tekton-robot added the lgtm Indicates that a PR is ready to be merged. label Dec 9, 2019
Splits up the status types into two structs:

* XXXStatus
* XXXStatusFields

This first inlines both knative's duck status type and the
XXXStatusFields. The second stores all the fields that were originially
in XXXStatus. This is advantageous as downstream users can now embed a
the XXXStatusFields if their CRDs manage a Tekton object.

This pattern is demonstrated in Knative (e.g., Serving). Moving to this
pattern does not change the JSON/YAML structure in anyway, however it
does change how status objects have to be instantiated in Go.

fixes tektoncd#1590
@tekton-robot tekton-robot removed the lgtm Indicates that a PR is ready to be merged. label Dec 11, 2019
@poy
Copy link
Contributor Author

poy commented Dec 11, 2019

@vdemeester Squashed.

Copy link
Member

@vdemeester vdemeester left a comment

Choose a reason for hiding this comment

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

/lgtm
/meow

Thanks @poy 🤗

@tekton-robot tekton-robot added the lgtm Indicates that a PR is ready to be merged. label Dec 11, 2019
@tekton-robot
Copy link
Collaborator

@vdemeester: cat image

In response to this:

/lgtm
/meow

Thanks @poy 🤗

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
Collaborator

[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 Dec 11, 2019
@tekton-robot tekton-robot merged commit a90f2ae into tektoncd:master Dec 11, 2019
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. cla: yes Trying to make the CLA bot happy with ppl from different companies work on one commit lgtm Indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Use Knative's {Type}StatusFields Pattern
5 participants