Skip to content
This repository was archived by the owner on Sep 4, 2020. It is now read-only.
This repository was archived by the owner on Sep 4, 2020. It is now read-only.

Doc bug: need more complete description of Ingress #558

@omkensey

Description

@omkensey

Describe the bug
Ingress trait and ComponentSchematic documentation are not clear on some things about using Ingress, such as:

  • how to front multiple ComponentSchematics with a single ingress
  • how to most compactly define multiple Ingress paths that apply to the same ApplicationConfig
  • how to indicate that an Ingress path should apply to any hostname

Specifically, I'm trying to recreate the Istio BookInfo demo as a Rudr app definition. I can easily create a Kubernetes Ingress to do what's desired, as below:

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: bookinfo
  annotations:
    nginx.ingress.kubernetes.io/ssl-redirect: "false"
spec:
  rules:
  - http:
      paths:
      - path: /login
        pathType: Exact
        backend:
          serviceName: productpage
          servicePort: 9080
      - path: /logout
        pathType: Exact
        backend:
          serviceName: productpage
          servicePort: 9080
      - path: /productpage
        pathType: Exact
        backend:
          serviceName: productpage
          servicePort: 9080
      - path: /static
        pathType: Prefix
        backend:
          serviceName: productpage
          servicePort: 9080
      - path: /api/v1/products
        pathType: Prefix
        backend:
          serviceName: productpage
          servicePort: 9080

but the BookInfo app depends on various Services existing as well, some of which (reviews) have selectors that select pods from multiple Deployments. It's not clear whether I can just define them as separate ComponentSchematics and then reference them all from a single ApplicationConfig somehow, or if I need to do something different, or if this is not actually (currently) possible to define in OAM and/or Rudr.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type: BugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions