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

feat: [M3-7390] - Add AGLB protocol to Service Targets #9891

Conversation

bnussman-akamai
Copy link
Member

@bnussman-akamai bnussman-akamai commented Nov 9, 2023

Description 📝

Adds protocol support to AGLB certificates based on a change to the API. This PR also makes other Service Target related changes/fixes

Changes 🔄

  • Adds new protocol field to Service Targets
    • There is now a Protocol Select in the Service Target Create/Edit Drawer
    • The protocol is now listed in the Service Targets table
  • Changes ca_certificate ➡️ certificate_id based on API change

Preview 📷

Before After
Screenshot 2023-11-09 at 11 49 01 AM Screenshot 2023-11-09 at 11 48 34 AM
Screenshot 2023-11-09 at 11 48 53 AM Screenshot 2023-11-09 at 11 48 22 AM

How to test 🧪

Prerequisites

  • Turn on the MSW

Verification steps

As an Author I have considered 🤔

  • 👀 Doing a self review
  • ❔ Our contribution guidelines
  • 🤏 Splitting feature into small PRs
  • ➕ Adding a changeset
  • 🧪 Providing/Improving test coverage
  • 🔐 Removing all sensitive information from the code and PR description
  • 🚩 Using a feature flag to protect the release
  • 👣 Providing comprehensive reproduction steps
  • 📑 Providing or updating our documentation
  • 🕛 Scheduling a pair reviewing session
  • 📱 Providing mobile support
  • ♿ Providing accessibility support

@bnussman-akamai bnussman-akamai added the ACLB Relating to the Akamai Cloud Load Balancer label Nov 9, 2023
@bnussman-akamai bnussman-akamai self-assigned this Nov 9, 2023
@bnussman-akamai bnussman-akamai marked this pull request as ready for review November 9, 2023 17:10
@bnussman-akamai bnussman-akamai requested a review from a team as a code owner November 9, 2023 17:10
@bnussman-akamai bnussman-akamai requested review from dwiley-akamai, coliu-akamai, mjac0bs and cpathipa and removed request for a team November 9, 2023 17:10
Copy link
Contributor

@dwiley-akamai dwiley-akamai left a comment

Choose a reason for hiding this comment

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

Protocol now shows in the table ✅
Edit a Service Target, you can change the protocol ✅
Create a Service Target, you can pick a protocol ✅

Copy link
Contributor

@mjac0bs mjac0bs left a comment

Choose a reason for hiding this comment

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

Service target protocol is visible in table and in the drawer when adding or editing a service target. 🚢

When we've added table columns, we'd forgotten to update the error state of the table, so we're a couple columns short, I noticed when blocking GET service-targets network requests. I made the suggestions to fix that.

Screenshot 2023-11-09 at 3 05 50 PM

@@ -167,49 +180,13 @@ export const LoadBalancerServiceTargets = () => {
{error && <TableRowError colSpan={6} message={error?.[0]?.reason} />}
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
{error && <TableRowError colSpan={6} message={error?.[0]?.reason} />}
{error && <TableRowError colSpan={8} message={error?.[0]?.reason} />}

@@ -167,49 +180,13 @@ export const LoadBalancerServiceTargets = () => {
{error && <TableRowError colSpan={6} message={error?.[0]?.reason} />}
{data?.results === 0 && <TableRowEmpty colSpan={6} />}
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
{data?.results === 0 && <TableRowEmpty colSpan={6} />}
{data?.results === 0 && <TableRowEmpty colSpan={8} />}

Copy link
Contributor

Choose a reason for hiding this comment

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

Any discrepancies with ca_certificate still in the API spec are because changes are not fully reflected there, correct? (Can we request that they fix?)

Copy link
Contributor

@cpathipa cpathipa left a comment

Choose a reason for hiding this comment

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

LGTM!

  • Verify that Protocol now shows in the table
  • Verify that when you edit a Service Target, you can change the protocol
  • Verify that when you create a Service Target, you can pick a protocol

@@ -0,0 +1,54 @@
import type { ServiceTargetPayload } from '@linode/api-v4';
Copy link
Contributor

Choose a reason for hiding this comment

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

Any thoughts in naming this file as constants instead of utils ?

Copy link
Contributor

@coliu-akamai coliu-akamai left a comment

Choose a reason for hiding this comment

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

✅ protocol now shows in the table
✅ can change protocol when editing a service target
✅ can pick protocol when creating a service target

awesome job! 🎉

@bnussman-akamai bnussman-akamai merged commit 7515a10 into linode:develop Nov 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ACLB Relating to the Akamai Cloud Load Balancer
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants