...

Text file src/github.com/datawire/ambassador/v2/manifests/emissary/emissary-defaultns.yaml.in

Documentation: github.com/datawire/ambassador/v2/manifests/emissary

     1# GENERATED FILE: edits made by hand will not be preserved.
     2---
     3apiVersion: v1
     4kind: Service
     5metadata:
     6  annotations:
     7    a8r.io/bugs: https://github.com/datawire/ambassador/issues
     8    a8r.io/chat: http://a8r.io/Slack
     9    a8r.io/dependencies: None
    10    a8r.io/description: The Ambassador Edge Stack admin service for internal use and
    11      health checks.
    12    a8r.io/documentation: https://www.getambassador.io/docs/edge-stack/latest/
    13    a8r.io/owner: Ambassador Labs
    14    a8r.io/repository: github.com/datawire/ambassador
    15    a8r.io/support: https://www.getambassador.io/about-us/support/
    16  labels:
    17    app.kubernetes.io/instance: emissary-ingress
    18    app.kubernetes.io/managed-by: getambassador.io
    19    app.kubernetes.io/name: emissary-ingress
    20    app.kubernetes.io/part-of: emissary-ingress
    21    product: aes
    22    service: ambassador-admin
    23  name: emissary-ingress-admin
    24  namespace: default
    25spec:
    26  ports:
    27  - name: ambassador-admin
    28    port: 8877
    29    protocol: TCP
    30    targetPort: admin
    31  - name: ambassador-snapshot
    32    port: 8005
    33    protocol: TCP
    34    targetPort: 8005
    35  selector:
    36    app.kubernetes.io/instance: emissary-ingress
    37    app.kubernetes.io/name: emissary-ingress
    38  type: NodePort
    39---
    40apiVersion: v1
    41kind: Service
    42metadata:
    43  annotations:
    44    a8r.io/bugs: https://github.com/datawire/ambassador/issues
    45    a8r.io/chat: http://a8r.io/Slack
    46    a8r.io/dependencies: emissary-ingress-redis.default
    47    a8r.io/description: The Ambassador Edge Stack goes beyond traditional API Gateways
    48      and Ingress Controllers with the advanced edge features needed to support developer
    49      self-service and full-cycle development.
    50    a8r.io/documentation: https://www.getambassador.io/docs/edge-stack/latest/
    51    a8r.io/owner: Ambassador Labs
    52    a8r.io/repository: github.com/datawire/ambassador
    53    a8r.io/support: https://www.getambassador.io/about-us/support/
    54  labels:
    55    app.kubernetes.io/component: ambassador-service
    56    app.kubernetes.io/instance: emissary-ingress
    57    app.kubernetes.io/managed-by: getambassador.io
    58    app.kubernetes.io/name: emissary-ingress
    59    app.kubernetes.io/part-of: emissary-ingress
    60    product: aes
    61  name: emissary-ingress
    62  namespace: default
    63spec:
    64  ports:
    65  - name: http
    66    port: 80
    67    targetPort: 8080
    68  - name: https
    69    port: 443
    70    targetPort: 8443
    71  selector:
    72    app.kubernetes.io/instance: emissary-ingress
    73    app.kubernetes.io/name: emissary-ingress
    74    profile: main
    75  type: LoadBalancer
    76---
    77apiVersion: v1
    78kind: Service
    79metadata:
    80  labels:
    81    product: aes
    82  name: emissary-ingress-agent
    83  namespace: default
    84spec:
    85  ports:
    86  - name: http
    87    port: 80
    88    protocol: TCP
    89    targetPort: http
    90  selector:
    91    app.kubernetes.io/instance: emissary-ingress
    92    app.kubernetes.io/name: emissary-ingress-agent
    93---
    94aggregationRule:
    95  clusterRoleSelectors:
    96  - matchLabels:
    97      rbac.getambassador.io/role-group: emissary-ingress
    98apiVersion: rbac.authorization.k8s.io/v1
    99kind: ClusterRole
   100metadata:
   101  labels:
   102    app.kubernetes.io/instance: emissary-ingress
   103    app.kubernetes.io/managed-by: getambassador.io
   104    app.kubernetes.io/name: emissary-ingress
   105    app.kubernetes.io/part-of: emissary-ingress
   106    product: aes
   107  name: emissary-ingress
   108rules: []
   109---
   110apiVersion: v1
   111kind: ServiceAccount
   112metadata:
   113  labels:
   114    app.kubernetes.io/instance: emissary-ingress
   115    app.kubernetes.io/managed-by: getambassador.io
   116    app.kubernetes.io/name: emissary-ingress
   117    app.kubernetes.io/part-of: emissary-ingress
   118    product: aes
   119  name: emissary-ingress
   120  namespace: default
   121---
   122apiVersion: rbac.authorization.k8s.io/v1
   123kind: ClusterRoleBinding
   124metadata:
   125  labels:
   126    app.kubernetes.io/instance: emissary-ingress
   127    app.kubernetes.io/managed-by: getambassador.io
   128    app.kubernetes.io/name: emissary-ingress
   129    app.kubernetes.io/part-of: emissary-ingress
   130    product: aes
   131  name: emissary-ingress
   132roleRef:
   133  apiGroup: rbac.authorization.k8s.io
   134  kind: ClusterRole
   135  name: emissary-ingress
   136subjects:
   137- kind: ServiceAccount
   138  name: emissary-ingress
   139  namespace: default
   140---
   141apiVersion: rbac.authorization.k8s.io/v1
   142kind: ClusterRole
   143metadata:
   144  labels:
   145    app.kubernetes.io/instance: emissary-ingress
   146    app.kubernetes.io/managed-by: getambassador.io
   147    app.kubernetes.io/name: emissary-ingress
   148    app.kubernetes.io/part-of: emissary-ingress
   149    product: aes
   150    rbac.getambassador.io/role-group: emissary-ingress
   151  name: emissary-ingress-crd
   152rules:
   153- apiGroups:
   154  - apiextensions.k8s.io
   155  resources:
   156  - customresourcedefinitions
   157  verbs:
   158  - get
   159  - list
   160  - watch
   161  - delete
   162---
   163apiVersion: rbac.authorization.k8s.io/v1
   164kind: ClusterRole
   165metadata:
   166  labels:
   167    app.kubernetes.io/instance: emissary-ingress
   168    app.kubernetes.io/managed-by: getambassador.io
   169    app.kubernetes.io/name: emissary-ingress
   170    app.kubernetes.io/part-of: emissary-ingress
   171    product: aes
   172    rbac.getambassador.io/role-group: emissary-ingress
   173  name: emissary-ingress-watch
   174rules:
   175- apiGroups:
   176  - ""
   177  resources:
   178  - namespaces
   179  - services
   180  - secrets
   181  - configmaps
   182  - endpoints
   183  verbs:
   184  - get
   185  - list
   186  - watch
   187- apiGroups:
   188  - getambassador.io
   189  resources:
   190  - '*'
   191  verbs:
   192  - get
   193  - list
   194  - watch
   195  - update
   196  - patch
   197  - create
   198  - delete
   199- apiGroups:
   200  - getambassador.io
   201  resources:
   202  - mappings/status
   203  verbs:
   204  - update
   205- apiGroups:
   206  - networking.internal.knative.dev
   207  resources:
   208  - clusteringresses
   209  - ingresses
   210  verbs:
   211  - get
   212  - list
   213  - watch
   214- apiGroups:
   215  - networking.x-k8s.io
   216  resources:
   217  - '*'
   218  verbs:
   219  - get
   220  - list
   221  - watch
   222- apiGroups:
   223  - networking.internal.knative.dev
   224  resources:
   225  - ingresses/status
   226  - clusteringresses/status
   227  verbs:
   228  - update
   229- apiGroups:
   230  - extensions
   231  - networking.k8s.io
   232  resources:
   233  - ingresses
   234  - ingressclasses
   235  verbs:
   236  - get
   237  - list
   238  - watch
   239- apiGroups:
   240  - extensions
   241  - networking.k8s.io
   242  resources:
   243  - ingresses/status
   244  verbs:
   245  - update
   246---
   247apiVersion: apps/v1
   248kind: Deployment
   249metadata:
   250  labels:
   251    app.kubernetes.io/instance: emissary-ingress
   252    app.kubernetes.io/managed-by: getambassador.io
   253    app.kubernetes.io/name: emissary-ingress
   254    app.kubernetes.io/part-of: emissary-ingress
   255    product: aes
   256  name: emissary-ingress
   257  namespace: default
   258spec:
   259  progressDeadlineSeconds: 600
   260  replicas: 3
   261  selector:
   262    matchLabels:
   263      app.kubernetes.io/instance: emissary-ingress
   264      app.kubernetes.io/name: emissary-ingress
   265  strategy:
   266    type: RollingUpdate
   267  template:
   268    metadata:
   269      annotations:
   270        consul.hashicorp.com/connect-inject: "false"
   271        sidecar.istio.io/inject: "false"
   272      labels:
   273        app.kubernetes.io/instance: emissary-ingress
   274        app.kubernetes.io/managed-by: getambassador.io
   275        app.kubernetes.io/name: emissary-ingress
   276        app.kubernetes.io/part-of: emissary-ingress
   277        product: aes
   278        profile: main
   279    spec:
   280      affinity:
   281        podAntiAffinity:
   282          preferredDuringSchedulingIgnoredDuringExecution:
   283          - podAffinityTerm:
   284              labelSelector:
   285                matchLabels:
   286                  service: ambassador
   287              topologyKey: kubernetes.io/hostname
   288            weight: 100
   289      containers:
   290      - env:
   291        - name: AMBASSADOR_GRPC_METRICS_SINK
   292          value: emissary-ingress-agent:80
   293        - name: HOST_IP
   294          valueFrom:
   295            fieldRef:
   296              fieldPath: status.hostIP
   297        - name: AMBASSADOR_NAMESPACE
   298          valueFrom:
   299            fieldRef:
   300              fieldPath: metadata.namespace
   301        - name: AGENT_CONFIG_RESOURCE_NAME
   302          value: emissary-ingress-agent-cloud-token
   303        image: $imageRepo$:$version$
   304        imagePullPolicy: IfNotPresent
   305        livenessProbe:
   306          failureThreshold: 3
   307          httpGet:
   308            path: /ambassador/v0/check_alive
   309            port: admin
   310          initialDelaySeconds: 30
   311          periodSeconds: 3
   312        name: ambassador
   313        ports:
   314        - containerPort: 8080
   315          name: http
   316        - containerPort: 8443
   317          name: https
   318        - containerPort: 8877
   319          name: admin
   320        readinessProbe:
   321          failureThreshold: 3
   322          httpGet:
   323            path: /ambassador/v0/check_ready
   324            port: admin
   325          initialDelaySeconds: 30
   326          periodSeconds: 3
   327        resources:
   328          limits:
   329            cpu: 1
   330            memory: 400Mi
   331          requests:
   332            cpu: 200m
   333            memory: 100Mi
   334        securityContext:
   335          allowPrivilegeEscalation: false
   336        volumeMounts:
   337        - mountPath: /tmp/ambassador-pod-info
   338          name: ambassador-pod-info
   339          readOnly: true
   340      dnsPolicy: ClusterFirst
   341      hostNetwork: false
   342      imagePullSecrets: []
   343      restartPolicy: Always
   344      securityContext:
   345        runAsUser: 8888
   346      serviceAccountName: emissary-ingress
   347      terminationGracePeriodSeconds: 0
   348      volumes:
   349      - downwardAPI:
   350          items:
   351          - fieldRef:
   352              fieldPath: metadata.labels
   353            path: labels
   354        name: ambassador-pod-info
   355---
   356apiVersion: v1
   357kind: ServiceAccount
   358metadata:
   359  labels:
   360    app.kubernetes.io/instance: emissary-ingress
   361    app.kubernetes.io/managed-by: getambassador.io
   362    app.kubernetes.io/name: emissary-ingress-agent
   363    app.kubernetes.io/part-of: emissary-ingress
   364    product: aes
   365  name: emissary-ingress-agent
   366  namespace: default
   367---
   368apiVersion: rbac.authorization.k8s.io/v1
   369kind: ClusterRoleBinding
   370metadata:
   371  labels:
   372    app.kubernetes.io/instance: emissary-ingress
   373    app.kubernetes.io/managed-by: getambassador.io
   374    app.kubernetes.io/name: emissary-ingress-agent
   375    app.kubernetes.io/part-of: emissary-ingress
   376    product: aes
   377  name: emissary-ingress-agent
   378roleRef:
   379  apiGroup: rbac.authorization.k8s.io
   380  kind: ClusterRole
   381  name: emissary-ingress-agent
   382subjects:
   383- kind: ServiceAccount
   384  name: emissary-ingress-agent
   385  namespace: default
   386---
   387aggregationRule:
   388  clusterRoleSelectors:
   389  - matchLabels:
   390      rbac.getambassador.io/role-group: emissary-ingress-agent
   391apiVersion: rbac.authorization.k8s.io/v1
   392kind: ClusterRole
   393metadata:
   394  labels:
   395    app.kubernetes.io/instance: emissary-ingress
   396    app.kubernetes.io/managed-by: getambassador.io
   397    app.kubernetes.io/name: emissary-ingress-agent
   398    app.kubernetes.io/part-of: emissary-ingress
   399    product: aes
   400  name: emissary-ingress-agent
   401rules: []
   402---
   403apiVersion: rbac.authorization.k8s.io/v1
   404kind: ClusterRole
   405metadata:
   406  labels:
   407    app.kubernetes.io/instance: emissary-ingress
   408    app.kubernetes.io/managed-by: getambassador.io
   409    app.kubernetes.io/name: emissary-ingress-agent
   410    app.kubernetes.io/part-of: emissary-ingress
   411    product: aes
   412    rbac.getambassador.io/role-group: emissary-ingress-agent
   413  name: emissary-ingress-agent-pods
   414rules:
   415- apiGroups:
   416  - ""
   417  resources:
   418  - pods
   419  verbs:
   420  - get
   421  - list
   422  - watch
   423---
   424apiVersion: rbac.authorization.k8s.io/v1
   425kind: ClusterRole
   426metadata:
   427  labels:
   428    app.kubernetes.io/instance: emissary-ingress
   429    app.kubernetes.io/managed-by: getambassador.io
   430    app.kubernetes.io/name: emissary-ingress-agent
   431    app.kubernetes.io/part-of: emissary-ingress
   432    product: aes
   433    rbac.getambassador.io/role-group: emissary-ingress-agent
   434  name: emissary-ingress-agent-rollouts
   435rules:
   436- apiGroups:
   437  - argoproj.io
   438  resources:
   439  - rollouts
   440  - rollouts/status
   441  verbs:
   442  - get
   443  - list
   444  - watch
   445  - patch
   446---
   447apiVersion: rbac.authorization.k8s.io/v1
   448kind: ClusterRole
   449metadata:
   450  labels:
   451    app.kubernetes.io/instance: emissary-ingress
   452    app.kubernetes.io/managed-by: getambassador.io
   453    app.kubernetes.io/name: emissary-ingress-agent
   454    app.kubernetes.io/part-of: emissary-ingress
   455    product: aes
   456    rbac.getambassador.io/role-group: emissary-ingress-agent
   457  name: emissary-ingress-agent-applications
   458rules:
   459- apiGroups:
   460  - argoproj.io
   461  resources:
   462  - applications
   463  verbs:
   464  - get
   465  - list
   466  - watch
   467---
   468apiVersion: rbac.authorization.k8s.io/v1
   469kind: ClusterRole
   470metadata:
   471  labels:
   472    app.kubernetes.io/instance: emissary-ingress
   473    app.kubernetes.io/managed-by: getambassador.io
   474    app.kubernetes.io/name: emissary-ingress-agent
   475    app.kubernetes.io/part-of: emissary-ingress
   476    product: aes
   477    rbac.getambassador.io/role-group: emissary-ingress-agent
   478  name: emissary-ingress-agent-deployments
   479rules:
   480- apiGroups:
   481  - apps
   482  - extensions
   483  resources:
   484  - deployments
   485  verbs:
   486  - get
   487  - list
   488  - watch
   489---
   490apiVersion: rbac.authorization.k8s.io/v1
   491kind: ClusterRole
   492metadata:
   493  labels:
   494    app.kubernetes.io/instance: emissary-ingress
   495    app.kubernetes.io/managed-by: getambassador.io
   496    app.kubernetes.io/name: emissary-ingress-agent
   497    app.kubernetes.io/part-of: emissary-ingress
   498    product: aes
   499    rbac.getambassador.io/role-group: emissary-ingress-agent
   500  name: emissary-ingress-agent-endpoints
   501rules:
   502- apiGroups:
   503  - ""
   504  resources:
   505  - endpoints
   506  verbs:
   507  - get
   508  - list
   509  - watch
   510---
   511apiVersion: rbac.authorization.k8s.io/v1
   512kind: ClusterRole
   513metadata:
   514  labels:
   515    app.kubernetes.io/instance: emissary-ingress
   516    app.kubernetes.io/managed-by: getambassador.io
   517    app.kubernetes.io/name: emissary-ingress-agent
   518    app.kubernetes.io/part-of: emissary-ingress
   519    product: aes
   520    rbac.getambassador.io/role-group: emissary-ingress-agent
   521  name: emissary-ingress-agent-configmaps
   522rules:
   523- apiGroups:
   524  - ""
   525  resources:
   526  - configmaps
   527  verbs:
   528  - get
   529  - list
   530  - watch
   531---
   532apiVersion: rbac.authorization.k8s.io/v1
   533kind: Role
   534metadata:
   535  labels:
   536    app.kubernetes.io/instance: emissary-ingress
   537    app.kubernetes.io/managed-by: getambassador.io
   538    app.kubernetes.io/name: emissary-ingress-agent
   539    app.kubernetes.io/part-of: emissary-ingress
   540    product: aes
   541  name: emissary-ingress-agent-config
   542  namespace: default
   543rules:
   544- apiGroups:
   545  - ""
   546  resources:
   547  - configmaps
   548  verbs:
   549  - get
   550  - list
   551  - watch
   552---
   553apiVersion: rbac.authorization.k8s.io/v1
   554kind: RoleBinding
   555metadata:
   556  labels:
   557    app.kubernetes.io/instance: emissary-ingress
   558    app.kubernetes.io/managed-by: getambassador.io
   559    app.kubernetes.io/name: emissary-ingress-agent
   560    app.kubernetes.io/part-of: emissary-ingress
   561    product: aes
   562  name: emissary-ingress-agent-config
   563  namespace: default
   564roleRef:
   565  apiGroup: rbac.authorization.k8s.io
   566  kind: Role
   567  name: emissary-ingress-agent-config
   568subjects:
   569- kind: ServiceAccount
   570  name: emissary-ingress-agent
   571  namespace: default
   572---
   573apiVersion: apps/v1
   574kind: Deployment
   575metadata:
   576  labels:
   577    app.kubernetes.io/instance: emissary-ingress
   578    app.kubernetes.io/managed-by: getambassador.io
   579    app.kubernetes.io/name: emissary-ingress-agent
   580    app.kubernetes.io/part-of: emissary-ingress
   581    product: aes
   582  name: emissary-ingress-agent
   583  namespace: default
   584spec:
   585  progressDeadlineSeconds: 600
   586  replicas: 1
   587  selector:
   588    matchLabels:
   589      app.kubernetes.io/instance: emissary-ingress
   590      app.kubernetes.io/name: emissary-ingress-agent
   591  template:
   592    metadata:
   593      labels:
   594        app.kubernetes.io/instance: emissary-ingress
   595        app.kubernetes.io/managed-by: getambassador.io
   596        app.kubernetes.io/name: emissary-ingress-agent
   597        app.kubernetes.io/part-of: emissary-ingress
   598        product: aes
   599    spec:
   600      containers:
   601      - command:
   602        - agent
   603        env:
   604        - name: AGENT_NAMESPACE
   605          valueFrom:
   606            fieldRef:
   607              fieldPath: metadata.namespace
   608        - name: AGENT_CONFIG_RESOURCE_NAME
   609          value: emissary-ingress-agent-cloud-token
   610        - name: RPC_CONNECTION_ADDRESS
   611          value: https://app.getambassador.io/
   612        - name: AES_SNAPSHOT_URL
   613          value: http://emissary-ingress-admin.default:8005/snapshot-external
   614        image: $imageRepo$:$version$
   615        imagePullPolicy: IfNotPresent
   616        name: agent
   617        ports:
   618        - containerPort: 8080
   619          name: http
   620      serviceAccountName: emissary-ingress-agent

View as plain text