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

dep: Add dep to new gateway-api reference. #3370

Merged
merged 6 commits into from
Feb 22, 2021

Conversation

stevesloka
Copy link
Member

Service APIs have been renamed to Gateway API. This adds the new release version to Gatway API to allow refactoring to the new name.

Updates #3349

Signed-off-by: Steve Sloka [email protected]

@stevesloka stevesloka requested a review from a team as a code owner February 17, 2021 16:29
@stevesloka stevesloka requested review from sunjayBhatia, youngnick and skriss and removed request for a team February 17, 2021 16:29
@stevesloka stevesloka added this to the 1.13.0 milestone Feb 17, 2021
@skriss
Copy link
Member

skriss commented Feb 17, 2021

I'd say go ahead and make the code changes to use the new module / drop the old one in this PR. Some of the CI errors may require that anyway.

@stevesloka
Copy link
Member Author

Yeah the dep on controller-runtime got upgraded, so that's the big piece of errors at the moment. Let me work through this a bit.

@codecov
Copy link

codecov bot commented Feb 17, 2021

Codecov Report

Merging #3370 (9b46f5e) into main (3da81a1) will decrease coverage by 0.00%.
The diff coverage is 72.72%.

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #3370      +/-   ##
==========================================
- Coverage   75.80%   75.80%   -0.01%     
==========================================
  Files          98       98              
  Lines        6535     6543       +8     
==========================================
+ Hits         4954     4960       +6     
- Misses       1474     1475       +1     
- Partials      107      108       +1     
Impacted Files Coverage Δ
cmd/contour/serve.go 0.00% <0.00%> (ø)
cmd/contour/servecontext.go 56.81% <ø> (ø)
internal/k8s/informers.go 0.00% <0.00%> (ø)
internal/dag/gatewayapi_processor.go 86.27% <91.66%> (ø)
internal/dag/cache.go 90.96% <100.00%> (-0.63%) ⬇️
internal/k8s/scheme.go 80.00% <100.00%> (ø)

@stevesloka
Copy link
Member Author

This includes the work from #3374 so that should merge first. I tried to keep things more manageable for review that way.

skriss added a commit to skriss/contour that referenced this pull request Feb 18, 2021
Upgrades controller-runtime to v0.8.2 in preparation for updating
the Gateway API dependency.

Updates projectcontour#3370.

Signed-off-by: Steve Kriss <[email protected]>
skriss added a commit to skriss/contour that referenced this pull request Feb 18, 2021
Upgrades controller-runtime to v0.8.2 in preparation for updating
the Gateway API dependency.

Updates projectcontour#3370.

Signed-off-by: Steve Kriss <[email protected]>
youngnick pushed a commit that referenced this pull request Feb 19, 2021
Upgrades controller-runtime to v0.8.2 in preparation for updating
the Gateway API dependency.

Updates #3370.

Signed-off-by: Steve Kriss <[email protected]>
@skriss
Copy link
Member

skriss commented Feb 19, 2021

ready for a rebase.

stevesloka added a commit to stevesloka/contour that referenced this pull request Feb 19, 2021
@stevesloka
Copy link
Member Author

rebased @skriss =)

Copy link
Member

@skriss skriss left a comment

Choose a reason for hiding this comment

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

mostly looks good, just a handful of small things

Copy link
Member

@skriss skriss left a comment

Choose a reason for hiding this comment

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

LGTM!

stevesloka added a commit to stevesloka/contour that referenced this pull request Feb 19, 2021
Copy link
Member

@sunjayBhatia sunjayBhatia left a comment

Choose a reason for hiding this comment

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

From a grep:

