...

Text file src/sigs.k8s.io/gateway-api/conformance/base/manifests.yaml

Documentation: sigs.k8s.io/gateway-api/conformance/base

     1# This file contains the base resources that most conformance tests will rely
     2# on. This includes 3 namespaces along with Gateways, Services and Deployments
     3# that can be used as backends for routing traffic. The most important
     4# resources included are the Gateways (all in the gateway-conformance-infra
     5# namespace):
     6# - same-namespace (only supports route in same ns)
     7# - all-namespaces (supports routes in all ns)
     8# - backend-namespaces (supports routes in ns with backend label)
     9apiVersion: v1
    10kind: Namespace
    11metadata:
    12  name: gateway-conformance-infra
    13  labels:
    14    gateway-conformance: infra
    15---
    16apiVersion: gateway.networking.k8s.io/v1beta1
    17kind: Gateway
    18metadata:
    19  name: same-namespace
    20  namespace: gateway-conformance-infra
    21spec:
    22  gatewayClassName: "{GATEWAY_CLASS_NAME}"
    23  listeners:
    24  - name: http
    25    port: 80
    26    protocol: HTTP
    27    allowedRoutes:
    28      namespaces:
    29        from: Same
    30---
    31apiVersion: gateway.networking.k8s.io/v1beta1
    32kind: Gateway
    33metadata:
    34  name: same-namespace-with-https-listener
    35  namespace: gateway-conformance-infra
    36spec:
    37  gatewayClassName: "{GATEWAY_CLASS_NAME}"
    38  listeners:
    39  - name: https
    40    port: 443
    41    protocol: HTTPS
    42    allowedRoutes:
    43      namespaces:
    44        from: Same
    45    tls:
    46      certificateRefs:
    47      - group: ""
    48        kind: Secret
    49        name: tls-validity-checks-certificate
    50        namespace: gateway-conformance-infra
    51---
    52apiVersion: gateway.networking.k8s.io/v1beta1
    53kind: Gateway
    54metadata:
    55  name: all-namespaces
    56  namespace: gateway-conformance-infra
    57spec:
    58  gatewayClassName: "{GATEWAY_CLASS_NAME}"
    59  listeners:
    60  - name: http
    61    port: 80
    62    protocol: HTTP
    63    allowedRoutes:
    64      namespaces:
    65        from: All
    66---
    67apiVersion: gateway.networking.k8s.io/v1beta1
    68kind: Gateway
    69metadata:
    70  name: backend-namespaces
    71  namespace: gateway-conformance-infra
    72spec:
    73  gatewayClassName: "{GATEWAY_CLASS_NAME}"
    74  listeners:
    75  - name: http
    76    port: 80
    77    protocol: HTTP
    78    allowedRoutes:
    79      namespaces:
    80        from: Selector
    81        selector:
    82          matchLabels:
    83            gateway-conformance: backend
    84---
    85apiVersion: v1
    86kind: Service
    87metadata:
    88  name: infra-backend-v1
    89  namespace: gateway-conformance-infra
    90spec:
    91  selector:
    92    app: infra-backend-v1
    93  ports:
    94  - name: first-port
    95    protocol: TCP
    96    port: 8080
    97    targetPort: 3000
    98  - name: second-port
    99    protocol: TCP
   100    appProtocol: kubernetes.io/h2c
   101    port: 8081
   102    targetPort: 3001
   103  - name: third-port
   104    protocol: TCP
   105    appProtocol: kubernetes.io/ws
   106    port: 8082
   107    targetPort: 3000
   108---
   109apiVersion: apps/v1
   110kind: Deployment
   111metadata:
   112  name: infra-backend-v1
   113  namespace: gateway-conformance-infra
   114  labels:
   115    app: infra-backend-v1
   116spec:
   117  replicas: 2
   118  selector:
   119    matchLabels:
   120      app: infra-backend-v1
   121  template:
   122    metadata:
   123      labels:
   124        app: infra-backend-v1
   125    spec:
   126      containers:
   127      - name: infra-backend-v1
   128        # From https://github.com/kubernetes-sigs/ingress-controller-conformance/tree/master/images/echoserver
   129        image: gcr.io/k8s-staging-gateway-api/echo-basic:v20231024-v1.0.0-rc1-33-g9c830e50
   130        env:
   131        - name: POD_NAME
   132          valueFrom:
   133            fieldRef:
   134              fieldPath: metadata.name
   135        - name: NAMESPACE
   136          valueFrom:
   137            fieldRef:
   138              fieldPath: metadata.namespace
   139        resources:
   140          requests:
   141            cpu: 10m
   142---
   143apiVersion: v1
   144kind: Service
   145metadata:
   146  name: infra-backend-v2
   147  namespace: gateway-conformance-infra
   148spec:
   149  selector:
   150    app: infra-backend-v2
   151  ports:
   152  - protocol: TCP
   153    port: 8080
   154    targetPort: 3000
   155---
   156apiVersion: apps/v1
   157kind: Deployment
   158metadata:
   159  name: infra-backend-v2
   160  namespace: gateway-conformance-infra
   161  labels:
   162    app: infra-backend-v2
   163spec:
   164  replicas: 2
   165  selector:
   166    matchLabels:
   167      app: infra-backend-v2
   168  template:
   169    metadata:
   170      labels:
   171        app: infra-backend-v2
   172    spec:
   173      containers:
   174      - name: infra-backend-v2
   175        image: gcr.io/k8s-staging-gateway-api/echo-basic:v20231024-v1.0.0-rc1-33-g9c830e50
   176        env:
   177        - name: POD_NAME
   178          valueFrom:
   179            fieldRef:
   180              fieldPath: metadata.name
   181        - name: NAMESPACE
   182          valueFrom:
   183            fieldRef:
   184              fieldPath: metadata.namespace
   185        resources:
   186          requests:
   187            cpu: 10m
   188---
   189apiVersion: v1
   190kind: Service
   191metadata:
   192  name: infra-backend-v3
   193  namespace: gateway-conformance-infra
   194spec:
   195  selector:
   196    app: infra-backend-v3
   197  ports:
   198  - protocol: TCP
   199    port: 8080
   200    targetPort: 3000
   201---
   202apiVersion: apps/v1
   203kind: Deployment
   204metadata:
   205  name: infra-backend-v3
   206  namespace: gateway-conformance-infra
   207  labels:
   208    app: infra-backend-v3
   209spec:
   210  replicas: 2
   211  selector:
   212    matchLabels:
   213      app: infra-backend-v3
   214  template:
   215    metadata:
   216      labels:
   217        app: infra-backend-v3
   218    spec:
   219      containers:
   220      - name: infra-backend-v3
   221        image: gcr.io/k8s-staging-gateway-api/echo-basic:v20231024-v1.0.0-rc1-33-g9c830e50
   222        env:
   223        - name: POD_NAME
   224          valueFrom:
   225            fieldRef:
   226              fieldPath: metadata.name
   227        - name: NAMESPACE
   228          valueFrom:
   229            fieldRef:
   230              fieldPath: metadata.namespace
   231        resources:
   232          requests:
   233            cpu: 10m
   234---
   235apiVersion: v1
   236kind: Service
   237metadata:
   238  name: tls-backend
   239  namespace: gateway-conformance-infra
   240spec:
   241  selector:
   242    app: tls-backend
   243  ports:
   244  - protocol: TCP
   245    port: 443
   246    targetPort: 8443
   247---
   248apiVersion: apps/v1
   249kind: Deployment
   250metadata:
   251  name: tls-backend
   252  namespace: gateway-conformance-infra
   253  labels:
   254    app: tls-backend
   255spec:
   256  replicas: 1
   257  selector:
   258    matchLabels:
   259      app: tls-backend
   260  template:
   261    metadata:
   262      labels:
   263        app: tls-backend
   264    spec:
   265      containers:
   266      - name: tls-backend
   267        image: gcr.io/k8s-staging-gateway-api/echo-basic:v20231024-v1.0.0-rc1-33-g9c830e50
   268        volumeMounts:
   269        - name: secret-volume
   270          mountPath: /etc/secret-volume
   271        env:
   272        - name: POD_NAME
   273          valueFrom:
   274            fieldRef:
   275              fieldPath: metadata.name
   276        - name: NAMESPACE
   277          valueFrom:
   278            fieldRef:
   279              fieldPath: metadata.namespace
   280        - name: TLS_SERVER_CERT
   281          value: /etc/secret-volume/crt
   282        - name: TLS_SERVER_PRIVKEY
   283          value: /etc/secret-volume/key
   284        resources:
   285          requests:
   286            cpu: 10m
   287      volumes:
   288      - name: secret-volume
   289        secret:
   290          secretName: tls-passthrough-checks-certificate
   291          items:
   292          - key: tls.crt
   293            path: crt
   294          - key: tls.key
   295            path: key
   296---
   297apiVersion: v1
   298kind: Namespace
   299metadata:
   300  name: gateway-conformance-app-backend
   301  labels:
   302    gateway-conformance: backend
   303---
   304apiVersion: v1
   305kind: Service
   306metadata:
   307  name: tls-backend
   308  namespace: gateway-conformance-app-backend
   309spec:
   310  selector:
   311    app: tls-backend
   312  ports:
   313  - protocol: TCP
   314    port: 443
   315    targetPort: 8443
   316---
   317apiVersion: apps/v1
   318kind: Deployment
   319metadata:
   320  name: tls-backend
   321  namespace: gateway-conformance-app-backend
   322  labels:
   323    app: tls-backend
   324spec:
   325  replicas: 1
   326  selector:
   327    matchLabels:
   328      app: tls-backend
   329  template:
   330    metadata:
   331      labels:
   332        app: tls-backend
   333    spec:
   334      containers:
   335      - name: tls-backend
   336        image: gcr.io/k8s-staging-gateway-api/echo-basic:v20231024-v1.0.0-rc1-33-g9c830e50
   337        volumeMounts:
   338        - name: secret-volume
   339          mountPath: /etc/secret-volume
   340        env:
   341        - name: POD_NAME
   342          valueFrom:
   343            fieldRef:
   344              fieldPath: metadata.name
   345        - name: NAMESPACE
   346          valueFrom:
   347            fieldRef:
   348              fieldPath: metadata.namespace
   349        - name: TLS_SERVER_CERT
   350          value: /etc/secret-volume/crt
   351        - name: TLS_SERVER_PRIVKEY
   352          value: /etc/secret-volume/key
   353        resources:
   354          requests:
   355            cpu: 10m
   356      volumes:
   357      - name: secret-volume
   358        secret:
   359          secretName: tls-passthrough-checks-certificate
   360          items:
   361          - key: tls.crt
   362            path: crt
   363          - key: tls.key
   364            path: key
   365---
   366apiVersion: v1
   367kind: Service
   368metadata:
   369  name: app-backend-v1
   370  namespace: gateway-conformance-app-backend
   371spec:
   372  selector:
   373    app: app-backend-v1
   374  ports:
   375  - protocol: TCP
   376    port: 8080
   377    targetPort: 3000
   378---
   379apiVersion: apps/v1
   380kind: Deployment
   381metadata:
   382  name: app-backend-v1
   383  namespace: gateway-conformance-app-backend
   384  labels:
   385    app: app-backend-v1
   386spec:
   387  replicas: 2
   388  selector:
   389    matchLabels:
   390      app: app-backend-v1
   391  template:
   392    metadata:
   393      labels:
   394        app: app-backend-v1
   395    spec:
   396      containers:
   397      - name: app-backend-v1
   398        image: gcr.io/k8s-staging-gateway-api/echo-basic:v20231024-v1.0.0-rc1-33-g9c830e50
   399        env:
   400        - name: POD_NAME
   401          valueFrom:
   402            fieldRef:
   403              fieldPath: metadata.name
   404        - name: NAMESPACE
   405          valueFrom:
   406            fieldRef:
   407              fieldPath: metadata.namespace
   408        resources:
   409          requests:
   410            cpu: 10m
   411---
   412apiVersion: v1
   413kind: Service
   414metadata:
   415  name: app-backend-v2
   416  namespace: gateway-conformance-app-backend
   417spec:
   418  selector:
   419    app: app-backend-v2
   420  ports:
   421  - protocol: TCP
   422    port: 8080
   423    targetPort: 3000
   424---
   425apiVersion: apps/v1
   426kind: Deployment
   427metadata:
   428  name: app-backend-v2
   429  namespace: gateway-conformance-app-backend
   430  labels:
   431    app: app-backend-v2
   432spec:
   433  replicas: 2
   434  selector:
   435    matchLabels:
   436      app: app-backend-v2
   437  template:
   438    metadata:
   439      labels:
   440        app: app-backend-v2
   441    spec:
   442      containers:
   443      - name: app-backend-v2
   444        image: gcr.io/k8s-staging-gateway-api/echo-basic:v20231024-v1.0.0-rc1-33-g9c830e50
   445        env:
   446        - name: POD_NAME
   447          valueFrom:
   448            fieldRef:
   449              fieldPath: metadata.name
   450        - name: NAMESPACE
   451          valueFrom:
   452            fieldRef:
   453              fieldPath: metadata.namespace
   454        resources:
   455          requests:
   456            cpu: 10m
   457---
   458apiVersion: v1
   459kind: Namespace
   460metadata:
   461  name: gateway-conformance-web-backend
   462  labels:
   463    gateway-conformance: backend
   464---
   465apiVersion: v1
   466kind: Service
   467metadata:
   468  name: web-backend
   469  namespace: gateway-conformance-web-backend
   470spec:
   471  selector:
   472    app: web-backend
   473  ports:
   474  - protocol: TCP
   475    port: 8080
   476    targetPort: 3000
   477---
   478apiVersion: apps/v1
   479kind: Deployment
   480metadata:
   481  name: web-backend
   482  namespace: gateway-conformance-web-backend
   483  labels:
   484    app: web-backend
   485spec:
   486  replicas: 2
   487  selector:
   488    matchLabels:
   489      app: web-backend
   490  template:
   491    metadata:
   492      labels:
   493        app: web-backend
   494    spec:
   495      containers:
   496      - name: web-backend
   497        image: gcr.io/k8s-staging-gateway-api/echo-basic:v20231024-v1.0.0-rc1-33-g9c830e50
   498        env:
   499        - name: POD_NAME
   500          valueFrom:
   501            fieldRef:
   502              fieldPath: metadata.name
   503        - name: NAMESPACE
   504          valueFrom:
   505            fieldRef:
   506              fieldPath: metadata.namespace
   507        resources:
   508          requests:
   509            cpu: 10m

View as plain text