processserver64-basic-s2i.json 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383
  1. {
  2. "kind": "Template",
  3. "apiVersion": "v1",
  4. "metadata": {
  5. "annotations": {
  6. "description": "Application template for Red Hat JBoss BPM Suite 6.4 intelligent process server applications built using S2I.",
  7. "iconClass": "icon-jboss",
  8. "tags": "processserver,jboss,xpaas",
  9. "version": "1.4.0",
  10. "openshift.io/display-name": "Red Hat JBoss BPM Suite 6.4 intelligent process server (no https)"
  11. },
  12. "name": "processserver64-basic-s2i"
  13. },
  14. "labels": {
  15. "template": "processserver64-basic-s2i",
  16. "xpaas": "1.4.0"
  17. },
  18. "message": "A new BPMS application has been created in your project. The username/password for accessing the KIE Server REST or JMS interface is ${KIE_SERVER_USER}/${KIE_SERVER_PASSWORD}.",
  19. "parameters": [
  20. {
  21. "displayName": "KIE Container Deployment",
  22. "description": "The KIE Container deployment configuration in format: containerId=groupId:artifactId:version|c2=g2:a2:v2",
  23. "name": "KIE_CONTAINER_DEPLOYMENT",
  24. "value": "processserver-library=org.openshift.quickstarts:processserver-library:1.3.0.Final",
  25. "required": false
  26. },
  27. {
  28. "displayName": "KIE Server Username",
  29. "description": "The user name to access the KIE Server REST or JMS interface.",
  30. "name": "KIE_SERVER_USER",
  31. "value": "kieserver",
  32. "required": false
  33. },
  34. {
  35. "displayName": "KIE Server Password",
  36. "description": "The password to access the KIE Server REST or JMS interface. Must be different than username; must not be root, admin, or administrator; must contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), and 1 non-alphanumeric symbol(s).",
  37. "name": "KIE_SERVER_PASSWORD",
  38. "from": "[a-zA-Z]{6}[0-9]{1}!",
  39. "generate": "expression",
  40. "required": false
  41. },
  42. {
  43. "displayName": "KIE Server Persistence Dialect",
  44. "description": "Hibernate persistence dialect.",
  45. "name": "KIE_SERVER_PERSISTENCE_DIALECT",
  46. "value": "org.hibernate.dialect.H2Dialect",
  47. "required": false
  48. },
  49. {
  50. "displayName": "Application Name",
  51. "description": "The name for the application.",
  52. "name": "APPLICATION_NAME",
  53. "value": "kie-app",
  54. "required": true
  55. },
  56. {
  57. "displayName": "Custom http Route Hostname",
  58. "description": "Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-<project>.<default-domain-suffix>",
  59. "name": "HOSTNAME_HTTP",
  60. "value": "",
  61. "required": false
  62. },
  63. {
  64. "displayName": "Git Repository URL",
  65. "description": "Git source URI for application",
  66. "name": "SOURCE_REPOSITORY_URL",
  67. "value": "https://github.com/jboss-openshift/openshift-quickstarts.git",
  68. "required": true
  69. },
  70. {
  71. "displayName": "Git Reference",
  72. "description": "Git branch/tag reference",
  73. "name": "SOURCE_REPOSITORY_REF",
  74. "value": "1.3",
  75. "required": false
  76. },
  77. {
  78. "displayName": "Context Directory",
  79. "description": "Path within Git project to build; empty for root project directory.",
  80. "name": "CONTEXT_DIR",
  81. "value": "processserver/library",
  82. "required": false
  83. },
  84. {
  85. "displayName": "Queues",
  86. "description": "Queue names",
  87. "name": "HORNETQ_QUEUES",
  88. "value": "",
  89. "required": false
  90. },
  91. {
  92. "displayName": "Topics",
  93. "description": "Topic names",
  94. "name": "HORNETQ_TOPICS",
  95. "value": "",
  96. "required": false
  97. },
  98. {
  99. "displayName": "HornetQ Password",
  100. "description": "HornetQ cluster admin password",
  101. "name": "HORNETQ_CLUSTER_PASSWORD",
  102. "from": "[a-zA-Z0-9]{8}",
  103. "generate": "expression",
  104. "required": true
  105. },
  106. {
  107. "displayName": "Github Webhook Secret",
  108. "description": "GitHub trigger secret",
  109. "name": "GITHUB_WEBHOOK_SECRET",
  110. "from": "[a-zA-Z0-9]{8}",
  111. "generate": "expression",
  112. "required": true
  113. },
  114. {
  115. "displayName": "Generic Webhook Secret",
  116. "description": "Generic build trigger secret",
  117. "name": "GENERIC_WEBHOOK_SECRET",
  118. "from": "[a-zA-Z0-9]{8}",
  119. "generate": "expression",
  120. "required": true
  121. },
  122. {
  123. "displayName": "ImageStream Namespace",
  124. "description": "Namespace in which the ImageStreams for Red Hat Middleware images are installed. These ImageStreams are normally installed in the openshift namespace. You should only need to modify this if you've installed the ImageStreams in a different namespace/project.",
  125. "name": "IMAGE_STREAM_NAMESPACE",
  126. "value": "openshift",
  127. "required": true
  128. },
  129. {
  130. "displayName": "Maven mirror URL",
  131. "description": "Maven mirror to use for S2I builds",
  132. "name": "MAVEN_MIRROR_URL",
  133. "value": "",
  134. "required": false
  135. },
  136. {
  137. "description": "List of directories from which archives will be copied into the deployment folder. If unspecified, all archives in /target will be copied.",
  138. "name": "ARTIFACT_DIR",
  139. "value": "",
  140. "required": false
  141. }
  142. ],
  143. "objects": [
  144. {
  145. "kind": "Service",
  146. "apiVersion": "v1",
  147. "spec": {
  148. "ports": [
  149. {
  150. "port": 8080,
  151. "targetPort": 8080
  152. }
  153. ],
  154. "selector": {
  155. "deploymentConfig": "${APPLICATION_NAME}"
  156. }
  157. },
  158. "metadata": {
  159. "name": "${APPLICATION_NAME}",
  160. "labels": {
  161. "application": "${APPLICATION_NAME}"
  162. },
  163. "annotations": {
  164. "description": "The web server's http port."
  165. }
  166. }
  167. },
  168. {
  169. "kind": "Route",
  170. "apiVersion": "v1",
  171. "id": "${APPLICATION_NAME}-http",
  172. "metadata": {
  173. "name": "${APPLICATION_NAME}",
  174. "labels": {
  175. "application": "${APPLICATION_NAME}"
  176. },
  177. "annotations": {
  178. "description": "Route for application's http service."
  179. }
  180. },
  181. "spec": {
  182. "host": "${HOSTNAME_HTTP}",
  183. "to": {
  184. "name": "${APPLICATION_NAME}"
  185. }
  186. }
  187. },
  188. {
  189. "kind": "ImageStream",
  190. "apiVersion": "v1",
  191. "metadata": {
  192. "name": "${APPLICATION_NAME}",
  193. "labels": {
  194. "application": "${APPLICATION_NAME}"
  195. }
  196. }
  197. },
  198. {
  199. "kind": "BuildConfig",
  200. "apiVersion": "v1",
  201. "metadata": {
  202. "name": "${APPLICATION_NAME}",
  203. "labels": {
  204. "application": "${APPLICATION_NAME}"
  205. }
  206. },
  207. "spec": {
  208. "source": {
  209. "type": "Git",
  210. "git": {
  211. "uri": "${SOURCE_REPOSITORY_URL}",
  212. "ref": "${SOURCE_REPOSITORY_REF}"
  213. },
  214. "contextDir": "${CONTEXT_DIR}"
  215. },
  216. "strategy": {
  217. "type": "Source",
  218. "sourceStrategy": {
  219. "env": [
  220. {
  221. "name": "KIE_CONTAINER_DEPLOYMENT",
  222. "value": "${KIE_CONTAINER_DEPLOYMENT}"
  223. },
  224. {
  225. "name": "MAVEN_MIRROR_URL",
  226. "value": "${MAVEN_MIRROR_URL}"
  227. },
  228. {
  229. "name": "ARTIFACT_DIR",
  230. "value": "${ARTIFACT_DIR}"
  231. }
  232. ],
  233. "forcePull": true,
  234. "from": {
  235. "kind": "ImageStreamTag",
  236. "namespace": "${IMAGE_STREAM_NAMESPACE}",
  237. "name": "jboss-processserver64-openshift:1.0"
  238. }
  239. }
  240. },
  241. "output": {
  242. "to": {
  243. "kind": "ImageStreamTag",
  244. "name": "${APPLICATION_NAME}:latest"
  245. }
  246. },
  247. "triggers": [
  248. {
  249. "type": "GitHub",
  250. "github": {
  251. "secret": "${GITHUB_WEBHOOK_SECRET}"
  252. }
  253. },
  254. {
  255. "type": "Generic",
  256. "generic": {
  257. "secret": "${GENERIC_WEBHOOK_SECRET}"
  258. }
  259. },
  260. {
  261. "type": "ImageChange",
  262. "imageChange": {}
  263. },
  264. {
  265. "type": "ConfigChange"
  266. }
  267. ]
  268. }
  269. },
  270. {
  271. "kind": "DeploymentConfig",
  272. "apiVersion": "v1",
  273. "metadata": {
  274. "name": "${APPLICATION_NAME}",
  275. "labels": {
  276. "application": "${APPLICATION_NAME}"
  277. }
  278. },
  279. "spec": {
  280. "strategy": {
  281. "type": "Recreate"
  282. },
  283. "triggers": [
  284. {
  285. "type": "ImageChange",
  286. "imageChangeParams": {
  287. "automatic": true,
  288. "containerNames": [
  289. "${APPLICATION_NAME}"
  290. ],
  291. "from": {
  292. "kind": "ImageStream",
  293. "name": "${APPLICATION_NAME}"
  294. }
  295. }
  296. },
  297. {
  298. "type": "ConfigChange"
  299. }
  300. ],
  301. "replicas": 1,
  302. "selector": {
  303. "deploymentConfig": "${APPLICATION_NAME}"
  304. },
  305. "template": {
  306. "metadata": {
  307. "name": "${APPLICATION_NAME}",
  308. "labels": {
  309. "deploymentConfig": "${APPLICATION_NAME}",
  310. "application": "${APPLICATION_NAME}"
  311. }
  312. },
  313. "spec": {
  314. "terminationGracePeriodSeconds": 60,
  315. "containers": [
  316. {
  317. "name": "${APPLICATION_NAME}",
  318. "image": "${APPLICATION_NAME}",
  319. "imagePullPolicy": "Always",
  320. "livenessProbe": {
  321. "exec": {
  322. "command": [
  323. "/bin/bash",
  324. "-c",
  325. "/opt/eap/bin/livenessProbe.sh"
  326. ]
  327. }
  328. },
  329. "readinessProbe": {
  330. "exec": {
  331. "command": [
  332. "/bin/bash",
  333. "-c",
  334. "/opt/eap/bin/readinessProbe.sh"
  335. ]
  336. }
  337. },
  338. "ports": [
  339. {
  340. "name": "jolokia",
  341. "containerPort": 8778,
  342. "protocol": "TCP"
  343. },
  344. {
  345. "name": "http",
  346. "containerPort": 8080,
  347. "protocol": "TCP"
  348. }
  349. ],
  350. "env": [
  351. {
  352. "name": "KIE_CONTAINER_DEPLOYMENT",
  353. "value": "${KIE_CONTAINER_DEPLOYMENT}"
  354. },
  355. {
  356. "name": "KIE_SERVER_USER",
  357. "value": "${KIE_SERVER_USER}"
  358. },
  359. {
  360. "name": "KIE_SERVER_PASSWORD",
  361. "value": "${KIE_SERVER_PASSWORD}"
  362. },
  363. {
  364. "name": "HORNETQ_CLUSTER_PASSWORD",
  365. "value": "${HORNETQ_CLUSTER_PASSWORD}"
  366. },
  367. {
  368. "name": "HORNETQ_QUEUES",
  369. "value": "${HORNETQ_QUEUES}"
  370. },
  371. {
  372. "name": "HORNETQ_TOPICS",
  373. "value": "${HORNETQ_TOPICS}"
  374. }
  375. ]
  376. }
  377. ]
  378. }
  379. }
  380. }
  381. }
  382. ]
  383. }