summaryrefslogtreecommitdiffstats
path: root/roles/openshift_examples/files/examples/v1.4/quickstart-templates/apicast-gateway-template.yml
blob: 34f5fcbccd13cfadbfadb07a8625e9fd9487e9e7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
apiVersion: v1
kind: Template
metadata:
  creationTimestamp: null
  name: 3scale-gateway
  annotations:
    description: "3scale API Gateway"
    iconClass: "icon-load-balancer"
    tags: "api,gateway,3scale"
objects:
- apiVersion: v1
  kind: DeploymentConfig
  metadata:
    name: ${THREESCALE_GATEWAY_NAME}
  spec:
    replicas: 2
    selector:
      deploymentconfig: ${THREESCALE_GATEWAY_NAME}
    strategy:
      resources: {}
      rollingParams:
        intervalSeconds: 1
        maxSurge: 25%
        maxUnavailable: 25%
        timeoutSeconds: 600
        updatePeriodSeconds: 1
      type: Rolling
    template:
      metadata:
        labels:
          deploymentconfig: ${THREESCALE_GATEWAY_NAME}
      spec:
        containers:
        - env:
          - name: THREESCALE_PORTAL_ENDPOINT
            valueFrom:
              secretKeyRef:
                name: ${THREESCALE_PORTAL_ENDPOINT_SECRET}
                key: password
          - name: THREESCALE_CONFIG_FILE
            value: ${THREESCALE_CONFIG_FILE}
          - name: RESOLVER
            value: ${RESOLVER}
          - name: APICAST_SERVICES
            value: ${APICAST_SERVICES}
          - name: APICAST_MISSING_CONFIGURATION
            value: ${MISSING_CONFIGURATION}
          - name: APICAST_LOG_LEVEL
            value: ${APICAST_LOG_LEVEL}
          - name: APICAST_PATH_ROUTING_ENABLED
            value: ${PATH_ROUTING}
          - name: APICAST_RESPONSE_CODES
            value: ${RESPONSE_CODES}
          - name: APICAST_REQUEST_LOGS
            value: ${REQUEST_LOGS}
          - name: APICAST_RELOAD_CONFIG
            value: ${APICAST_RELOAD_CONFIG}
          image: ${THREESCALE_GATEWAY_IMAGE}
          imagePullPolicy: Always
          name: ${THREESCALE_GATEWAY_NAME}
          livenessProbe:
            httpGet:
              path: /status/live
              port: 8090
            initialDelaySeconds: 10
            timeoutSeconds: 1
          readinessProbe:
            httpGet:
              path: /status/ready
              port: 8090
            initialDelaySeconds: 15
            timeoutSeconds: 1
          ports:
          - containerPort: 8080
            protocol: TCP
          resources: {}
          terminationMessagePath: /dev/termination-log
        dnsPolicy: ClusterFirst
        restartPolicy: Always
        securityContext: {}
        terminationGracePeriodSeconds: 30
    triggers:
    - type: ConfigChange
  status: {}
- apiVersion: v1
  kind: Service
  metadata:
    creationTimestamp: null
    name: ${THREESCALE_GATEWAY_NAME}
  spec:
    ports:
    - name: 8080-tcp
      port: 8080
      protocol: TCP
      targetPort: 8080
    selector:
      deploymentconfig: ${THREESCALE_GATEWAY_NAME}
    sessionAffinity: None
    type: ClusterIP
  status:
    loadBalancer: {}
parameters:
- description: "Name of the secret containing the THREESCALE_PORTAL_ENDPOINT with the access-token or provider key"
  value: threescale-portal-endpoint-secret
  name: THREESCALE_PORTAL_ENDPOINT_SECRET
  required: true
- description: "Path to saved JSON file with configuration for the gateway. Has to be injected to the docker image as read only volume."
  value:
  name: THREESCALE_CONFIG_FILE
  required: false
- description: "Name for the 3scale API Gateway"
  value: threescalegw
  name: THREESCALE_GATEWAY_NAME
  required: true
- description: "Docker image to use."
  value: 'rhamp10/apicast-gateway:1.0.0-4'
  name: THREESCALE_GATEWAY_IMAGE
  required: true
- description: "DNS Resolver for openresty, if empty it will be autodiscovered"
  value:
  name: RESOLVER
  required: false
- description: "Subset of services to run. Use comma separated list of service ids (eg. 42,1337)"
  value:
  name: APICAST_SERVICES
  required: false
- description: "What to do on missing or invalid configuration. Allowed values are: log, exit."
  value: exit
  required: false
  name: MISSING_CONFIGURATION
- description: "Log level. One of the following: debug, info, notice, warn, error, crit, alert, or emerg."
  name: APICAST_LOG_LEVEL
  required: false
- description: "Enable path routing. Experimental feature."
  name: PATH_ROUTING
  required: false
  value: "false"
- description: "Enable traffic logging to 3scale. Includes whole request and response."
  value: "false"
  name: REQUEST_LOGS
  required: false
- description: "Enable logging response codes to 3scale."
  value: "false"
  name: RESPONSE_CODES
  required: false
- description: "Reload config on every request"
  value: "false"
  name: APICAST_RELOAD_CONFIG
  required: false