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

gwctl: Show Events, Analysis and few other fields for various resources. #3051

Merged

Conversation

gauravkghildiyal
Copy link
Member

@gauravkghildiyal gauravkghildiyal commented May 5, 2024

What type of PR is this?
/kind feature

What this PR does / why we need it:

This PR addresses missing information in the display of various resources and
enhances the presentation of printed information. After this and the related
issue #3037 get completed, all gwctl describe views will have the relevant
information and some visual appeal.

Examples:

$ gwctl describe backends
  ...
  (truncated)
  ...
  ReferencedByRoutes:
    Kind       Name
    ----       ----
    HTTPRoute  default/grpc-httproute
    HTTPRoute  default/grpc-httproute-2
  DirectlyAttachedPolicies:
    Type                                 Name
    ----                                 ----
    HealthCheckPolicy.networking.gke.io  default/grpc-gateway-healthcheck
  EffectivePolicies:
    default/grpc-gateway:
      HealthCheckPolicy.networking.k8s.io:
        default:
          checkIntervalSec: 15
          config:
            http2HealthCheck:
              port: 1234
              portSpecification: USE_FIXED_PORT
            type: HTTP2
          healthyThreshold: 1
          logConfig:
            enabled: true
          timeoutSec: 15
          unhealthyThreshold: 2
  Events:
    Type    Reason  Age  From                   Message
    ----    ------  ---  ----                   -------
    Normal  SYNC    36h  sc-gateway-controller  SYNC on default/grpc-svc was a success
$ gwctl describe gateway
  ...
  (truncated)
  ...
  AttachedRoutes:
    Kind       Name
    ----       ----
    HTTPRoute  default/grpc-httproute-2
  DirectlyAttachedPolicies: <none>
  Analysis:
  - Gateway "default/random-gateway" references a non-existent GatewayClass "random"
  Events:
    Type    Reason  Age  From                   Message
    ----    ------  ---  ----                   -------
    Normal  SYNC    36h  sc-gateway-controller  SYNC on default/grpc-gateway-2 was a success

Which issue(s) this PR fixes:

Closes a couple of items from #2761
Fixes #2994

Does this PR introduce a user-facing change?:

Show Events and Analysis when describing resources.

@k8s-ci-robot k8s-ci-robot added release-note Denotes a PR that will be considered when it comes time to generate release notes. kind/feature Categorizes issue or PR as related to a new feature. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. area/gwctl labels May 5, 2024
@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 5, 2024
@youngnick
Copy link
Contributor

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label May 6, 2024
@youngnick
Copy link
Contributor

/hold for other review though

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label May 6, 2024
@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label May 15, 2024
@gauravkghildiyal
Copy link
Member Author

(Rebased)

Copy link
Member

@mlavacca mlavacca left a comment

Choose a reason for hiding this comment

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

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label May 16, 2024
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: gauravkghildiyal, mlavacca

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

@gauravkghildiyal
Copy link
Member Author

Thanks for the review, both! (I'll unhold based on the two reviews)

/unhold

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label May 16, 2024
@k8s-ci-robot k8s-ci-robot merged commit cd6379d into kubernetes-sigs:main May 16, 2024
8 checks passed
BobyMCbobs pushed a commit to BobyMCbobs/kubernetes-sigs-gateway-api that referenced this pull request Jul 10, 2024
…es. (kubernetes-sigs#3051)

* Consolidate all ObjRef types into a single type from the common package

* Start using the Table struct to print table based views for all resources.

* Add Events to all resources in the ResourceModel

* Start using DescriberKV struct to print all describe views and also print events
associated with the resource.

* Add Analysis section to describe views for relevant resources

* fixup! Start using the Table struct to print table based views for all resources.
BobyMCbobs pushed a commit to BobyMCbobs/kubernetes-sigs-gateway-api that referenced this pull request Jul 22, 2024
…es. (kubernetes-sigs#3051)

* Consolidate all ObjRef types into a single type from the common package

* Start using the Table struct to print table based views for all resources.

* Add Events to all resources in the ResourceModel

* Start using DescriberKV struct to print all describe views and also print events
associated with the resource.

* Add Analysis section to describe views for relevant resources

* fixup! Start using the Table struct to print table based views for all resources.
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. area/gwctl cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/feature Categorizes issue or PR as related to a new feature. lgtm "Looks good to me", indicates that a PR is ready to be merged. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Expand output for gwctl describe gateways
4 participants