rhdm70-kieserver.yaml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345
  1. kind: Template
  2. apiVersion: v1
  3. metadata:
  4. annotations:
  5. description: Application template for Red Hat Decision Manager Execution Server 7.0 application.
  6. iconClass: icon-decisionserver
  7. tags: rhdm,jboss,xpaas
  8. version: 1.4.8
  9. openshift.io/display-name: Red Hat Decision Manager Execution Server 7.0 (Ephemeral with https)
  10. name: rhdm70-kieserver
  11. labels:
  12. template: rhdm70-kieserver
  13. xpaas: 1.4.8
  14. message: A new Decision Manager Execution Server application has been created in your
  15. project. Please be sure to create the "kieserver-service-account" service account and
  16. the secret named "${HTTPS_SECRET}" containing the ${HTTPS_KEYSTORE} file used for
  17. serving secure content.
  18. parameters:
  19. - displayName: Application Name
  20. description: The name for the application.
  21. name: APPLICATION_NAME
  22. value: myapp
  23. required: true
  24. - displayName: EAP Admin User
  25. description: EAP administrator username
  26. name: ADMIN_USERNAME
  27. value: eapadmin
  28. required: false
  29. - displayName: EAP Admin Password
  30. description: EAP administrator password
  31. name: ADMIN_PASSWORD
  32. from: "[a-zA-Z]{6}[0-9]{1}!"
  33. generate: expression
  34. required: false
  35. - displayName: KIE Admin User
  36. description: KIE administrator username
  37. name: KIE_ADMIN_USER
  38. value: adminUser
  39. required: false
  40. - displayName: KIE Admin Password
  41. description: KIE administrator password
  42. name: KIE_ADMIN_PWD
  43. from: "[a-zA-Z]{6}[0-9]{1}!"
  44. generate: expression
  45. required: false
  46. - displayName: KIE Server User
  47. description: KIE execution server username (Sets the org.kie.server.user system
  48. property)
  49. name: KIE_SERVER_USER
  50. value: executionUser
  51. required: false
  52. - displayName: KIE Server Password
  53. description: KIE execution server password (Sets the org.kie.server.pwd system property)
  54. name: KIE_SERVER_PWD
  55. from: "[a-zA-Z]{6}[0-9]{1}!"
  56. generate: expression
  57. required: false
  58. - displayName: KIE Server ID
  59. description: Decision server identifier. Determines the template ID in Decision Central or controller. If this parameter is left blank, it is set using the $HOSTNAME environment variable or a random value. (Sets the org.kie.server.id system property).
  60. name: KIE_SERVER_ID
  61. value: ''
  62. required: false
  63. - displayName: KIE Server Bypass Auth User
  64. description: KIE execution server bypass auth user (Sets the org.kie.server.bypass.auth.user
  65. system property)
  66. name: KIE_SERVER_BYPASS_AUTH_USER
  67. value: 'false'
  68. required: false
  69. - displayName: KIE Server Controller User
  70. description: KIE server controller username (Sets the org.kie.server.controller.user system property)
  71. name: KIE_SERVER_CONTROLLER_USER
  72. value: controllerUser
  73. required: false
  74. - displayName: KIE Server Controller Password
  75. description: KIE server controller password (Sets the org.kie.server.controller.pwd system property)
  76. name: KIE_SERVER_CONTROLLER_PWD
  77. from: "[a-zA-Z]{6}[0-9]{1}!"
  78. generate: expression
  79. required: false
  80. - displayName: KIE server controller protocol
  81. description: KIE server controller protocol (Used to set the org.kie.server.controller system property)
  82. name: KIE_SERVER_CONTROLLER_PROTOCOL
  83. value: http
  84. required: false
  85. - displayName: KIE server controller service
  86. description: KIE server controller service (Used to set the org.kie.server.controller system property if host and port aren't set)
  87. name: KIE_SERVER_CONTROLLER_SERVICE
  88. value: ''
  89. required: false
  90. - displayName: KIE server controller host
  91. description: KIE server controller host (Used to set the org.kie.server.controller system property)
  92. name: KIE_SERVER_CONTROLLER_HOST
  93. example: my-app-controller-ocpuser.os.example.com
  94. required: false
  95. - displayName: KIE server controller port
  96. description: KIE server controller port (Used to set the org.kie.server.controller system property)
  97. name: KIE_SERVER_CONTROLLER_PORT
  98. example: '8080'
  99. required: false
  100. - displayName: KIE MBeans
  101. description: KIE execution server mbeans enabled/disabled (Sets the kie.mbeans and kie.scanner.mbeans system properties)
  102. name: KIE_MBEANS
  103. value: enabled
  104. required: false
  105. - displayName: Drools Server Filter Classes
  106. description: KIE execution server class filtering (Sets the org.drools.server.filter.classes system property)
  107. name: DROOLS_SERVER_FILTER_CLASSES
  108. value: 'true'
  109. required: false
  110. - displayName: Execution Server Custom http Route Hostname
  111. description: 'Custom hostname for http service route. Leave blank for default hostname,
  112. e.g.: <application-name>-kieserver-<project>.<default-domain-suffix>'
  113. name: EXECUTION_SERVER_HOSTNAME_HTTP
  114. value: ''
  115. required: false
  116. - displayName: Execution Server Custom https Route Hostname
  117. description: 'Custom hostname for https service route. Leave blank for default
  118. hostname, e.g.: secure-<application-name>-kieserver-<project>.<default-domain-suffix>'
  119. name: EXECUTION_SERVER_HOSTNAME_HTTPS
  120. value: ''
  121. required: false
  122. - displayName: Server Keystore Secret Name
  123. description: The name of the secret containing the keystore file
  124. name: HTTPS_SECRET
  125. value: kieserver-app-secret
  126. required: false
  127. - displayName: Server Keystore Filename
  128. description: The name of the keystore file within the secret
  129. name: HTTPS_KEYSTORE
  130. value: keystore.jks
  131. required: false
  132. - displayName: Server Certificate Name
  133. description: The name associated with the server certificate
  134. name: HTTPS_NAME
  135. value: jboss
  136. required: false
  137. - displayName: Server Keystore Password
  138. description: The password for the keystore and certificate
  139. name: HTTPS_PASSWORD
  140. value: mykeystorepass
  141. required: false
  142. - displayName: ImageStream Namespace
  143. description: Namespace in which the ImageStreams for Red Hat Middleware images are
  144. installed. These ImageStreams are normally installed in the openshift namespace.
  145. You should only need to modify this if you've installed the ImageStreams in a
  146. different namespace/project.
  147. name: IMAGE_STREAM_NAMESPACE
  148. value: openshift
  149. required: true
  150. - displayName: KIE Server Container Deployment
  151. description: 'KIE Server Container deployment configuration in format: containerId=groupId:artifactId:version|c2=g2:a2:v2'
  152. name: KIE_SERVER_CONTAINER_DEPLOYMENT
  153. value: ''
  154. required: false
  155. - displayName: Maven repository URL
  156. description: Fully qualified URL to a Maven repository.
  157. name: MAVEN_REPO_URL
  158. value: ''
  159. required: false
  160. - displayName: Maven repository username
  161. description: Username to access the Maven repository.
  162. name: MAVEN_REPO_USERNAME
  163. value: ''
  164. required: false
  165. - displayName: Maven repository password
  166. description: Password to access the Maven repository.
  167. name: MAVEN_REPO_PASSWORD
  168. value: ''
  169. required: false
  170. objects:
  171. - kind: Service
  172. apiVersion: v1
  173. spec:
  174. ports:
  175. - port: 8080
  176. targetPort: 8080
  177. selector:
  178. deploymentConfig: "${APPLICATION_NAME}-kieserver"
  179. metadata:
  180. name: "${APPLICATION_NAME}-kieserver"
  181. labels:
  182. application: "${APPLICATION_NAME}"
  183. annotations:
  184. description: The execution server web server's http port.
  185. - kind: Service
  186. apiVersion: v1
  187. spec:
  188. ports:
  189. - port: 8443
  190. targetPort: 8443
  191. selector:
  192. deploymentConfig: "${APPLICATION_NAME}-kieserver"
  193. metadata:
  194. name: secure-${APPLICATION_NAME}-kieserver
  195. labels:
  196. application: "${APPLICATION_NAME}"
  197. annotations:
  198. description: The execution server web server's https port.
  199. - kind: Route
  200. apiVersion: v1
  201. id: "${APPLICATION_NAME}-kieserver-http"
  202. metadata:
  203. name: "${APPLICATION_NAME}-kieserver"
  204. labels:
  205. application: "${APPLICATION_NAME}"
  206. annotations:
  207. description: Route for execution server's http service.
  208. spec:
  209. host: "${EXECUTION_SERVER_HOSTNAME_HTTP}"
  210. to:
  211. name: "${APPLICATION_NAME}-kieserver"
  212. - kind: Route
  213. apiVersion: v1
  214. id: "${APPLICATION_NAME}-kieserver-https"
  215. metadata:
  216. name: secure-${APPLICATION_NAME}-kieserver
  217. labels:
  218. application: "${APPLICATION_NAME}"
  219. annotations:
  220. description: Route for execution server's https service.
  221. spec:
  222. host: "${EXECUTION_SERVER_HOSTNAME_HTTPS}"
  223. to:
  224. name: secure-${APPLICATION_NAME}-kieserver
  225. tls:
  226. termination: passthrough
  227. - kind: DeploymentConfig
  228. apiVersion: v1
  229. metadata:
  230. name: "${APPLICATION_NAME}-kieserver"
  231. labels:
  232. application: "${APPLICATION_NAME}"
  233. spec:
  234. strategy:
  235. type: Recreate
  236. triggers:
  237. - type: ImageChange
  238. imageChangeParams:
  239. automatic: true
  240. containerNames:
  241. - "${APPLICATION_NAME}-kieserver"
  242. from:
  243. kind: ImageStreamTag
  244. namespace: "${IMAGE_STREAM_NAMESPACE}"
  245. name: rhdm70-kieserver-openshift:1.0
  246. - type: ConfigChange
  247. replicas: 1
  248. selector:
  249. deploymentConfig: "${APPLICATION_NAME}-kieserver"
  250. template:
  251. metadata:
  252. name: "${APPLICATION_NAME}-kieserver"
  253. labels:
  254. deploymentConfig: "${APPLICATION_NAME}-kieserver"
  255. application: "${APPLICATION_NAME}"
  256. spec:
  257. serviceAccountName: kieserver-service-account
  258. terminationGracePeriodSeconds: 60
  259. containers:
  260. - name: "${APPLICATION_NAME}-kieserver"
  261. image: rhdm70-kieserver-openshift
  262. imagePullPolicy: Always
  263. volumeMounts:
  264. - name: kieserver-keystore-volume
  265. mountPath: "/etc/kieserver-secret-volume"
  266. readOnly: true
  267. livenessProbe:
  268. exec:
  269. command:
  270. - "/bin/bash"
  271. - "-c"
  272. - "/opt/eap/bin/livenessProbe.sh"
  273. readinessProbe:
  274. exec:
  275. command:
  276. - "/bin/bash"
  277. - "-c"
  278. - "/opt/eap/bin/readinessProbe.sh"
  279. ports:
  280. - name: jolokia
  281. containerPort: 8778
  282. protocol: TCP
  283. - name: http
  284. containerPort: 8080
  285. protocol: TCP
  286. - name: https
  287. containerPort: 8443
  288. protocol: TCP
  289. env:
  290. - name: DROOLS_SERVER_FILTER_CLASSES
  291. value: "${DROOLS_SERVER_FILTER_CLASSES}"
  292. - name: KIE_ADMIN_PWD
  293. value: "${KIE_ADMIN_PWD}"
  294. - name: KIE_ADMIN_USER
  295. value: "${KIE_ADMIN_USER}"
  296. - name: KIE_MBEANS
  297. value: "${KIE_MBEANS}"
  298. - name: KIE_SERVER_BYPASS_AUTH_USER
  299. value: "${KIE_SERVER_BYPASS_AUTH_USER}"
  300. - name: KIE_SERVER_CONTROLLER_USER
  301. value: "${KIE_SERVER_CONTROLLER_USER}"
  302. - name: KIE_SERVER_CONTROLLER_PWD
  303. value: "${KIE_SERVER_CONTROLLER_PWD}"
  304. - name: KIE_SERVER_CONTROLLER_SERVICE
  305. value: "${KIE_SERVER_CONTROLLER_SERVICE}"
  306. - name: KIE_SERVER_CONTROLLER_PROTOCOL
  307. value: "${KIE_SERVER_CONTROLLER_PROTOCOL}"
  308. - name: KIE_SERVER_CONTROLLER_HOST
  309. value: "${KIE_SERVER_CONTROLLER_HOST}"
  310. - name: KIE_SERVER_CONTROLLER_PORT
  311. value: "${KIE_SERVER_CONTROLLER_PORT}"
  312. - name: KIE_SERVER_ID
  313. value: "${KIE_SERVER_ID}"
  314. - name: KIE_SERVER_HOST
  315. valueFrom:
  316. fieldRef:
  317. fieldPath: status.podIP
  318. - name: KIE_SERVER_PWD
  319. value: "${KIE_SERVER_PWD}"
  320. - name: KIE_SERVER_USER
  321. value: "${KIE_SERVER_USER}"
  322. - name: KIE_SERVER_CONTAINER_DEPLOYMENT
  323. value: "${KIE_SERVER_CONTAINER_DEPLOYMENT}"
  324. - name: MAVEN_REPO_URL
  325. value: "${MAVEN_REPO_URL}"
  326. - name: MAVEN_REPO_SERVICE
  327. value: "${APPLICATION_NAME}-rhdmcentr"
  328. - name: MAVEN_REPO_PATH
  329. value: "/maven2/"
  330. - name: MAVEN_REPO_USERNAME
  331. value: "${MAVEN_REPO_USERNAME}"
  332. - name: MAVEN_REPO_PASSWORD
  333. value: "${MAVEN_REPO_PASSWORD}"
  334. - name: HTTPS_KEYSTORE_DIR
  335. value: "/etc/kieserver-secret-volume"
  336. - name: HTTPS_KEYSTORE
  337. value: "${HTTPS_KEYSTORE}"
  338. - name: HTTPS_NAME
  339. value: "${HTTPS_NAME}"
  340. - name: HTTPS_PASSWORD
  341. value: "${HTTPS_PASSWORD}"
  342. volumes:
  343. - name: kieserver-keystore-volume
  344. secret:
  345. secretName: "${HTTPS_SECRET}"