% grep -r -i service-api .                                       
./cmd/contour/serve.go: serve.Flag("experimental-service-apis", "DEPRECATED: Please configure the gateway.name & gateway.namespace in the configuration file.").BoolVar(&ctx.UseExperimentalServiceAPITypes)
./cmd/contour/serve.go:         log.Warn("DEPRECATED: The flag '--experimental-service-apis' is deprecated and should not be used. Please configure the gateway.name & gateway.namespace in the configuration file to specify which Gateway Contour will be watching.")
./design/service-apis-implementation.md:# Service-APIs implementation design
./design/service-apis-implementation.md:The Service-APIs are the evolution of the Kubernetes APIs that relate to `Services`, such as Ingress.
./design/service-apis-implementation.md:The Service-APIs are a subproject of Kubernetes SIG-Network, and are an attempt to re-do the mechanics around `Services` and `Ingress`, and how they interact.
./design/service-apis-implementation.md:In terms of the APIs themsleves, the Service APIs have 3 primary API resources (taken from the service-apis docs site):
./design/service-apis-implementation.md:Our eventual ideal is that HTTPProxy and Service-APIs will have feature parity.
./design/service-apis-implementation.md:Practically, there may be times when HTTPProxy can move faster than Service-APIs because we have a smaller feature surface.
./design/service-apis-implementation.md:We see this as a chance for HTTPProxy to test out ideas for Service-APIs functionality, and provide feedback on what features should be in the core, extension, and implementation-specific parts of the API.
./design/service-apis-implementation.md:There should never be annotations required for functionality on Service-APIs objects.
./design/service-apis-implementation.md:- Define a data model and implementation for Contour's service-apis support, covering the v1alpha1 version of the service-apis.
./design/service-apis-implementation.md:Project Contour (the organisation) may investigate a Service-APIs based layer 4 solution in the future, but that effort will not be in `projectcontour/contour`.
./design/service-apis-implementation.md:When a Gateway is not supplied, Contour will not do Service-APIs processing, or in other words, the existing `--experimental-service-apis` flag will be obsoleted and removed).
./design/service-apis-implementation.md:Once we have the Service-APIs available as well, we have to choose the order.
./design/service-apis-implementation.md:In this design, I suggest having the order be Ingress is overwritten by HTTPProxy, is overwritten by the service-apis.
./design/service-apis-implementation.md:The current flag `--experimental-service-apis` will be removed.
./design/service-apis-implementation.md:There are already internal fields in the cache to hold GatewayClass and some other service-apis objects.
./design/service-apis-implementation.md:There is currently experimental support for *reading* the Service-APIs objects in Contour, we will add full support in something like this order:
./design/service-apis-implementation.md:- Deprecate `--expermental-service-apis` command-line flag, so that it does nothing but log a referral to the new config item.
./design/service-apis-implementation.md:- Implement the Service-APIs processor as a single DAG processor.
./design/service-apis-implementation.md:- Release a version with Service-APIs support still marked experimental.
./site/_posts/2020-07-10-Contours-landscape-jul-2020.md:### Service-APIs and the future of Ingress
./site/_posts/2020-07-10-Contours-landscape-jul-2020.md:As an Ingress controller, we on the Contour team have been watching the upstream work on Ingress v1 and contributing to the the [Service-APIs subproject of Kubernetes SIG-Network](https://kubernetes-sigs.github.io/gateway-api) (which started out of Ingress V2 work, and has a similar forward looking design to HTTPProxy). Contour is committed to migrating Ingress support to Ingress v1 as soon as support windows allow ([contour#2139](https://github.com/projectcontour/contour/issues/2139)), and are actively contributing to the Service APIs subproject, with the aim of bringing Contour support for the new Service APIs objects as soon as they have enough behavior defined to be implementable.
./site/docs/main/configuration.md:| `--experimental-service-apis` | DEPRECATED: Please configure the gateway.name & gateway.namespace in the configuration file. | 
./site/docs/main/configuration.md:| gateway | GatewayConfig |  | The [service-apis Gateway configuration](#gateway-configuration). |
./site/docs/main/configuration.md:The gateway configuration block is used to configure which service-apis Gateway Contour should configure:
./site/docs/main/configuration.md:    # specify the service-apis Gateway Contour should configure
./site/_resources/philosophy.md:In the near future, we'll add support for Ingress v1 and after that the Service-APIs.
./site/_data/github-labels.yaml:        - name: area/service-apis
Binary file ./.git/index matches
./pkg/config/parameters.go:// GatewayParameters holds the configuration for what service-api Gateway

Looks like ./site/_resources/philosophy.md and ./pkg/config/parameters.go each have a remaining reference and ./site/docs/main/configuration.md has a few as well

@youngnick
Copy link
Member

I'll handle updating the design document in a separate PR, which covers the ./design/service-apis-implementation.md entries.

Just a couple more references to tidy up, and then this one can go in.

@stevesloka
Copy link
Member Author

I've updated the remaining references, the bits in serve.go should stay since those flags aren't going to be changed. The other bits @youngnick mentioned in last comment that he would update in another PR.

@skriss skriss merged commit c921998 into projectcontour:main Feb 22, 2021
iyacontrol pushed a commit to iyacontrol/contour that referenced this pull request Feb 23, 2021
Upgrades controller-runtime to v0.8.2 in preparation for updating
the Gateway API dependency.

Updates projectcontour#3370.

Signed-off-by: Steve Kriss <[email protected]>
Signed-off-by: iyacontrol <[email protected]>
iyacontrol pushed a commit to iyacontrol/contour that referenced this pull request Feb 23, 2021
Service APIs have been renamed to Gateway API. This replaces the service-apis module with the gateway-api one and updates related references.

Updates projectcontour#3349

Signed-off-by: Steve Sloka <[email protected]>
Signed-off-by: iyacontrol <[email protected]>
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