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: support N nginx ingresses #2467

Merged

Conversation

tperdue321
Copy link
Contributor

@tperdue321 tperdue321 commented Dec 8, 2022

Enhancement proposal: #2001

Modifications:

  • update the Nginx datatype to have a field called AdditionalStableIngresses to allow for 1-N stable ingresses instead of just 1. This naming convention is modeled after AdditionalIngressAnnotations
  • modify the SetWeight method to create a canary for each stable ingress and apply new weight to all canary ingresses.
  • update validations to validate all stable ingresses.
  • designed to be fully backwards compatible.

Checklist:

  • Either (a) I've created an enhancement proposal and discussed it with the community, (b) this is a bug fix, or (c) this is a chore.
  • The title of the PR is (a) conventional with a list of types and scopes found here, (b) states what changed, and (c) suffixes the related issues number. E.g. "fix(controller): Updates such and such. Fixes #1234".
  • I've signed my commits with DCO
  • I have written unit and/or e2e tests for my change. PRs without these are unlikely to be merged.
  • My builds are green. Try syncing with master if they are not.
  • My organization is added to USERS.md.

@tperdue321 tperdue321 force-pushed the feature-support-n-nginx-ingresses branch from 926b320 to 86fedec Compare December 8, 2022 16:48
@tperdue321 tperdue321 changed the title Feat: support N nginx ingresses feat: support N nginx ingresses Dec 8, 2022
@codecov
Copy link

codecov bot commented Dec 8, 2022

Codecov Report

Patch coverage: 77.45% and no project coverage change.

Comparison is base (aa47e41) 81.52% compared to head (a57447a) 81.52%.

❗ Current head a57447a differs from pull request most recent head afd6d13. Consider uploading reports for the commit afd6d13 to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #2467   +/-   ##
=======================================
  Coverage   81.52%   81.52%           
=======================================
  Files         133      133           
  Lines       19866    19944   +78     
=======================================
+ Hits        16195    16259   +64     
- Misses       2836     2849   +13     
- Partials      835      836    +1     
Impacted Files Coverage Δ
rollout/trafficrouting/nginx/nginx.go 78.40% <73.01%> (-2.37%) ⬇️
.../apis/rollouts/validation/validation_references.go 90.43% <75.00%> (-0.22%) ⬇️
utils/ingress/ingress.go 98.04% <82.60%> (-1.96%) ⬇️
rollout/controller.go 81.58% <84.61%> (+0.81%) ⬆️

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

@github-actions
Copy link
Contributor

github-actions bot commented Dec 8, 2022

Go Published Test Results

1 930 tests   1 930 ✔️  2m 35s ⏱️
   118 suites         0 💤
       1 files           0

Results for commit afd6d13.

♻️ This comment has been updated with latest results.

@github-actions
Copy link
Contributor

github-actions bot commented Dec 8, 2022

E2E Tests Published Test Results

    4 files      4 suites   3h 15m 21s ⏱️
  95 tests   82 ✔️   5 💤   8
392 runs  360 ✔️ 20 💤 12

For more details on these failures, see this check.

Results for commit afd6d13.

♻️ This comment has been updated with latest results.

@ssanders1449
Copy link
Contributor

@zachaller - Is this targeted for 1.4?

@zachaller zachaller modified the milestones: v1.4, v1.5 Dec 19, 2022
@zachaller
Copy link
Collaborator

zachaller commented Dec 20, 2022

No I just cut 1.4 due to the timeline we are tracking with argocd but with this and the alb support also wanting the same features I plan on getting it megred in for 1.5 I do want to spend a little time looking at how we did it with istio and see if it makes sense to mimic that here vs the additionalIngesses and or for the alb as well to see if having a route concept makes sense or not, but I am pretty on board for the feature.

@zachaller
Copy link
Collaborator

@ssanders1449 also note I do want to follow a much more open release schedule here is the proposal https://github.com/argoproj/argo-rollouts/pull/2446/files

@harikrongali harikrongali self-requested a review December 23, 2022 01:35
@tperdue321 tperdue321 force-pushed the feature-support-n-nginx-ingresses branch 3 times, most recently from eb18526 to 0cde28c Compare January 12, 2023 17:15
tperdue321 and others added 14 commits January 12, 2023 11:21
Signed-off-by: Travis Perdue <perduetravis@gmail.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <perduetravis@gmail.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <perduetravis@gmail.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
…ionalStableIngresses

Signed-off-by: Travis Perdue <perduetravis@gmail.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <perduetravis@gmail.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
… more than 1 Nginix Ingress Controller

Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
@tperdue321
Copy link
Contributor Author

SonarCloud Quality Gate failed.    Quality Gate failed

Bug A 0 Bugs Vulnerability A 0 Vulnerabilities Security Hotspot A 0 Security Hotspots Code Smell A 36 Code Smells

No Coverage information No Coverage information 43.6% 43.6% Duplication

I'm working on reducing duplication today

Travis Perdue added 5 commits January 17, 2023 11:59
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
@sonarcloud
Copy link

sonarcloud bot commented Jan 25, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 9 Code Smells

No Coverage information No Coverage information
10.0% 10.0% Duplication

@zachaller
Copy link
Collaborator

zachaller commented Feb 28, 2023

@tperdue321 Can I get you to resolve conflicts before I review?

@n888 n888 mentioned this pull request Mar 6, 2023
6 tasks
Travis Perdue added 11 commits March 9, 2023 13:11
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
…-nginx-ingresses

Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
ingress/ingress_test.go Outdated Show resolved Hide resolved
@zachaller
Copy link
Collaborator

Also can you update from master to resolve conflicts.

ingress/ingress_test.go Outdated Show resolved Hide resolved
Travis Perdue added 4 commits March 23, 2023 12:44
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
…-nginx-ingresses

Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
@sonarcloud
Copy link

sonarcloud bot commented Mar 24, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 16 Code Smells

No Coverage information No Coverage information
14.0% 14.0% Duplication

@zachaller zachaller merged commit 630212f into argoproj:master Mar 24, 2023
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.

3 participants