Skip to content

Commit 55df456

Browse files
committed
Renaming Service APIs to Gateway API
As discussed in #536, Gateway API more clearly represents this project now.
1 parent ec25823 commit 55df456

File tree

94 files changed

+569
-569
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

94 files changed

+569
-569
lines changed

.github/ISSUE_TEMPLATE/bug.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: Bug Report
3-
about: Report a bug encountered with the service-apis project
3+
about: Report a bug encountered with the gateway-api project
44
labels: kind/bug
55

66
---

.github/ISSUE_TEMPLATE/enhancement.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: Enhancement Request
3-
about: Suggest an enhancement to the service-apis project
3+
about: Suggest an enhancement to the gateway-api project
44
labels: kind/feature
55

66
---

.github/PULL_REQUEST_TEMPLATE.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<!-- Thanks for sending a pull request! Here are some tips for you:
22
3-
1. If this is your first time contributing to Service APIs, please read our
4-
developer guide (https://kubernetes-sigs.github.io/service-apis/devguide/)
5-
and our community page (https://kubernetes-sigs.github.io/service-apis/community/).
3+
1. If this is your first time contributing to Gateway API, please read our
4+
developer guide (https://kubernetes-sigs.github.io/gateway-api/devguide/)
5+
and our community page (https://kubernetes-sigs.github.io/gateway-api/community/).
66
2. If this is your first time contributing to a Kubernetes project, please read
77
our contributor guidelines:
88
https://git.k8s.io/community/contributors/guide/first-contribution.md#your-first-contribution

.golangci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ linters-settings:
2525
# simplify code: gofmt with `-s` option, true by default
2626
simplify: true
2727
goimports:
28-
local-prefixes: sigs.k8s.io/service-apis
28+
local-prefixes: sigs.k8s.io/gateway-api
2929
golint:
3030
min-confidence: 0.9
3131
govet:

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ docs:
7878
# Generate API docs first
7979
./hack/api-docs/generate.sh docs-src/spec.md
8080
# The docs image must be built locally until issue #141 is fixed.
81-
docker build --tag k8s.gcr.io/service-apis-mkdocs:latest -f mkdocs.dockerfile .
81+
docker build --tag k8s.gcr.io/gateway-api-mkdocs:latest -f mkdocs.dockerfile .
8282
$(MAKE) -f docs.mk
8383

8484
# Serve the docs site locally at http://localhost:8000.

OWNERS

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# See the OWNERS docs at https://go.k8s.io/owners
2-
# See the OWNERS_ALIASES file at https://github.com/kubernetes-sigs/service-apis/blob/master/OWNERS_ALIASES for a list of members for each alias.
2+
# See the OWNERS_ALIASES file at https://github.com/kubernetes-sigs/gateway-api/blob/master/OWNERS_ALIASES for a list of members for each alias.
33

44
approvers:
55
- sig-network-leads
6-
- service-apis-admins
7-
- service-apis-maintainers
6+
- gateway-api-admins
7+
- gateway-api-maintainers
88

99
reviewers:
10-
- service-apis-maintainers
10+
- gateway-api-maintainers

OWNERS_ALIASES

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ aliases:
99
- thockin
1010

1111
# Reference: https://github.com/kubernetes/org/blob/master/config/kubernetes-sigs/sig-network/teams.yaml
12-
service-apis-admins:
12+
gateway-api-admins:
1313
- bowei
1414
- thockin
1515

16-
service-apis-maintainers:
16+
gateway-api-maintainers:
1717
- bowei
1818
- danehans
1919
- hbagdi

README.md

+13-13
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
# Kubernetes Service APIs
1+
# Kubernetes Gateway API
22

3-
The Service APIs is a part of the [SIG Network][sn], and this repository
3+
The Gateway API is a part of the [SIG Network][sn], and this repository
44
contains the specification and Custom Resource Definitions (CRDs).
55

66
## Documentation
77

88
### Website
99

1010
The API specification and detailed documentation is available on the project
11-
website: [https://kubernetes-sigs.github.io/service-apis][ghp].
11+
website: [https://kubernetes-sigs.github.io/gateway-api][ghp].
1212

1313
### Get started
1414

@@ -27,30 +27,30 @@ the API.
2727
A complete API reference, please refer to:
2828

2929
- [API reference][spec]
30-
- [Go docs for the package](https://pkg.go.dev/sigs.k8s.io/service-apis/apis/v1alpha1)
30+
- [Go docs for the package](https://pkg.go.dev/sigs.k8s.io/gateway-api/apis/v1alpha1)
3131

3232
## Contributing
3333

3434
Community meeting schedule, notes and developer guide can be found on the
3535
[community page][cm].
36-
Our Kubernetes Slack channel is [#sig-network-service-apis][slack].
36+
Our Kubernetes Slack channel is [#sig-network-gateway-api][slack].
3737

3838
## Technical Leads
3939

4040
- @bowei
41-
- @thockin
41+
- @thockin
4242

4343
### Code of conduct
4444

4545
Participation in the Kubernetes community is governed by the
4646
[Kubernetes Code of Conduct](code-of-conduct.md).
4747

48-
[ghp]: https://kubernetes-sigs.github.io/service-apis/
48+
[ghp]: https://kubernetes-sigs.github.io/gateway-api/
4949
[sn]: https://github.com/kubernetes/community/tree/master/sig-network
50-
[cm]: https://kubernetes-sigs.github.io/service-apis/community
51-
[slack]: https://kubernetes.slack.com/messages/sig-network-service-apis
52-
[guides]: https://kubernetes-sigs.github.io/service-apis/guides
53-
[spec]: https://kubernetes-sigs.github.io/service-apis/spec
54-
[concepts]: https://kubernetes-sigs.github.io/service-apis/api-overview
55-
[security-model]: https://kubernetes-sigs.github.io/service-apis/security-model
50+
[cm]: https://kubernetes-sigs.github.io/gateway-api/community
51+
[slack]: https://kubernetes.slack.com/messages/sig-network-gateway-api
52+
[guides]: https://kubernetes-sigs.github.io/gateway-api/guides
53+
[spec]: https://kubernetes-sigs.github.io/gateway-api/spec
54+
[concepts]: https://kubernetes-sigs.github.io/gateway-api/api-overview
55+
[security-model]: https://kubernetes-sigs.github.io/gateway-api/security-model
5656

RELEASE.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,17 @@
22

33
## Overview
44

5-
The Service APIs project is an API project that has the following two components:
5+
The Gateway API project is an API project that has the following two components:
66
- Kubernetes Custom Resource Definitions (CRDs)
7-
- Corresponding Go API in the form of `sigs.k8s.io/service-apis` Go package
7+
- Corresponding Go API in the form of `sigs.k8s.io/gateway-api` Go package
88

99
This repository is the home for both of the above components.
1010

1111
## Versioning strategy
1212
The versioning strategy for this project is covered in detail in [the release
1313
documentation].
1414

15-
[the release documentation]: https://kubernetes-sigs.github.io/service-apis/releases/#versioning
15+
[the release documentation]: https://kubernetes-sigs.github.io/gateway-api/releases/#versioning
1616

1717
## Releasing a new version
1818

@@ -21,8 +21,8 @@ documentation].
2121
Approval of the PR indicates community consensus for a new release.
2222
- Once the above PR is merged, the author must publish a new Git tag. This can
2323
be done using the `git` CLI or Github's [release][release]
24-
page. This step can be performed only by [Service APIs maintainers][service-apis-team].
24+
page. This step can be performed only by [Gateway API maintainers][gateway-api-team].
2525

26-
[release]: https://github.com/kubernetes-sigs/service-apis/releases
27-
[service-apis-team]: https://github.com/kubernetes/org/blob/master/config/kubernetes-sigs/sig-network/teams.yaml
26+
[release]: https://github.com/kubernetes-sigs/gateway-api/releases
27+
[gateway-api-team]: https://github.com/kubernetes/org/blob/master/config/kubernetes-sigs/sig-network/teams.yaml
2828

docs-src/api-overview.md

+33-33
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
# API Overview
22

3-
This document provides an overview of Service APIs.
3+
This document provides an overview of Gateway API.
44

55
## Roles and personas.
66

7-
There are 3 primary roles in Service APIs:
7+
There are 3 primary roles in Gateway API:
88

99
- Infrastructure Provider
1010
- Cluster Operator
1111
- Application Developer
1212

1313
There could be a fourth role of Application Admin in some use cases.
1414

15-
Please refer to the [roles and personas](security-model.md#roles-and-personas)
15+
Please refer to the [roles and personas](security-model.md#roles-and-personas)
1616
section in the Security model for details.
1717

1818
## Resource model
@@ -23,10 +23,10 @@ section in the Security model for details.
2323
2424
There are three main types of objects in our resource model:
2525

26-
*GatewayClass* defines a set of gateways with a common configuration and
26+
*GatewayClass* defines a set of gateways with a common configuration and
2727
behavior.
2828

29-
*Gateway* requests a point where traffic can be translated to Services within
29+
*Gateway* requests a point where traffic can be translated to Services within
3030
the cluster.
3131

3232
*Routes* describe how traffic coming via the Gateway maps to the Services.
@@ -56,8 +56,8 @@ A Gateway describes how traffic can be translated to Services within the
5656
cluster. That is, it defines a request for a way to translate traffic from
5757
somewhere that does not know about Kubernetes to somewhere that does. For
5858
example, traffic sent to a Kubernetes Service by a cloud load balancer, an
59-
in-cluster proxy, or an external hardware load balancer. While many use cases
60-
have client traffic originating “outside” the cluster, this is not a
59+
in-cluster proxy, or an external hardware load balancer. While many use cases
60+
have client traffic originating “outside” the cluster, this is not a
6161
requirement.
6262

6363
It defines a request for a specific load balancer config that implements the
@@ -95,7 +95,7 @@ Some backend configuration may vary depending on the Route that is targeting the
9595
backend. In those cases, configuration fields will be placed on Routes and not
9696
BackendPolicy. For more information on what may be configured with this resource
9797
in the future, refer to the related [GitHub
98-
issue](https://github.com/kubernetes-sigs/service-apis/issues/196).
98+
issue](https://github.com/kubernetes-sigs/gateway-api/issues/196).
9999

100100
### Route binding
101101

@@ -113,23 +113,23 @@ are exposed and on which Gateways. Consider the following example:
113113
> and as long as their Route rules do not conflict with each other they can
114114
> continue operating in isolation. Team C has special networking needs (perhaps
115115
> performance, security, or criticality) and they need a dedicated Gateway to
116-
> proxy their application to the outside world. Team C deploys their own Gateway
117-
> “dedicated-gw” in the “C” Namespace that can only be used by apps in the "C"
116+
> proxy their application to the outside world. Team C deploys their own Gateway
117+
> “dedicated-gw” in the “C” Namespace that can only be used by apps in the "C"
118118
> Namespace.
119119
120120
<!-- source: https://docs.google.com/presentation/d/1neBkFDTZ__vRoDXIWvAcxk2Pb7-evdBT6ykw_frf9QQ/edit?usp=sharing -->
121121
![route binding](images/gateway-route-binding.png)
122122

123123
There is a lot of flexibility in how Routes can bind to Gateways to achieve
124-
different organizational policies and scopes of responsibility. These are
124+
different organizational policies and scopes of responsibility. These are
125125
different relationships that Gateways and Routes can have:
126126

127-
- **One-to-one** - A Gateway and Route may be deployed and used by a single
128-
owner and have a one-to-one relationship. Team C is an example of this.
127+
- **One-to-one** - A Gateway and Route may be deployed and used by a single
128+
owner and have a one-to-one relationship. Team C is an example of this.
129129
- **One-to-many** - A Gateway can have many Routes bound to it that are owned by
130-
different teams from across different Namespaces. Teams A and B are an example
130+
different teams from across different Namespaces. Teams A and B are an example
131131
of this.
132-
- **Many-to-one** - Routes can also be bound to more than one Gateway, allowing
132+
- **Many-to-one** - Routes can also be bound to more than one Gateway, allowing
133133
a single Route to control application exposure simultaneously across different
134134
IPs, load balancers, or networks.
135135

@@ -148,19 +148,19 @@ namespace, and labels of Route resources. Routes are actually bound to specific
148148
listeners within the Gateway so each listener has a `listener.routes` field
149149
which selects Routes by one or more of the following criterea:
150150

151-
- **Label** - A Gateway can select Routes via labels that exist on the
151+
- **Label** - A Gateway can select Routes via labels that exist on the
152152
resource (similar to how Services select Pods via Pod labels).
153-
- **Kind** - A Gateway listener can only select a single type of Route
153+
- **Kind** - A Gateway listener can only select a single type of Route
154154
resource. This could be an HTTPRoute, TCPRoute, or a custom Route type.
155155
- **Namespace** - A Gateway can also control from which Namespaces Routes can be
156156
selected via the `namespaces.from` field. It supports three possible values:
157-
- `SameNamespace` is the default option. Only Routes in the same namespace
158-
as this Gateway will be selected.
157+
- `SameNamespace` is the default option. Only Routes in the same namespace
158+
as this Gateway will be selected.
159159
- `All` will select Routes from all Namespaces.
160-
- `Selector` means that Routes from a subset of Namespaces selected by a
161-
Namespace label selector will be selected by this Gateway. When `Selector`
162-
is used then the `listeners.routes.namespaces.selector` field can be used
163-
to specify label selectors. This field is not supported with `All` or
160+
- `Selector` means that Routes from a subset of Namespaces selected by a
161+
Namespace label selector will be selected by this Gateway. When `Selector`
162+
is used then the `listeners.routes.namespaces.selector` field can be used
163+
to specify label selectors. This field is not supported with `All` or
164164
`SameNamespace`.
165165

166166
The below Gateway will select all HTTPRoute resources with the `expose:
@@ -170,12 +170,12 @@ prod-web-gw` across all Namespaces in the cluster.
170170
kind: Gateway
171171
...
172172
spec:
173-
listeners:
173+
listeners:
174174
- routes:
175175
kind: HTTPRoute
176176
selector:
177177
matchLabels:
178-
expose: prod-web-gw
178+
expose: prod-web-gw
179179
namespaces:
180180
from: All
181181
```
@@ -185,18 +185,18 @@ spec:
185185
Routes can determine how they are exposed through Gateways. The `gateways.allow`
186186
field supports three values:
187187

188-
- `All` is the default value if none is specified. This leaves all binding
189-
to the Route label and Namespace selectors on the Gateway.
190-
- `SameNamespace` only allows this Route to bind with Gateways from the
188+
- `All` is the default value if none is specified. This leaves all binding
189+
to the Route label and Namespace selectors on the Gateway.
190+
- `SameNamespace` only allows this Route to bind with Gateways from the
191191
same Namespace.
192-
- `FromList` allows an explicit list of Gateways to be specifiied that a
193-
Route will bind with. `gateways.gatewayRefs` is only supported with this option.
192+
- `FromList` allows an explicit list of Gateways to be specifiied that a
193+
Route will bind with. `gateways.gatewayRefs` is only supported with this option.
194194

195195
The following `my-route` Route selects only the `foo-gateway` in the
196196
`foo-namespace` and will not be able to bind with any other Gateways. Note that
197197
`foo-gateway` is in a different Namespace. If the `foo-gateway` allows
198198
cross-Namespace binding and also selects this Route then `my-route` will bind to
199-
it.
199+
it.
200200

201201
```yaml
202202
kind: HTTPRoute
@@ -246,7 +246,7 @@ reverse proxy is:
246246
5. Optionally, the reverse proxy can perform request header and/or path
247247
matching based on `match` rules of the `HTTPRoute`.
248248
6. Optionally, the reverse proxy can modify the request, i.e. add/remove
249-
headers, based on `filter` rules of the `HTTPRoute`.
249+
headers, based on `filter` rules of the `HTTPRoute`.
250250
7. Lastly, the reverse proxy forwards the request to one or more objects, i.e.
251251
`Service`, in the cluster based on `forwardTo` rules of the `HTTPRoute`.
252252

@@ -272,7 +272,7 @@ Here is a summary of extension points in the API:
272272
- **XForwardTo.BackendRef**: This extension point should be used for forwarding
273273
traffic to network endpoints other than core Kubernetes Service resource.
274274
Examples include an S3 bucket, Lambda function, a file-server, etc.
275-
- **HTTPRouteFilter**: This API type in HTTPRoute provides a way to hook into
275+
- **HTTPRouteFilter**: This API type in HTTPRoute provides a way to hook into
276276
the request/response lifecycle of an HTTP request.
277277
- **Custom Routes**: If none of the above extensions points suffice for a use
278278
case, Implementers can chose to create custom Route resources for protocols

docs-src/community.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -7,24 +7,24 @@ discussions around the APIs.
77

88
Feedback and bug reports should be filed as [Github Issues][gh-issues] on this repo.
99

10-
[gh-issues]: https://github.com/kubernetes-sigs/service-apis/issues/new/choose
10+
[gh-issues]: https://github.com/kubernetes-sigs/gateway-api/issues/new/choose
1111

1212
## Communications
1313

1414
Major discussions and notifications will be sent on the [SIG-NETWORK mailing
1515
list][signetg].
1616

17-
We also have a [Slack channel (sig-network-service-apis)][slack] on k8s.io for day-to-day
17+
We also have a [Slack channel (sig-network-gateway-api)][slack] on k8s.io for day-to-day
1818
questions, discussions.
1919

2020
[signetg]: https://groups.google.com/forum/#!forum/kubernetes-sig-network
2121
[slack]: https://kubernetes.slack.com/archives/CR0H13KGA
2222

2323
## Meetings
2424

25-
Meetings discussing the evolution of the service APIs will alternate times to
25+
Meetings discussing the evolution of the Gateway API will alternate times to
2626
accommodate participants from various time zones. This calendar includes all
27-
Service APIs meetings as well as any other SIG-Network meetings.
27+
Gateway API meetings as well as any other SIG-Network meetings.
2828

2929
<iframe
3030
src="https://calendar.google.com/calendar/embed?src=88fe1l3qfn2b6r11k8um5am76c%40group.calendar.google.com"

0 commit comments

Comments
 (0)