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

Fix[ManageDomains:k8s]: exclude ipv6 form interfaces in k8s #3925

Merged
merged 1 commit into from
Feb 25, 2025

Conversation

0oM4R
Copy link
Contributor

@0oM4R 0oM4R commented Feb 20, 2025

Description

if the type is k8s we should list only wireguard and ipv based on the machine interfaces

Changes

  • add check on props.vm to add all the ipv6 form interfaces

Related Issues

Tested Scenarios

  • interfaces is listed in vm without any issue
  • k8s is not listed if the type is k8s

Documentation PR

For UI changes, Please provide the Documentation PR on info_grid

To consider

Preliminary Checks:

  • Preliminary Checks
    • Does it completely address the issue linked?
    • What about edge cases?
    • Does it meet the specified acceptance criteria?
    • Are there any unintended side effects?
    • Does the PR adhere to the team's coding conventions, style guides, and best practices?
    • Does it integrate well with existing features?
    • Does it impact the overall performance of the application?
    • Are there any bottlenecks or slowdowns?
    • Has it been optimized for efficiency?
    • Has it been adequately tested with unit, integration, and end-to-end tests?
    • Are there any known defects or issues?
    • Is the code well-documented?
    • Are changes to documentation reflected in the code?

UI Checks:

  • UI Checks
    • If a UI design is provided/ does it follow it?
    • Does every button work?
    • Is the data displayed logical? Is it what you expected?
    • Does every validation work?
    • Does this interface feel intuitive?
    • What about slow network? Offline?
    • What if the gridproxy/graphql/chain is failing?
    • What would a first time user have a hard time navigating here?

Code Quality Checks:

  • Code Quality Checks
    • Code formatted/linted? Are there unused imports? .. etc
    • Is there redundant/repeated code?
    • Are there conditionals that are always true or always false?
    • Can we write this more concisely?
    • Can we reuse this code? If yes, where?
    • Will the changes be easy to maintain and update in the future?
    • Can this code become too complex to understand for other devs?
    • Can this code cause future integration problems?

Testing Checklist

  • Does it Meet the specified acceptance criteria.
  • Test if changes can affect any other functionality.
  • Tested with unit, integration, and end-to-end tests.
  • Tested the un-happy path and rollback scenarios.
  • Documentation updated to meet the latest changes.
  • Check automated tests working successfully with the changes.
  • Can be covered by automated tests.

General Checklist

  • Tests included
  • Build pass
  • Documentation
  • Code format and docstring
  • Screenshots/Video attached (needed for UI changes)

Copy link
Contributor

@amiraabouhadid amiraabouhadid left a comment

Choose a reason for hiding this comment

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

works,
image
image
image
but then when i try to add wireguard domain i get this
image

even though logs show success

client.js:325 phase: {"applyExtrinsic":1}, section: smartContractModule, method: ContractBilled, data: [{"contractId":194710,"timestamp":1740397998,"discountLevel":"None","amountBilled":0}]
client.js:325 phase: {"applyExtrinsic":1}, section: smartContractModule, method: NodeContractCanceled, data: [194710,14,10732]
client.js:325 phase: {"applyExtrinsic":1}, section: utility, method: ItemCompleted, data: []
client.js:325 phase: {"applyExtrinsic":1}, section: balances, method: Reserved, data: ["5DUR8uwERLDdUVkyjjUWrQSgCeUafAKdJLZziNcaCszbqTGJ",1100]
client.js:325 phase: {"applyExtrinsic":1}, section: smartContractModule, method: ContractBilled, data: [{"contractId":194711,"timestamp":1740397998,"discountLevel":"Gold","amountBilled":1100}]
client.js:325 phase: {"applyExtrinsic":1}, section: balances, method: ReserveRepatriated, data: ["5DUR8uwERLDdUVkyjjUWrQSgCeUafAKdJLZziNcaCszbqTGJ","5CNposRewardAccount11111111111111111111111111FSU",110,"Free"]
client.js:325 phase: {"applyExtrinsic":1}, section: balances, method: ReserveRepatriated, data: ["5DUR8uwERLDdUVkyjjUWrQSgCeUafAKdJLZziNcaCszbqTGJ","5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY",990,"Free"]
client.js:325 phase: {"applyExtrinsic":1}, section: smartContractModule, method: RewardDistributed, data: [194711,1100,0]
client.js:325 phase: {"applyExtrinsic":1}, section: smartContractModule, method: NameContractCanceled, data: [194711]
client.js:325 phase: {"applyExtrinsic":1}, section: utility, method: ItemCompleted, data: []
client.js:325 phase: {"applyExtrinsic":1}, section: utility, method: BatchCompleted, data: []
client.js:325 phase: {"applyExtrinsic":1}, section: balances, method: Deposit, data: ["5FXAK4MktAf5dQZURaC5sdRWZNgJPr8zB6iFr3Cbi1j4Svjv",10129]
client.js:325 phase: {"applyExtrinsic":1}, section: transactionPayment, method: TransactionFeePaid, data: ["5DUR8uwERLDdUVkyjjUWrQSgCeUafAKdJLZziNcaCszbqTGJ",10129,0]
client.js:325 phase: {"applyExtrinsic":1}, section: system, method: ExtrinsicSuccess, data: [{"weight":{"refTime":2357432399,"proofSize":15180},"class":"Normal","paysFee":"Yes"}]
client.js:385 Lock released ```

@0oM4R
Copy link
Contributor Author

0oM4R commented Feb 24, 2025

@amiraabouhadid, please provide detailed steps to reproduce i was able to deploy 3 domains over wireguard master and worker

image

@0oM4R 0oM4R requested a review from amiraabouhadid February 24, 2025 12:20
@amiraabouhadid
Copy link
Contributor

amiraabouhadid commented Feb 25, 2025

hmm I was trying to reproduce the steps above to share them but i get this error now when I try to deploy a cluster with master and a worker with ipv4, ipv6, mycelium and wireguard
image
and this
image

the steps to reproduce the above error are as I remember:

  • deploy a cluster with a master and a worker, set interfaces to all of ipv4, ipv6, mycelium and wireguard on both master and worker
  • add a domain to the master with ipv4 and a custom domain
  • add a domain to the master with wireguard and a custom domain
  • observe err in both cases
    hope this helps, lmk if you need more details

@0oM4R
Copy link
Contributor Author

0oM4R commented Feb 25, 2025

  • deploy a cluster with a master and a worker, set interfaces to all of ipv4, ipv6, mycelium and wireguard on both master and worker
  • add a domain to the master with ipv4 and a custom domain
  • add a domain to the master with wireguard and a custom domain
  • observe err in both cases

did you add a record for the custom domain to point to the mentioned ip in the alert ?

@amiraabouhadid
Copy link
Contributor

amiraabouhadid commented Feb 25, 2025

  • deploy a cluster with a master and a worker, set interfaces to all of ipv4, ipv6, mycelium and wireguard on both master and worker
  • add a domain to the master with ipv4 and a custom domain
  • add a domain to the master with wireguard and a custom domain
  • observe err in both cases

did you add a record for the custom domain to point to the mentioned ip in the alert ?

no, good catch. But now I can't even deploy a cluster to reproduce

@amiraabouhadid
Copy link
Contributor

was able to deploy domains on ipv4 and wireguard and a custom domain on ipv4
image

but custom domain on wireguard fails
image
seems irrelevant to this pr though so will open separate issue for it if it persists

@0oM4R 0oM4R merged commit 4191862 into development Feb 25, 2025
10 checks passed
@0oM4R 0oM4R deleted the development_gateway_k8s branch February 25, 2025 10:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants